Pular para conteúdo

Introdução & História

Machine Learning (ML) é o campo de estudo que dá aos computadores a capacidade de aprender a partir de dados sem serem explicitamente programados para cada situação. Em vez de escrever regras à mão, escrevemos programas que inferem as regras a partir de exemplos.

Esta primeira aula diz o que "aprender" significa e quando vale a pena. Depois mostra o aprendizado funcionando numa máquina sem eletrônica alguma: caixas de fósforos e contas coloridas que aprendem um pequeno jogo de tabuleiro só com feedback. Por fim conta como o campo chegou até aqui em 200 anos de história e mapeia as perguntas que o resto do curso vai responder. Os números citados sobre a máquina de caixas de fósforos vêm dos seus dois simuladores nesta página, que são determinísticos: quem aperta os mesmos botões vê as mesmas partidas.

Como esta aula está organizada

A aula tem duas abordagens. Cada uma tem slides, texto e uma atividade para fazer em aula no simulador desta página; o quiz do fim cobre a fundamental. Comece pela fundamental: a avançada parte dela.

Abordagem fundamental Abordagem avançada
pergunta O que significa uma máquina aprender e quando isso vale a pena? Como o campo chegou até aqui e que perguntas o resto do curso vai responder?
conteúdo a definição de Mitchell (tarefa, experiência, desempenho), quando as regras escritas à mão falham, o fluxo invertido, a máquina de caixas de fósforos que aprende Hexapawn, as três forças por trás do ML de hoje e suas grandes eras a linha do tempo completa, das caixas de fósforos ao perceptron, dois invernos da IA e duas retomadas, três lições da trajetória, onde este curso se encaixa e as perguntas que ele vai responder
lab em aula ensine a máquina de caixas de fósforos, passos 1 a 3 o que a máquina aprendeu e o mapa do curso, passos 4 a 6
ao final, você sabe descrever qualquer sistema que aprende pelos seus \(T\), \(E\) e \(P\); dizer quando aprender em vez de programar; explicar o aprendizado como ajuste de parâmetros a partir de feedback; citar as três forças por trás do ML de hoje situar um método na linha do tempo; explicar por que um modelo que generaliza supera uma tabela de consulta; reconhecer um ciclo de hype e seu antídoto; desmontar um método moderno em peças clássicas

Os dois labs rodam no simulador das caixas de fósforos da seção 3, no navegador: não há nada a instalar e, desta vez, nenhum notebook.

Abordagem fundamental

Uma pergunta guia esta parte: o que significa uma máquina aprender e quando isso vale a pena? A resposta parte de uma definição com três ingredientes (uma tarefa, a experiência e um jeito de medir o desempenho) e termina numa máquina feita de caixas de fósforos que joga cada vez melhor só porque os seus erros são removidos, uma conta de cada vez.

Esta parte segue um caminho em quatro etapas, desenhado abaixo: 1. o que é aprender, a definição de Mitchell; 2. por que aprender, quando as regras escritas à mão falham e como o aprendizado inverte o fluxo; 3. uma máquina que aprende, caixas de fósforos que aprendem um jogo só com feedback; 4. por que agora, as três forças por trás do machine learning de hoje e suas grandes eras. Cada etapa leva à sua seção e, nos slides, uma faixa embaixo mostra em que etapa você está.

  1. O que é aprendertarefa, experiência, desempenho
  2. Por que aprenderquando as regras falham; o fluxo invertido
  3. Uma máquina que aprendecaixas de fósforos e contas aprendem o Hexapawn
  4. Por que agoradados, computação, software; as grandes eras

Slides da abordagem fundamental

Clique nos slides e use as setas ← → para navegar; F abre em tela cheia e Esc mostra todos os slides. Abrir os slides numa aba nova

1. O que é aprender

Etapa 1. A definição formal clássica é de Tom Mitchell:

Mitchell (1997)

Dizemos que um programa de computador aprende com a experiência E em relação a alguma classe de tarefas T e medida de desempenho P, se seu desempenho nas tarefas em T, medido por P, melhora com a experiência E.

