Aprendizado de Máquina (Machine Learning)

Documentos relacionados
INF 1771 Inteligência Artificial

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica

INF 1771 Inteligência Artificial

Inteligência Artificial

CLASSIFICADORES ELEMENTARES -II

Classificação: Árvores de Decisão e k-nn. Eduardo Raul Hruschka

DCBD. Avaliação de modelos. Métricas para avaliação de desempenho. Avaliação de modelos. Métricas para avaliação de desempenho...

Métodos Não Paramétricos

Planificação Anual. 0,5 Geometria no plano e no espaço II. 32 Avaliações escritas e respetivas correcções. 5 Auto-avaliação

Análise Discriminante

Redes Neurais MLP: Exemplos e Características

UNIVERSIDADE DO ESTADO DE MATO GROSSO - UNEMAT. Faculdade de Ciências Exatas e Tecnológicas FACET / Sinop Curso de Bacharelado em Engenharia Elétrica

Computação Gráfica. Representação e Modelagem

Paradigmas de Aprendizagem

Agregação de Algoritmos de Aprendizado de Máquina (AM) Professor: Eduardo R. Hruschka Estagiário PAE: Luiz F. S. Coletta

Modelagem da Rede Neural. Modelagem da Rede Neural. Back Propagation. Modelagem da Rede Neural. Modelagem da Rede Neural. Seleção de Variáveis:

E.E.M.FRANCISCO HOLANDA MONTENEGRO PLANO DE CURSO ENSINO MÉDIO

scikit-learn: Aprendizado de máquina 101 com Python

Aula 7 Medidas de Distância. Profa. Elaine Faria UFU

Algoritmos geométricos

MATRIZ DE REFERÊNCIA-Ensino Médio Componente Curricular: Matemática

DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS - Grupo 500. Disciplina: Matemática 9º ano 2015/2016

Aprendizado de Máquina

étodos uméricos AJUSTE DE FUNÇÕES Prof. Erivelton Geraldo Nepomuceno PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA

Máquinas de suporte vetorial e sua aplicação na detecção de spam

Geometria Computacional

Fundamentos de Inteligência Artificial [5COP099]

Metas/ Objetivos Conceitos/ Conteúdos Aulas Previstas

Metas/ Objetivos Conceitos/ Conteúdos Aulas Previstas

INTERPOLAÇÃO LINEAR E BILINEAR: APLICAÇÃO EM TRANSFORMAÇÕES GEOMÉTRICAS DE IMAGEM INTRODUÇÃO

Prof. Daniela Barreiro Claro

Introdução à Programação de Computadores Fabricação Mecânica

4 Construção dos Classificadores

Computação Gráfica. Engenharia de Computação. CEFET/RJ campus Petrópolis. Prof. Luis Retondaro. Aula 3. Transformações Geométricas

AGRUPAMENTO DE ESCOLAS DR. VIEIRA DE CARVALHO. Escola Básica e Secundária Dr. Vieira de Carvalho. Departamento de Matemática e Ciências Experimentais

CADERNO DE EXERCÍCIOS ALGORITMOS

Estatística Descritiva

Reconhecimento de Padrões

Professor: Anselmo Montenegro Conteúdo: Aula 2. - Primitivas Geométricas. Instituto de Computação - UFF

Rede RBF (Radial Basis Function)

Aprendizagem de Máquina

5COP096 TeoriadaComputação

Inteligência Artificial

Processamento de Malhas Poligonais

G1 de Álgebra Linear I Gabarito

Mineração de Dados e Aprendizado de Máquinas. Rodrigo Leite Durães.

INF 1771 Inteligência Artificial

UNIDADE 1 ESTATÍSTICA E PROBABILIDADES 9 tempos de 45 minutos

Redes Neurais: MLP. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação

APLICAÇÃO DE ALGORITMOS BIO-INSPIRADOS EM CONTROLE ÓTIMO

Aprendizado de Máquinas

1. Conhecendo-se somente os produtos AB e AC, calcule A = X 2 = 2X. 3. Mostre que se A e B são matrizes que comutam com a matriz M = 1 0

Aprendizado de Máquina

