SVM Support Vector Machines Ticiano A. C. Bragatto bragatto@ufpr.br
Sumário Vladimir Vapnik Histórico Conceito Aumento de Dimensões TE-803 Inteligencia Artificial Aplicada - UFPR Sumário Vladimir Vapnik Histórico Conceito Classificação Regressão Kernel trick Aumento de Dimensões Espaços: Entrada versus Característica Classificadores Lineares Margem Máxima Problemas Primal e Dual Aplicações Conclusão Como Programar
Vladimir Naumovich Vapnik TE-803 Inteligencia Artificial Aplicada - UFPR Vladimir Naumovich Vapnik Soviético Mestrado na Universidade do Uzbequistão(1958) Ph. D. em estatística no Institute of Control Science de Moscou(1964) Professor nesse Instituto (1961-1990) Nomeado professor do Royal Holloway, Universidade de Londres(1995) AT&T Bell Labs (1991-2001) Atualmente: Funcionário da NEC e professor na Universidade de Columbia(NY)
Histórico Kernel linear: 1963 – Vladimir Vapnik TE-803 Inteligencia Artificial Aplicada - UFPR Histórico Kernel linear: 1963 – Vladimir Vapnik Kernel trick: 1992 – Boser, Guyon e Vapnik Regressão: 1997 – Vapnik, Golowich e Smola
Conceito Classificação Regressão Métodos de treinamento assistido TE-803 Inteligencia Artificial Aplicada - UFPR Conceito Classificação Duas classes Regressão Métodos de treinamento assistido “Kernel trick”
Classificação(Vapnik 1963) TE-803 Inteligencia Artificial Aplicada - UFPR Classificação(Vapnik 1963) Duas classes “Sim” ou “Não” Preto ou Branco Laranja ou Banana 0 ou 1 -1 ou 1 (usado para as contas) Linear (Vapnik 1963) Kernel trick(Vapnik et al 1992)
TE-803 Inteligencia Artificial Aplicada - UFPR Regressão(Vapnick - 1997) É criada com máxima margem, como problemas de classificação Pode usar kernels lineares e não lineares(Gauss Radial Basis Function(RBF), polinomial, sigmoidal)
TE-803 Inteligencia Artificial Aplicada - UFPR Kernel Trick Converte problemas não lineares em lineares em espaço de altíssima dimensão Transforma funções que dependem de produto interno Substitui o produto interno com outras funções: RBF: Polinomial homogêneo: Polinomial não homogêneo: Sigmoidal:
Aumento de Dimensões Para uma função de Base Quadratica TE-803 Inteligencia Artificial Aplicada - UFPR Aumento de Dimensões Para uma função de Base Quadratica O número de termos (para m dimensões de entrada) =(m+2)(m+1)/2 Para m=2 6-D Para m=3 10-D E para uma função de kernel elevada a 3? E como aproximar uma Sigmoidal?
Espaços: Entrada versus característica TE-803 Inteligencia Artificial Aplicada - UFPR Espaços: Entrada versus característica
Classificadores Lineares TE-803 Inteligencia Artificial Aplicada - UFPR Classificadores Lineares Dados os dois conjuntos ao lado Esta é uma boa forma de separação?
Classificadores Lineares TE-803 Inteligencia Artificial Aplicada - UFPR Classificadores Lineares Ou esta?
Classificadores Lineares TE-803 Inteligencia Artificial Aplicada - UFPR Classificadores Lineares Qual destas é a melhor? Para RNA, qualquer uma destas retas é satisfatória, uma vez que separou corretamente os conjuntos!
Classificadores Lineares TE-803 Inteligencia Artificial Aplicada - UFPR Classificadores Lineares Para SVM, a melhor reta é aquela que mais se distancia dos pontos(vetores) de ambos os conjuntos, formando a maior margem possível
Classificadores Lineares Margem Máxima TE-803 Inteligencia Artificial Aplicada - UFPR Classificadores Lineares Margem Máxima Intuitivamente é mais seguro Se erramos na localização das bordas, uma margem maior nos dá menor chance de erro É imune à remoção de algum vetor que não seja um SV Segundo a teoria Vapnik-Chervonenkis(1960-90), o erro é minimizado para uma margem maximizada Empiricamente funciona muito bem
TE-803 Inteligencia Artificial Aplicada - UFPR
TE-803 Inteligencia Artificial Aplicada - UFPR
TE-803 Inteligencia Artificial Aplicada - UFPR
TE-803 Inteligencia Artificial Aplicada - UFPR
TE-803 Inteligencia Artificial Aplicada - UFPR
TE-803 Inteligencia Artificial Aplicada - UFPR
TE-803 Inteligencia Artificial Aplicada - UFPR
TE-803 Inteligencia Artificial Aplicada - UFPR
TE-803 Inteligencia Artificial Aplicada - UFPR
Problemas Primal e Dual TE-803 Inteligencia Artificial Aplicada - UFPR Problemas Primal e Dual Primal Restrição: Erro nos vetores de treino Dual Restrição: Parâmetro Custo C
Aplicações Identificação de Proteínas, 2000 Impressões Digitais, 2001 TE-803 Inteligencia Artificial Aplicada - UFPR Aplicações Identificação de Proteínas, 2000 Impressões Digitais, 2001 Detecção e reconhecimento de faces, 1997/2000 Reconhecimento de textos, 1998 Assinaturas, 2003 Análise de Crédito, 1999 Indústria de Mineração, 2003 Siderurgia, 2004 Técnica ganhadora no concurso mundial de predição de carga elétrica, 2001
Conclusão: Otimização RNA versus SVM TE-803 Inteligencia Artificial Aplicada - UFPR Conclusão: Otimização RNA versus SVM RNA: Mínimo Local Definir a quantidade de neurônios na camada intermediária SVM: Mínimo Global Definir o melhor parâmetro C (custo)
TE-803 Inteligencia Artificial Aplicada - UFPR Como programar: MATLAB: Lenta porém não há necessidade de preocupação com o parâmetro C LibSVM: Biblioteca existente em várias linguagens Usada em diversas aplicações e nossa aula prática http://www.csie.ntu.edu.tw/~cjlin/libsvm/