Todo projeto neste curso pode ser descrito com esse vocabulário. Um filtro de spam, por exemplo:

  • Tarefa \(T\): classificar e-mails como spam ou não spam;
  • Experiência \(E\): um corpus de e-mails já rotulados por humanos;
  • Desempenho \(P\): a fração de e-mails classificados corretamente (ou uma métrica mais cuidadosa, como veremos em Métricas de Classificação).

Os três ingredientes não são opcionais. Sem \(P\) não há como dizer que algo melhorou; um sistema que só guarda cada vez mais exemplos, sem medida alguma de que responde melhor, não aprendeu no sentido de Mitchell.

2. Por que aprender a partir de dados?

Etapa 2. Regras escritas à mão falham quando:

  1. As regras são desconhecidas. Ninguém consegue escrever as regras exatas que distinguem um tumor maligno de um benigno em uma imagem bruta.
  2. As regras mudam. Spammers se adaptam; um filtro estático se degrada. Um sistema que aprende pode ser retreinado.
  3. As regras são numerosas demais. Reconhecer dígitos manuscritos com instruções if/else é inviável — há maneiras demais de escrever um "7".
  4. É preciso personalização. Um recomendador deve se comportar de forma diferente para cada usuário; aprender do histórico de cada usuário escala, ajustar à mão não.

O machine learning inverte o fluxo tradicional: em vez de regras + dados → respostas, alimentamos dados + respostas a um algoritmo e obtemos um modelo — uma aproximação das regras — que então usamos para responder a casos novos, nunca vistos.

A recíproca importa tanto quanto: quando a regra é fixa, totalmente conhecida e curta, como "o número do cartão tem exatos 16 dígitos", programe-a. Aprender só compensa quando vale um dos quatro motivos acima.

3. Uma máquina que aprende feita de caixas de fósforos

Etapa 3. Muito antes das GPUs, a coluna de 1962 de Martin Gardner na Scientific American descreveu uma máquina que aprende a jogar um jogo usando apenas caixas de fósforos e contas coloridas — sem eletrônica alguma. Para o minijogo Hexapawn (três peões por lado em um tabuleiro 3×3), construa uma caixa de fósforos para cada posição possível do tabuleiro e a preencha com contas para cada jogada legal:

  1. para jogar, abra a caixa de fósforos da posição atual e sorteie uma conta aleatória — essa é a jogada;
  2. se a máquina perder a partida, remova a conta que levou à jogada perdedora (punição);
  3. se ela vencer, as contas permanecem (ou cópias extras são adicionadas — recompensa).

Se a caixa da posição atual estiver vazia, toda jogada dali já perdeu: a máquina desiste e a punição vai para a jogada que a levou até lá. Depois de algumas dezenas de partidas, as jogadas ruins foram literalmente removidas das caixas: a máquina joga perfeitamente. Essa é a aprendizagem por reforço em sua forma mecânica mais pura (Donald Michie construiu a mesma ideia para o jogo da velha em 1961 e a chamou de MENACE) — e torna tangível a definição de Mitchell: a tarefa \(T\) é jogar Hexapawn, a experiência \(E\) são as partidas jogadas, o desempenho \(P\) é a taxa de vitórias — e aprender nada mais é do que ajustar parâmetros (contas) com base em feedback.

O laço de aprendizado, passo a passo

A máquina precisa de 19 caixas e 47 contas: uma caixa por posição que ela pode enfrentar (uma posição e o seu espelho dividem uma caixa) e uma conta por jogada legal. O simulador abaixo acompanha as três primeiras partidas de treino contra um oponente que joga ao acaso, uma jogada por passo: a posição, a caixa dessa posição, a conta sorteada e, no fim de cada partida, a atualização. O painel da direita mantém o placar de Mitchell: \(E\) partidas jogadas e \(P\) a taxa de vitórias.

A partida 1 é perdida e a sua última conta sai (47 → 46); a partida 2 é ganha e nada muda, porque esta máquina só pune; a partida 3 é perdida de novo (46 → 45) e a conta removida era a única da sua caixa, que agora está vazia. Depois de três partidas \(P = 1/3\): o aprendizado mal começou, mas cada derrota já torna impossível uma jogada ruim.

Jogue contra a máquina

