Efeito de outliers em classificadores perceptron e voted-perceptron Artur M. Oliveira Universidade Federal de Minas Gerais PPGEE Belo Horizonte, Brasil oliveiraarturm@hotmail.com Abstract—Problemas de classificação têm sido amplamente estudados na área de aprendizado de máquinas, com diversos métodos propostos ao longo dos anos, como redes neurais, máquinas de vetor de suporte (SVM), árvores de decisão e KNN. Cada abordagem possui vantagens especı́ficas, como a simplicidade do KNN ou a robustez da SVM, mas também limitações, como o alto custo computacional ou sensibilidade aos dados de entrada. Entre esses métodos, o voted-perceptron surge como uma alternativa interessante. Ele aprimora o perceptron original de Rosemblatt [1] ao introduzir um mecanismo que pondera as predições feitas ao longo do treinamento, permitindo um desempenho competitivo com métodos mais complexos. Este artigo analisa o voted-perceptron, propondo ainda uma modificação para lidar com outliers usando o método da mediana, com o objetivo de melhorar sua eficácia em conjuntos de teste. I. I NTRODUÇ ÃO Na área de aprendizado de máquinas, problemas de classificação sempre foram de interesse ao longo dos anos. O problema de classificação supervisionada, em especı́fico, consiste em construir um modelo capaz de classificar dados futuros em suas devidas classes a partir de um conjunto de treinamento. Quanto maior é o conjunto de treinamento, maiores são as chances de o modelo performar bem em dados jamais vistos. Existem uma série de classificadores na literatura, dentre os principais estão o k-nearest-neighbor(KNN) [2], classificadores bayesianos [3], redes neurais artificiais [4], árvores de decisão [5] e as SVMs (support vector machines) [6]. Cada classificador tem suas vantagens e desvantagens. Métodos baseados em KNN normalmente são fáceis de implementar, entretanto, são computacionalmente lentos em grandes datasets. Árvores de decisão têm sido amplamente utilizadas em problemas de classificação, normalmente são mais rápidas que redes neurais, apesar de menos flexı́veis. Classificadores bayesianos são simples de implementar e possuem boa eficiência computacional, mas são menos precisos em datasets complexos e com alta correlação entre as variáveis. Apesar dessas e de diversas outras abordagens para classificação estarem consolidadas na literatura, as redes neurais vêm se sobressaindo. Redes neurais são amplamente utilizadas, entretanto, são sensı́veis à qualidade dos dados, método de treinamento, etc. Por sua versatilidade e aplicação quase que universal, as redes neurais são atualmente um dos métodos mais utilizados. Entretanto, as redes neurais como o perceptron, fazem a separação dos dados através de um hiperplano que normalmente é determinado pelo método de treinamento, como o gradiente descendente de uma função de custo, que pode não ser o hiperplano separador de margem máxima. Para solucionar esse problema, foi criada a SVM, que busca encontrar uma margem máxima de separação, e dessa forma, ter um erro menor de generalização. Proposta por Vapnik et al. em 1995, a SVM, foi inicialmente chamada de ”supportvector networks” [6]. Vapnik et al. resolveram um problema de classificação binária por meio de um hiperplano separador ótimo, no sentido em que essa separação busca respeitar a margem máxima de separação possı́vel em relação a um dado conjunto de dados. A SVM proposta teve bom desempenho em problemas que não são linearmente separáveis no espaço original dos dados de treinamento, pois utilizou-se um conceito chamado de kernel-trick, mencionado inclusive em 1992 por Vapnik et al. [7]. Apesar de extremamente precisa e superior a algumas arquiteturas de redes neurais, a SVM tem seu tempo de treinamento longo para datasets grandes e, especialmente, com kernels polinomiais [8]. Um classificador alternativo, que busca, assim como a SVM maximizar a margem de classificação, foi proposto por Freund et al.: o voted-perceptron [9]. O voted-perceptron é um algoritmo de classificação linear que aprimora o método tradicional do perceptron ao manter um histórico das previsões feitas ao longo do treinamento e atribuir pesos a cada uma delas com base em sua precisão. Isso é um aprimoramento ao perceptron original, que considera nas predições apenas o ultimo vetor de pesos. Além disso, o voted-perceptron utiliza funções de kernel para operar de forma eficaz em espaços de alta dimensão e é projetado para ser mais simples e rápido do que máquinas de vetor de suporte, enquanto alcança um desempenho competitivo. Nesse artigo será feita uma explicação do voted-perceptron e como ele se compara com o percpetron original definido por Rosemblatt em 1958 [1] nos datasets Boston Housing, MNIST e WINE. Será introduzido também uma modificação no voted-perceptron de modo a eliminar outliers do conjunto de treinamento e assim tentar melhorar o desempenho do algoritmo no conjunto de teste. II. O RGANIZAÇ ÃO Na seção III será feita uma breve revisão da literatura dos principais trabalhos que tiveram como objetivo buscar classificadores alta margem, bem como trabalhos onde esses classificadores foram aplicados com sucesso. Será também feita uma breve revisão de métodos de remoção de outliers em redes perceptron e seu impacto. Na seção IV será explicado de maneira breve os métodos de detecção de outliers utilizados nesse artigo e a diferença do voted-perceptron para o perceptron tradicional. Na seção V será explicada a metodologia de teste do método proposto nesse artigo. Quais datasets utilizar e como será feita a avaliação de desempenho. Na seção VI serão mostrados os resultados e, por fim, serão feitas as discussões finais. III. R EVIS ÃO DA LITERATURA O problema de classificadores de margem máxima ganhou atenção principalmente com os trabalhos de Vapnik. Em [7] foi proposto um algoritmo de treinamento para classificadores de margem ótima. Em [6], foi elaborado o conceito de máquinas de vetor de suporte, as SVMs. Rapidamente o conceito foi aceito e popularizado dentro da comunidade cientı́fica. Entretanto, as SVMs sofrem de um problema de otimização quadrática, o que torna difı́cil seu uso em grandes datasets. Para contornar esse problema, foi proposto por Freund et al. o voted-perceptron [9]. O artigo de Freund et al. relata experimentos realizados na classificação de dı́gitos manuscritos, onde o desempenho do voted-perceptron foi comparado com o de outros algoritmos, incluindo variantes que utilizam votação e média. Os resultados mostraram que o voted-perceptron oferece uma melhoria significativa em precisão e eficiência computacional. Uma aplicação voted-perceptron aparece em [8]. No qual os autores fazem uma análise do perceptron e das SVMs no problema de processamento de linguagem natural. A análise feita levou em consideração tempo, acurácia, e curvas de treinamento. Nos experimentos realizados pelos autores, o voted-perceptron obteve resultados semelhantes aos das SVMs em termos de acurácia, ainda que o tempo de treinamento e predição tenham sido consideravelmente menores. Outra aplicação em linguagem natural foi feita em [10], onde foi aplicado um voted-perceptron para desambiguação morfológica no caso da lı́ngua cazaque. Há exemplos em outras áreas, como a área da saúde, na qual foi implementado o voted-perceptron para predição de doenças do coração [11]. O voted-perceptron foi comparado com outros métodos, como o random forests, o ZeroR e o Kstar. O desempenho do voted-perceptron foi muito bom, de 94.2% contra 96.7% do primeiro colocado, o random-forest. Em relação à remoção de outliers em redes perceptron, em [12] foi feita a predição de diabetes dado um conjunto de caracterı́sticas usando uma rede MLP (multilayer perceptron) na qual a remoção de outliers foi feita adicionando uma camada de RBFs à rede. Os resultados mostraram que as redes com detectores de outliers performaram melhor que suas variantes sem a detecção de outliers. Um exemplo foram as redes MLP, na qual o aumento da acurácia com a detecção de outliers foi de 5%. Em [13], foi feito um estudo de quais métodos para detecção de outliers são mais adequados para o problema de previsão de valores de propriedades imobiliárias usando redes neurais. Foram utilizados vários métodos univariados de detecção de outliers, como o método de Tukey, o método de Desvio Padrão (SD), o método da mediana, o método do escore Z, o método MAD, o método do escore Z modificado, entre outros. Os conjuntos de dados preparados após a remoção dos outliers por cada método, utilizando como variável base para essa remoção a área da propriedade, foram utilizados para a previsão com redes neurais. Ao final, foi feita uma comparação dos resultados de cada método de remoção de outliers. Por fim, em [14] foi feito um estudo dos principais métodos para detecção de outliers incluindo métodos com classificadores. Foram avaliados os seguintes métodos: K-Means Clustering, Hierarchical Clustering, EM Clustering, Multilayer Perceptron, RBF Network, Naive Bayes, J48 Decision Tree. IV. BASES TE ÓRICAS Nessa seção será feita uma breve explicação dos conceitos utilizados para o desenvolvimento desse artigo. Os principais conceitos são os métodos de detecção de outliers utilizados em [13] que, apesar de simples, se mostraram eficientes no estudo em questão. Será feita também uma explicação do voted-perceptron, seus objetivos e diferenças em relação ao perceptron tradicional. A. Voted Perceptron O voted-perceptron é uma extensão do algoritmo Perceptron tradicional que melhora seu desempenho ao manter um conjunto de vetores de pesos e seus votos correspondentes. O voted-perceptron foi motivado pelo baixo desempenho computacional das SVMs em grandes datasets. Foi mostrado em [9] que o algoritmo do voted-perceptron é muito simples e fácil de implementar, e os limites teóricos sobre o erro de generalização esperado do novo algoritmo são quase idênticos aos limites para as SVMs dados por Vapnik e Chervonenkis (1974) no caso linearmente separável. O algoritmo do Perceptron tradicional pode ser descrito da seguinte forma: 1) Inicialize os pesos w como zero. 2) Para cada exemplo de treinamento (xi , yi ): • Compute a predição: ŷi = sign(w · xi ) • Se ŷi ̸= yi , atualize os pesos: w ← w + yi xi O voted-perceptron aprimora o Perceptron tradicional ao acompanhar múltiplos vetores de pesos e seus votos. O algoritmo pode ser resumido da seguinte forma: 1) Inicialize uma lista vazia de vetores de pesos e seus votos correspondentes. 2) Para cada exemplo de treino (xi , yi ): • Compute a predição: k X ŷi = sign αj wj · xi j=1 onde αj é o número de votos para o vetor de pesos wj . • Se ŷi ̸= yi : – Atualize os pesos: wnovo = wantigo + yi xi – Adicione o novo vetor de pesos wnovo à lista com um voto inicial de 1. • Se ŷi = yi , incremente o número de votos do último vetor de pesos. Diferenças entre o Perceptron Tradicional e o votedperceptron: • Armazenamento de Pesos: O Perceptron tradicional mantém um único vetor de pesos, enquanto o votedperceptron mantém uma lista de vetores de pesos e seus respectivos números de votos. • Mecanismo de Predição: O Perceptron tradicional faz previsões baseando-se apenas no vetor de pesos atual, enquanto o voted-perceptron combina previsões de vários vetores de pesos com base em seus votos. • Desempenho: O voted-perceptron frequentemente alcança um desempenho melhor em dados não linearmente separáveis devido à sua capacidade de aproveitar múltiplos vetores de pesos. O voted-perceptron é uma poderosa extensão do Perceptron tradicional, melhorando a classificação ao utilizar múltiplos vetores de pesos e seus votos. Essa abordagem permite lidar melhor com conjuntos de dados mais complexos. B. Detecção de outliers A detecção de outliers é crucial na análise de dados, e vários métodos estatı́sticos são empregados para identificar esses valores atı́picos. Esta seção discute diversas técnicas univariadas de detecção de outliers apresentadas em [13], dando destaque às que tiveram melhor desempenho. O método de Tukey, também conhecido como método do boxplot, é uma técnica gráfica que resume a distribuição de um conjunto de dados com base em seus quartis. A Faixa Interquartil (IQR) é calculada como: IQR = Q3 − Q1 onde Q1 é o primeiro quartil e Q3 é o terceiro quartil. Outliers são definidos utilizando os seguintes limites: Limite Inferior = Q1 − 1.5 × IQR Limite Superior = Q3 + 1.5 × IQR Observações que ficam fora desses limites são consideradas outliers. Uma versão mais rigorosa, conhecida como método 3 IQR, utiliza um multiplicador de 3 em vez de 1.5. O método da mediana é uma técnica robusta que identifica outliers com base na mediana e na IQR. A mediana Q2 é calculada, e a IQR é usada para definir os limites: Limite Inferior = Q2 − k × IQR Limite Superior = Q2 + k × IQR Neste método, k pode ser ajustado; valores comumente usados são 1.5 e 3, semelhantes ao método de Tukey. Este método é menos sensı́vel a valores extremos em comparação com os métodos baseados na média e no desvio padrão. Outros métodos como o método de desvio padrão, Z-score e Z-score modificado são abordagens comuns para detectar outliers citadas em [13]. O método de desvio padrão utiliza a média e o desvio padrão para definir limites, sendo 2 ou 3 desvios padrão o critério usual. O Z-score, que também usa a média e o desvio padrão, calcula a padronização dos dados, considerando como outliers aqueles com valores absolutos de Z maior que 2 ou 3. Já o Z-score modificado, mais robusto, usa a mediana e o desvio absoluto da mediana (MAD), sendo considerado outlier qualquer valor com um Z-score modificado superior a 3.5. Esses métodos são eficientes, mas podem ser influenciados por valores extremos. Como o método da mediana foi o que obteve melhor resultado, será este o método de detecção de outliers utilizado neste artigo. V. METODOLOGIA Nessa seção será feita a explicação da metodologia utilizada. A metodologia de teste consistirá em comparar a performance do voted perceptron com o perceptron tradicional nos datasets MNIST, Boston Housing e Wine. Para o dataset MNIST, utilizou-se a transformação tSNE para reduzir a dimensionalidade dos dados para 2. A classificação do perceptron tradicional e do perceptron foi apenas para os dı́gitos entre 1 e 7. Para o dataset Boston Housing, a classificação foi entre duas classes: 1) se uma propriedade tem valor maior que a mediana dos valores das propriedades em todo dataset ou 2) não. Para o dataset Wine, a classificação foi entre duas classes: 1) se um vinho tem valor maior que a mediana dos valores das qualidade em todo dataset ou 2) não. Para cada dataset foi avaliada a performance do perceptron tradicional e do voted-perceptron com e sem o método de remoção de outliers. Aqui foi o utilizado o metódo da mediana para detecção de outliers. A variável considerada para detecção de outliers foi aquela que apresenta maior correlação com a variável de saı́da. VI. R ESULTADOS E DISCUSS ÕES A. Boston Housing Nesse dataset, a matriz de correlação obtida foi a mostrada na figura abaixo. Fig. 1. Matriz de correlação para o Boston Housing Como pode-se observar, a variável de maior influência em MEDV (valor médio do imóvel), foi a LSTAT. Portanto, foi essa a variável utilizada para detecção de outliers. Quanto aos resultados, quando não foi feita a remoção de outliers, o voted-perceptron obteve uma acurácia de 83% no conjunto de teste. O perceptron tradicional obteve uma acurácia de 81.55%. Quando foi feita a remoção de outliers apenas no conjunto de treinamento, utilizando um limite de 1.5 * IQR, o voted-perceptron obteve uma acurácia de 87.19% e o perceptron tradicional obteve uma acurácia de 82.76%. B. MNIST Nesse dataset, ao invés de utilizar a matriz de correlação a variável para seleção de outliers foi feita com base no gráfico do t-SNE. Segue o gráfico abaixo. Fig. 3. Matriz de corelação para o dataset Wine Como pode-se observar, a variável de maior influência em quality (qualidade do vinho), foi a volatile acidity. Portanto, foi essa a variável utilizada para detecção de outliers. A acurácia obtida com a remoção de outliers foi de 76,66% para o voted-perceptron e 67,47% para o perceptron. Já sem a remoção de outliers, as acurácias foram de 75,32% para o voted-perceptron e 64,19% para o perceptron. D. Conclusões Conclui-se, portanto, que o voted-perceptron apresenta uma melhoria com relação ao perceptron tradicional em todos os casos, seja com ou não remoção de outliers. Como nas SVMs, o voted-perceptron tem uma sensibilidade a outliers, mas ainda sim performou bem com casos não linearmente separáveis como o MNIST. A SVM tradicional sem mapeamento para dimensões maiores teria problemas nessa situação, haja vista que o problema não é linearmente separável em duas dimensões. O voted-perceptron não precisou desse mapeamento, que seria computacionalmente custoso e performou bem. O voted-perceptron consiste portanto, em uma melhoria sólida ao perceptron tradicional e de aplicação mais simples que as SVMs. VII. A NEXO Todos os códigos fonte podem ser encontrados em : GitHub Fig. 2. T-SNE MNist R EFERENCES Como se pode observar, a componente um tem mais efeito na determinação dos outliers. Outro ponto de ajuste foi o limite para consideração de outliers. Como observa-se pela linha pontilhada, os outliers se encontram mais à esquerda de -10 para os dı́gitos 1 e mais a direita de 10 para os dı́gitos 7. Portanto, o limite utilizado aqui foi de 0.9 * IQR. Sem a remoção de outliers, a acurácia do voted-perceptron foi de 99.11% e a do perceptron tradicional foi de 98.29%. Quando foi feita a remoção de outliers no conjunto de treinamento, a acurácia do voted-perceptron e do perceptron tradicional foi de 99.23% e 95.98%, respectivamente. C. Wine Nesse dataset, a matriz de correlação obtida foi a mostrada na figura abaixo. [1] F. Rosenblatt, “The perceptron: A probabilistic model for information storage and organization in the brain,” Psychological Review, vol. 65, no. 6, pp. 386–408, 1958. [2] N. Bhatia and Vandana, “Survey of nearest neighbor techniques,” 2010. [Online]. Available: https://arxiv.org/abs/1007.0085 [3] L. E. Sucar and L. E. Sucar, “Bayesian classifiers,” Probabilistic Graphical Models: Principles and Applications, pp. 43–69, 2021. [4] Y.-c. Wu and J.-w. Feng, “Development and application of artificial neural network,” Wireless Personal Communications, vol. 102, pp. 1645– 1656, 2018. [5] K. K. Rana et al., “A survey on decision tree algorithm for classification,” International journal of Engineering development and research, vol. 2, no. 1, pp. 1–5, 2014. [6] C. Cortes and V. Vapnik, “Support-vector networks,” Mach. Learn., vol. 20, no. 3, p. 273–297, Sep. 1995. [Online]. Available: https://doi.org/10.1023/A:1022627411411 [7] B. E. Boser, I. M. Guyon, and V. N. Vapnik, “A training algorithm for optimal margin classifiers,” in Proceedings of the Fifth Annual Workshop on Computational Learning Theory, ser. COLT ’92. New York, NY, USA: Association for Computing Machinery, 1992, p. 144–152. [Online]. Available: https://doi.org/10.1145/130385.130401 [8] M. Sassano, “An experimental comparison of the voted perceptron and support vector machines in Japanese analysis tasks,” in Proceedings of the Third International Joint Conference on Natural Language Processing: Volume-II, 2008. [Online]. Available: https: //aclanthology.org/I08-2117/ [9] Y. Freund and R. E. Schapire, “Large margin classification using the perceptron algorithm,” Machine Learning, vol. 37, no. 3, pp. 277–296, 1999. [10] G. Tolegen, A. Toleu, and R. Mussabayev, “Voted-perceptron approach for Kazakh morphological disambiguation,” in Proceedings of the 1st Joint Workshop on Spoken Language Technologies for Underresourced languages (SLTU) and Collaboration and Computing for Under-Resourced Languages (CCURL), D. Beermann, L. Besacier, S. Sakti, and C. Soria, Eds. Marseille, France: European Language Resources association, May 2020, pp. 258–264. [Online]. Available: https://aclanthology.org/2020.sltu-1.36/ [11] S. S. Naveed, “Prediction of heart disease using voted perceptron,” Journal of Artificial Intelligence & Cloud Computing, vol. 1, no. 4, pp. 1–5, 2022. [12] S. Ranjeeth, V. A. K. Kandimalla, and G. R. D, “Predicting diabetes using outlier detection and multilayer perceptron with optimal stochastic gradient descent,” in 2020 IEEE India Council International Subsections Conference (INDISCON), 2020, pp. 51–56. [13] S. C. Satapathy, V. Bhateja, R. Somanah, X.-S. Yang, and R. Senkerik, “Impact of outlier detection on neural networks based property value prediction,” in Proceedings of Fifth International Conference INDIA 2018 Volume 1. Springer, 2019, pp. 481–495. [14] D. Sinwar and V. S. Dhaka, “Outlier detection from multidimensional space using multilayer perceptron, rbf networks and pattern clustering techniques,” in 2015 International Conference on Advances in Computer Engineering and Applications (ICACEA). IEEE, 2015, pp. 573–579.
0
You can add this document to your study collection(s)
Sign in Available only to authorized usersYou can add this document to your saved list
Sign in Available only to authorized users(For complaints, use another form )