• Nenhum resultado encontrado

2.3 ABORDAGENS PARA LIDAR COM O DESBALANCEAMENTO

2.3.1 Abordagem em nível de dados

O objetivo básico das técnicas de reamostragem (resampling) é balancear a quantidade de instâncias entre as classes. As duas formas mais comuns de se balancear as classes são sobreamostragem (oversampling) e subamostragem (undersampling). A primeira busca criar novas instâncias para a classe minoritária, i.e., a classe que possui a menor quanti- dade de instâncias. Por outro lado, a subamostragem procura excluir instâncias da classe majoritária, ou seja, a classe com maior quantidade de instâncias.

2.3.1.1 Sobreamostragem

A sobreamostragem pode acontecer de duas formas: replicação das instâncias existentes ou criação de instâncias sintéticas (NGUYEN; BOUZERDOUM; PHUNG, 2009;GARCÍA; SÁN- CHEZ; MOLLINEDA, 2012; LÓPEZ et al., 2013; WANG, 2014; MALDONADO; MONTECINOS,

2014). A mais simples das técnicas de sobreamostragem é a Sobreamostragem Aleatória, ou Random Oversampling (ROS), na qual instâncias de uma classe são selecionadas ale- atoriamente e replicadas até que se atinja um nível satisfatório de balanceamento entre as classes. A vantagem dessa técnica é o balanceamento entre as classes sem a adição de novas informações (gerar novas informações aleatórias pode ser prejudicial à distribuição dos dados). Entretanto, uma quantidade elevada de instâncias idênticas, além de aumen- tar o custo computacional, pode fazer com que classificadores passem a considerar apenas determinados pontos, e não a região em sua volta, como área da classe. Desta forma, pode haver perda de generalização, ou seja, overfitting.

Outra técnica de sobreamostragem bastante conhecida é o Synthetic Minority Over-

instâncias sintéticas ao interpolar as instâncias de uma mesma classe que sejam vizinhas no espaço amostral. Desta forma, é possível aumentar a quantidade de instâncias de uma classe pequena com a adição de informação, resolvendo — ao menos em parte — o pro- blema de overfitting. Entretanto, a utilização do SMOTE pode resultar no aumento da sobreposição de bordas entre instâncias de diferentes classes (LÓPEZ et al., 2013).

A partir do algoritmo original, algumas modificações ao SMOTE foram sugeridas. Entre elas pode-se citar o SMOTEBoost, que aplica SMOTE a cada iteração do algoritmo (CHAWLA et al., 2003); Borderline-SMOTE, que aplica SMOTE somente às instâncias da

classe minoritária que estejam na borda (HAN; WANG; MAO, 2005); MSMOTE, que ignora

as instâncias da menor classe, as quais são consideradas como ruído (HU et al., 2009);

e Safe Level SMOTE (BUNKHUMPORNPAT; SINAPIROMSARAN; LURSINSAP, 2009), que

aplica SMOTE somente às instâncias consideradas seguras.

Outros algoritmos de sobreamostragem além do SMOTE são: Adaptive Synthetic sam-

pling approach (ADASYN), que cria adaptativamente mais amostras sintéticas para ins-

tâncias difíceis de serem classificadas (HE et al., 2008); e RWO-Sampling, que cria instâncias

sintéticos aplicando random walk (ZHANG; LI, 2014).

2.3.1.2 Subamostragem

A subamostragem acontece com a exclusão de instâncias do conjunto de treinamento (NGUYEN; BOUZERDOUM; PHUNG, 2009;GARCÍA; SÁNCHEZ; MOLLINEDA, 2012; LÓPEZ et al., 2013; MALDONADO; MONTECINOS, 2014; WANG, 2014). Esta forma de reamostragem

possui a vantagem de diminuir o custo computacional, uma vez que os classificadores lidarão com um conjunto menor de dados. Entretanto a subamostragem possui o risco de excluir dados valiosos, ou seja, instâncias que sejam discriminatórias e, por isso, poderiam influenciar algum classificador a melhorar o seu desempenho.

A técnica mais simples de subamostragem é a Subamostragem Aleatória, ou Random

Undersampling (RUS). Neste caso, instâncias de uma classe específica são selecionadas

ao acaso e retiradas do conjunto de treinamento até que se atinja um nível desejado de balanceamento.

Outros algoritmos também se encaixam nesta técnica. Pode-se citar: One-Sided Sam-

pling (OSS), que exclui as instâncias da maior classe que sejam redundantes ou próximas

à borda (KUBAT; MATWIN, 1997); Neigborhood Cleaning rule (NCL), que retira instâncias

da maior classe que sejam ruído ou que façam parte dos três vizinhos mais próximos de uma instância da menor classe que foi erroneamente classificada (LAURIKKALA, 2001); [under]Sampling Based on Clustering (SBC), que divide as instâncias em 𝑘 clusters, de-

termina a quantidade de instâncias da maior classe que podem ser selecionadas em cada

cluster e separa aleatoriamente essa quantidade de cada cluster (YEN et al., 2006); Granu- lar SVMs-Repetitive Undersampling (GSVM-RU), que forma o subconjunto de instâncias

