--- presentation theme: beige.css slideNumber: true width: 1024 height: 768 --- ## Aprendizado de Máquina #### Wrap up #### Prof. Ronaldo Cristiano Prati [ronaldo.prati@ufabc.edu.br](mailto:ronaldo.prati@ufabc.edu.br) Bloco A, sala 513-2 ### Tópicos não abordados ### Tópicos não abordados - Aprendizado bayesiano - modelos gráficos - redes bayesianas - Gaussian process ![](bayes.png) ### Tópicos não abordados - Aprendizado simbólico - Árvores de decisão (decision trees) - Regras ![](simb.png) ### Tópicos não abordados - Aprendizado evolutivo - Algoritmos Genéticos - Programação Genética ![](gen.png) ### Tópicos não abordados - Teoria do aprendizado - Dimensão VC - PAC-learning ![](vc.png) ### Tópicos não abordados - Aprendizado por reforço - Iteração de valor - Q-learning ![](rl.png) ### Tópicos não abordados (RNAs) - Text Embeddings - Generative Adversarial Networks - Siamese Networks - Differentiable Neural Computer  # Limitações e desafios ### Explicação e transparência - **Dasafio:** Como confiamos em um sistema de AM? - Avaliar o desempenho cuidadosamente - Identificar vantagens e pontos fracos - Entender como funciona - Entender o resultado gerado ### Avaliar o desempenho cuidadosamente - Além de uma avaliação quantitativa, em muitos casos é preciso fazer uma avaliação qualitativa. - As predições fazem sentido? - Tem casos que falham? ### Mundo fechado - Modelo estado da arte em geração de rótulos de imagens - Não tinha nenhuma escova de dentes no treinamento! ### O que deu errado? - Devido a uma amostra viciada, um algoritmo de reconhecimento de imagens do Google classificava pessoas negras como gorilas - Dificilmente pensamos em como nosso modelo pode errar - Provavelmente o conjunto de treinamento tinha poucos exemplos de negros. ### Testes com dados FAKE ![](fool.png) ### Entender como funciona: - Distinção importante: - Entender as decisões de um modelo (por que um classificador atribuiu uma certa classe) - Entender como o modelo foi criado (qual é o funcionamento do algoritmo)? ### Entender como funciona: - Para entender um modelo (e a sua saída), não necessariamente precisamos entender como ele foi feito - Mas entender o funcionamento e a saída pode ajudar a melhorar o desempenho! - Alguns modelos são mais fáceis de entender que outros! ### Entender o funcionamento ![](horse.png) ### Entender como funciona: - Muitas vezes se quer "enganar" um modelo - Pode ter consequências sérias: - Ataque cibernético - Fraude ### Aprendendo a enganar a um modelo ### Aprendendo a enganar a um modelo ### Aprendendo a enganar a um modelo ### Enganando um carro autonomo ## Algorithm bias ## Algorithm bias ![](gender.jpeg) ## Algorithm bias ![](genderbias.png) ### Algorithm bias (causas) - amostra viciada: mais exemplos de um determinado grupo apesar de uma menor prevalência. - amostra contaminada: o rotulador pode dar viciar a amostra de acordo com as suas própias convicções - atributos ruins: algumas features podem ser mais difíceis de objter para certos grupos - proxies: algumas informações são baseadas em medidas indiretas, que podem conter generalizações indevidas ### Bias não intencional ![](mexican.png) ### Bias não intencional ![](names.png) ### Bias não intencional ![](names2.png) ## Algorithm bias ## Algorithm bias ### Aspectos sociais ![](bubble.png) ### Experimento do FACEBOOK/Cornell - 689.003 pessoas - Uma semana em 2012 - Dois grupos: - Grupo A: remover conteúdo considerado negativo do feed - Grupo B: remover conteúdo considerado positivo do feed ### Experimento do FACEBOOK/Cornell ![](facebook.png) ### Aspectos éticos ![](ethics.jpeg) ### Gerenciando mudanças - Sistemas mudam continuamente - Os resultados ainda são válidos? - Caso Famoso: "Gripe do google" (https://www.google.org/flutrends/about/) - Predições foram boas por um tempo - Então quebraram ### Disciplinas relacionadas - MCTAO14-13 - Inteligência Artificial - MCZA030-13 - Vida Artificial na Computação - MCZA006-13 - Computação Evolucionista e Conexionista - MCZA017-13 - Processamento de Linguagem Natural - MCZA015-13 - Mineração de Dados - ESZI014-17 - Sistemas Inteligentes - ESZA019-17 - Visão Computacional