Você está na página 1de 76

Aprendizado de Máquina

Prof: Dr. Lucas de Almeida Ribeiro


Planejamento de Ensino

• Frequência:
• Realizada diariamente – não alterável
• Ambiente Virtual: Moodle
• Avaliações:
• Av1: peso 3
• Av2: peso 4
• Seminários: peso 3
Objetivo da Disciplina

• Capacitar o aluno para:


• Compreender os principais conceitos de
aprendizado de máquina.
• Construir soluções baseadas em
aprendizado de máquina para problemas
em geral.
• Aplicar testes de desempenho nas
soluções construídas
Conteúdos

• Introdução ao aprendizado de
máquina e reconhecimento de
padrões. Aprendizado supervisionado
e não- supervisionado.
• Tarefas: Regressão, Classificação,
Agrupamento e Associação.
• Técnicas: Máquinas de Vetores de
Suporte, Indução de Árvores de
Decisão, Ensemble, Regras de
Associação e KNN
Bibliografia

• FACELI, K.; LORENA, A.C.; GAMA, J.; CARVALHO,


A.C.P.L.F. Inteligência Artificial: uma abordagem
de aprendizado de máquina. LTC, 2011.
• ALPAYDIN, E. Introduction to Machine
Learning. MIT Press, 2009, 2 ed.
• BISHOP, C. M. Pattern Recognition and
Machine Learning. Springer, 2006.
Ferramentas
Introdução a
Aprendizado de
Máquina
Quais os detalhes do processo de tomada de
decisões?
Não é aleatório
Dados de Mineração de Dados
Limpeza dos Dados Pós-processamento
Entrada
Seleção de Variáveis; Filtros de padrões;
Redução de Visualização;
Dimensionalidade; Interpretação
Seleção de Dados;
Normalização

Knowledge Discovery
in Databases –KDD Informação
O que é mineração de dados?

• Envolve a aplicação de algoritmos sobre os dados em busca de


conhecimentos implícitos e úteis.
Existe um padrão
Podemos reconhecer um padrão?
Podemos reconhecer um padrão?
As coisas não se comportam
de maneira aleatória

𝑓 ( 𝑥 ) =?
Capacidade humana é limitada em processar
muitos cálculos.
E SE os computadores pudessem aprender?
Aprendizado de
Máquina no Dia-a-Dia
O que pensamos sobre Aprendizado de
Máquinas?
Onde já usamos?
Inteligência Artificial

Um
programa
Aprendizado de Máquina
que pode
sentir,
raciocinar,
agir e
Algoritmos que
melhoram em função Tarefas e Técnicas
da quantidade de
adaptar-se dados (pregressos) Classificação Aprendizado
ao meio. em que são expostos. (Não)
Regressão Supervisionado
Aprendizado de Máquina

Experiência

• Estudo de algoritmos capazes de melhorar o desempenho de uma certa tarefa


por meio de experiências.
Visão Geral Experiências

Produção

Desempenho
Tarefas

Estudar/Definir o Treinar o Algoritmo Avaliar a


Problema de Aprendizagem Solução

Analisar os erros
Área em forte crescimento

• O Aprendizado de Máquina é a
abordagem preferida para:
• o reconhecimento de padrões;
• o processamento de linguagem
natural
• o visão computacional
• o diagnóstico automático
• o controle robótico
• o ....
Cuidados no Aprendizado
de Máquina:
Cuidado 1 – No Silver Bullet
Tarefas mais adequadas ao
problema
• Planejar como modelar o problema em
um problema de aprendizado de
máquina é uma etapa crucial
• Problemas podem ser modelados em
diferentes tarefas de aprendizado e de
diversas formas
• Um algoritmo apresenta melhores
resultados para um nicho de problemas
que para outros
Novo paradigma

Entrada Programa Entrada Saída

Computador
Tradicional

Computador
que Aprende

Saída Programa
Visão Geral Experiências

Produção

Tarefas Desempenho

Estudar/Definir o Treinar o Algoritmo Avaliar a


Problema de Aprendizagem Solução

Analisar os erros
Cuidados no Aprendizado
de Máquina:
Cuidado 2 – Pré-Processamento
O que é uma base de dados?

• Coleções de objetos e seus atributos


• Um atributo é a propriedade ou
característica de um objeto. Atributos
ID Bairro Área Quartos Aluguel
• Exemplos:

Objetos/Amostras
1 ITA 100 3 3K
• cor dos olhos de uma pessoa, temperatura, etc. 2 CEN 50 2 1,5K
• Atributo é conhecido como uma variável, 3 CAM 70 3 2K
campo, dimensão ou perspectiva. 4 COI 50 2 1,2K
5 GY2 70 3 1,5K
• Objeto é também conhecido com um
.. .. ... ... ...
registro, ponto, caso, amostra, entidade, ou
10 URI 100 4 2,5
instância
Obter Treinar Avaliar Salvar o
Pré-processamento
Dados Modelo Modelo Modelo

