7 votos

Núcleo de la matriz de normalización

Originalmente publicado en estadísticas.SÍ , pero nunca recibió una respuesta para volver a colocar aquí.

Es una mala idea para normalizar el núcleo de la matriz? Con esto quiero decir que el método descrito en la página 113 de Shawe-Taylor & Cristianini del "Núcleo Métodos para el Análisis de patrones" (notación de matlab):

% original kernel matrix stored in variable K
% output uses the same variable K
% D is a diagonal matrix storing the inverse of the norms
D = diag(1./sqrt(diag(K)));
K = D * K * D;

Estoy específicamente pensando en la minería de texto, donde el núcleo está formado a partir de la $tf-idf$ matriz $T$ (es decir, $K = T T'$). La razón por la que me gustaría normalizar es que estoy pensando en la combinación de varios de estos núcleos (por ejemplo, de bigramas, trigramas, etc.) pero estoy consiguiendo algunos resultados extraños cuando lo hago.

Sumando los núcleos sin la normalización de los resultados en uno u otro dominante. (Yo podría usar una suma ponderada - tales como el uso de $1/||K||_F$ donde $||\cdot||_F$ es la norma de Frobenius pero esto parece un poco de un hack - este es sin supervisión de aprendizaje).

5voto

Dan Appleyard Puntos 223

Siempre y cuando usted entienda lo que está haciendo usted va a estar bien :-)

En realidad estás normalizar los datos para tener unidad de longitud en el espacio de características. Esto es equivalente a usar este kernel: $K(x,y)/\sqrt{K(x,x)K(y,y)}$. Los datos se caen ahora en un hypersphere de radio 1 en el espacio de características. Cuando se agrega el kernel de matrices en realidad estás "concatenar" (no es exactamente cierto para todos los kernels pero es una manera de pensar acerca de esto). Sin embargo, en la normalizado caso de las nuevas características caerá en un hypersphere de acotado, conocido el radio.

Podría lastimar?

Seguro, no el valor real de la función de decirle algo? Considere el caso de (normalizado) lineal del núcleo [10,10] es un seguro de 1 y [20,20] es un seguro de -1 a continuación, haciendo la normalización no sería una buena idea para que sus datos a través de este kernel.

Este documento un documento sobre este tipo de cuestiones.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X