Jogue contra a máquina abaixo (você é o azul e começa) e depois aperte treinar N partidas para ver as contas sumirem das caixas enquanto a taxa de vitórias da máquina sobe. Fique de olho na linha abaixo do simulador: a partir de certo ponto a máquina não pode mais ser vencida.

Nada nas caixas "entende" Hexapawn: a máquina melhorou só porque o feedback removeu as jogadas que perderam.

Jogue em aula

Fichas do Hexapawn para a atividade: treino / teste.

Leia o original

Gardner, M. (1962). How to build a game-learning machine and then teach it to play and to win. Scientific American — PDF. Jogamos este jogo na primeira aula.

4. Por que agora?

Etapa 4. Nenhuma das ideias centrais é nova — os mínimos quadrados são de 1805 — mas três forças convergiram nas últimas duas décadas para tornar o ML onipresente:

  • Dados: a web, os sensores e a digitalização produziram conjuntos de dados grandes o suficiente para aprender padrões sutis;
  • Poder computacional: GPUs e computação em nuvem tornaram barato ajustar modelos grandes;
  • Algoritmos & software: bibliotecas de código aberto (scikit-learn, XGBoost, PyTorch) transformaram décadas de pesquisa em algumas linhas de código.

As grandes eras

A história do ML é uma conversa de 200 anos entre a estatística e a ciência da computação. Em cinco eras (a abordagem avançada a conta marco a marco):

era quando o que aconteceu
a estatística prepara o terreno 1805–1936 Legendre publica os mínimos quadrados (1805) para ajustar órbitas de cometas; Galton dá nome à regressão (1886); Fisher constrói a máxima verossimilhança e a análise discriminante
as primeiras máquinas que aprendem 1950–1962 Turing pergunta se máquinas podem pensar (1950); o perceptron de Rosenblatt (1958) e o programa de damas de Samuel (1959) aprendem com exemplos; o MENACE de Michie (1961) e as caixas de fósforos de Gardner (1962) aprendem com feedback
dois invernos da IA 1969–1993 as promessas ultrapassaram os resultados e as verbas foram cortadas, aproximadamente em 1974–1980 e em 1987–1993; entre um e outro, a retropropagação e as árvores de decisão reanimam o aprendizado
aprendizado estatístico 1995–2001 máquinas de vetores de suporte, boosting e random forests: teoria rigorosa e validação honesta
deep learning e modelos de fundação 2012–hoje redes profundas treinadas em GPUs (2012), transformers (2017), um único modelo gigante pré-treinado para muitas tarefas (2020–hoje)

A última era é onde as três forças se encontram: as redes profundas são uma ideia dos anos 1980 que precisava dos dados e da computação dos anos 2010.

5. Resumo: aprender em cinco linhas

  1. ML são programas que inferem as regras a partir de exemplos, em vez de regras escritas à mão.
  2. Aprender, segundo Mitchell: o desempenho \(P\) numa tarefa \(T\) melhora com a experiência \(E\). Sem \(P\), não há aprendizado.
  3. O fluxo se inverte: dados + respostas → modelo, usado em casos novos, nunca vistos. Compensa quando as regras são desconhecidas, mudam, são numerosas demais ou precisam ser personalizadas; uma regra curta e fixa deve ser programada.
  4. A máquina de caixas de fósforos: aprender é ajustar parâmetros (contas) a partir de feedback (derrotas), sem compreensão alguma.
  5. Por que agora: as ideias são antigas; dados, computação e software aberto as tornaram práticas.

Lab fundamental — ensine a máquina de caixas de fósforos

O problema. Uma máquina de caixas de fósforos nova joga Hexapawn ao acaso. Você vai jogar contra ela, treiná-la e tentar vencê-la depois do treino, vendo \(E\) crescer, \(P\) subir e as contas sumirem. A pergunta por trás dos três passos: quando dá para dizer que uma máquina aprendeu e quanta certeza se pode ter de que ela aprendeu tudo?

