A unidade anterior apresentou o seguinte modelo, que classificou incorretamente muitas
árvores no conjunto de testes:
Figura 16. O modelo complexo com comportamento incorreto da unidade anterior.
O modelo anterior contém muitas formas complexas. Um modelo
mais simples processaria os novos dados melhor? Suponha que você substitua o modelo complexo por
um modelo ridiculamente simples, uma linha reta.
Figura 17. Um modelo muito mais simples.
O modelo simples generaliza melhor do que o complexo em novos dados. Ou seja,
o modelo simples fez previsões melhores no conjunto de teste do que o modelo complexo.
A simplicidade tem vencido a complexidade há muito tempo. Na verdade, a
preferência pela simplicidade remonta à Grécia antiga. Séculos depois,
um frade do século XIV chamado Guilherme de Ockham formalizou a preferência
pela simplicidade em uma filosofia conhecida como Faca
de Ockham. Essa filosofia
continua sendo um princípio fundamental de muitas ciências, incluindo
o aprendizado de máquina.
Exercícios: teste seu conhecimento
Você está desenvolvendo uma equação de física. Qual das fórmulas a seguir
se conforma mais à navalha de Occam?
Uma fórmula com 12 variáveis.
Doze variáveis parece muito complicado, não é?
As duas fórmulas de física mais famosas de todos os tempos (F=ma e
E=mc2) envolvem apenas três variáveis.
Uma fórmula com três variáveis.
Três variáveis são mais compatíveis com Occam do que doze variáveis.
Você está em um projeto de machine learning totalmente novo e está prestes a selecionar os primeiros recursos. Quantos recursos você deve escolher?
Escolha o maior número possível de atributos para começar a observar quais
atributos têm o maior poder preditivo.
Comece aos poucos. Cada novo recurso adiciona uma nova dimensão ao conjunto de dados de treinamento. Quando a dimensionalidade aumenta, o volume do espaço
aumenta tão rápido que os dados de treinamento disponíveis se tornam escassos. Quanto
mais dispersos forem seus dados, mais difícil será para um modelo aprender a relação
entre os atributos que realmente importam e o rótulo. Esse fenômeno é chamado de "maldição da dimensionalidade".
Escolha de um a três atributos que pareçam ter um forte poder preditivo.
É melhor que o pipeline de coleta de dados comece com apenas um ou dois recursos. Isso vai ajudar a confirmar se o modelo de ML funciona como esperado.
Além disso, ao criar uma base de referência com alguns recursos,
você vai sentir que está progredindo.
Escolha de quatro a seis atributos que pareçam ter um forte poder preditivo.
Você pode usar todos esses recursos, mas é melhor
começar com menos. Menos recursos geralmente significa menos complicações
desnecessárias.
Regularização
Os modelos de aprendizado de máquina precisam atender simultaneamente a duas metas conflitantes:
Ajuste bem os dados.
Ajuste os dados da maneira mais simples possível.
Uma abordagem para manter um modelo simples é penalizar modelos complexos, ou seja,
forçar o modelo a se tornar mais simples durante o treinamento. Penalizar modelos complexos é uma forma de regularização.
Perda e complexidade
Até agora, o curso sugeriu que o único objetivo do treinamento era
minimizar a perda, ou seja:
Como você viu, os modelos focados apenas na minimização de perdas tendem a ter um ajuste excessivo.
Um algoritmo de otimização de treinamento melhor minimiza uma combinação de
perda e complexidade:
Infelizmente, a perda e a complexidade geralmente têm uma relação inversa. À medida que
a complexidade aumenta, a perda diminui. À medida que a complexidade diminui, a perda aumenta.
Você precisa encontrar um meio-termo razoável em que o modelo faça boas previsões com os dados de treinamento e reais.
Ou seja, o modelo precisa encontrar um compromisso razoável
entre perda e complexidade.
O que é complexidade?
Você já viu algumas maneiras diferentes de quantificar a perda. Como você
quantificaria a complexidade? Comece a exploração com o seguinte exercício:
Exercício: verificar sua intuição
Até agora, falamos de forma bastante vaga sobre o que é a complexidade. Quais das ideias a seguir você acha que seriam métricas de complexidade
razoáveis?
A complexidade é uma função dos vieses de todos os atributos no modelo.
O viés não mede a complexidade.
A complexidade é uma função dos pesos do modelo.
Sim, essa é uma maneira de medir a complexidade de alguns modelos.
Essa métrica é chamada de
regularização L1.
A complexidade é uma função do quadrado dos pesos do modelo.
Sim, é possível medir a complexidade de alguns modelos dessa forma. Essa métrica é chamada de
regularização L2.
[null,null,["Última atualização 2024-11-14 UTC."],[[["Simpler models often generalize better to new data than complex models, even if they perform slightly worse on training data."],["Occam's Razor favors simpler explanations and models, prioritizing them over more complex ones."],["Regularization techniques help prevent overfitting by penalizing model complexity during training."],["Model training aims to minimize both loss (errors on training data) and complexity for optimal performance on new data."],["Model complexity can be quantified using functions of model weights, like L1 and L2 regularization."]]],[]]