Treinamento

Obter Pré- Usar


Pós-processamento
Dados processamento Modelo

Validação
Tipos de Dados

• Atributos Discretos: • Atributos Contínuos:


• Subconjunto finito dos números • Exemplos: temperatura, altura ou peso;
inteiros, Enumerates, Char e Strings • Atributos contínuos são tipicamente
• Tem um conjunto finito ou representados como variáveis de ponto
contáveis infinitos conjunto de flutuante.
valores • Floats ou Doubles (Reais)
• Exemplos: CEP ou conjunto de
palavras em uma coleção de
documentos
• Atributos binários são um caso
especial de atributos discretos
• Atributos Contínuos:
• Exemplos: temperatura, altura ou peso;
• Atributos contínuos são tipicamente
representados como variáveis de ponto
flutuante.
• Floats ou Doubles (Reais)
Pré-processamento

Técnicas Problemas
• Eliminação manual de atributos; • Dados de fontes distintas;
• Integração dos dados; • Inconsistências e redundâncias nos
• Amostragem dos dados dados;
(representatividade das amostras); • Escala dos dados;
• Balanceamento de dados; • Presença de ruídos nos dados;
• Limpeza de dados (ruído); • Erros na geração dos dados;
• Redução de dimensionalidade; • Quantidade de atributos.
• Transformação dos dados
Redução de dimensionalidade

• Utilizar funções de custo diferentes Técnicas


para diferentes amostras • PCA – Agregação
• Redefinir o tamanho do conjunto de
• Seleção de atributos
dados
• Induzir um modelo
• Criar um modelo apenas para o
subconjunto minoritário/majoritário
Conversões de Tipos

• Contínuo para Discreto • Categóricos para Discretos


• Intervalos • Função de Mapeamento por Associação
• Redução da Precisão
Quais variáveis medir?
Quais variáveis medir?
Dimensionalidade

• O número de instâncias ou amostras é chamado de tamanho do


conjunto dos dados enquanto o número de atributos ou
características é chamado de dimensionalidade dos dados.
• Dados com alta dimensão apresenta diversos desafios
• O termo maldição da dimensionalidade foi introduzido pelo
matemático americano Richard Bellman. A maldição da
dimensionalidade refere-se ao fenômeno que surge ao se
analisar dados em espaços de alta dimensionalidade
(tipicamente, centenas ou milhares de dimensões).
Dimensionalidade

• Muitas abordagens de análise de dados tornam-se


significativamente mais complexas com o aumento da
dimensionalidade dos dados.
• Benefícios da redução de dimensionalidade:
• Redução da complexidade de tempo computacional.
• Redução da complexidade de espaço de armazenamento.
• Eliminação de atributos redundantes ou irrelevantes.
• Geração de modelo mais simples e mais compreensível.
• Visualização mais intuitiva.
Dimensionalidade
x1 x2 x3 x4 x5 x6 x7 x8
• Técnicas de redução de dimensionalidade
• Seleção de atributos ou características:
Processo que escolhe um subconjunto ótimo de
atributos de acordo com uma função objetivo.
Abordagem por filtro x Abordagem por
envoltório (wrapper) x1 x2 x3 x4 x5 x6 x7 x8
• Extração de Atributos ou Características: Ao
invés de escolher um subconjunto de atributos,
define novas dimensões em função de todos os
atributos do conjunto original. Análise dos
componentes principais (PCA), Análise de
Componentes Independentes
Esparsidade

• Considera somente dados presentes


• As variáveis podem ser medidas para todas as amostras?
• Qual o valor de uma variável não lida?
Resolução

• O padrão depende da escala


• Resolução ~= Dimensionalidade
Preparação dos Dados
Normalização
• Processo de conversão a uma mesma escala
Cuidados no Aprendizado
de Máquina:
Cuidado 2.1 – Dados Tipo Texto
Qualidade dos Dados

• Qualidade baixa dos dados afeta negativamente os esforços de


processamento
• “The most important point is that poor data quality is an unfolding
disaster”.
Thomas C. Redman, DM Review, August 2004
Qualidade dos Dados

Um modelo para detecção de


pessoas que tem risco de
empréstimo é construído usando
dados de baixa qualidade
• Alguns candidatos valiosos de
crédito são proibidos de receber
empréstimo;
• Mais empréstimos são dados por
padrão, do que por análise de
dados.
Dados Não-Estruturados
Dados Não Estruturados:
Preparação

• recebemos uma base de texto (corpus) e cada exemplar é um documento


que precisa ser tratado;
• Cada documento terá características próprias: tamanho, conteúdo,
linguagem, estilo, …
• O trabalho então é transformar um corpus em conjunto de dados tratáveis
• pelos algoritmos de análise de dados;
• Uma forma bastante tradicional de representação: bag-of-words
Dados Não Estruturados:
Preparação – Bag of Words
Bag Of Words

