O Aprendizado de Máquina é uma das áreas mais promissoras da inteligência artificial e revolucionou a maneira como lidamos com dados e tomamos decisões. No entanto, como em qualquer campo de pesquisa, existem desafios a serem enfrentados e neste post, vamos explorar alguns deles.
Quantidade insuficiente de dados de treinamento
Isso é um problema comum nessa área. Para que algoritmos de aprendizado de máquina consigam funcionar de forma correta é preciso uma grande quantidade de dados. Mesmo para problemas mais simples, normalmente é necessário centenas de exemplos.
Com poucos dados de treinamento disponíveis, corremos o risco do modelo não ser capaz de capturar todos os padrões e variações do problema, o que pode resultar em resultados imprecisos ou limitados. Algumas das formas de lidar com esse problema, são o uso de técnicas para geração sintética de dados, amostragem estratégica ou o uso de algoritmos de transferência de aprendizado que permitem treinar modelos com menos dados.
Dados de treinamento não representativos
Quando treinamos um modelo, nosso objetivo é que ele seja capaz de generalizar para dados não vistos durante o treinamento e para que isso se torne possível é necessário que os exemplos usados sejam representativos, ou seja, precisam ser variados e uma amostra fiel da população dos dados que o modelo encontrará quando usado em produção.
Imagine que queremos um modelo que reconheça imagens de carros e o treinamos com um conjunto de dados que contém principalmente imagens de carros de cor rosa. Quando esse modelo for usado no mundo real, ele pode ter dificuldade de reconhecer automóveis de outras cores além do rosa.
Uma forma de se resolver o problema seria aumentar a quantidade e a diversidade desses dados para garantir uma melhor representação da realidade e usar a técnica de validação cruzada para ajudar a garantir que o modelo seja treinado em um conjunto de dados representativo.
Dados de baixa qualidade
Naturalmente, dados de treinamento cheios de erros, outliers ou ruídos farão com que o modelo tenha dificuldade para detectar os padrões básicos e como resultado, é menos provável que funcione bem, afetando negativamente a capacidade de generalização do modelo.
Por exemplo, um modelo de classificação de spam treinado com um conjunto de dados com muitos exemplos de emails rotulados de forma incorreta como spam, pode ser incapaz de distinguir adequadamente entre mensagens que são legítimas e as que não são.
Para evitar esse problema, podemos dedicar um tempo maior na limpeza desses dados removendo valores ausentes, dados duplicados, dados discrepantes e etc. Outras técnicas que também podem ser aplicadas são a imputação de valores ausentes, transformação de dados ou o uso de modelos mais robustos que sejam capazes de lidar com dados com uma qualidade mais baixa e anomalias.
Características irrelevantes
Características irrelevantes são aqueles atributos que não têm impacto significativo na saída do modelo e quando são incluídas no treinamento, podem prejudicar a precisão do sistema. Por exemplo, o uso do número de irmãos parece não contribuir para sabermos se uma pessoa pode ou não ter uma doença cardíaca, portanto não faria sentido usar esse recurso no modelo.
Nosso modelo só será capaz de aprender se os dados tiverem características relevantes suficientes para isso e para evitarmos esse tipo de problema, podemos usar técnicas de seleção de recursos, como análise de correlação ou análise de componentes principais (PCA) e técnicas de engenharia de features.
Sobreajuste dos dados de treinamento
Um outro problema bastante comum em tarefas de aprendizado de máquina é o overfitting que ocorre quando o modelo funciona bem nos dados de treinamento, mas não generaliza tão bem em dados nunca vistos. Em outras palavras, o modelo decora os dados em vez de aprender os padrões que podem ser aplicados a novas entradas.
Existem algumas abordagens que podem ajudar a resolver o problema de sobreajuste como, por exemplo, uso de técnica de regularização, um conjunto de dados maior, seleção de recursos, validação cruzada, redução da complexidade do modelo e outros.
Subajuste dos dados de treinamento
O subajuste, por sua vez, ocorre quando o modelo é simples demais para aprender a estrutura fundamental dos dados tornando-se incapaz de se ajustar adequadamente. Como consequência temos um desempenho ruim tanto nos dados de treinamento quanto nos novos dados.
Possíveis soluções para o lidar com o underfitting podem envolver a utilização de modelos mais complexos, minimização das restrições do modelo ou seleção de melhores características desses dados.
Esses são apenas alguns dos problemas que podemos enfrentar ao trabalharmos com machine learning e algumas sugestões de como lidar com eles. É importante termos em mente que os dados são uma parte fundamental desse processo e sua qualidade e relevância têm impacto direto nos nossos resultados. Portanto, vale a pena dedicarmos um tempo no entendimento, seleção e pré-processamento desse insumo para alcançarmos modelos mais precisos e capazes de gerar insights valiosos para a empresa.
Autora
Liliane L. de Aquino