SVMSharp – Uma implementação didática de uma SVM

Slides:



Advertisements
Apresentações semelhantes
Inteligência Artificial - IA
Advertisements

Agenda Introdução Justificativa Objetivo Detecção de Spam
Aproximação de Funções usando MLPs, RBFs e SVM
AJUSTE DE CURVAS 6.1 Introdução 6.2 Método dos quadrados mínimos
INTELIGÊNGIA COMPUTACIONAL
Redes Neurais Artificiais (RNA): Aprendizado
Aspectos de Implementação do Algoritmo Backpropagation
2 de Junho de 2005Conclusão1 Pedro Barahona DI/FCT/UNL Junho 2005.
1 Conclusão DI/FCT/UNL 1º Semestre 2004/ Ciclos de Simulação A técnica usada no exemplo da queda livre pode ser utilizada para trajectórias a duas.
Araken de Medeiros Santos Anne Magály de Paula Canuto
PERCEPTRON (CONTINUAÇÃO)
AULA 03 PERCEPTRON SIMPLES.
Aprendizado de Máquina
Classificador SVM Support Vector Machine
SVM Support Vector Machines
Reconhecimento de Padrões Classificadores Lineares
Reconhecimento de Padrões Classificadores Lineares David Menotti, Ph.D. Universidade Federal de Ouro Preto (UFOP) Programa de.
Reconhecimento de Padrões Dissimilaridade
Redes Neurais (Conceitos Fundamentais)
Inteligência Artificial
FACENS – Engenharia da Computação Inteligência Artificial
Support Vector Machines (SVM)
Prof. Dr. Cairo L. Nascimento Jr.
Instituto Tecnológico da Aeronáutica – ITA Divisão de Ciência de Engenharia Eletrônica e Computação EE-09 Inteligência Artificial Prof. Adilson Marques.
INF 1771 – Inteligência Artificial
INF 1771 – Inteligência Artificial
INF 1771 – Inteligência Artificial
INF 1771 – Inteligência Artificial
INF 1771 – Inteligência Artificial
INF 1771 – Inteligência Artificial
INF 1771 – Inteligência Artificial
Sistemas Inteligentes
Davyd Bandeira de Melo Um Sistema de Reconhecimento de Comandos de Voz Utilizando a Rede Neural ELM Junho 2011.
Aprendizado de Máquina
Universidade Federal do Pará Centro Tecnológico Programa de Pós-Graduação em Engenharia Elétrica Load Forecasting Using Support Vector Machines: A Study.
Aprendizado de Máquina Aula 8
Introdução O que é computação?.
Otimização Prof. Benedito C. Silva IRN UNIFEI
Aprendizado Baseado em Instâncias – Algoritmo k-NN
Márcia Zanutto Barbosa
Programação Avançada Prof. Natalia Castro Fernandes
Redes Neurais Prof. Alex F. V. Machado.
INF 1771 – Inteligência Artificial
INF 1771 – Inteligência Artificial
INF 1771 – Inteligência Artificial
Aprendizado de Máquina
INF 1771 – Inteligência Artificial
Quadrados Mínimos.
Classificação de imagens de fotografias históricas usando detecção de linhas e paralelogramos pela presença de edifícios Natália Cosse Batista Grupo 8.
Aula 6 - Método não-experimental ou de seleção não-aleatória
Support Vector Machine - SVM
Testes de Software AULA 02 Eduardo Silvestri
Redes Neurais Artificiais. Introdução RNA são modelos matemáticos que se assemelham às estruturas neurais biológicas Capacidade computacional adquirida.
Aluna: Monica Beltrami Orientador: Arinei Carlos Lindbeck da Silva
Uma Introdução a SVM Support Vector Machines
Universidade Federal de Lavras Departamento de Ciência da Computação
Classificação/Categorização Christian Diego – cdad Icamaan Viegas – ibvs.
Regressão e Previsão Numérica.
Classificação de Texto Baseada na aula de Henrique Borges e Ícaro Medeiros Alterada por Flávia Barros.
Márcio Leal de Melo Dahia1 Aprendizado baseado em instâncias.
Aprendizado da rede O aprendizado, na maioria das vezes, constitui no ajuste do conjunto de pesos de modo que a rede consiga executar uma tarefa específica.
Luana Bezerra Batista Redes Neurais Luana Bezerra Batista
Reconhecimento Facial usando SVM
Classificação de Textos
Inteligência artificial (IA)
FEATURE SELECTION. Introdução  Estudo de metodologias relacionadas a seleção de atributos  Maldição da dimensionalidade  O número de atributos do desenvolvedor.
Detecção de tráfego Skype na Web através de Redes Neurais Artigo Original: Freire, P. E., Ziviani, A., and Salles, R. M. (2008). Detecting skype flows.
Ciência da Computação Aprendizado de Máquina (Machine Learning) Aula 12 Aprendizado não Supervisionado Mapas auto-organizáveis Max Pereira.
Transcrição da apresentação:

SVMSharp – Uma implementação didática de uma SVM Alexandre Ávila Higor dos Santos Pinto Anselmo Nunes Montenegro Inhaúma Neves Ferraz

Introdução Inteligência Artificial Área da computação dedicada a resolver problemas complexos Raciocínio, Aprendizagem e Reconhecimento de Padrões