Classificação e Predição de Dados - Profits Consulting - Consultoria Empresarial - Serviços SAP- CRM Si

MINERAÇÃO DE DADOS. Thiago Marzagão CLUSTERIZAÇÃO. Thiago Marzagão (UnB) MINERAÇÃO DE DADOS 1 / 9

DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS - Grupo 500 Planificação Anual /Critérios de avaliação. Disciplina: Matemática A 12º ano 2016/2017

EXERCÍCIOS: Estrutura Sequencial, IF (SE), ELSE (Senão)

Utilização do Corte Percentual na categorização de documentos da Web com o algoritmo Naive Bayes

UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo

MATRIZ DE REFERÊNCIA PARA AVALIAÇÃO EM MATEMÁTICA 9º ANO DO ENSINO FUNDAMENTAL SISTEMA PERMANENTE DE AVALIAÇÃO DA EDUCAÇÃO BÁSICA DO CEARÁ SPAECE

Exemplo de Arquitetura: Cliente/Servidor com Mestre e Escravos. Interface. Fator de speed-up. Speed-up

MINISTÉRIO DA EDUCAÇÃO CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE MINAS GERAIS CONSELHO DE GRADUAÇÃO

Redes Neurais não Supervisionadas: SOM

Trabalho. 1.Introdução 2.Resolução de Exemplos

Programação de Computadores:

AGRUPAMENTO DE ESCOLAS ANSELMO DE ANDRADE

Classificação de Padrões. Abordagem prática com Redes Neurais Artificiais

MATEMÁTICA 4º ANO. Novo programa de matemática Objetivos específicos. Ler e representar números, pelo menos até ao milhão.

17/10/2012. dados? Processo. Doutorado em Engenharia de Produção Michel J. Anzanello. Doutorado EP - 2. Doutorado EP - 3.

Escola Adventista Thiago White

Agrupamento de Escolas Fragata do Tejo Moita. Escola Básica 2º e 3º Ciclos Fragata do Tejo

PLANO CURRICULAR DISCIPLINAR. MATEMÁTICA 7º Ano

Avaliando o que foi Aprendido

Redes Neurais e Sistemas Fuzzy

a complexidade no desempenho de algoritmos

Transcrição:

Ciência da Computação (Machine Learning) Aula 07 Classificação com o algoritmo knn Max Pereira

Classificação com o algoritmo k-nearest Neighbors (knn) Como os filmes são categorizados em gêneros? O que define esses gêneros? Quem determina quais filmes vão para quais gêneros? Os filmes em um gênero são similares, mas baseado em que?

Prós: Alta precisão, não sensível a outliers, não é necessário suposições sobre os dados. Contras: Custo computacional, requer muita memória

Algoritmo de classificação simples. Classifica objetos (dados) com base em exemplos de treinamento que estão mais próximos no espaço de características.

Funcionamento: k-nearest Neighbors 1. Temos um conjunto de exemplos (dados), nosso conjunto de treinamento. 2. Todos os dados possuem rótulos (classes) 3. Quando recebemos dados novos sem rótulo (classe), comparamos esses dados com os dados existentes. 4. Resgatamos os dados mais similares (nearest neighbors) e verificamos seus rótulos (classes).

Funcionamento: 5. Focamos nos k (dados) mais similares do nosso conjunto de dados 6. Finalmente olhamos para a maioria dos k (dados) mais similares e, essa classe, será atribuída aos dados que estamos tentando classificar.

Para utilizar o knn é necessário: 1) Um conjunto de exemplos (dataset) 2) Definir uma métrica para determinar a distância entre os exemplos de treinamento. 3) Definir o valor de k (número de vizinhos mais próximos)

Escolha do k k=1 Classe quadrados k=3 Classe triângulos k=7 Classe quadrados?

O k é determinante na classificação k=1 Classe + k=5 Classe - - - + + x q - - - + - +

Geometria e vizinhos mais próximos Nós podemos encarar a tarefa de classificação como um mapeamento dos dados de entrada e as respectivas saídas (classes). Dessa forma, as entradas são listas de valores de características. Isso sugere uma visão geométrica dos dados.

