Viés em estatísticas e aprendizado de máquina
Na estatística e mais especificamente no mundo do machine learning, é importante conhecer as limitações dos modelos.
Durante o treinamento, diversos problemas podem fazer com que o algoritmo não aprenda adequadamente, gerando erros que resultarão em má previsão dos resultados.
Um dos erros mais frequentes é o que é conhecido como preconceito. Um modelo tendencioso gerará um resultado impreciso da realidade.
Por esse motivo, é importante fazer um diagnóstico e avaliar os modelos de aprendizado de máquina depois de treinados. Se detectarmos um erro, podemos agir e resolvê-lo antes de colocá-lo em produção que possa afetar o negócio.
Neste artigo veremos o que é preconceito ou modelo tendencioso e aprenderemos como detectá-lo e lidar com ele para melhorar sua precisão.
O que é preconceito no aprendizado de máquina?
O viés pode ser pensado como um modelo que não levou em consideração todas as informações disponíveis no conjunto de dados e, portanto, é muito pobre para fazer previsões precisas.
Isso é conhecido como underfitting e ocorre quando o modelo é simples demais para que o problema seja resolvido.
Existem diferentes maneiras de detectar preconceitos. Uma delas é gerar curvas de aprendizado. (No artigo de o que é overfitting é melhor explicado o que são).
Se a curva de validação e a curva de treinamento apresentarem uma pequena lacuna e um grande erro, significa que o modelo é muito pobre e, portanto, pode sofrer de subajuste, indicando que há um problema de viés.
Como melhorar um modelo tendencioso
Depois de detectarmos o problema, devemos agir. Para melhorar um modelo tendencioso podemos expandir o tamanho do conjunto de treinamento. Desta forma, forçaremos o modelo a aprender padrões mais complexos e reduziremos o underfitting.
No entanto, muitas vezes os dados são limitados e não é possível obter mais deles.
Outra opção é tentar outras técnicas de aprendizado de máquina ou Deep Learning que permitam maior flexibilidade e complexidade do modelo.
Muitos algoritmos de inteligência artificial possuem hiperparâmetros ajustáveis que podem ser usados para diminuir o viés e aumentar a complexidade do modelo.
O aumento de dados e a geração de dados sintéticos são outra opção. Como mencionamos, muitas vezes não conseguimos obter mais informações do que já temos, pois os conjuntos de dados são limitados.
No entanto, podemos usar diferentes técnicas para gerar dados sintéticos. Um deles é o aumento de dados. Isto é especialmente utilizado em imagens onde podemos girá-las, recortá-las, ampliar ou usar filtros para gerar novas imagens a partir das existentes.
Para outros tipos de dados podemos utilizar algoritmos de interpolação como SMOTE ou ADASYN, conhecidos como técnicas de sobreamostragem.
Diferenças entre viés e variância
Quando tentamos resolver o problema do preconceito, temos que ter cuidado para não conseguirmos o oposto. Se reajustarmos bastante os parâmetros e dermos muita flexibilidade ao modelo, poderemos passar de um modelo muito simples (underfitting) para um modelo muito complexo (overfitting). Este último seria um modelo com alta variância e baixo viés.
Uma variância alta significa que o modelo construído é muito complexo e muito específico para nossos dados de treinamento, por isso seria difícil generalizar para informações que não foram vistas durante o treinamento.
Por esta razão, é importante diagnosticar os modelos e tentar alcançar um equilíbrio entre viés (underfitting) e variância (overfitting).