Como fazer este lab em aula (cerca de 25 min, em duplas)

  1. Use o simulador das caixas de fósforos da seção 3, no navegador: não há nada a baixar nem instalar. Se vocês tiverem os tabuleiros impressos de Gardner e as contas, joguem as primeiras partidas no papel, com um de vocês fazendo o papel da máquina.
  2. Este lab são os passos 1 a 3. O lab avançado continua no mesmo simulador, a partir do passo 4.
  3. Todo passo começa com um Preveja: responda com a sua dupla antes de apertar qualquer botão. Errar a previsão é o que torna o resultado memorável.
  4. O simulador é determinístico depois de reiniciar máquina: os mesmos botões dão as mesmas partidas, então a sua saída deve coincidir exatamente com a desta página.
  5. As Simulações pedem um pequeno experimento no simulador: mude uma coisa e veja o que acontece. Nada de contas à mão. A solução fica recolhida logo abaixo: tente antes de abri-la.
  6. Ritmo sugerido: passo 1 em 7 min; passo 2 em 6 min; passo 3 e as duas simulações em 12 min.

Passo 1 — jogue contra uma máquina nova

Preveja. Uma máquina nova sorteia as jogadas em caixas cheias. Você vai vencê-la com facilidade? E, quando você vence, o que muda dentro das caixas?

Antes de jogar, percorra uma vez o laço de aprendizado (cerca de 20 cliques). Depois jogue três partidas contra a máquina: clique num dos seus peões azuis e depois na casa de destino. Depois de cada partida, olhe as caixas: a última caixa que a máquina usou tem borda laranja e a conta da sua última jogada está circulada.

Uma máquina nova é fácil de vencer e cada vitória sua tira uma conta, marcada com ✕ na caixa: essa jogada nunca mais será feita. Quando a máquina vence, as contas ficam onde estão. A linha abaixo do tabuleiro conta as contas que restam, de 47.

Passo 2 — treine-a por 50 partidas

Preveja. Aperte reiniciar máquina (oponente: aleatório, N = 50) e depois treinar N partidas. A taxa de vitórias vai subir de forma suave? A máquina para de perder dentro dessas 50 partidas?

A linha abaixo do simulador diz:

50 partidas jogadas: a máquina venceu 36 e perdeu 14; cada derrota tirou uma conta. Contas restantes: 33/47.
Ela ainda pode ser vencida? sim: alguma sequência de jogadas ainda leva a uma conta que perde.

As 14 derrotas tiraram 14 contas (47 → 33). Elas não se espalham por igual: as marcas vermelhas da curva se amontoam à esquerda e as 14 derrotas acontecem todas nas primeiras 38 partidas (partidas 1, 3, 5, 6, 7, 8, 9, 11, 19, 20, 21, 27, 30 e 38). A taxa de vitórias das últimas 10 partidas não sobe de forma suave, porque a máquina ainda sorteia entre as contas que lhe restam. Nos termos de Mitchell: \(E\) cresceu de 0 para 50 partidas e \(P\) passou de 8 derrotas nas 11 primeiras partidas para 12 vitórias seguidas nas últimas.

Passo 3 — a campeã que ainda pode ser vencida

Preveja. Treine mais 50 partidas (o mesmo N). Se a máquina vencer as 50, dá para concluir que ela não pode mais ser vencida?

50 partidas jogadas: a máquina venceu 50 e perdeu 0; cada derrota tirou uma conta. Contas restantes: 33/47. Ela venceu todas, mas ainda pode ser vencida: só aprendeu as linhas que este oponente joga.
Ela ainda pode ser vencida? sim: alguma sequência de jogadas ainda leva a uma conta que perde.

Cinquenta vitórias seguidas e ainda vencível. Um oponente aleatório raramente joga a única linha que ainda funciona, então nenhuma partida deste lote chegou à conta perdedora; uma conta a que nenhuma partida chega nunca é punida. Um histórico perfeito nas partidas que ela viu não diz nada sobre as que ela não viu.

Simulação: vença a campeã. Sem treinar mais, jogue você contra a máquina e encontre uma sequência de jogadas que ainda a vence. Dica: abra com o peão do centro e pense em qual dos seus peões pode chegar à última fileira depois que a máquina capturar.

Solução

