SlideShare uma empresa Scribd logo
AprendizagemAutomática Mestrado  em Engenharia Informática
Sumário Aprendizagem Supervisionada 18-10-2010 Aprendizagem Automática / Machine Learning 2
Tipos de Aprendizagem (revisão) Procura Dado um espaço de soluções, procurar a melhor (ou uma aceitável) Aprendizagem por Reforço Interagir com um ambiente e descobrir qual a melhor acção para cada estado Aprendizagem Não supervisionada Dados vários padrões descobrir semelhanças entre eles, agrupá-los Reduzir número de atributos considerados Aprendizagem Supervisionada Sabendo o que se passou no passado, prever o que se segue Induzir uma regra dados exemplos  18-10-2010 Aprendizagem Automática / Machine Learning 3
K-NearestNeighbours (K-NN) Descobrir os K padrões mais semelhantes ao que queremos classificar Seleccionar uma classe de entre os padrões conhecidos (como? média? votação?) Problemas:  definir a distância,  definir o modo de selecção, algumas dificuldades com problemas não lineares
Quantização Vectorial (Learning Vector Quantization) Problema: Dada uma imagem representada com 16 milhões de cores, quais as melhores 256 cores a usar para perder o mínimo de qualidade? Treino supervisionado para encontrar a melhor "capacidade de reconstrução de um conjunto específico de imagens"  Semelhante a online K-Means, ... mas o representante é aproximado se a classificação é correcta e afastado caso contrário) Problemas: ,[object Object]
não é muito fiável quando há “ruído”Usado com sucesso na compressão de dados e classificação de documentação. 18-10-2010 Aprendizagem Automática / Machine Learning 5
Aprendizagem Supervisionada Existe (no treino) o resultado esperado para cada exemplo Ex: Dado um conjunto de letras escritas à mão que foram identificadas por uma pessoa, criar um modelo para identificação de letras escritas à mão Erro de classificação  Quantas letras falhou no conjunto? Erro médio As letras escolhidas por engano eram "parecidas" com as desejadas? 18-10-2010 Aprendizagem Automática / Machine Learning 6
ClassificaçãoConjunto positivo (geral)  1 < x 18-10-2010 Aprendizagem Automática / Machine Learning 7 - - + + - - + - + - + + - + -
Conjunto positivo (específico)  1 < x < 2 && 0 < y < 2 18-10-2010 Aprendizagem Automática / Machine Learning 8 - - + + - - + - + - + + - + -
Conjunto negativo 0 < x < 1 && 0 < y < 2 18-10-2010 Aprendizagem Automática / Machine Learning 9 - - + + - - + - + - + + - + -
Conjunto positivo 1 < x < 2 && 1 < y < 2 – mais específica 0.8 < x < 2.3 && 0.6 < y < 2.1 – mais geral 18-10-2010 Aprendizagem Automática / Machine Learning 10 - - + - + - + + - + + + - - -
Ruído? Pode ser apenas um erro … ou não 18-10-2010 Aprendizagem Automática / Machine Learning 11 - - + + - - + - + + + + - - -
Generalização e overfitting Forma geral, …  mas  com erro Forma sem erro, … mas muito específica 18-10-2010 Aprendizagem Automática / Machine Learning 12 - - - - + + + - - + - - + - + - + + + + + + + + - - - - - -
Aprendizagem Supervisionada Dado um conjunto de exemplos, será que é possível descobrir o padrão que os gera? Exemplo simples:
Valores Valores possíveis, por atributo
Pre-processamento Discretizar, quantificar, normalizar …
Case-BasedReasoning(matéria de IA) Semelhante ao K-NN, mas …  Não guarda todos os exemplos, antes cria “casos-padrão”: Quando um padrão de entrada “está incluído” num “caso” guardado, é ignorado; Quando um padrão de entrada “é semelhante” a um “caso” guardado, o caso é estendido para incluir o novo padrão; Quando um padrão de entrada “não é semelhante” a nenhum “caso” guardado, é criado um novo caso; Tipicamente tem valores de entrada/saída complexos (e.g. grafos); Permite “combinar” valores de saída de vários exemplos de um modo complexo; Implementação sempre intimamente ligada a um domínio.
Aprendizagem Supervisionada Sair = (Previsão == Limpo E Humidade == Normal) OU (Previsão == Nublado) OU (Previsão == Chuva E Vento == Fraco) Solução representável por uma condição lógica
Árvores de Decisão(DecisionTrees) A cada nó está associado, durante o treino, o conjunto de exemplos que é classificado por este nó Céu Chuva Limpo Nublado Vento Humidade Sim Forte Fraco Normal Alta Sair = (Previsão == Limpo E Humidade == Normal) OU (Previsão == Nublado) OU (Previsão == Chuva E Vento == Fraco) Sim Não Sim Não
Árvores de Decisão(DecisionTrees) Céu Chuva Limpo Nublado Vento Humidade Vento Forte Fraco Normal Alta Forte Fraco Sim Não Sim Não Sim Não
DecisionTrees: Quando se usam? Instâncias representadas por atributos com valores discretos Pequenos conjuntos de valores possíveis para cada atributo Pretende-se uma classificação das instâncias (de preferência booleana) Dados podem conter erros e valores indefinidos Solução pode ser representada por uma expressão booleana ou uma classificação, e.g.: (Previsão = Limpo E Humidade = Normal) OU (Previsão = nublado) OU (Previsão = Chuva E Vento = Fraco)
DecisionTrees: Construção Qual o atributo que melhor separa as instâncias numa decisão booleana? Entropia(S) = - p+ log2 (p+) - p- log2 (p-) S : Conjunto de exemplos de um conceito p+ : Percentagem de exemplos positivos p- : Percentagem de exemplos negativos
DecisionTrees: Construção     Quanto mais equilibrado o conjunto (p+ = p-), maior a entropia, i.e. menor a probabilidade de prever de que classe é um exemplo tirado ao acaso.
DecisionTrees: Construção Entropia relativa à classificação em c partes, com base num atributo com c valores diferentes (pretende-se minimizar a entropia): X : Conjunto de exemplos de um conceito (e.g. “Sair?”) c: nº de valores possíveis para o conceito a pi : Percentagem de exemplos em que: a = vi
Ganho de informação Ganho de informação de um atributo a em relação a um conjunto X: v: valores possíveis para a Xv: Subconjunto de X em que o valor de a é igual a v |X|: nº de elementos de X
Ganho de informação a = Vento v = {Forte, Fraco} nº de instâncias de X (total) = 14 (9+, 5-) nº de instâncias de X em que (Vento = Forte) = 6 (3+, 3-) nº de instâncias de X em que (Vento = Fraco) = 8 (6+, 2-) G(X,Vento) = 0.94 – [(8*0.811) + (6*1.0)] /14 = 0.048 Fraco Forte
ID3 ID3(Exemplos, Atributo-Alvo, Atributos) Criar a raíz Se p+ = 1: raíz = + Se p- = 1: raíz = - Se Atributos = Ø, raíz = valor mais comum do alvo em exemplos A <- Atributo que melhor classifica os exemplos de acordo com o ganho de informação Raíz = A Para cada valor (v) possível de A: Adicionar novo ramo A = v Exemplosv = Conjunto de exemplos em que A=v Se Exemplosv = Ø: adicionar ramo com valor mais comum do alvo em Exemplosv senão ramo = ID3(Exemplosv, Atributo-Alvo, Atributos – {A})

