cómo normalizar la matriz


Respuesta 1:

Esta respuesta es con respecto a la normalización más comúnmente utilizada: hacer que la media de los datos sea cero y la varianza unitaria a lo largo de cada característica. Es decir, dada la matriz de datos X, donde las filas representan instancias de entrenamiento y las columnas representan características, calcula la matriz normalizada X_ {norma} con el elemento (i, j) dado por

X_ {norma, (i, j)} = \ dfrac {X _ {(i, j)} - \ mbox {mean} (X_ {j})} {\ mbox {std} (X_j)}

donde X_j es la j ^ {th} columna de la matriz X.

Hay varias ventajas de hacer eso, muchas de las cuales están interrelacionadas:

  1. Hace que la capacitación sea menos sensible a la escala de características: considere un problema de regresión en el que se le asignan características de un apartamento y se requiere que prediga el precio del apartamento. Digamos que hay 2 funciones, no. de dormitorios y el área del departamento. Ahora, el no. de los dormitorios estará normalmente en el rango de 1 a 4, mientras que el área estará en el rango de 100 a 200 m ^ 2. Si está modelando la tarea como regresión lineal, desea resolver los coeficientes w_1 y w_2 correspondientes a no. de dormitorios y area. Ahora, debido a la escala de las características, un pequeño cambio en w_2 cambiará mucho la predicción en comparación con el mismo cambio en w_1, hasta el punto de que establecer w_2 correctamente podría dominar el proceso de optimización.
  2. La regularización se comporta de manera diferente para diferentes escalas: Suponga que tiene una regularización \ ell_2 en el problema anterior. Es fácil ver que la regularización \ ell_2 empuja los pesos más grandes hacia cero con más fuerza que los pesos más pequeños. Así que considere que obtiene algunos valores óptimos de w_1 y w_2 usando su matriz X de datos no normalizados dada. Ahora, en lugar de usar m ^ 2 como la unidad de área, si cambio los datos para representar el área en ft ^ 2, la columna correspondiente de X se multiplicará por un factor de ~ 10. Por lo tanto, esperaría que el coeficiente óptimo correspondiente w_2 disminuya en un factor de 10 para mantener el valor de y. Pero, como se indicó anteriormente, la regularización \ ell_2 ahora tiene un efecto menor debido al valor menor del coeficiente. Por lo tanto, terminará obteniendo un valor de w_2 mayor del que hubiera esperado. Esto no tiene sentido: no cambió el contenido de información de los datos y, por lo tanto, sus coeficientes óptimos no deberían haber cambiado.
  3. Coherencia para comparar resultados entre modelos: como se explica en el punto 2, la escala de características afecta el rendimiento. Por lo tanto, si hay científicos que desarrollan nuevos métodos y comparan los métodos anteriores de última generación con sus nuevos métodos, que utilizan escalas elegidas con más cuidado, los resultados no serán confiables.
  4. Hace que la optimización esté bien condicionada: la mayoría de las optimizaciones de aprendizaje automático se resuelven mediante el descenso de gradiente o una variante del mismo. Y la velocidad de convergencia depende de la escala de las características (o más precisamente, los valores propios de X ^ TX). La normalización condiciona mejor el problema, mejorando la tasa de convergencia del descenso del gradiente. Doy una intuición de esto usando un ejemplo simple a continuación.

Considere el caso más simple donde A es una matriz diagonal de 2 x 2, digamos A = diag ([a_1, a_2]). Entonces, los contornos de la función objetivo \ | Ax - b \ | ^ 2 serán elipses alineados con el eje como se muestra en la siguiente figura:

Suponga que comienza en el punto marcado en rojo. Observe que para alcanzar el punto óptimo, debe dar un paso muy grande en la dirección horizontal pero un pequeño paso en la dirección vertical. La dirección de descenso viene dada por la flecha verde. Si avanza en esta dirección, se moverá una distancia mayor en la dirección vertical y una distancia menor en la dirección horizontal, ¡que es lo opuesto a lo que desea hacer!

Si da un pequeño paso a lo largo del gradiente, cubrir la gran distancia horizontal hasta la óptima requerirá una gran cantidad de pasos. Si da un gran paso a lo largo del gradiente, sobrepasará el óptimo en la dirección vertical.

