Machine Learning · Insper

O panorama de ML

Abordagem avançada

De um desejo a um problema, por que nenhum modelo vence em tudo e o que dá errado quando as decisões de um modelo chegam às pessoas

O caminho desta parte

  1. Formular o problemaalvo, momento, métrica, baseline
  2. Nenhum modelo vence em tudoa perda esperada; sem almoço grátis
  3. Viés nos dadosum modelo aprende o passado; variáveis substitutas
  4. Ciclos de retroalimentaçãoum modelo que decide o que vai ver
Cada etapa responde a uma pergunta: qual é exatamente o problema? → por que este modelo e não outro? → o que os rótulos lhe ensinaram? → o modelo escolhe os próprios dados?
Etapa 1 · qual é exatamente o problema?

Um desejo não é um problema

"Reduzir o número de pacientes que faltam às consultas."

Preveja. Antes de qualquer dado: o que exatamente o modelo preveria? Quando ele preveria, e o que se sabe nesse momento? Como você saberia que ele funciona?

Quatro perguntas antes de tocar nos dados

perguntao que ela fixaa clínica
alvoo que se prevê e, portanto, a tarefafaltou à consulta: sim ou não (classificação)
momentoquando e, portanto, que atributos são permitidos48 h antes: idade, faltas anteriores, dias desde o agendamento; não uma ligação de cancelamento feita na véspera
métricao sucesso, nos termos de quem paga pelos errosum horário vazio contra um telefonema: as faltas pegas com as ligações que a equipe consegue fazer
baselinequanto faz a resposta mais simples"ninguém falta"; na regressão, a média do treino
Um momento errado é vazamento (leakage): excelente no laboratório, inútil em produção. Sem um baseline, 0,80 não quer dizer nada. Às vezes a resposta é uma regra, não um modelo.
Etapa 2 · por que este modelo e não outro?

O objetivo, por escrito

\[ \text{minimizar } \underbrace{\mathbb{E}_{(x,y)\sim \mathcal{D}}\big[L\big(f(x),\,y\big)\big]}_{\text{perda esperada em dados novos}} \quad \text{observando apenas uma amostra finita} \]
  • \(f\): o modelo. \((x, y)\): um exemplo novo, sorteado de \(\mathcal{D}\), a distribuição dos dados que o modelo vai encontrar (no lab, a função draw).
  • \(L\): a perda, o preço de uma resposta errada (no lab, o erro quadrático \((y - f(x))^2\)). \(\mathbb{E}\): a média sobre todos os exemplos novos.
A coluna "new" do lab a estima com 1.000 sorteios. Com dados reais, quem a estima é um conjunto de teste, se o modelo nunca o viu e se \(\mathcal{D}\) não mudar.

Sem almoço grátis

  • Wolpert (1996): na média sobre todos os problemas possíveis, nenhum algoritmo de aprendizado é melhor que qualquer outro.
  • Na prática: não existe modelo universalmente melhor. Experimente várias famílias e valide.
Preveja. Dois mundos: um reto (\(y = 2x\) mais ruído) e uma curva ondulada. Dois modelos: uma reta e 5 vizinhos mais próximos (a média do \(y\) dos 5 pontos de treino mais próximos). Quem vence onde?

Dois mundos, dois vencedores

Mundo reto: a reta vence, 0,101 contra 0,131 dos vizinhos. Mundo ondulado: os vizinhos vencem, 0,128 contra 0,343 da reta
30 pontos de treino, erro em 1.000 pontos novos. A reta supõe uma taxa constante e vence onde isso é verdade; os vizinhos supõem só que entradas próximas têm respostas próximas. Esse conjunto de suposições é o viés indutivo do modelo, e nenhum vence em tudo.

O que o teorema não diz

não: "todos os modelos são iguais"

no seu conjunto de dados alguns são muito melhores; descobrir quais é o trabalho da validação e da seleção de modelos

não: "a experiência é inútil"

problemas reais não são sorteados ao acaso; algumas famílias (árvores com boosting em tabelas) vencem com frequência, porque as suas suposições combinam