Mais conteúdo relacionado

Mais procurados

Aprendizado de máquina
Aprendizado de máquinaAprendizado de máquina
Aprendizado de máquina
Intellecta
 
Aprendizado de Máquina
Aprendizado de MáquinaAprendizado de Máquina
Aprendizado de Máquina
butest
 
Mineração de dados
Mineração de dadosMineração de dados
Mineração de dados
Angelo Furtado
 
Curso Básico de Java - Aula 7
Curso Básico de Java - Aula 7Curso Básico de Java - Aula 7
Curso Básico de Java - Aula 7
PeslPinguim
 
Algoritmo_ID3_e_C.45_Gilcimar
Algoritmo_ID3_e_C.45_GilcimarAlgoritmo_ID3_e_C.45_Gilcimar
Algoritmo_ID3_e_C.45_Gilcimar
iaudesc
 
ID3 Algorithm
ID3 AlgorithmID3 Algorithm
ID3 Algorithm
Michel Alves
 
Machine Learning - Introdução e Aplicações
Machine Learning - Introdução e AplicaçõesMachine Learning - Introdução e Aplicações
Machine Learning - Introdução e Aplicações
Dionisio Chiuratto Agourakis
 
Ávores de Decisão
Ávores de DecisãoÁvores de Decisão
Ávores de Decisão
Ricardo Luis dos Santos
 
Redes Neurais Perceptron e Hopfield
Redes Neurais Perceptron e HopfieldRedes Neurais Perceptron e Hopfield
Redes Neurais Perceptron e Hopfield
Lucas Sabadini
 
Scipy meetup-2020-02
Scipy meetup-2020-02Scipy meetup-2020-02
Scipy meetup-2020-02
Renato Candido
 
Introdução à Aprendizagem de Máquina
Introdução à Aprendizagem de MáquinaIntrodução à Aprendizagem de Máquina
Introdução à Aprendizagem de Máquina
Fernando Palma
 
Inteligência Artificial em Séries Temporais na Arrecadação
Inteligência Artificial em Séries Temporais na ArrecadaçãoInteligência Artificial em Séries Temporais na Arrecadação
Inteligência Artificial em Séries Temporais na Arrecadação
Guttenberg Ferreira Passos
 
[José Ahirton Lopes] Treinamento - Árvores de Decisão, SVM e Naive Bayes
[José Ahirton Lopes] Treinamento - Árvores de Decisão, SVM e Naive Bayes[José Ahirton Lopes] Treinamento - Árvores de Decisão, SVM e Naive Bayes
[José Ahirton Lopes] Treinamento - Árvores de Decisão, SVM e Naive Bayes
Ahirton Lopes
 