2009); Weighted Undersampling, que para cada instância da menor classe calcula a distân- cia ponderada das instâncias da maior classe, e seleciona uma quantidade de instâncias de acordo com uma taxa de balanceamento pré-definida (ANAND et al., 2010).

Diversos outros algoritmos de subamostragem podem ser encontrados na literatura. Os algoritmos citados são apenas exemplos, uma vez que não faz parte do escopo deste trabalho uma listagem exaustiva dos modelos existentes.

2.3.1.3 Combinações de reamostragem

Em algumas situações pode ser vantajosa a utilização de ambas as técnicas de reamostra- gem para o pré-processamento dos dados. Neste caso, tanto a classe minoritária quanto a majoritária sofrem alterações com o objetivo de melhorar o desempenho de algum classi- ficador.

Por exemplo, Estabrooks, Jo e Japkowicz (2004) constroem um comitê de classifica- dores, no qual cada classificador é treinado em um tipo de reamostragem (tanto sobrea- mostragem, quanto subamostragem), e selecionam para cada instância de teste um dos classificadores.

Liu, An e Huang (2006) utilizam SMOTE na menor classe e, posteriormente, aplicam a técnica bootstrap para excluir instâncias da maior classe. Após o processo de reamostragem uma SVM é treinada.

O algoritmo Selective Preprocessing of Imbalanced Data (SPIDER) (STEFANOWSKI; WILK, 2008) implementa a reamostragem em duas fases. Na primeira fase as instâncias

são rotuladas como ruidosas ou seguras. Na segunda fase ocorre a subamostragem da maior classe, excluindo as instâncias que sejam ruidosas e que estejam muito próximas de instâncias ruidosas da menor classe. Após esse processo acontece a sobreamostragem da menor classe.

Por fim, Napierala, Stefanowski e Wilk (2010) introduzem o algoritmo SPIDER2. Neste algoritmo a rotulação das instâncias é feita em um pré-processamento e as fases correspondem à subamostragem e sobreamostragem, respectivamente. Outra diferença, em relação ao SPIDER, é que a subamostragem ocorre não só ao excluir instâncias como também ao modificar a classe de algumas instâncias da maior classe, passando a considerá- los como exemplos da menor classe.

2.3.1.4 Redução de Instâncias

A redução de instâncias como uma abordagem em nível de dados pode ser considerada como uma terceira via, ainda pouco explorada. Sua particularidade reside no fato de que todo o conjunto de treinamento é transformado, resultando em um conjunto menor contendo apenas protótipos. Um protótipo é uma instância que representa um conjunto de exemplos de uma determinada região do espaço amostral. Normalmente, os exemplos representados são todos da mesma classe.

Os métodos, ou técnicas de redução de instância têm por objetivo encontrar o melhor conjunto reduzido de instâncias que represente o conjunto de treinamento original (LÓPEZ et al., 2014). Estes métodos podem ser divididos em Seleção de Protótipos (SP) e Geração

de Protótipos (GP) (LÓPEZ et al., 2014). O primeiro procura selecionar um subconjunto

do conjunto original de treinamento, enquanto o segundo constrói um novo conjunto de instâncias, o qual pode ser completamente diferente do original.

O Fuzzy Rough Imbalanced Prototype Selection (FRIPS) (VERBIEST et al., 2012) é um

exemplo de algoritmo desta categoria. Primeiro, é calculado o nível de ruído para cada instância, cujos valores são tratados como limites. Para cada limite é possível selecionar um subconjunto de instâncias cujos níveis de ruído são menores que o limite em questão. Cada subconjunto de treinamento é classificado com 1NN, e o subconjunto associado ao melhor desempenho é selecionado para ser utilizado pelo 1NN no conjunto de testes.

Outro exemplo é o algoritmo Adaptive Self-Generating Prototype (ASGP) (OLIVEIRA et al., 2012), que consiste em uma adaptação do SGP2 (Self-Generating Prototype) (FAYED; HASHEM; ATIYA, 2007) para bases desbalanceadas. O SGP, cuja variante é o SGP2, é um

algoritmo de GP que encontra a quantidade de protótipos e suas localizações a partir de um processamento sobre o conjunto de treinamento. Os autores do ASGP argumentam que, apesar de ser um algoritmo bastante eficiente, durante sua execução o SGP2 acaba considerando instâncias da classe minoritária como ruídos ou outliers que precisam ser removidos. Logo, os passos prejudiciais à classe minoritária foram remodelados para se tornarem adaptativos em relação à quantidade de instâncias de cada classe. Posterior- mente, foi descoberto que o ASGP gera mais protótipos para a classe minoritária que o necessário. Para lidar com este novo problema, os autores sugeriram o algoritmo Evo-

lutionary Adaptive Self-Generating Prototype (EASGP) como solução (OLIVEIRA et al.,

2015).

Por fim, López et al. (2014) propõem o Iterative Prototype Adjustment Based on Diffe-

rential Evolution for Imbalanced Domains(IPADE-ID), adaptação do IPADE (TRIGUERO; GARCÍA; HERRERA, 2010) para bases desbalanceadas. O algoritmo consiste em três fases:

inicialização, bastante similar ao SGP; ajuste do posicionamento dos protótipos através de uma busca com a Evolução Diferencial (STORN; PRICE, 1997); e a utilização de SP

para a inserção de novos protótipos.