Introdução aos métodos do kernel

Kernels ou métodos do kernel (também chamados de funções do Kernel) são conjuntos de diferentes tipos de algoritmos que estão sendo usados ​​para análise de padrões. Eles são usados ​​para resolver um problema não linear usando um classificador linear. Os métodos de kernels são empregados no SVM (Support Vector Machines), usado em problemas de classificação e regressão. O SVM usa o que é chamado de "truque do kernel", onde os dados são transformados e um limite ideal é encontrado para as possíveis saídas.

A necessidade do método Kernel e seu funcionamento

Antes de começarmos a trabalhar com os Métodos do Kernel, é mais importante entender as máquinas de vetores de suporte ou os SVMs, porque os kernels são implementados nos modelos SVM. Portanto, as Máquinas de Vetor de Suporte são algoritmos supervisionados de aprendizado de máquina que são usados ​​em problemas de classificação e regressão, como classificar uma maçã para classificar frutas e classificar um Leão para o animal da classe.

Para demonstrar, abaixo está a aparência das máquinas de vetores de suporte:

Aqui podemos ver um hiperplano que separa pontos verdes dos azuis. Um hiperplano é uma dimensão menor que o plano ambiente. Por exemplo, na figura acima, temos 2 dimensões que representam o espaço ambiente, mas a única que divide ou classifica o espaço é uma dimensão menor que o espaço ambiente e é chamada de hiperplano.

Mas e se tivermos uma entrada como esta:

É muito difícil resolver essa classificação usando um classificador linear, pois não há uma boa linha linear capaz de classificar os pontos vermelho e verde, pois os pontos são distribuídos aleatoriamente. Aí vem o uso da função kernel, que leva os pontos a dimensões mais altas, resolve o problema por lá e retorna a saída. Pense nisso dessa maneira: podemos ver que os pontos verdes estão fechados em alguma área do perímetro, enquanto o vermelho fica fora dela; da mesma forma, pode haver outros cenários em que pontos verdes podem ser distribuídos em uma área em forma de trapézio.

Então, o que fazemos é converter o plano bidimensional que foi classificado pela primeira vez pelo hiperplano unidimensional (“ou uma linha reta”) para a área tridimensional e aqui nosso classificador, ou seja, o hiperplano não será uma linha reta, mas duas plano tridimensional que cortará a área.

Para obter uma compreensão matemática do kernel, vamos entender a equação de Lili Jiang do kernel, que é:

K (x, y) = onde,
K é a função do kernel,
X e Y são as entradas dimensionais,
f é o mapa do espaço n-dimensional para o espaço m-dimensional e,
é o produto escalar.

Ilustração com a ajuda de um exemplo.

Digamos que temos dois pontos, x = (2, 3, 4) e y = (3, 4, 5)

Como vimos, K (x, y) =.

Vamos primeiro calcular

f (x) = (x1x1, x1x2, x1x3, x2x1, x2x2, x2x3, x3x1, x3x2, x3x3)
f (y) = (y1y1, y1y2, y1y3, y2y1, y2y2, y2y3, y3y1, y3y2, y3y3)
assim,
f (2, 3, 4) = (4, 6, 8, 6, 9, 12, 8, 12, 16) e
f (3, 4, 5) = (9, 12, 15, 12, 16, 20, 15, 20, 25)
então o produto escalar,
f (x). f (y) = f (2, 3, 4). f (3, 4, 5) =
(36 + 72 + 120 + 72 +144 + 240 + 120 + 240 + 400) =
1444
E,
K (x, y) = (2 * 3 + 3 * 4 + 4 * 5) 2 = (6 + 12 + 20) 2 = 38 * 38 = 1444.

Como descobrimos, f (x) .f (y) e K (x, y) nos dão o mesmo resultado, mas o método anterior exigia muitos cálculos (por projetar 3 dimensões em 9 dimensões) enquanto usava o método kernel, foi muito mais fácil.

Tipos de Kernel e métodos no SVM

Vamos ver algumas das funções do kernel ou os tipos que estão sendo usados ​​no SVM:

1. Liner Kernel - Digamos que temos dois vetores com os nomes x1 e Y1; o kernel linear é definido pelo produto escalar desses dois vetores:

K (x1, x2) = x1. x2

2. Kernel polinomial - Um kernel polinomial é definido pela seguinte equação:

K (x1, x2) = (x1. X2 + 1) d,

Onde,

d é o grau do polinômio e x1 e x2 são vetores

3. Kernel Gaussiano - Este kernel é um exemplo de kernel de função de base radial. Abaixo está a equação para isso:

O sigma dado desempenha um papel muito importante no desempenho do kernel gaussiano e não deve ser superestimado e nem subestimado, deve ser cuidadosamente ajustado de acordo com o problema.

4. Kernel Exponencial - Está em estreita relação com o kernel anterior, ou seja, o kernel Gaussiano com a única diferença é - o quadrado da norma é removido.

A função da função exponencial é:


Essa também é uma função de base radial do kernel.

5. Kernel do Laplaciano - Esse tipo de kernel é menos propenso a alterações e é totalmente igual ao kernel da função exponencial discutido anteriormente, a equação do kernel do Laplacian é dada como:

6. Hiperbólico ou o Sigmoid Kernel - Esse kernel é usado em áreas de redes neurais do aprendizado de máquina. A função de ativação do kernel sigmóide é a função sigmóide bipolar. A equação para a função do núcleo hiperbólico é:

Este kernel é muito usado e popular entre as máquinas de vetores de suporte.

7. Kernel de base radial Anova - Esse kernel é conhecido por ter um desempenho muito bom em problemas de regressão multidimensional, assim como os núcleos Gaussiano e Laplaciano. Isso também vem na categoria de kernel de base radial.

A equação para o kernel Anova é:

Existem muitos outros tipos de método Kernel e discutimos os kernels mais usados. Depende apenas do tipo de problema que decidirá a função do kernel a ser usada.

Conclusão

Nesta seção, vimos a definição do kernel e como ele funciona. Tentamos explicar com a ajuda de diagramas sobre o funcionamento dos núcleos. Tentamos então dar uma ilustração simples usando matemática sobre a função do kernel. Na parte final, vimos diferentes tipos de funções do kernel que são amplamente usadas hoje.

Artigos recomendados

Este é um guia para Métodos do Kernel. Aqui discutimos uma introdução, necessidade, funcionamento e tipos de métodos do kernel com a equação apropriada. Você também pode consultar nossos outros artigos sugeridos para saber mais -

  1. Algoritmos de mineração de dados
  2. K- significa algoritmo de agrupamento
  3. Algoritmo de força bruta
  4. Algoritmo da Árvore de Decisão
  5. Métodos de kernel no aprendizado de máquina
  6. Árvore de decisão no Machine Learning

Categoria: