Bora trocar uma ideia sobre os Dados, o Aprendizado e a Modelagem no mundo do Machine Learning? 🤔 Essas são as paradas chave pra gente começar a entender essa brasa toda! 🔥
Nesse post, a gente vai botar um nome nas coisas (tipo, os termos padrão) que a galera usa pra falar de dados e dos “montes” de dados.
A gente também vai entender as ideias e os termos que usam pra descrever como a máquina aprende e como a gente cria os “modelos” a partir desses dados. Isso vai te dar uma visão bem legal pra você não se perder nessa jornada do Machine Learning! 😉
As máquinas aprendem com exemplos, tá ligado? Por isso, é super importante a gente entender bem os dados que a gente joga pra elas e os termos que a galera usa pra descrever esses dados.
- Instância: Imagina uma linha numa tabela, tipo no Excel. Cada linha é uma instância. É tipo uma “foto” de alguma coisa que a gente observou.
- Característica: Agora pensa numa coluna dessa tabela. Cada coluna é uma característica. É tipo um detalhe, uma qualidade que a gente observou em cada “foto”. A galera também chama de “atributo”. Algumas características a gente usa pra ensinar a máquina (os “preditores”) e outras são o que a gente quer que a máquina aprenda a prever.
- Tipo de dados: Cada característica tem um tipo, né? Pode ser um número com vírgula, um número inteiro, uma categoria (tipo “cachorro” ou “gato”) ou uma ordem (tipo “pequeno”, “médio”, “grande”). Até texto e data podem virar números ou categorias pra máquina entender.
É tipo uma coleção dessas “fotos” (instâncias). Pra ensinar a máquina, a gente geralmente precisa de uns “montes” de dados diferentes pra várias coisas.
É o “montão” de dados que a gente dá pro algoritmo de Machine Learning pra ele aprender e criar o nosso “modelo”. É tipo a “escola” dos dados.
É outro “montão” de dados que a gente usa pra ver se o nosso “modelo” aprendeu direitinho e tá acertando nas previsões. A gente NÃO usa esses dados pra ensinar o modelo. A galera também chama de “conjunto de dados de validação”.
Às vezes a gente tem que juntar essas “fotos” pra formar nossos “montões” de dados, ou às vezes já nos dão um “montão” pronto e a gente tem que dividir ele em partes pra treinar e testar.
Machine Learning, na real, é a máquina aprendendo sozinha com algoritmos. Se liga em algumas ideias importantes sobre esse aprendizado:
Quando o “modelo” aprende os dados de treino DE-MA-SI-A-DO bem e não consegue generalizar pra dados novos, a gente chama de sobreaprendizagem ou overfitting. O resultado é que ele acerta nos dados de treino, mas erra feio nos outros.
Já quando o “modelo” não aprendeu o suficiente com os dados porque o aprendizado parou muito cedo, a gente chama de subaprendizagem ou underfitting. O resultado é que ele não manda bem em NENHUM dado, nem nos de treino.
No Machine Learning, a modelagem é o processo de criar e escolher um modelo. Esse modelo é tipo uma fórmula matemática ou um conjunto de regras que representa o que a máquina aprendeu com os dados. Ele é o “cérebro” do sistema, responsável por fazer as previsões, classificações, etc.
- Dados: Você tem um monte de informações (fotos de doguinhos e gatinhos, histórico de compras, leituras de sensores…).
- Algoritmo: Você escolhe um algoritmo de Machine Learning (tipo regressão linear, árvore de decisão, rede neural…). É tipo a “receita” pra aprender com os dados.
- Modelagem: É usar essa “receita” pra aprender os padrões nos dados. O resultado é o modelo treinado.
- Modelo: É o “arquivo” que guarda o que o algoritmo aprendeu. Ele aprendeu a ligar certas características (orelha pontuda, cor do pelo…) com a resposta certa (“gato”).
- Previsão/Classificação: Depois de treinado, o modelo consegue olhar dados NOVOS e dizer o que ele acha que é (se é um gato ou um cachorro, por exemplo).
Escolher qual algoritmo usar e como configurá-lo é como escolher um modelo entre vários possíveis. A cada tentativa, a gente tem um modelo novo que pode usar ou mudar.
É tipo a “preguiça” do modelo de aprender coisas novas. Todo modelo tem um “bias”, que é um erro que ele já traz “de fábrica”. Modelos com “bias” baixo conseguem aprender mais detalhes, mas podem ter mais “variância”.
É o quanto o modelo muda dependendo dos dados que a gente usa pra treinar. Um modelo com “variância” alta muda muito com dados diferentes. Pra diminuir a “variância”, a gente pode treinar o modelo várias vezes com dados diferentes e ver a média dos resultados.
Bias-Variance Tradeoff: Escolher o modelo certo é encontrar um equilíbrio entre o “bias” e a “variância”. Um modelo com pouco “bias” pode ter muita “variância” e precisar de muito treino. Um modelo com muito “bias” aprende rápido, mas não performa tão bem.