Geometria e vizinhos mais próximos Nesse caso, nós temos uma dimensão para cada característica. Nessa visão, os exemplos são pontos em um espaço de alta dimensão. Assim, podemos executar operações geométricas nesses dados.

Espaço de características 2,20 2,00 Altura 1,80 1,60 1,40 1,20 1,10 20 40 60 70 90 110 130 150 Peso

Dados como vetores de características Para a máquina, as características não têm qualquer significado. Apenas os valores dessas características, e como eles variam no conjunto de exemplos. Assim, podemos pensar em um exemplo como um vetor de características, consistindo em uma única dimensão para cada característica, onde cada dimensão é simplesmente algum valor real.

A grande vantagem de pensar nos exemplos como vetores em um espaço de alta dimensão e aplicar conceitos geométricos no aprendizado de máquina. Por exemplo, uma das operações mais simples em um espaço vetorial é o cálculo de distâncias.

Em geral, em um espaço de dimensão D, a distância Euclidiana entre dois vetores p e q é dada por: d( p, q) n i 1 ( p i q i 2 )

Cliente Idade Renda Produto 1 45 46000 Livro 2 39 100000 TV 3 35 38000 DVD 4 69 150000 Celular 5 58 51000??? Passo 1: Determinar a fórmula da distância (Distância Euclidiana Determinar a fórmula da distância (Distância Euclidiana Normalizada) Normalizada) Distância = Distância = 2 2 (58 idade) 2 (58 idade) (69 35) + (51000 renda) (69 35) + (150000 38000) (51000 renda) (150000 38000) 2

Cliente Distância Produto Passo 2: Calcular as distâncias 1 0.382 Livro 2 0.710 TV 3 0.686 DVD 4 0.941 Celular 5 0.0??? Para responder a pergunta O que o cliente 5 deve comprar?, baseado no algoritmo, a resposta seria um livro. Pois a distância entre o cliente 5 e o cliente 1 é menor. Baseado nesse modelo pode-se prever o comportamento do cliente 5. O algoritmo pode ser expandido além do exemplo mais parecido, para incluir os exemplos mais parecidos, por exemplo, 3-vizinhos mais próximos.

O algoritmo também pode ser usado para prever um valor de saída do tipo Sim/Não (classe). Cliente Idade Renda Classe 1 45 46 Sim 2 39 100 Não 3 35 38 Sim 4 69 150 Não 5 58 51??? Cliente Distância Classe 1 0.382 Sim 2 0.710 Não 3 0.686 Sim 4 0.941 Não 5 0.0??? Usando 1-vizinho mais próximo o modelo diria que a saída do cliente 5 seria Sim e 2-vizinhos mais próximos também seria Sim (ambos os clientes 1 e 3 têm saídas Sim ). Aplicando 3-vizinhos mais próximos o modelo diria Sim (os clientes 1 e 3 têm saídas Sim, o cliente 2 tem saída Não, então a maioria desses valores é Sim )

Validação Cruzada: utilizada para evitar overfitting e para certificar a robustez dos resultados. 1. Divida o conjunto de exemplos em dois subconjuntos: Treinamento (TR) e Teste (TE). 2. Use a indução (knn) para gerar a hipótese H sobre TR. 3. Porcentagem de erro de H aplicada a TE. 4. Repete os passos 1-3 com diferentes tamanhos de TE e TR, com elementos escolhidos aleatoriamente.

Sec.14.1 Documentos em um espaco vetorial Governo Ciências Artes

Sec.14.1 Documento de teste pertence a qual classe? Governo Ciências Artes

Sec.14.1 Documento de teste = Governo Esta hipótese de similaridade sempre será verdadeira? Governo Ciências Artes

Discussão: k-nearest Neighbors Não é necessário seleção de características. Funciona com grande número de classes. Classes podem influenciar umas as outras. Pontuações podem ser difíceis de converter para probabilidades. Não é necessário treinamento.

library(ggvis) k-nearest Neighbors knn na linguagem R >data(iris) >library(ggvis) >iris %>% ggvis(~sepal.length, ~Sepal.Width, fill = ~Species) %>% layer_points()