• Nenhum resultado encontrado

2.3 Aprendizagem de Máquina

2.3.2 Pré-processamento

2.3.2.2 Seleção de Atributos

A seleção de atributos (do inglês Feature Selection (FS)) exerce um importante papel na preparação dos dados, principalmente, em áreas como reconhecimento de padrões, AM e mineração de dados. Mediante essa técnica, por exemplo, é possível a ordenação de atributos segundo o critério de importância, redução da dimensionalidade do espaço de busca de atributos e remoção de ruídos ou outras características indesejadas (GUYON; ELISSEEFF, 2003).

Uma das principais razões para o uso das técnicas de seleção em algoritmos de AM está na manipulação de quantidades reduzidas de atributos, assim tornando o processo menos dispendioso, além da qualidade do processo de aprendizado pode ser aumentada quando se trabalha apenas com o subconjunto de atributos mais relevantes de um conjunto de dados. A identificação do subconjunto mais importante pode auxiliar no entendimento e no estudo do problema que está sendo analisado (CHANDRASHEKAR; SAHIN, 2014).

Além disso, quando um conjunto de dados armazenados tem uma grande quantidade de atributos, isto é, possui alta dimensionalidade, ocorre o aumento do processamento computacional e a diminuição da precisão, ou seja, do grau de acerto dos modelos de clas- sificação (SAEYS; INZA; LARRAÑAGA, 2007). Para evitar os inconvenientes citados, a FS visa redimensionar a quantidade a ser processada, pois deve indicar um subconjunto de atributos mais importante para o processamento (ZAKI; JR, 2011; ZHENG et al., 2009). As consequências esperadas nessas técnicas são a geração de modelos de classifica- ção mais precisos e a redução do processamento computacional (OZCIFT, 2012).

Os métodos de FS podem ser analisados de acordo com alguns critérios e, em particular com relação à tarefa de classificação, eles são agrupados em três tipos de abordagens, que são: Embendedd, Wrapper e Filter (TAN; STEINBACH; KUMAR, 2009; GUYON; ELISSEEFF, 2003).

Na técnica denominada Embedded, o método de seleção de atributos é incorporado e dedicado a um algoritmo de classificação específico. Em geral, o subconjunto de atri- butos é selecionado durante a fase de treinamento, ao longo do processo de construção do modelo de classificação. Os métodos Embedded usam uma medida independente para decidir quais são os melhores subconjuntos de atributos. Em seguida, usando o próprio algoritmo de classificação, seleciona o melhor subconjunto entre os melhores. Ocorrem várias iterações até que a qualidade dos resultados advindos do algoritmo classificador possa proporcionar um critério de parada natural (TAN; STEINBACH; KUMAR, 2009; GUYON; ELISSEEFF, 2003).

No tipo Wrapper, o método de seleção usa o algoritmo de classificação como uma "caixa-preta" para avaliar subconjuntos de atributos, de acordo com a sua capacidade preditiva. Se um subconjunto de atributos é gerado, então dois modelos de classificação são gerados: um modelo possui o conjunto original de atributos e o outro modelo usa o subconjunto selecionado de atributos. Ambos os modelos resultantes são comparados

e avaliados. Essa abordagem pode ter um custo computacional bastante elevado devido as possíveis interações do algoritmo supervisionado sob os atributos (ZAKI; JR, 2011; ZHANG et al., 2014).

Abordagem Filter utiliza um processo à parte, que é executado antes da aplicação do algoritmo de AM escolhido para a classificação dos dados. Essa técnica não usufrui do resultado de um algoritmo de aprendizado para definir o melhor subconjunto de atribu- tos (SAEYS; INZA; LARRAÑAGA, 2007). Segundo Caby et al. (2011), esse método é mais rápido do que um do tipo Wrapper ou um do tipo Embedded.

A abordagem que será empregada neste trabalho é a Wrapper. Ela consiste basicamente em dois processos: Forward e Backward. Explicando de forma resumida (BENIWAL; ARORA, 2012): em Forward é escolhido primeiramente x3 e depois um dos outros dois

atributos, produzindo ordens x3, x1, x2 ou x3, x2, x1; no Backward elimina x3 primeiro e

depois uma das outras duas características, obtendo a ordens como x1, x2, x3 ou x2, x1,

x3.

Outro fator que caracteriza um método de seleção é a forma como é gerenciada a rela- ção entre atributos. Ela pode avaliar os atributos individualmente, de forma univariada, ou considerar relacionamentos em um subconjunto de atributos capazes de reconhecer amostras da mesma classe e distinguir amostras de classes em diferentes formas multiva- riadas (BOLÓN-CANEDO; SÁNCHEZ-MAROÑO; ALONSO-BETANZOS, 2013).

Os chamados métodos "multivariados" levam em conta as dependências dos atribu- tos. Métodos multivariados conseguem resultados potencialmente melhores porque eles não simplificam suposições de independência variável/característica (GUYON; ELISSE- EFF, 2003). Segundo Guyon e Elisseeff (2003), alguns dos principais, são:

