No campo do aprendizado de máquina, o overfitting se manifesta quando um algoritmo se adapta excessivamente ou até mesmo de forma precisa aos dados de treinamento, levando a um modelo que não consegue fazer previsões ou conclusões precisas com outros dados que não sejam os de treinamento.
O overfitting anula o propósito do modelo de aprendizado de máquina. A capacidade de generalização de um modelo para novos dados é o que nos permite utilizar algoritmos de aprendizado de máquina diariamente para realizar previsões e classificar dados.
No desenvolvimento de algoritmos de aprendizado de máquina, normalmente é usado um conjunto de dados de amostra para treinar o modelo. Entretanto, quando o modelo é treinado por um período prolongado nos dados de amostra ou quando o modelo é excessivamente complexo, ele pode começar a aprender o "ruído", ou seja, informações irrelevantes, dentro do conjunto de dados. Quando o modelo memoriza o ruído e se adapta excessivamente ao conjunto de treinamento, ele se torna "overfitted" e não consegue generalizar bem para novos dados. Se um modelo não puder generalizar bem para novos dados, ele não será capaz de executar as tarefas de classificação ou previsão para as quais foi destinado.
Baixas taxas de erro e uma alta variância são bons indicadores de overfitting. Para evitar esse tipo de comportamento, é comum reservar uma parte do conjunto de dados de treinamento como o "conjunto de teste" para verificar o overfitting. Se os dados de treinamento têm uma taxa de erro baixa e os dados de teste têm uma taxa de erro alta, isso indica overfitting.
Se o excesso de treinamento ou a complexidade do modelo resultarem em overfitting, uma resposta lógica de prevenção seria interromper o processo de treinamento mais cedo, também conhecido como "early stopping", ou reduzir a complexidade do modelo eliminando entradas menos relevantes. No entanto, se você pausar o treinamento muito cedo ou excluir muitas características importantes, você pode enfrentar o problema oposto e, em vez disso, pode ocorrer o underfitting do seu modelo. O underfitting ocorre quando o modelo não foi treinado por tempo suficiente ou as variáveis de entrada não são significativas o suficiente para determinar uma relação significativa entre as variáveis de entrada e saída.
Em ambas as situações, o modelo não consegue identificar a tendência predominante nos dados de treinamento. Portanto, o underfitting também apresenta uma generalização ruim para dados não vistos. No entanto, ao contrário do overfitting, os modelos de underfitting apresentam alto viés e menos variância em suas previsões. Isso ilustra a troca de viés-variância, que ocorre quando um modelo mal ajustado passa para um estado superajustado. Conforme o modelo aprende, seu viés diminui, mas pode aumentar em variância à medida que se torna overfitted. Ao ajustar um modelo, o objetivo é encontrar o "ponto ideal" entre o underfitting e o overfitting, para que ele possa estabelecer uma tendência dominante e aplicá-la amplamente a novos conjuntos de dados.
Para compreender a precisão dos modelos de aprendizado de máquina, é fundamental testar o ajuste do modelo. A validação cruzada k-fold é uma das técnicas mais populares para avaliar a acurácia do modelo.
Na validação cruzada k-folds, os dados são divididos em k subconjuntos de tamanhos iguais, conhecidos como "folds". Um dos k-folds será usado como conjunto de teste, também chamado de conjunto de retenção ou conjunto de validação, enquanto os demais folds serão utilizados para treinar o modelo. Este processo se repete até que cada dobra tenha atuado como uma dobra de resistência. Após cada avaliação, uma pontuação é mantida e, ao término de todas as iterações, as pontuações são calculadas para avaliar o desempenho geral do modelo.
Embora o uso de um modelo linear nos ajude a evitar o overfitting, muitos problemas do mundo real são não lineares. Além de entender como detectar o overfitting, é importante entender como evitá-lo completamente. Abaixo estão algumas técnicas que você pode usar para evitar o overfitting:
Embora o descrito acima seja a definição estabelecida de overfitting, uma pesquisa recente (link externo a IBM) indica que modelos complexos, como modelos de deep learning e redes neurais, têm um desempenho de alta precisão apesar de serem treinados para "ajustar ou interpolar de forma exata". Essa descoberta está diretamente em desacordo com a literatura histórica sobre o assunto e é explicada pela curva de risco de "descida dupla" abaixo. É possível observar que, à medida que o modelo aprende além do limiar da interpolação, o desempenho do modelo melhora. Os métodos que mencionamos anteriormente para evitar o overfitting, como parada precoce e regularização, podem realmente evitar a interpolação.
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.
Quer ter mais retorno sobre seus investimentos em IA? Saiba como o dimensionamento da IA generativa em áreas importantes promove mudanças, ajudando suas melhores mentes a criar e oferecer soluções novas e inovadoras.
Saiba como incorporar com confiança a IA generativa e o aprendizado de máquina em sua empresa.
Aprofunde-se nos três elementos críticos de uma estratégia de IA forte: gerar vantagem competitiva, escalar a IA em toda a empresa e avançar na IA confiável.