• Cada documento
se torna um vetor
de termos
• Cada termo é
um componente
(atributo) de um
vetor
• O valor de cada
componente é o
número de vezes
em que ocorre
no documento
Cuidados no Aprendizado
de Máquina:
Cuidado 2.2 – Divisão dos Dados
Avaliação

Entrada Saída Entrada Programa

Teste do
Modelo

Construção do
Modelo

Programa Saída
Overfitting x Underfitting

• Os algoritmos de aprendizado de máquina


buscam construir modelos (hipóteses) que
expliquem o fenômeno.
• Algoritmos com baixa taxa de acerto na
coleção de treinamento
• Underfitting
• Um modelo que serve de hipótese na coleção
de treinamento pode não funcionar para
novas amostras e assim ter baixo poder de
generalização. Modelo especializado.
• Overfitting
Partições do Conjunto de Dados

Conjunto para
Treino
Split

Conjunto Conjunto para


Original Teste
Treino

Obter Treinar Avaliar Salvar o


Pré-processamento
Dados Modelo Modelo Modelo

Treinamento

Teste

Obter Pré- Usar


Pós-processamento
Dados processamento Modelo

Validação
“Vazamento” de Dados

• Data Leakage ocorre quando um


modelo recebe informações durante o
treino que não terá acesso quando o
mesmo for aplicado no cenário de
produção, diretamente com o usuário.
• Data leakage deve ser evitado a todo
custo! Pois vai mostrar um resultado
muito bom no modelo, que não irá
funcionar quando em produção.
Data Leakage – Amostragem
Aleatória
Data leakage fará uma
Se o conjunto de Com amostragem
melhoria artificial nos
dados: aleatória
resultados por que:

É usado para prever O modelo acessa dados


eventos futuros “vindos do futuro” no treino

Algumas validações e casos de


Contém duplicatas teste foram vistos no treino
Técnicas comuns para avaliação
do modelo

Treino – 2/3

Split

Conjunto Teste – 1/3


Original
Hold-Out

Treino – 2/3 Treino Validação


50% 13%
Split
Split

Teste
33%
Original Teste – 1/3
Validação Cruzada

• A escolha das amostras para o


conjunto de treinamento pode
influenciar no modelo gerado
positivamente ou negativamente.
• Uma das formas de contrabalancear
esse problema é utilizar toda a
coleção, ora como treinamento, ora
como teste.
Validação Cruzada

Treino 1 – 50% Teste 1– 50%

Split

Conjunto Treino 2 – 50% Teste 2 – 50%


Original
K-fold Cross Validation
Cuidados no Aprendizado
de Máquina:
Cuidado 3 – Considerações Éticas
Ética no Aprendizado de Máquina

• Leis de privacidade da informação: A lei 13.709, conhecida como Lei


Geral de Proteção de Dados Pessoais (LGPDP), sancionada em
agosto de 2018 entra em vigor em 2020. Fundamentos:
I. o respeito à privacidade;
II. a autodeterminação informativa; (controle sobre os dados pessoais)
III. a liberdade de expressão, de informação, de comunicação e de opinião;
IV. a inviolabilidade da intimidade, da honra e da imagem;
V. o desenvolvimento econômico e tecnológico e a inovação;
VI. a livre iniciativa, a livre concorrência e a defesa do consumidor; e
VII. os direitos humanos, o livre desenvolvimento da personalidade, a
dignidade e o exercício da cidadania pelas pessoas naturais.
Ética no Aprendizado de Máquina

• Anonimato é mais difícil que se pensa


• Meados da década de 90 o governador de
Massachussets foi a público garantir que os
relatórios médicos enviados pelos hospitais
eram anônimos e confiáveis -> recebeu suas
receitas médicas em seu email pessoal.
Ética no Aprendizado de Máquina

• Existem técnicas de re-


identificação
• 50% dos americanos podem ser
identificados pela cidade, data de
nascimento e sexo;
• 85% podem ser identificados se
você incluir o código postal.
Ética no Aprendizado de Máquina

• Base de dados do NetFlix: 100 milhões de avaliações de vídeo


• Pode identificar 99% das pessoas de acordo com as avaliações de 6 vídeos e
aproximadamente quando eles foram vistos.
Cuidados no uso da
Mineração de Dados

Mineração de dados revela


correlação, não causa
• Discriminações
• Correlação x Causalidade
Discriminação

• O propósito da mineração de dados é discriminar...


• Quem recebe empréstimo
• Quem recebe uma oferta especial
Certos tipos de discriminação são
anti-éticas e ilegais
• Racial
• Sexual
• Religiosa
:

Exceção:
Médicos que levam em conta o sexo dos
pacientes
Correlação não infere causa

• A medida que a venda de sorvetes cresce -> O número


de afogamentos aumenta
• Sorvete causa afogamento?
Conclusão
Próxima Aula:
Aprendizado
Supervisionado e Não
Supervisionado

Você também pode gostar