Cómo construir la matriz del núcleo para un polinomio de grado finito

Gracias por el A2A.

Usaría el núcleo polinomial no homogéneo para hacer esto, que se da como:

[matemáticas] k_d (x, x ‘) = (x ^ Tx’ + c) ^ d [/ matemáticas]

Para una transformación polinómica de orden [math] d [/ math]:

[matemáticas] \ phi_d (x) = [a_0, \ a_1x ^ 1, \ a_2x ^ 2, \…, \ a_dx ^ d] ^ T [/ matemáticas]

Es sencillo demostrar que:

[matemáticas] \ phi_d (x) ^ T \ phi_d (x ‘) = K (x, x’) = (x ^ Tx ‘+ c) ^ d [/ matemáticas]

para alguna constante apropiada [matemáticas] c [/ matemáticas]. Así que aquí hay una función rápida de Matlab que acepta una matriz de datos [math] X \ in \ mathbb {R} ^ {n \ times p} [/ math] ([math] n [/ math] ejemplos en dimensión [math] p [ / math]), un orden polinomial [math] d [/ math] y un hiperparámetro [math] c [/ math] (que debe ajustar para sus fines) y devuelve la matriz del núcleo polinomial correspondiente [math] K [/ math], de modo que [math] K (i, j) = k_d (x_i, x_j) [/ math]:

función [K] = polynomialKernelMatrix (X, d, c)
K = (X * X ‘+ c). ^ D;
fin

Esto podría hacerse más eficiente al darse cuenta de que el núcleo es simétrico y solo computa para la diagonal superior / inferior, etc., pero si no está utilizando conjuntos de datos masivos, esto estaría bien.

More Interesting

¿Qué tan útiles son los límites de convergencia en la aplicación práctica del aprendizaje automático?

¿Cuál es la mejor manera de crear un conjunto de capacitación para el aprendizaje automático?

¿Qué computadora portátil debo comprar, la Dell XPS 15 o la MacBook pro 13 '2017 para una Maestría en Ciencias de la Computación, en los EE. UU. Con enfoque en aprendizaje automático y ciencia de datos?

¿Existe una brecha entre las estadísticas y las comunidades de aprendizaje automático? Si es así, ¿por qué?

¿Cuáles son los límites del aprendizaje automático? ¿Cuándo puede estar seguro de que un algoritmo ML no podrá darle un resultado satisfactorio?

¿Las redes neuronales son solo clasificadores lineales vinculados con no linealidades?

¿Qué requisitos previos debe tener para aprender la teoría de las redes neuronales artificiales?

¿Cuál es la diferencia entre SVM y ANN?

¿Cuáles son las mejores herramientas para la minería de datos en Internet? ¿Qué debo usar para configurar un evento automático / alerta de tendencia?

¿Qué quieres decir con optimización?

¿Cómo podemos usar Tensorflow para problemas de clasificación?

¿Cómo debo saber que estoy interesado en el aprendizaje automático?

¿Cómo podría una máquina / sistema de IA identificar una oración sarcástica?

¿Qué tipo de antecedentes estadísticos debo tener para tomar el curso de Reconocimiento de patrones? Cual estadística Qué libro es útil para mi preparación?

¿Qué tan útil es un trabajo cuantitativo en Goldman Sachs para un doctorado posterior en Machine Learning?