Avance o peão do centro (b1 → b2). A máquina o captura com um peão do canto, digamos a3 → b2. Avance o seu peão do mesmo lado da captura, a1 → a2. Nessa posição a caixa da máquina tem 4 contas: duas vencem na hora (b2 → b1 e b2 → c1), uma captura o seu peão (b3 → a2) e uma, c3 → c2, perde, porque o seu peão chega então à última fileira (a2 → a3). A linha espelhada funciona igual (se ela capturar de c3, avance c1 → c2).

A máquina sorteia essa conta com chance de 1 em 4, então talvez sejam precisas algumas partidas; perder não custa nada, porque a máquina não muda quando vence. Quando você vence, a conta c3 → c2 sai e a linha passa a dizer:

Ela ainda pode ser vencida? não: jogue o azul o que jogar, toda conta que restou leva à vitória. Aprender = contas removidas pelo feedback.

com 32 contas restantes: a sua única vitória ensinou a última lição que faltava.

Simulação: deixe o oponente aleatório encontrá-la. Aperte reiniciar máquina, treine 50 partidas duas vezes (como nos passos 2 e 3), depois ponha N = 200 e treine mais duas vezes. Em que lote vem a 15ª derrota e o que diz a linha depois dela?

Solução
200 partidas jogadas: a máquina venceu 200 e perdeu 0; cada derrota tirou uma conta. Contas restantes: 33/47. Ela venceu todas, mas ainda pode ser vencida: só aprendeu as linhas que este oponente joga.
200 partidas jogadas: a máquina venceu 199 e perdeu 1; cada derrota tirou uma conta. Contas restantes: 32/47.
Ela ainda pode ser vencida? não: jogue o azul o que jogar, toda conta que restou leva à vitória. Aprender = contas removidas pelo feedback.

As partidas 101 a 300 não trazem derrota alguma. A 15ª e última derrota vem na partida 334: o oponente aleatório finalmente joga a linha da simulação anterior, a conta c3 → c2 sai e a máquina fica invencível com 32 contas. Foram precisas 296 partidas depois da 14ª derrota (partida 38) para os dados conterem essa única linha rara. Casos raros demoram a aparecer na experiência \(E\) e, até aparecerem, não há nada a aprender com eles.

Para fechar a parte fundamental. Em uma frase cada: (1) quem são \(T\), \(E\) e \(P\) da máquina de caixas de fósforos? (2) O que, exatamente, mudou dentro da máquina quando ela melhorou? (3) Por que 50 vitórias seguidas não provaram que ela não podia mais ser vencida?

Sua vez (fundamental)

Em casa:

  1. O vocabulário de Mitchell. Descreva três sistemas que você usa todo dia (um recomendador, um assistente de voz, um mapa que prevê o trânsito, por exemplo) pelos seus \(T\), \(E\) e \(P\). Em qual é mais difícil definir um \(P\)?
  2. Aprender ou programar? Para cada um dos quatro motivos pelos quais as regras escritas à mão falham, encontre um exemplo da sua experiência; depois encontre uma tarefa que você simplesmente programaria.
  3. No papel. Leia o artigo original de Gardner e jogue Hexapawn com um amigo, um de vocês sendo a máquina com caixas e contas. Quantas partidas a sua máquina precisa até parar de perder?

Abordagem avançada

A parte fundamental definiu o aprendizado e viu uma máquina aprender. Esta parte dá um passo atrás para ver como o campo chegou até aqui e para onde este curso vai: a linha do tempo de 200 anos, o que a máquina de caixas de fósforos tem em comum com o perceptron (e o que lhe falta), os dois invernos da IA e as retomadas que vieram depois, três lições que moldam o desenho deste curso e as perguntas que as próximas aulas vão responder.

Esta parte segue um caminho em quatro etapas, desenhado abaixo: 1. 200 anos de marcos; 2. o perceptron e os invernos; 3. lendo a trajetória; 4. o curso pela frente. Cada etapa leva à sua seção e, nos slides, uma faixa embaixo mostra em que etapa você está.

  1. 200 anos de marcosestatística e ciência da computação
  2. O perceptron e os invernosuma tabela de caixas × um modelo; hype e retomadas
  3. Lendo a trajetóriatrês lições para este curso
  4. O curso pela frenteML clássico de ponta a ponta, até a fronteira

