A redução da amostragem diminui o número de amostras de dados em um conjunto de dados. Fazendo isso, ele visa corrigir dados desequilibrados e assim melhorar o desempenho do modelo.
A subamostragem é uma técnica comum de processamento de dados que lida com desequilíbrios em um conjunto de dados removendo dados da classe majoritária até que corresponda ao tamanho da classe minoritária. Essa abordagem se opõe ao superamostragem, que consiste em refazer a amostra dos pontos da classe majoritária. Tanto o scikit-learn do Python quanto o Matlab têm funções internas para implementar técnicas de subamostragem.
A subamostragem na ciência de dados é frequentemente confundida com a subamostragem no processamento digital de sinais (DSP). Os dois são semelhantes em essência. A subamostragem no processamento digital de sinais (também conhecido como dizimação) é o processo de diminuir a largura de banda e a taxa de amostragem, removendo assim parte dos dados do sinal original. O processo de redução da frequência de amostragem é feito frequentemente reduzindo-se a taxa de amostragem por um fator inteiro, mantendo apenas uma a cada nth amostras. Para isso utiliza-se um filtro passa-baixa, também chamado de filtro anti-aliasing, para reduzir as componentes de alta frequência/ruído de um sinal em tempo discreto pelo fator inteiro mencionado anteriormente.
A subamostragem para balanceamento de dados pode ser confundida com a utilizada no processamento de imagens. Quando os dados apresentam muitas características, como em imagens de ressonância magnética de alta resolução, os cálculos podem ficar caros. Portanto, no processamento de imagens, a subamostragem reduz a dimensionalidade de cada ponto de dados por meio de convolução. Isso não equivale a balancear o conjunto de dados: é uma técnica de otimização que depois exigirá interpolação para recuperar os dados originais.
A subamostragem é uma forma eficaz de lidar com os desequilíbrios em um conjunto de dados. Um conjunto de dados desequilibrado é definido como um conjunto no qual uma classe está fortemente sub-representada em relação à população real, criando um viés não intencional. Por exemplo, imagine que um modelo seja treinado para classificar imagens como um gato ou um cachorro. O conjunto de dados utilizado é composto por 90% de gatos e 10% de cães. Nesse cenário, os gatos estão super-representados e se tivermos um classificador que preveja gatos o tempo todo, ele produzirá uma precisão de 90% para classificar gatos, mas 0% de precisão para classificar cães. O conjunto de dados desequilibrado, nesse caso, fará os classificadores favorecerem a precisão da classe majoritária em detrimento da classe minoritária. O mesmo problema pode ocorrer com conjuntos de dados multiclasse.1
O processo de subamostragem neutraliza o problema do conjunto de dados desequilibrado. Ele identifica pontos da classe majoritária para remover com base em critérios específicos. Esses critérios podem mudar com a técnica de subamostragem escolhida. Isso equilibra o conjunto de dados ao reduzir efetivamente o número de amostras da classe majoritária super-representada até que o conjunto de dados contenha uma proporção igual de pontos entre todas as classes.
Embora os desequilíbrios possam ser vistos bastando plotar as contagens de pontos de dados em cada classe, isso não nos diz se afetará muito o modelo. Felizmente, podemos usar métricas de desempenho para avaliar o quanto uma técnica de downsampling corrige o desequilíbrio de classe. A maioria dessas métricas será para classificação binária, em que há apenas duas classes: uma positiva e uma negativa. Normalmente, a classe positiva é a classe minoritária, enquanto a classe negativa é a classe majoritária. Duas métricas populares são as curvas ROC (Receiver Operating Characteristic, característica de operação do receptor) e as curvas de precisão-recall.1
A subamostragem aleatória é uma técnica de exclusão em que pontos aleatórios da classe majoritária são escolhidos sem reposição e excluídos do conjunto de dados até que o tamanho da classe majoritária seja igual ao da classe minoritária. É uma forma simples de excluir aleatoriamente um subconjunto de dados para fins de equilíbrio. No entanto, essa técnica pode eliminar padrões ou distribuições importantes da classe majoritária, prejudicando o desempenho do classificador.2
A subamostragem Near Miss é uma técnica que procura equilibrar a distribuição de classes eliminando aleatoriamente certos exemplos da classe majoritária.
Conceitualmente, o Near Miss funciona mantendo dados em áreas onde as classes majoritária e minoritária estão muito próximas, pois esses pontos apresentam informações-chave para diferenciá-las.3 Esses pontos são geralmente conhecidos como dados "difíceis" de aprender. A subamostragem Near Miss geralmente opera em duas etapas:
Há três variações do algoritmo Near Miss que oferecem uma maneira mais precisa de selecionar as instâncias da classe majoritária para remover.
O Condensed Nearest Neighbors (CNN, não confundir com Convolutional Neural Networks) procura um subconjunto de um conjunto de dados que possa ser utilizado para treinamento sem perda de desempenho do modelo. Isso é conseguido com a identificação de um subconjunto que permita treinar um modelo que prediga corretamente todo o conjunto de dados.
A subamostragem de CNN pode ser dividido nas seguintes etapas:5
Assim como o Near Miss, esse processo basicamente remove todas as instâncias da classe majoritária que estão longe da fronteira de decisão, que mais uma vez são pontos fáceis de classificar. Isso garante que todos os dados do conjunto de dados original possam ser previstos corretamente utilizando somente os dados em S. Assim o conjunto pode ser reduzido significativamente, mantendo razoavelmente bem a fronteira de decisão.
Esta imagem apresenta um exemplo de aplicação dos vizinhos mais próximos condensados, utilizando um vizinho mais próximo e 21 vizinhos mais próximos em dois conjuntos de dados. As duas imagens na parte superior são antes da aplicação dos vizinhos mais próximos condensados, enquanto as duas na parte inferior são depois. Nota-se que a fronteira decisória é mantida de forma satisfatória.
O princípio do downsampling de Tomek Link é reduzir o ruído nos dados, removendo pontos próximos à fronteira de decisão e aumentando a separação entre as classes. Ele funciona identificando "Tomek links", pares de pontos de classes diferentes sem a existência de um terceiro ponto mais próximo de qualquer um deles.2
Para cada link de Tomek, o ponto pertencente à classe majoritária é removido. Removendo-se um ponto da classe majoritária que está próximo de um ponto da classe minoritária, a separação entre as classes aumenta. Uma desvantagem desse método é a complexidade computacional para calcular todas as distâncias entre pares de pontos das classes majoritária e minoritária.2A subamostragem Tomek Link é mais eficaz quando combinada com outras técnicas.
A subamostragem Edited Nearest Neighbors (ENN) é semelhante à subamostragem de Tomek Link, onde o objetivo é remover os exemplos próximos à linha de decisão para melhorar a separação das classes. Em geral, esse método remove os pontos de dados cuja classe difere da maioria de seus vizinhos.2 Isso significa que o processo elimina pontos da classe majoritária cuja maioria dos vizinhos mais próximos pertence à classe minoritária, e vice-versa. A maioria, nesse contexto, pode ser definida livremente: pode significar que pelo menos um vizinho pertence a outra classe ou que a proporção de vizinhos de uma classe distinta excede um determinado limite.
A subamostragem de ENN geralmente é feita com três vizinhos mais próximos, conforme ilustrado abaixo.
Esta é uma estratégia mais ampla, pois analisa a vizinhança geral dos pontos em vez de um único vizinho, sendo uma forma eficiente de remover ruídos nos dados. A subamostragem ENN é mais eficaz quando combinada com outras técnicas.
Os desenvolvimentos atuais na subamostragem giram em torno de integrações de deep learning. Isso vem sendo aplicado em áreas como processamento de imagens e dados médicos, envolvendo o uso de redes neurais para subamostragem.6 Um exemplo disso é o SOM-US, que utiliza uma rede neural de duas camadas.7 Nos últimos anos, o aprendizado ativo também foi aplicado ao subamostragem para tentar mitigar os efeitos de dados desbalanceados.8 Experimentos demonstraram que esses modelos têm desempenho significativamente superior às técnicas tradicionais.
As pesquisas atuais sobre subamostragem também procuram combiná-la com outras técnicas para criar métodos híbridos. Uma das combinações é subamostrar e superamostrar os dados para aproveitar os benefícios de ambos os sistemas: SMOTE+Tomek Link, Agglomerative Hierarchical Clustering (AHC) e SPIDER são alguns exemplos.9As técnicas a nível de algoritmo também podem incorporar ideias das técnicas tradicionais de subamostragem, como o Hard Example Mining, onde o treinamento se concentra apenas nos pontos de dados "mais difíceis".2Todas essas abordagens mostram melhor desempenho do que usar cada técnica isoladamente.
Entrevistamos duas mil organizações a respeito de suas iniciativas de IA para descobrir o que está funcionando, o que não está e como se preparar.
O IBM Granite é nossa família de modelos de IA abertos, de alto desempenho e confiáveis, personalizados para a empresa e otimizados para escalar suas aplicações de IA. Explore as opções de linguagens, código, séries temporais e proteções.
Acesse nosso catálogo completo com mais de 100 cursos online comprando uma assinatura individual ou multiusuário hoje mesmo, para você expandir suas habilidades em uma variedade de nossos produtos por um preço único com desconto.
Liderada pelos principais líderes da IBM, o currículo dessa experiência foi desenvolvido para ajudar líderes empresariais a terem o conhecimento necessário para priorizar os investimentos em IA que podem estimular o crescimento.
1 Haobo He and Edwardo Garcia, Learning from Imbalanced Data, IEEE, September 2009, https://ieeexplore.ieee.org/document/5128907 (link fora de ibm.com).
2 Kumar Abhishek and Mounir Abdelaziz, Machine Learning for Imbalanced Data, Packt, novembro de 2023
3 Ajinkya More, Survey of resampling techniques for improving classification performance in unbalanced datasets, 22 de agosto de 2016, https://arxiv.org/pdf/1608.06048 (link fora do ibm.com).
4 Jianping Zhang and Inderjeet Mani, kNN Approach to Unbalanced Data Distributions: A Case Study involving Information Extraction, 2003, https://www.site.uottawa.ca/~nat/Workshop2003/jzhang.pdf (link externo ao site ibm.com).
5 Mais, Survey of resampling técnicas para melhorar o desempenho de calssification em conjuntos de dados desequilibrados, 22 de agosto de 2016, https://arxiv.org/pdf/1608.06048 (link fora do ibm.com). Alberto Fernandez, et al., Learning from Imbalanced Data Sets, Springer, 2018.
6 Md Adnan Arefeen, Sumaiya Tabassum Nimi, and M. Sohel Rahman, Neural Network-Based Undersampling Techniques, IEEE, 02 setembro de 2020, https://ieeexplore.ieee.org/abstract/document/9184909?casa_token=RnLRvnqyiF8AAAAA:iyxPWT06HX6a9g8X1nhShrllo_ht9ZM1cqHMWjET5wOopeR5dqizBF29cSSmFMRPo9V1D7XBIwg (link resides outside ibm.com).
7 Ajay Kumar, SOM-US: A Novel Under-Sampling Technique for Handling Class Imbalance Problem, hrcak, 30 de janeiro 2024, https://hrcak.srce.hr/clanak/454006 (link resides outside ibm.com).
8 Wonjae Lee and Kangwon Seo, Downsampling for Binary Classification with a Highly Imbalanced Dataset Using Active Learning, Science Direct, 26 April 2022, https://www.sciencedirect.com/science/article/pii/S2214579622000089 (link fora de ibm.com).
9 Alberto Fernandez, et al., Learning from Imbalanced Data Sets, Springer, 2018.
IBM web domains
ibm.com, ibm.org, ibm-zcouncil.com, insights-on-business.com, jazz.net, mobilebusinessinsights.com, promontory.com, proveit.com, ptech.org, s81c.com, securityintelligence.com, skillsbuild.org, softlayer.com, storagecommunity.org, think-exchange.com, thoughtsoncloud.com, alphaevents.webcasts.com, ibm-cloud.github.io, ibmbigdatahub.com, bluemix.net, mybluemix.net, ibm.net, ibmcloud.com, galasa.dev, blueworkslive.com, swiss-quantum.ch, blueworkslive.com, cloudant.com, ibm.ie, ibm.fr, ibm.com.br, ibm.co, ibm.ca, community.watsonanalytics.com, datapower.com, skills.yourlearning.ibm.com, bluewolf.com, carbondesignsystem.com, openliberty.io