Aulas de estrutura de dados por Ayrton Yagami
Aulas de estrutura de dados por Ayrton YagamiAulas de estrutura de dados por Ayrton Yagami
Aulas de estrutura de dados por Ayrton Yagami
Ayrton Yagami
 
Introdução à Estrutura de Dados
Introdução à Estrutura de DadosIntrodução à Estrutura de Dados
Introdução à Estrutura de Dados
Herval Alexandre Dias Hubner
 
Redes neurais e lógica fuzzy
Redes neurais e lógica fuzzyRedes neurais e lógica fuzzy
Redes neurais e lógica fuzzy
Renato Ximenes
 
Estrutura de Dados - Aula 02
Estrutura de Dados - Aula 02Estrutura de Dados - Aula 02
Estrutura de Dados - Aula 02
thomasdacosta
 
A rede neural supervisionada chamada perceptron multicamadas
A rede neural supervisionada chamada perceptron multicamadasA rede neural supervisionada chamada perceptron multicamadas
A rede neural supervisionada chamada perceptron multicamadas
cesar do amaral
 
Estrutura de Dados Apoio (Complexidade de Algoritmos)
Estrutura de Dados Apoio (Complexidade de Algoritmos)Estrutura de Dados Apoio (Complexidade de Algoritmos)
Estrutura de Dados Apoio (Complexidade de Algoritmos)
Leinylson Fontinele
 
Interpolação - Parte I - @professorenan
Interpolação - Parte I - @professorenanInterpolação - Parte I - @professorenan
Interpolação - Parte I - @professorenan
Renan Gustavo
 

Mais procurados (20)

Aprendizado de máquina
Aprendizado de máquinaAprendizado de máquina
Aprendizado de máquina
 
Aprendizado de Máquina
Aprendizado de MáquinaAprendizado de Máquina
Aprendizado de Máquina
 
Mineração de dados
Mineração de dadosMineração de dados
Mineração de dados
 
Curso Básico de Java - Aula 7
Curso Básico de Java - Aula 7Curso Básico de Java - Aula 7
Curso Básico de Java - Aula 7
 
Algoritmo_ID3_e_C.45_Gilcimar
Algoritmo_ID3_e_C.45_GilcimarAlgoritmo_ID3_e_C.45_Gilcimar
Algoritmo_ID3_e_C.45_Gilcimar
 
ID3 Algorithm
ID3 AlgorithmID3 Algorithm
ID3 Algorithm
 
Machine Learning - Introdução e Aplicações
Machine Learning - Introdução e AplicaçõesMachine Learning - Introdução e Aplicações
Machine Learning - Introdução e Aplicações
 
Ávores de Decisão
Ávores de DecisãoÁvores de Decisão
Ávores de Decisão
 
Redes Neurais Perceptron e Hopfield
Redes Neurais Perceptron e HopfieldRedes Neurais Perceptron e Hopfield
Redes Neurais Perceptron e Hopfield
 
Scipy meetup-2020-02
Scipy meetup-2020-02Scipy meetup-2020-02
Scipy meetup-2020-02
 
Introdução à Aprendizagem de Máquina
Introdução à Aprendizagem de MáquinaIntrodução à Aprendizagem de Máquina
Introdução à Aprendizagem de Máquina
 
Inteligência Artificial em Séries Temporais na Arrecadação
Inteligência Artificial em Séries Temporais na ArrecadaçãoInteligência Artificial em Séries Temporais na Arrecadação
Inteligência Artificial em Séries Temporais na Arrecadação
 
[José Ahirton Lopes] Treinamento - Árvores de Decisão, SVM e Naive Bayes
[José Ahirton Lopes] Treinamento - Árvores de Decisão, SVM e Naive Bayes[José Ahirton Lopes] Treinamento - Árvores de Decisão, SVM e Naive Bayes
[José Ahirton Lopes] Treinamento - Árvores de Decisão, SVM e Naive Bayes
 
Aulas de estrutura de dados por Ayrton Yagami
Aulas de estrutura de dados por Ayrton YagamiAulas de estrutura de dados por Ayrton Yagami
Aulas de estrutura de dados por Ayrton Yagami
 
Introdução à Estrutura de Dados
Introdução à Estrutura de DadosIntrodução à Estrutura de Dados
Introdução à Estrutura de Dados
 
Redes neurais e lógica fuzzy
Redes neurais e lógica fuzzyRedes neurais e lógica fuzzy
Redes neurais e lógica fuzzy
 
Estrutura de Dados - Aula 02
Estrutura de Dados - Aula 02Estrutura de Dados - Aula 02
Estrutura de Dados - Aula 02
 
A rede neural supervisionada chamada perceptron multicamadas
A rede neural supervisionada chamada perceptron multicamadasA rede neural supervisionada chamada perceptron multicamadas
A rede neural supervisionada chamada perceptron multicamadas
 