Por isso o curso ensina um portfólio: modelos lineares, vizinhos, kernels, árvores, ensembles, redes, sempre comparados nos mesmos folds.
Etapa 3 · o que os rótulos lhe ensinaram?

Ética: quatro perguntas antes de colocar um modelo em produção

Modelos treinados em dados históricos herdam vieses históricos.

justiça

desempenho igual entre grupos? Um modelo de crédito treinado em decisões enviesadas as reproduz em escala

privacidade

os dados foram coletados com consentimento? as pessoas podem ser reidentificadas?

transparência

as decisões podem ser explicadas aos afetados?

ciclos de retroalimentação

implantar o modelo altera os dados com que ele será retreinado? (policiamento preditivo)

Um modelo aprende o passado

4.000 empréstimos antigos. Os grupos A e B pagam igual, mas os analistas aprovavam A a partir da nota 50 e B só a partir de 65. Uma pequena árvore os imita. Preveja: com notas de 50 a 64, que fração de cada grupo ela aprova? E se a coluna do grupo for apagada?

Com o grupo como coluna: na faixa de 50 a 64, A aprovado 1,00 e B 0,00. Sem a coluna do grupo e mantida a zona: A 0,84 e B 0,19
À esquerda, o duplo padrão aprendido com exatidão. À direita, o grupo sumiu, mas 80% de B mora numa mesma zona e a zona carrega a regra. Um substituto de um atributo removido é uma variável substituta (proxy): meça as decisões por grupo em vez de só apagar colunas.

De quem é a decisão

"O modelo disse isso" nunca é uma justificativa aceitável para uma decisão que afeta pessoas. Você, o profissional, é responsável pelas consequências.
Etapa 4 · o modelo escolhe os próprios dados?

Um ciclo de retroalimentação, dia a dia

Uma viatura, dois bairros: A tem 10 ocorrências por dia; B, 12. O modelo manda a viatura aonde há mais crime registrado; no outro bairro só entram nos registros 2 ligações por dia. Preveja: a viatura vai algum dia para B?

Por que retreinar não resolve

  • Cada registro é uma ocorrência real; os registros erram onde está o crime porque é o modelo que decide onde olhar.
  • Cada modelo novo é treinado com registros que o anterior moldou: depois de 30 dias, A 355 contra B 105.

explorar

um dia em cada cinco, mandar a viatura aonde ela foi menos

medir por esforço

ocorrências por dia patrulhado, não totais brutos

As duas juntas, no lab: 9 dias em A, 21 em B e estimativas de 10,0 e 12,0 por dia, a verdade. O mesmo ciclo roda em sistemas de recomendação.

Resumo: cinco perguntas para todo projeto

  1. O problema está formulado? Alvo, momento, métrica, baseline, antes dos dados.
  2. O que o modelo vai encontrar? A perda esperada em dados novos; um teste só a estima se ficou intocado.
  3. Por que este modelo? Sem almoço grátis: compare várias famílias e valide.
  4. O que os rótulos lhe ensinaram? O passado, vieses incluídos; as substitutas sobrevivem a colunas apagadas.
  5. Ele escolhe os próprios dados? Então explore e meça por unidade de esforço.
Próxima: Análise Exploratória de Dados, o primeiro contato com um conjunto de dados.
Lab avançado · cerca de 30 min, em duplas

Sem almoço grátis, um passado enviesado e um ciclo que se alimenta, passos 5 a 7

  • Passo 5: dois mundos, três modelos (entre eles o baseline), vencedores opostos.
  • Passo 6: uma árvore treinada com decisões de crédito enviesadas, medida grupo a grupo.
  • Passo 7: o ciclo da viatura, rodando 30 dias.
  • O mesmo notebook do Colab do lab fundamental, na mesma sessão; em cada passo, primeiro o Preveja.
  • Simulações: apagar a coluna do grupo (passo 6) e olhar onde você não olha (passo 7).

Ritmo: passo 5 em 8 min; passo 6 e a primeira simulação em 12 min; passo 7 e a segunda em 10 min.