Este comportamiento se debe a la forma de los contornos. Cuanto más circulares sean los contornos, más rápido convergerá hacia el óptimo. El alargamiento de las elipses viene dado por la relación entre los valores propios más grande y más pequeño de la matriz A. En general, la convergencia de un problema de optimización se mide por su número de condición, que en este caso es la relación de los dos valores propios extremos. .

(La respuesta de Prasoon Goyal a ¿Por qué la velocidad de convergencia del descenso del gradiente depende de los valores propios máximos y mínimos de A al resolver AX = b mediante mínimos cuadrados?).


Por último, debo mencionar que la normalización no siempre ayuda, en lo que al rendimiento se refiere. Aquí hay un ejemplo simple: considere un problema con solo una característica con varianza 1. Ahora suponga que agrego una característica ficticia con varianza 0.01. Si regulariza su modelo correctamente, la solución no cambiará mucho debido a esta dimensión ficticia. Pero si ahora lo normaliza para tener variación de unidades, podría afectar el rendimiento.


Respuesta 2:

Para responder adecuadamente a esta pregunta, es necesario aclarar los diferentes significados y objetivos de la “normalización”.


[1] Puntajes Z y puntajes t: comparabilidad y conveniencia

  • Objetivo: hacer que las puntuaciones de las variables sean comparables; para facilitar la estimación.
  • Conserva la forma de la distribución original: sí.

Ejemplo: puntuaciones estandarizadas para aumentar la comparabilidad

Supongamos que tenemos dos pruebas psicométricas (diferentes), la prueba A y la prueba B, que se sabe que miden un determinado rasgo, habilidad, actitud, etc. Sabemos por experiencia previa que los puntajes en la prueba A y la prueba B tienen una distribución de forma similar ; pero también sabemos que las medias y las desviaciones estándar difieren entre las pruebas.

Supongamos ahora que una persona que tomé la prueba A y que j tomó la prueba B. Si queremos comparar sus puntajes, podríamos usar puntajes “estandarizados” (“puntajes z”) o “puntajes estudentizados” (puntajes t). Suponiendo que se conocen las medias y las SD de ambas pruebas. Ahora podemos calcular:

\ quad z_i ^ {a} = \ frac {x_i ^ {a} - {\ text {mean} ({x} ^ {a})}} {{\ text {sd} ({x} ^ {a}) }} \ quad \ quad \ text {y:} \ quad \ quad z_i ^ {b} = \ frac {x_j ^ {b} - {\ text {mean} ({x} ^ {b})}} {{ \ text {sd} ({x} ^ {b})}}

Ahora, si encontramos que z_i ^ {a}

Advertencia: es un error común pensar que las puntuaciones estandarizadas, como las puntuaciones z, alteran la forma de una distribución; en particular, tenga en cuenta que las puntuaciones z no pueden convertir mágicamente una variable no normal en normal.

Nota: además de hacer que los puntajes sean comparables, la estandarización a veces puede facilitar la estimación de coeficientes en modelos complejos con variables de diferentes escalas.


[2] Tablas de normas: comparabilidad y una métrica común

  • Objetivo: hacer que las puntuaciones de las variables se puedan interpretar en una métrica significativa.
  • Conserva la forma de la distribución original: eso depende de la transformación.

Supongamos que examinamos a un individuo en un determinado rasgo y adquirimos una puntuación de prueba. Si queremos saber si el individuo obtuvo una puntuación "baja" o "alta", necesitamos datos externos, como tablas de normas.

Para las pruebas psicométricas (por ejemplo, pruebas de aptitud o de personalidad), estas tablas se crean a menudo mediante procedimientos de validación exhaustivos en muestras (representativas) de la población que se va a evaluar.

Ejemplo: interpretación de las puntuaciones de depresión de HAM-D.

Supongamos que un paciente tiene una puntuación de depresión HAM-D de 23. Queremos saber la gravedad de su depresión, pero no podemos saberlo inmediatamente a partir de esta puntuación. Para ello, tendríamos que comparar su puntuación con las puntuaciones conocidas de otros. En este caso, los resultados de la validación mostraron que una puntuación entre 19 y 27 es un indicio de depresión grave.

Advertencia: las tablas de normas realmente deberían calcularse sobre el grupo para el que se utilizará la prueba.