Estrutura de Dados Apoio (Complexidade de Algoritmos)
Estrutura de Dados Apoio (Complexidade de Algoritmos)Estrutura de Dados Apoio (Complexidade de Algoritmos)
Estrutura de Dados Apoio (Complexidade de Algoritmos)
 
Interpolação - Parte I - @professorenan
Interpolação - Parte I - @professorenanInterpolação - Parte I - @professorenan
Interpolação - Parte I - @professorenan
 

Destaque

Árvores de Decisão
Árvores de DecisãoÁrvores de Decisão
Árvores de Decisão
Marcos Castro
 
Computação com DNA - Modelo baseado em Stickers
Computação com DNA - Modelo baseado em StickersComputação com DNA - Modelo baseado em Stickers
Computação com DNA - Modelo baseado em Stickers
Marcos Castro
 
React native first impression
React native first impressionReact native first impression
React native first impression
Alvaro Viebrantz
 
Classificação de imagens não supervisionada - KMEANS e ISODATA
Classificação de imagens não supervisionada - KMEANS e ISODATAClassificação de imagens não supervisionada - KMEANS e ISODATA
Classificação de imagens não supervisionada - KMEANS e ISODATA
André Andrade
 
Inteligência Artificial - Aula2 - Busca em Grafos
Inteligência Artificial - Aula2 - Busca em GrafosInteligência Artificial - Aula2 - Busca em Grafos
Inteligência Artificial - Aula2 - Busca em Grafos
Rafael Pinto
 
Velvet assembler
Velvet assemblerVelvet assembler
Velvet assembler
Marcos Castro
 
Apresentação Python e Games - Python Brasil 11 - 2015
Apresentação Python e Games - Python Brasil 11 - 2015Apresentação Python e Games - Python Brasil 11 - 2015
Apresentação Python e Games - Python Brasil 11 - 2015
Julio Cesar Eiras Melanda
 
qt-project.org and Qt 5
qt-project.org and Qt 5qt-project.org and Qt 5
qt-project.org and Qt 5
thiagomacieira
 
Bioinformática com Rosalind utilizando Python
Bioinformática com Rosalind utilizando PythonBioinformática com Rosalind utilizando Python
Bioinformática com Rosalind utilizando Python
Marcos Castro
 
Grafos De Bruijn para identificação de variações genéticas usando GBS
Grafos De Bruijn para identificação de variações genéticas usando GBSGrafos De Bruijn para identificação de variações genéticas usando GBS
Grafos De Bruijn para identificação de variações genéticas usando GBS
Marcos Castro
 
Problema das N rainhas (Backtracking)
Problema das N rainhas (Backtracking)Problema das N rainhas (Backtracking)
Problema das N rainhas (Backtracking)
Marcos Castro
 
Algoritmo de Knuth-Morris-Pratt - KMP
Algoritmo de Knuth-Morris-Pratt - KMPAlgoritmo de Knuth-Morris-Pratt - KMP
Algoritmo de Knuth-Morris-Pratt - KMP
Marcos Castro
 
Maratona de Programação
Maratona de ProgramaçãoMaratona de Programação
Maratona de Programação
Marcos Castro
 
Problema da Mochila 0-1 (Knapsack problem)
Problema da Mochila 0-1 (Knapsack problem)Problema da Mochila 0-1 (Knapsack problem)
Problema da Mochila 0-1 (Knapsack problem)
Marcos Castro
 
IDE Falcon C++
IDE Falcon C++IDE Falcon C++
IDE Falcon C++
Marcos Castro
 
Qt Apresentação
Qt ApresentaçãoQt Apresentação
Qt Apresentação
Elaine Naomi
 
Redes Neurais Artificiais
Redes Neurais ArtificiaisRedes Neurais Artificiais
Redes Neurais Artificiais
Marcos Castro
 
Caminhos Mínimos - Algoritmo de Dijkstra
Caminhos Mínimos - Algoritmo de DijkstraCaminhos Mínimos - Algoritmo de Dijkstra
Caminhos Mínimos - Algoritmo de Dijkstra
Marcos Castro
 
Apostila ferramentas QT
Apostila ferramentas QTApostila ferramentas QT
Apostila ferramentas QT
Marcos Magnanti
 
Mer - Modelo Entidade Relacionamento
Mer - Modelo Entidade RelacionamentoMer - Modelo Entidade Relacionamento
Mer - Modelo Entidade Relacionamento
Rademaker Siena
 

Destaque (20)

Árvores de Decisão
Árvores de DecisãoÁrvores de Decisão
Árvores de Decisão
 
Computação com DNA - Modelo baseado em Stickers
Computação com DNA - Modelo baseado em StickersComputação com DNA - Modelo baseado em Stickers
Computação com DNA - Modelo baseado em Stickers
 
React native first impression
React native first impressionReact native first impression
React native first impression
 
Classificação de imagens não supervisionada - KMEANS e ISODATA
Classificação de imagens não supervisionada - KMEANS e ISODATAClassificação de imagens não supervisionada - KMEANS e ISODATA
Classificação de imagens não supervisionada - KMEANS e ISODATA
 