Slides da abordagem avançada

Clique nos slides e use as setas ← → para navegar; F abre em tela cheia e Esc mostra todos os slides. Abrir os slides numa aba nova

6. Uma breve história do machine learning

Etapa 1. A história do ML é uma conversa de 200 anos entre a estatística e a ciência da computação. A linha do tempo abaixo mostra os marcos que este curso visitará — das bases históricas até a fronteira atual.

[timeline left alternate(./docs/2026.2/classes/introduction/timeline.json)]

7. Das caixas de fósforos ao perceptron e os dois invernos

Etapa 2. A máquina de caixas de fósforos e o perceptron de Rosenblatt (1958) aprendem do mesmo jeito: com feedback sobre os próprios erros. O perceptron é um classificador linear com um peso por atributo; quando erra um exemplo, empurra os pesos na direção da resposta certa e, quando acerta, não muda nada — a aula de redes neurais o roda à mão. A diferença está no que fica guardado. A máquina de caixas de fósforos guarda uma caixa por posição, uma tabela de consulta: o que ela aprende numa caixa não diz nada sobre as outras; uma posição que ela nunca encontrou não teria caixa alguma. O perceptron guarda poucos pesos, compartilhados por todas as entradas, então cada atualização muda a sua resposta em exemplos que ele nunca viu: ele generaliza. O Hexapawn é pequeno o bastante para dar uma caixa a cada posição; quase nenhum problema real é. Por isso todo modelo deste curso é uma função com parâmetros, não uma tabela de respostas.

Essa generalização tem limites; o primeiro deles parou o campo. Em 1969 Minsky e Papert provaram que um perceptron sozinho não aprende problemas que não são linearmente separáveis, como o XOR; o Relatório Lighthill (1973) concluiu que a IA não tinha cumprido o prometido e as verbas desabaram nos Estados Unidos e no Reino Unido: o primeiro inverno da IA (aproximadamente 1974–1980). O aprendizado renasceu nos anos 1980 em duas frentes: a retropropagação (1986) tornou treináveis as redes de várias camadas (que resolvem o XOR) e o CART (1984) e o ID3 (1986) tornaram as árvores de decisão práticas. Um segundo inverno (aproximadamente 1987–1993) veio com o colapso da onda dos sistemas especialistas, programas feitos de regras escritas à mão — exatamente a abordagem que, segundo a seção 2, falha. Os dois invernos têm a mesma forma: as promessas ultrapassaram os resultados.

Vieram duas retomadas, cada uma respondendo a uma fraqueza. O aprendizado estatístico (1995–2001: máquinas de vetores de suporte, AdaBoost, random forests, gradient boosting) trouxe teoria (margens, limites de generalização) e o hábito da validação honesta. O deep learning (de 2012 em diante) trouxe as redes neurais de volta em grande escala, quando as três forças da seção 4 já estavam no lugar: grandes conjuntos de dados rotulados, GPUs e software aberto.

8. Lendo a trajetória

Etapa 3. Três lições dessa história moldam o desenho deste curso:

  1. Os clássicos nunca foram embora. Os mínimos quadrados (1805) ainda são o primeiro modelo que você deve experimentar em um problema de regressão. A regressão logística (1958) continua sendo um cavalo de batalha em produção. Entendê-los profundamente não é arqueologia — é engenharia.
  2. Os ciclos de hype são reais. O campo passou por dois "invernos da IA" (aproximadamente 1974–1980 e 1987–1993) quando as promessas ultrapassaram os resultados. A avaliação honesta — tema da aula de validação cruzada — é o antídoto.
  3. Os métodos modernos são composições de ideias clássicas. O BERTopic (2022), que estudaremos numa aula própria, é literalmente um pipeline de embeddings + redução de dimensionalidade + agrupamento + TF-IDF — cada ingrediente é uma técnica clássica. O gradient boosting é gradiente descendente funcional sobre árvores de decisão. Conhecer as partes permite entender — e depurar — o todo.

9. Onde este curso se encaixa