• Ranking de relevância individual: provê uma visão de qual característica é relevante individualmente e quais não ajudam a proporcionar uma separação de classe me- lhor. Para determinadas situações a individual funciona bem quando, por exemplo, o atributo fornece uma boa separação de classe por si mesmo e assim será escolhido como prioritário;

• Atributos relevantes que são individualmente irrelevantes: esse método é avaliado o poder preditivo dos atributos que são relevantes conjuntamente e não indepen- dentemente. Um recurso útil pode ser irrelevante por si só. Duas características individualmente irrelevantes podem tornar-se relevantes quando usados em combi- nação;

• Atributos redundantes: esse método tem como objetivo produzir subconjuntos mais compactos. A detecção de redundâncias não pode ser feita analisando apenas as projeções de atributos, como os métodos univariados fazem;

Para a maioria dos algoritmos de AM as técnicas de FS geram três tipos de saída (resultados) (ALELYANI; TANG; LIU, 2013): (1) seleção de subconjuntos, que retorna

um subconjunto de atributos identificados pelo índice; (2) Peso do atributo, que retorna o peso correspondente a cada atributo; e o (3) híbrido, que é uma junção de subconjuntos e peso, que retorna um subconjunto classificado de atributos.

A pesagem de atributos (do inglês Feature Weighting) é considerada uma generaliza- ção da FS. Nesta abordagem, de forma simplificada é atribuído um valor binário a um atributo, onde 1 significa que o atributo está selecionado e 0 caso contrário. No entanto, a função de pesagem atribui um valor, geralmente no intervalo [0,1] ou [-1,1], a cada atributo. Quanto maior esse valor, mais relevante será o atributo. Contudo, para essa estimativa ser precisa foram desenvolvidos algoritmos específicos para o calculo dos pesos, dentre alguns principais: Fisher, Chi-square e Relif-F (ALELYANI; TANG; LIU, 2013).

Será usado neste trabalho é o Relif-F, por ser o mais simples e utilizado pela comu- nidade. Introduzido por Kira e Rendell (1992), Relief-F é uma evolução do algoritmo Relif que classifica atributos de acordo com sua maior correlação com a classe observada, levando em consideração as distâncias entre classes opostas. A ideia principal é estimar a qualidade dos atributos de acordo com o quão bem seus valores distinguem entre obser- vações que estão próximas umas das outras (LATKOWSKI; OSOWSKI, 2015).

O algoritmo 1 é o pseudo-código do Relief-F. O Relief-F seleciona aleatoriamente uma instância Ri de observação e então procura por k de seus vizinhos mais próximos

da mesma classe, chamados hits mais próximos Hj e também k vizinhos mais próximos

de cada uma das diferentes classes, chamadas erros (misses) mais próximas Mj(C). Ele

atualiza a estimativa de qualidade W(A) para todos os atributos A dependendo de seus valores para Ri, hits Hj e erros Mj(C). Se as instâncias Ri e Hj tiverem valores diferentes

do atributo A, então o atributo A separa duas instâncias com a mesma classe que não é desejável. Assim, a estimativa de qualidade W(A) é diminuída. Se as instâncias Ri e

Mj tiverem valores diferentes do atributo A, então este atributo separa duas instâncias

de diferentes valores de classe que é desejável. Assim, a estimativa de qualidade W(A) é aumentada. O algoritmo faz a média da contribuição de todos os hits e erros (ROBNIK- ŠIKONJA; KONONENKO, 2003)

A maioria dos algoritmos de pesagem de atributos atribui um peso unificado (global) a cada atributo em todas as instâncias. Porém, a importância é relativa, relevância e ruído nas diferentes dimensões podem variar significativamente com a localidade dos dados. O ideal é que a seleção de atributo ou pesagem seja feita no momento da classificação (e não no treinamento), porque o conhecimento do exemplo de teste melhora a capacidade

de seleção (TANG; ALELYANI; LIU, 2014).

Algorithm 1: Pseudo-código do algoritmo Relif-F. Definir todos os pesos W [A] := 0.0;

for i = 1 to m do

Selecione aleatoriamente uma instância Ri; Ache k vizinhos aos hits Hj;

for cada classe C 6= classeRi do

a partir da classe C ache k vizinhos erros Mj(C); for A := 1 to a do W [A] := W [A] −Pk j=1dif f (A, Ri, Hj)l(m.k) + P C6=class(Ri)[ P (C) 1−P (class(Ri) Pk j=1dif f (A, Ri, Mj(C))]/(m.k); end end end

A função diff(A, I1, I2) calcula a diferença entre os valores do atributo A para duas

instâncias I1 e I2. Para atributos nominais ele foi originalmente definido como (ROBNIK-

ŠIKONJA; KONONENKO, 2003): dif f (A, I1, I2) =

(

0; valor(A, I1) = valor(A, I2)

1;senão (2.4)

E para atributos numéricos:

dif f (A, I1, I2) =

|valor(A, I1) − valor(A, I2)|

max(A) − min(A) (2.5)

Documentos relacionados