Inteligência Artificial - Aula2 - Busca em Grafos
Inteligência Artificial - Aula2 - Busca em GrafosInteligência Artificial - Aula2 - Busca em Grafos
Inteligência Artificial - Aula2 - Busca em Grafos
 
Velvet assembler
Velvet assemblerVelvet assembler
Velvet assembler
 
Apresentação Python e Games - Python Brasil 11 - 2015
Apresentação Python e Games - Python Brasil 11 - 2015Apresentação Python e Games - Python Brasil 11 - 2015
Apresentação Python e Games - Python Brasil 11 - 2015
 
qt-project.org and Qt 5
qt-project.org and Qt 5qt-project.org and Qt 5
qt-project.org and Qt 5
 
Bioinformática com Rosalind utilizando Python
Bioinformática com Rosalind utilizando PythonBioinformática com Rosalind utilizando Python
Bioinformática com Rosalind utilizando Python
 
Grafos De Bruijn para identificação de variações genéticas usando GBS
Grafos De Bruijn para identificação de variações genéticas usando GBSGrafos De Bruijn para identificação de variações genéticas usando GBS
Grafos De Bruijn para identificação de variações genéticas usando GBS
 
Problema das N rainhas (Backtracking)
Problema das N rainhas (Backtracking)Problema das N rainhas (Backtracking)
Problema das N rainhas (Backtracking)
 
Algoritmo de Knuth-Morris-Pratt - KMP
Algoritmo de Knuth-Morris-Pratt - KMPAlgoritmo de Knuth-Morris-Pratt - KMP
Algoritmo de Knuth-Morris-Pratt - KMP
 
Maratona de Programação
Maratona de ProgramaçãoMaratona de Programação
Maratona de Programação
 
Problema da Mochila 0-1 (Knapsack problem)
Problema da Mochila 0-1 (Knapsack problem)Problema da Mochila 0-1 (Knapsack problem)
Problema da Mochila 0-1 (Knapsack problem)
 
IDE Falcon C++
IDE Falcon C++IDE Falcon C++
IDE Falcon C++
 
Qt Apresentação
Qt ApresentaçãoQt Apresentação
Qt Apresentação
 
Redes Neurais Artificiais
Redes Neurais ArtificiaisRedes Neurais Artificiais
Redes Neurais Artificiais
 
Caminhos Mínimos - Algoritmo de Dijkstra
Caminhos Mínimos - Algoritmo de DijkstraCaminhos Mínimos - Algoritmo de Dijkstra
Caminhos Mínimos - Algoritmo de Dijkstra
 
Apostila ferramentas QT
Apostila ferramentas QTApostila ferramentas QT
Apostila ferramentas QT
 
Mer - Modelo Entidade Relacionamento
Mer - Modelo Entidade RelacionamentoMer - Modelo Entidade Relacionamento
Mer - Modelo Entidade Relacionamento
 

Semelhante a Aprendizagem Supervisionada I

Recursividade em C
Recursividade em CRecursividade em C
Recursividade em C
Caique Silva
 
160277 redes neurais artificiais
160277 redes neurais artificiais160277 redes neurais artificiais
160277 redes neurais artificiais
Coegio São Pauloda Cruz
 
Regras de Produção: o Motor de Inferência JESS
Regras de Produção:o Motor de Inferência JESSRegras de Produção:o Motor de Inferência JESS
Regras de Produção: o Motor de Inferência JESS
elliando dias
 
Introdução a Árvore de Dados Adaptativa (WTA 2011)
Introdução a Árvore de Dados Adaptativa (WTA 2011)Introdução a Árvore de Dados Adaptativa (WTA 2011)
Introdução a Árvore de Dados Adaptativa (WTA 2011)
Fabrício Catae
 
Listas: conceito e estáticas
Listas:  conceito e estáticasListas:  conceito e estáticas
Listas: conceito e estáticas
Sérgio Souza Costa
 
Analytics - Data Science - Arvores de decisao
Analytics - Data Science - Arvores de decisaoAnalytics - Data Science - Arvores de decisao
Analytics - Data Science - Arvores de decisao
Vitor Nunes
 
Big data
Big dataBig data
Aula2
Aula2Aula2
AlfaCon LABs - Meetup Machine Learning (03/07/2014)
AlfaCon LABs - Meetup Machine Learning (03/07/2014)AlfaCon LABs - Meetup Machine Learning (03/07/2014)
AlfaCon LABs - Meetup Machine Learning (03/07/2014)
Labs Alfacon
 
Algoritmos Genéticos
Algoritmos GenéticosAlgoritmos Genéticos
Algoritmos Genéticos
Luís Nunes
 
mod5-estruturas-dadosdinamicas
mod5-estruturas-dadosdinamicasmod5-estruturas-dadosdinamicas
mod5-estruturas-dadosdinamicas
diogoa21
 
Aula 6 - Estruturas de seleção encadeada - parte 1
Aula 6 - Estruturas de seleção encadeada - parte 1Aula 6 - Estruturas de seleção encadeada - parte 1
Aula 6 - Estruturas de seleção encadeada - parte 1
Pacc UAB
 