Etapa 4. Este curso cobre o machine learning clássico de ponta a ponta e termina na fronteira: redes neurais, explicabilidade, AutoML, MLOps e modelos de fundação. O deep learning ganha uma aula de transição aqui; seu tratamento completo está no curso complementar Artificial Neural Networks and Deep Learning.

As perguntas que o curso vai responder

Cada aula pela frente responde a uma pergunta que um projeto real levanta, cedo ou tarde:

pergunta onde o curso responde
Que tipos de aprendizado existem e um modelo vai funcionar em casos que nunca viu? O panorama de ML
Como são os dados e eles estão prontos para um modelo? Análise exploratória de dados, pré-processamento, pipelines
Há estrutura nos dados sem rótulo algum? Redução de dimensionalidade, agrupamento
Como prever um número? Regressão linear, gradiente descendente e regularização
Como prever uma classe? Regressão logística, k-NN, SVM, árvores de decisão, random forest, gradient boosting
Quão bom o modelo é, de verdade? Métricas de classificação, ROC, PR e dados desbalanceados, validação cruzada
Qual modelo, com quais ajustes? Seleção de modelos
Por que o modelo decidiu isso e como ele roda em produção? Explicabilidade, MLOps

Lab avançado — o que a máquina aprendeu e o mapa do curso

O lab fundamental treinou a máquina contra um oponente aleatório até ela não poder mais ser vencida. Esta parte pergunta o que a máquina realmente aprendeu (o jogo ou o oponente contra o qual treinou) e depois troca as caixas de fósforos pelo mapa: onde cada marco da linha do tempo mora neste curso e de que peças clássicas é feito um método moderno.

Como fazer este lab em aula (cerca de 25 min, em duplas)

  1. O passo 4 usa o simulador das caixas de fósforos da seção 3; os passos 5 e 6 usam a linha do tempo da seção 6 e a tabela de perguntas da seção 9.
  2. Como no lab fundamental: Preveja antes de agir, compare com esta página e tente a Simulação antes de abrir a solução.
  3. Ritmo sugerido: passo 4 e a simulação em 10 min; passo 5 em 8 min; passo 6 em 7 min.

Passo 4 — outro professor

Preveja. O oponente guloso vence na hora quando pode; senão captura; senão joga ao acaso: um jogador mais forte que o aleatório. Uma máquina treinada contra ele fica mais forte contra todo mundo?

Aperte reiniciar máquina, clique no botão do oponente até ele dizer oponente: guloso, ponha N = 200 e treine duas vezes:

200 partidas jogadas: a máquina venceu 193 e perdeu 7; cada derrota tirou uma conta. Contas restantes: 40/47.
Ela ainda pode ser vencida? sim: alguma sequência de jogadas ainda leva a uma conta que perde.
200 partidas jogadas: a máquina venceu 200 e perdeu 0; cada derrota tirou uma conta. Contas restantes: 40/47. Ela venceu todas, mas ainda pode ser vencida: só aprendeu as linhas que este oponente joga.
Ela ainda pode ser vencida? sim: alguma sequência de jogadas ainda leva a uma conta que perde.

O oponente guloso ensina rápido (7 derrotas, todas nas primeiras 27 partidas), mas ensina menos. Ele nunca deixa passar uma vitória ou uma captura, então as linhas em que o azul recusa uma captura nunca acontecem e as contas dessas linhas nunca são punidas: depois de 400 partidas a máquina guarda 40 contas (contra as 32 da máquina que ficou invencível contra o oponente aleatório) e ainda pode ser vencida. A máquina aprendeu a vencer este oponente, não o jogo. Um modelo aprende a distribuição da sua experiência \(E\); se os casos que ele vai enfrentar depois vêm de outra distribuição, o seu desempenho \(P\) nas partidas de treino diz pouco sobre eles. É o problema central da aula sobre o panorama de ML, a generalização.

Simulação: troque o professor. Sem reiniciar, volte o oponente para aleatório e treine mais 200 partidas. A máquina volta a perder? Fica invencível?

Solução
200 partidas jogadas: a máquina venceu 197 e perdeu 3; cada derrota tirou uma conta. Contas restantes: 37/47.
Ela ainda pode ser vencida? não: jogue o azul o que jogar, toda conta que restou leva à vitória. Aprender = contas removidas pelo feedback.

