valores de entrada de escala svm
Estoy usando libSVM. Diga que los valores de mis características están en el siguiente formato:
instance1 : f11, f12, f13, f14
instance2 : f21, f22, f23, f24
instance3 : f31, f32, f33, f34
instance4 : f41, f42, f43, f44
..............................
instanceN : fN1, fN2, fN3, fN4
Creo que hay dos escalas que se pueden aplicar.
escale cada vector de instancia de modo que cada vector tenga una media de cero y una varianza de unidades.
( (f11, f12, f13, f14) - mean((f11, f12, f13, f14) ). /std((f11, f12, f13, f14) )
escalar cada columna de la matriz anterior a un rango. por ejemplo [-1, 1]
De acuerdo con mis experimentos con el núcleo RBF (libSVM), encontré que la segunda escala (2) mejora los resultados en aproximadamente un 10%. No entendí la razón por la que (2) me da mejores resultados.
¿Podría alguien explicarme cuál es la razón para aplicar la escala y por qué la segunda opción me da mejores resultados?