Programação Genética
Programação GenéticaProgramação Genética
Programação Genética
iaudesc
 
Web Data Mining em R: agrupamento de mensagens do twitter
Web Data Mining em R: agrupamento de mensagens do twitterWeb Data Mining em R: agrupamento de mensagens do twitter
Web Data Mining em R: agrupamento de mensagens do twitter
Fabrício Barth
 
Aprendizado Profundo & CNNs
Aprendizado Profundo & CNNsAprendizado Profundo & CNNs
Aprendizado Profundo & CNNs
Fabio Spanhol
 
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Leinylson Fontinele
 
Estrutura de Dados - Aula de revisão de c na prática
Estrutura de Dados - Aula de revisão de c na práticaEstrutura de Dados - Aula de revisão de c na prática
Estrutura de Dados - Aula de revisão de c na prática
Leinylson Fontinele
 
Matemática Computacional
Matemática ComputacionalMatemática Computacional
Matemática Computacional
Ricardo Terra
 
Aula 1 - introdução a fundamentos de computação
Aula 1 - introdução a fundamentos de computaçãoAula 1 - introdução a fundamentos de computação
Aula 1 - introdução a fundamentos de computação
Sérgio Souza Costa
 
Machine learning java ce conference 2012 - fortaleza ce
Machine learning java ce conference 2012 - fortaleza ceMachine learning java ce conference 2012 - fortaleza ce
Machine learning java ce conference 2012 - fortaleza ce
Luca Bastos
 

Semelhante a Aprendizagem Supervisionada I (20)

Recursividade em C
Recursividade em CRecursividade em C
Recursividade em C
 
160277 redes neurais artificiais
160277 redes neurais artificiais160277 redes neurais artificiais
160277 redes neurais artificiais
 
Regras de Produção: o Motor de Inferência JESS
Regras de Produção:o Motor de Inferência JESSRegras de Produção:o Motor de Inferência JESS
Regras de Produção: o Motor de Inferência JESS
 
Introdução a Árvore de Dados Adaptativa (WTA 2011)
Introdução a Árvore de Dados Adaptativa (WTA 2011)Introdução a Árvore de Dados Adaptativa (WTA 2011)
Introdução a Árvore de Dados Adaptativa (WTA 2011)
 
Listas: conceito e estáticas
Listas:  conceito e estáticasListas:  conceito e estáticas
Listas: conceito e estáticas
 
Analytics - Data Science - Arvores de decisao
Analytics - Data Science - Arvores de decisaoAnalytics - Data Science - Arvores de decisao
Analytics - Data Science - Arvores de decisao
 
Big data
Big dataBig data
Big data
 
Aula2
Aula2Aula2
Aula2
 
AlfaCon LABs - Meetup Machine Learning (03/07/2014)
AlfaCon LABs - Meetup Machine Learning (03/07/2014)AlfaCon LABs - Meetup Machine Learning (03/07/2014)
AlfaCon LABs - Meetup Machine Learning (03/07/2014)
 
Algoritmos Genéticos
Algoritmos GenéticosAlgoritmos Genéticos
Algoritmos Genéticos
 
mod5-estruturas-dadosdinamicas
mod5-estruturas-dadosdinamicasmod5-estruturas-dadosdinamicas
mod5-estruturas-dadosdinamicas
 
Aula 6 - Estruturas de seleção encadeada - parte 1
Aula 6 - Estruturas de seleção encadeada - parte 1Aula 6 - Estruturas de seleção encadeada - parte 1
Aula 6 - Estruturas de seleção encadeada - parte 1
 
Programação Genética
Programação GenéticaProgramação Genética
Programação Genética
 
Web Data Mining em R: agrupamento de mensagens do twitter
Web Data Mining em R: agrupamento de mensagens do twitterWeb Data Mining em R: agrupamento de mensagens do twitter
Web Data Mining em R: agrupamento de mensagens do twitter
 
Aprendizado Profundo & CNNs
Aprendizado Profundo & CNNsAprendizado Profundo & CNNs
Aprendizado Profundo & CNNs
 
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
 
Estrutura de Dados - Aula de revisão de c na prática
Estrutura de Dados - Aula de revisão de c na práticaEstrutura de Dados - Aula de revisão de c na prática
Estrutura de Dados - Aula de revisão de c na prática
 
Matemática Computacional
Matemática ComputacionalMatemática Computacional
Matemática Computacional
 
Aula 1 - introdução a fundamentos de computação
Aula 1 - introdução a fundamentos de computaçãoAula 1 - introdução a fundamentos de computação
Aula 1 - introdução a fundamentos de computação
 
Machine learning java ce conference 2012 - fortaleza ce
Machine learning java ce conference 2012 - fortaleza ceMachine learning java ce conference 2012 - fortaleza ce
Machine learning java ce conference 2012 - fortaleza ce
 