A campeã contra o oponente guloso perde 3 das suas primeiras 200 partidas contra o aleatório (as partidas 10, 31 e 156 deste lote): experiências de um tipo novo expõem erros novos. Depois dessas 3 punições ela fica invencível, com 37 contas, enquanto a máquina treinada só contra o oponente aleatório terminou com 32: as duas são invencíveis, mas contas diferentes saíram pelo caminho. Dois professores, duas máquinas diferentes para o mesmo jogo: a experiência \(E\) molda o modelo tanto quanto a regra de aprendizado.

Passo 5 — a linha do tempo como mapa do curso

Preveja. Quais marcos da linha do tempo você espera reencontrar neste curso e quais são só história?

Para cada marco da linha do tempo, diga a aula deste curso que ensina o método que ele introduziu, usando a tabela de perguntas e o menu do curso.

Solução
marco aula
mínimos quadrados (1805) regressão linear
regressão à média (1886) seleção de modelos
regressão logística (1958, na seção 8) regressão logística
o perceptron (1958), a retropropagação (1986) redes neurais
CART (1984) e ID3 (1986) árvores de decisão
máquinas de vetores de suporte (1995) SVM
AdaBoost (1997) e gradient boosting (2001) gradient boosting
random forests (2001) random forest
word2vec (2013) word embeddings
transformers e BERT (2017–2018) sentence embeddings, BERTopic
modelos de fundação (2020–hoje) a fronteira
os invernos da IA e a avaliação honesta como antídoto validação cruzada

Quase todo marco é uma aula: o curso é, grosso modo, a linha do tempo em ordem de ensino. As exceções são a pergunta de Turing e o workshop de Dartmouth, que são contexto e não método, além dos fundamentos de Fisher, que correm por baixo de várias aulas ao mesmo tempo (a máxima verossimilhança é como a regressão logística é ajustada).

Passo 6 — desmonte um método moderno

Preveja. O gradient boosting e as random forests dominam os dados tabulares hoje. São ideias novas ou ideias antigas montadas juntas?

Escreva cada método abaixo como uma soma de peças da linha do tempo e diga a aula onde cada peça é ensinada: (a) random forest; (b) gradient boosting; (c) BERTopic.

Solução

A terceira lição da seção 8, na prática: conhecer as partes é o que permite entender — e depurar — o todo.

Para fechar a aula. Em uma frase cada: (1) por que um modelo que generaliza supera uma tabela de caixas, uma por caso? (2) O que os dois invernos da IA têm em comum e qual é o antídoto? (3) Por que a máquina treinada contra o oponente guloso continuou vencível?

Sua vez (avançado)

Em casa, com mais tempo:

  1. Recompensa, não só punição. A regra de Gardner também permite uma recompensa: quando a máquina vence, acrescente uma cópia extra de cada conta que ela usou. Preveja o que mudaria: a máquina pararia de perder mais cedo, mais tarde ou depois do mesmo número de derrotas? E ela ainda poderia ser vencida depois de uma longa série de vitórias contra o oponente aleatório?
  2. Um tabuleiro maior. O MENACE aprendeu o jogo da velha com a mesma ideia. Por que o jogo da velha precisa de muito mais caixas que o Hexapawn e o que aconteceria com uma máquina de caixas de fósforos para o xadrez? Relacione a sua resposta com a diferença entre uma tabela de consulta e um modelo que generaliza (seção 7).
  3. Um teste de hype. Escolha uma notícia recente sobre um sistema de IA. Descreva-o pelos seus \(T\), \(E\) e \(P\) e escreva a única peça de avaliação honesta que você pediria antes de acreditar na alegação.

Referências

  • Turing, A. M. "Computing Machinery and Intelligence." Mind 59 (1950). DOI
  • Samuel, A. L. "Some Studies in Machine Learning Using the Game of Checkers." IBM J. Res. Dev. 3 (1959). DOI
  • Bishop, C. M. Pattern Recognition and Machine Learning. Springer, 2006.

Quiz

O quiz cobre a abordagem fundamental.