[3] Haga que los datos (más) estén “distribuidos normalmente”.

  • Objetivo: llegar a datos (transformados) que sigan una distribución normal; Normalmente se utiliza para cumplir con los supuestos paramétricos comunes a muchas pruebas estadísticas.
  • Conserva la forma de la distribución original: no, normalmente no.

Ejemplo: "normalizar" una distribución sesgada a la derecha

Sea x una variable que está "deliberadamente" sesgada a la derecha. Queremos usar x en un análisis posterior, pero se sabe que este análisis requiere una distribución normal. Una (posible) solución sería utilizar una transformación logarítmica para inducir la normalidad.

Antes de:

Después de la transformación logarítmica:

Advertencia 1. Puede que no funcione. No hay garantía de que una determinada transformación produzca automáticamente la distribución requerida (normal). El hecho de que una transformación logarítmica a menudo funcione razonablemente bien para inducir la normalidad en variables sesgadas a la derecha no significa que esto siempre sucederá.

Advertencia 2. Las interpretaciones se aplican a la variable transformada. Por lo general, transformamos logarítmicamente para usar la (s) variable (s) en análisis posteriores. Tenga en cuenta que todos los resultados se aplican a la variable transformada y no necesariamente a la variable original. Por lo tanto, tenga mucho cuidado con la interpretación de sus resultados.

Código R para los gráficos anteriores:

# Podemos hacer una variable "sesgada a la derecha" de la siguiente manera:# [a] dibujo de una distribución normal (estándar), y luego: # [b] exponenciar los resultadosx <- exp (rnorm (100,0,1)) # Combinado [a] y [b]hist (x) # Grafica la variable original sesgada a la derecha;hist (log (x)) # grafica la versión registrada de la variable.

Respuesta 3:

La normalización a menudo se realiza en datos para eliminar la variación de amplitud y solo enfocarse en la forma de distribución subyacente.

Por tanto, es útil cuando se comparan dos conjuntos de datos (comparación estadística).

También es necesario cuando se trabaja con algunos algoritmos de aprendizaje automático (por ejemplo, PCA).

Por supuesto, algunos algoritmos funcionan muy bien sin normalización, como los árboles de decisión.

En estos casos, sigue siendo valioso realizar la normalización para acelerar la convergencia.

Para obtener más detalles sobre cuándo usar la normalización para los algoritmos de AA, sugiero leer la siguiente respuesta: Aprendizaje automático: ¿Cuándo debo aplicar la normalización / estandarización de datos?

¡Espero que esto ayude!


Respuesta 4:

Pienso en esto de manera diferente ahora que hace varias décadas.

Ahora entiendo que estaba usando semántica externa (comprensión) para hacer que el uso de cualquier método que estuviera usando sea menos desafiante, porque había normalizado mis datos.

Dicho de otra manera, con suficientes datos y un método poderoso, no se necesitaría normalización.

Además, en retrospectiva, la normalización fue una forma en la que adopté mis datos, aumentando mi comprensión y simplificando los pasos posteriores. Por supuesto, si la normalización no ayudaba, sabía que estaba en un juego diferente por completo, como han explicado otras respuestas.


Respuesta 5:

La respuesta simple no técnica es que le permite comparar los resultados con otros conjuntos de datos al enfocarse en la forma del análisis sin quedar atrapado en donde los datos de resumen (medias y DE) de cada caída. Por lo tanto, dos conjuntos de datos con distribuciones no normalizadas muy diferentes se pueden "superponer" y comparar.


Respuesta 6:

Normalizamos los datos para eliminar los efectos no deseados en la trama y producir un patrón suave donde podamos ver el cambio adecuado.

En el elemento de tierras raras o diagrama de Masuda-coryell (como soy de formación geológica), normalizar el REE a los de los meteoritos condríticos elimina los efectos relacionados con la estabilidad nuclear y la nucleosíntesis y produce un patrón suave.

PD: Mi respuesta es específicamente para la trama REE.


Respuesta 7:

Simplemente, es un preprocesamiento. El objetivo es hacer que el análisis sea más comprensible. Además, el enfoque de normalización difiere y depende del principal problema de investigación que intentamos resolver. También hay muchos enfoques para diferentes problemas que no necesitan normalización. Algunos otros enfoques pueden normalizar ...