Aprendizagem Supervisionada I

  • 1. AprendizagemAutomática Mestrado em Engenharia Informática
  • 2. Sumário Aprendizagem Supervisionada 18-10-2010 Aprendizagem Automática / Machine Learning 2
  • 3. Tipos de Aprendizagem (revisão) Procura Dado um espaço de soluções, procurar a melhor (ou uma aceitável) Aprendizagem por Reforço Interagir com um ambiente e descobrir qual a melhor acção para cada estado Aprendizagem Não supervisionada Dados vários padrões descobrir semelhanças entre eles, agrupá-los Reduzir número de atributos considerados Aprendizagem Supervisionada Sabendo o que se passou no passado, prever o que se segue Induzir uma regra dados exemplos 18-10-2010 Aprendizagem Automática / Machine Learning 3
  • 4. K-NearestNeighbours (K-NN) Descobrir os K padrões mais semelhantes ao que queremos classificar Seleccionar uma classe de entre os padrões conhecidos (como? média? votação?) Problemas: definir a distância, definir o modo de selecção, algumas dificuldades com problemas não lineares
  • 5.
  • 6. não é muito fiável quando há “ruído”Usado com sucesso na compressão de dados e classificação de documentação. 18-10-2010 Aprendizagem Automática / Machine Learning 5
  • 7. Aprendizagem Supervisionada Existe (no treino) o resultado esperado para cada exemplo Ex: Dado um conjunto de letras escritas à mão que foram identificadas por uma pessoa, criar um modelo para identificação de letras escritas à mão Erro de classificação Quantas letras falhou no conjunto? Erro médio As letras escolhidas por engano eram "parecidas" com as desejadas? 18-10-2010 Aprendizagem Automática / Machine Learning 6
  • 8. ClassificaçãoConjunto positivo (geral) 1 < x 18-10-2010 Aprendizagem Automática / Machine Learning 7 - - + + - - + - + - + + - + -
  • 9. Conjunto positivo (específico) 1 < x < 2 && 0 < y < 2 18-10-2010 Aprendizagem Automática / Machine Learning 8 - - + + - - + - + - + + - + -
  • 10. Conjunto negativo 0 < x < 1 && 0 < y < 2 18-10-2010 Aprendizagem Automática / Machine Learning 9 - - + + - - + - + - + + - + -
  • 11. Conjunto positivo 1 < x < 2 && 1 < y < 2 – mais específica 0.8 < x < 2.3 && 0.6 < y < 2.1 – mais geral 18-10-2010 Aprendizagem Automática / Machine Learning 10 - - + - + - + + - + + + - - -
  • 12. Ruído? Pode ser apenas um erro … ou não 18-10-2010 Aprendizagem Automática / Machine Learning 11 - - + + - - + - + + + + - - -
  • 13. Generalização e overfitting Forma geral, … mas com erro Forma sem erro, … mas muito específica 18-10-2010 Aprendizagem Automática / Machine Learning 12 - - - - + + + - - + - - + - + - + + + + + + + + - - - - - -
  • 14. Aprendizagem Supervisionada Dado um conjunto de exemplos, será que é possível descobrir o padrão que os gera? Exemplo simples:
  • 17. Case-BasedReasoning(matéria de IA) Semelhante ao K-NN, mas … Não guarda todos os exemplos, antes cria “casos-padrão”: Quando um padrão de entrada “está incluído” num “caso” guardado, é ignorado; Quando um padrão de entrada “é semelhante” a um “caso” guardado, o caso é estendido para incluir o novo padrão; Quando um padrão de entrada “não é semelhante” a nenhum “caso” guardado, é criado um novo caso; Tipicamente tem valores de entrada/saída complexos (e.g. grafos); Permite “combinar” valores de saída de vários exemplos de um modo complexo; Implementação sempre intimamente ligada a um domínio.
  • 18. Aprendizagem Supervisionada Sair = (Previsão == Limpo E Humidade == Normal) OU (Previsão == Nublado) OU (Previsão == Chuva E Vento == Fraco) Solução representável por uma condição lógica
  • 19. Árvores de Decisão(DecisionTrees) A cada nó está associado, durante o treino, o conjunto de exemplos que é classificado por este nó Céu Chuva Limpo Nublado Vento Humidade Sim Forte Fraco Normal Alta Sair = (Previsão == Limpo E Humidade == Normal) OU (Previsão == Nublado) OU (Previsão == Chuva E Vento == Fraco) Sim Não Sim Não
  • 20. Árvores de Decisão(DecisionTrees) Céu Chuva Limpo Nublado Vento Humidade Vento Forte Fraco Normal Alta Forte Fraco Sim Não Sim Não Sim Não
  • 21. DecisionTrees: Quando se usam? Instâncias representadas por atributos com valores discretos Pequenos conjuntos de valores possíveis para cada atributo Pretende-se uma classificação das instâncias (de preferência booleana) Dados podem conter erros e valores indefinidos Solução pode ser representada por uma expressão booleana ou uma classificação, e.g.: (Previsão = Limpo E Humidade = Normal) OU (Previsão = nublado) OU (Previsão = Chuva E Vento = Fraco)
  • 22. DecisionTrees: Construção Qual o atributo que melhor separa as instâncias numa decisão booleana? Entropia(S) = - p+ log2 (p+) - p- log2 (p-) S : Conjunto de exemplos de um conceito p+ : Percentagem de exemplos positivos p- : Percentagem de exemplos negativos
  • 23. DecisionTrees: Construção Quanto mais equilibrado o conjunto (p+ = p-), maior a entropia, i.e. menor a probabilidade de prever de que classe é um exemplo tirado ao acaso.
  • 24. DecisionTrees: Construção Entropia relativa à classificação em c partes, com base num atributo com c valores diferentes (pretende-se minimizar a entropia): X : Conjunto de exemplos de um conceito (e.g. “Sair?”) c: nº de valores possíveis para o conceito a pi : Percentagem de exemplos em que: a = vi
  • 25. Ganho de informação Ganho de informação de um atributo a em relação a um conjunto X: v: valores possíveis para a Xv: Subconjunto de X em que o valor de a é igual a v |X|: nº de elementos de X
  • 26. Ganho de informação a = Vento v = {Forte, Fraco} nº de instâncias de X (total) = 14 (9+, 5-) nº de instâncias de X em que (Vento = Forte) = 6 (3+, 3-) nº de instâncias de X em que (Vento = Fraco) = 8 (6+, 2-) G(X,Vento) = 0.94 – [(8*0.811) + (6*1.0)] /14 = 0.048 Fraco Forte
  • 27. ID3 ID3(Exemplos, Atributo-Alvo, Atributos) Criar a raíz Se p+ = 1: raíz = + Se p- = 1: raíz = - Se Atributos = Ø, raíz = valor mais comum do alvo em exemplos A <- Atributo que melhor classifica os exemplos de acordo com o ganho de informação Raíz = A Para cada valor (v) possível de A: Adicionar novo ramo A = v Exemplosv = Conjunto de exemplos em que A=v Se Exemplosv = Ø: adicionar ramo com valor mais comum do alvo em Exemplosv senão ramo = ID3(Exemplosv, Atributo-Alvo, Atributos – {A})
  • 28. C4.5/C5.0 Semelhante ao ID3, mas … Atributos contínuos: cria uma série de classes para um atributo contínuo dividindo o seu domínio em partes [Quinlan, 96] Permite a utilização quando há valores em falta: não são usados no cálculo da entropia. Permite que os atributos tenham custos diferentes. Remoção (a posteriori) de nós que não são úteis. [Quinlan, 96] J. R. Quinlan. Improved use of continuous attributes in c4.5. Journal of Artificial Intelligence Research, 4:77-90, 1996.
  • 29. (Mitchell 97) Tom Mitchell, "MachineLearning", McGrawHill, 1997, capítulos 2, 3 e 8 R. Duda and P. Hart. Pattern Classification and Scene Analysis. Wiley & Sons, Inc, 1973. "Self-Organizing Maps and Learning Vector Quantization for Feature Sequences", P. Somervuo and T. Kohonen, Neural Processing Letters, 10(2), 1999, pp. 151-159. J.R. Quinlan, Induction of Decision Trees, Machine Learning, vol. 1, no. 1, pp. 81-106, 1986. Giorgio Ingargiola, Building Classification Models: ID3 and C4.5, Computer and Information Science Department, Temple University, Philadelphia. Referências-base 28 AA/ML, Luís Nunes, DCTI/ISCTE
  • 30. Referências Some CompetitiveLearningMethods, BerndFritzke, SystemsBiophysicsInstitute for Neural Computation, Ruhr-UniversitätBochum, April 5, 1997 Hinton, G. E. and Salakhutdinov, R. R Reducing the dimensionality of data with neural networks. Science, Vol. 313. no. 5786, pp. 504 - 507, 28 July 2006. S. Lloyd, LastsquarequantizationinPCM’s. BellTelephoneLaboratoriesPaper (1957). Publishedinjournalmuchlater: S. P. Lloyd. Leastsquaresquantizationin PCM. Specialissueonquantization, IEEE Trans. Inform. Theory, 28:129–137, 1982. WEBSOM Publications Bilmes, J. A Gentle Tutorial on the EM Algorithm and its Application to Parameter Estimation for Gaussian Mixture and Hidden Markov Models. Technical Report, University of Berkeley, ICSI-TR-97-021, 1997. http://citeseer.ist.psu.edu/bilmes98gentle.ht [Rumelhart and Zipser 86] Feature discovery by competitive learning, in Mit Press Computational Models Of Cognition And Perception Series, Parallel distributed processing: explorations in the microstructure of cognition, vol. 1: foundations, pp.151 – 193, (1986), ISBN:0-262-68053-X Authors D. E. RumelhartD. Zipser, Pub. MIT Press   Cambridge, MA, USA Jonathon Shlens, A Tutorial on Principal Component Analysis, Systems Neurobiology Laboratory, Salk Insitute for Biological Studies, 2005
  • 31. Sumário Aprendizagem Supervisionada 18-10-2010 Aprendizagem Automática / Machine Learning 30