Aprendizado de Máquina Aprendizado de máquina é área da Inteligência Artificial que trabalha com a idéia de criar aplicações que possam induzirem um resultado a partir de um comportamento padrão Aprendizado automático e qualquer processo no qual um sistema melhora seu desempenho através da experiência O sistema armazena informação do trabalho executado Quanto mais o sistema trabalha mais aprende sobre o domínio do problema e melhora seu desempenho

SVM Poderosa metodologia para resolver problemas de aprendizagem de máquina Proposto em 1995 pelo russo Vladimir Vapnik Muito utilizado atualmente em diversos tipos de aplicações e áreas

SVM Consiste em um método de aprendizado que tenta encontrar a maior margem para separar diferentes classes de dados A essência do SVM é a construção de um hiperplano ótimo, de modo que ele possa separar diferentes classes de dados com a maior margem possível

SVM Como separar essas duas classes?

SVM Como separar essas duas classes? Qual delas é a melhor opção? Existem diversas retas que podem ser traçadas para separar os dados. Qual delas é a melhor opção?

SVM Como separar essas duas classes? Qual delas é a melhor opção? Existem diversas retas que podem ser traçadas para separar os dados. Qual delas é a melhor opção? Hiperplano ótimo!

Vetores de Suporte Servem para definir qual será o hiperplano. São encontrados durante a fase de treinamento. Os vetores de suporte são os exemplos de treinamento realmente importantes. Os outros exemplos podem ser ignorados.

Hiperplanos Hiperplano: Espaço 1D = Ponto Espaço 2D = Reta Espaço 3D = Plano

SVM Não Lineares O que fazer quando os dados não são linearmente separáveis? A abordagem utilizada pelo SVM para resolver esse tipo de problema consistem em mapear os dados para um espaço de dimensão maior: x x2 x

Mapeamento O espaço de atributos original pode ser mapeado em um espaço de atributos de dimensão maior onde o conjunto de treinamento é linearmente separável:

Funções de Kernel Linear RBF Sigmóide Polinomial

Funções de Kernel Linear O Kernel Linear é a função de Kernel mais simples e básica. É dada apenas pelo produto interno, e geralmente somada de uma constante. É importante lembrar que essa constante não é levada em consideração pela LIBSVM, e não deve ser confundida com o parâmetro C, que é o custo de penalidade de amostras classificadas com erro. Conjunto com amostras não separáveis:

Funções de Kernel RBF O Kernel RBF, também conhecido como Kernel Gausiano, é de longe um dos mais versáteis. Ele é uma função base radial, sendo o preferido quando não conhecemos muito sobre os dados que tentamos modelar. Utiliza apenas o parâmetro gamma, que deve ser muito bem ajustado para o problema. Se sobrestimado, a exponencial ficará praticamente linear, consequentemente perdendo seu poder não-linear. Se subestimado, perde regularidade e fica muito sujeito à ruídos no conjunto de treinamento. Função Base Radial (RBF) no conjunto original Conjunto original após mapeamento RBF

Funções de Kernel Sigmóide Também conhecido como Kernel de Tangente Hiperbólica. Tendo sua origem no campo das Redes Neurais, onde é comumente usado como função de ativação. Existem dois parâmetros ajustáveis, o declive gamma e a constante de interceptação r (coef). Um valor comum para gamma é 1/N, sendo N o número de atributos do treinamento. Se mostra com uma performance boa na prática, para alguns modelos.

Funções de Kernel Polinomial O Kernel Polinomial é um Kernel não estacionário. Mostra sua boa performance em problemas em que o todo o conjunto de treinamento está normalizado. Os parâmetros ajustáveis são a declividade gamma, a constante r (coef), e o grau do polinômio d. Amostras com erro da classificação linear Classificação polinomial, sem erros

SVM Vantagens: Desvantagens: Consegue lidar bem com grandes conjuntos de exemplos. Trata bem dados de alta dimensão. O processo de classificação é rápido. Desvantagens: É necessário definir um bom Kernel. O tempo de treinamento pode ser bem longo dependendo do numero de exemplos e dimensionalidade dos dados.

SVMSharp Apresentação do Aplicativo

Testes e Resultados Conjunto de treinamento FourClass, retirado do repositório de dados da LIBSVM, o único com apenas 2 características. Foi escolhido para melhor visualização dos dados e resultado dos modelos gerados por cada kernel.

Modelo aprendido com Kernel Linear

Modelo aprendido com Kernel RBF

Modelo aprendido com Kernel Sigmóide

Modelo aprendido com Kernel Polinomial

Agradecimentos

Referências SIMON, H. A. Comportamento administrativo: estudo dos processos decisórios nas Organizações administrativas. 2.ed. Rio de Janeiro: Fundação Getulio Vargas, 1965. Mitchell, Tom M. Machine Learning McGraw Hill, 1997. Vladimir N. Vapnik , The Nature of Statistical Learning Theory, Springer, 1995. Sanjeev R. Kulkarni and Gilbert Harman, Statistical Learning Theory: A Tutorial, February 20, 2011 Ana Carolina Lorena, Andre C. P. L. F. de Carvalho Introduc~ao as Maquinas de Vetores de Suporte( Support Vector Machines), Universidade de S~ao Paulo Chih-Chung Chang and Chih-Jen Lin LIBSVM: a library for support vector machines, 2001, Software available at http://www.csie.ntu.edu.tw/ cjlin/libsvm.