4 votos

Comprensión del algoritmo NIPALS para el PLS

He encontrado un buena presentación describiendo los algoritmos PLS1 y PLS2 (páginas 16-19). Está bastante claro, pero hay algo que me confunde.

Para PLS1. Veamos el algoritmo . Los primeros pasos son

  • $w = X'y$ (que maximiza $ \operatorname {cov}(Xw,y)$ )
  • $w = w / ||w||$
  • $t = Xw$
  • $p = X't / t't$

Por un lado se puede decir $T=XW$ y $WW'=I$ pero por otro lado $T=XP$ y $PP'=I$ (porque estamos buscando una descomposición $X=TP'$ donde $PP'=I$ (ver página 14).

Así que, mi pregunta es, ¿no son $P$ y $W$ la misma matriz? Y si es así, ¿por qué el algoritmo necesita calcular $p$ como $X't / t't$ ?

¿Por qué no hacerlo de esta manera?

  • $p = X'y$
  • $p = p / ||p||$
  • $t = Xp$

ACTUALIZACIÓN Después de leer los comentarios, respuestas y enlaces proporcionados (gracias a @amoeba y @theGD), entiendo que una respuesta estricta a mi pregunta es "No, no lo son". I casi entendió por qué. En realidad, perdí la esperanza de entender completamente el principio del algoritmo del NIPALS. Así que decidí preguntarlo de una manera diferente: ¿Qué es la tarea matemática que PLS NIPALS intenta resolver?

Por ejemplo, también hay NIPALS para PCA. Y no lo entiendo del todo. Pero sé que es sólo un método computacional para resolver una tarea matemática (por una iteración): $$ { \mathbf {t}}^{T}{ \mathbf {t}} = { \mathbf {w}}^{T}{ \mathbf {X}}^{T}{ \mathbf {Xw}} \rightarrow \max , \textrm { given that } \Vert { \mathbf {w}} \Vert =1 $$ Entonces, ¿qué es una tarea matemática análoga para el PLS?

2 votos

No, no son lo mismo. Puedes verificarlo fácilmente utilizando tu lenguaje de programación favorito: generar aleatoriamente $X$ y $y$ (pueden ser muy pequeños), y luego realizar los primeros pasos de este algoritmo: calcular el vector $w$ , entonces el vector $t$ , entonces el vector $p$ . Verá que $w\ne p$ .

0 votos

El procedimiento $t = X^{\prime}t/t^{\prime}t$ es obtener una ortogonalidad $t$ las puntuaciones de $X$ .

2voto

theGD Puntos 147

La página 14 no trata de PLS, sino de PCA ya que se refiere a la descomposición de $X$ solo realizando la descomposición de valores singulares que es una forma eficiente de obtener los valores propios( $D$ ) y los vectores propios ( $V$ ) de $\operatorname{cov}(X)$ ). Así que en el caso del PCA, la ortogonalidad de $P$ es correcto.

Sin embargo, en PLS, la única propiedad de $X$ cargas es cada vector en $P$ tiene una longitud unitaria ( $||p_i||$ = 1) mientras que $W$ es ortogonal. De hecho, la suma de $W$ es garantizar la ortogonalidad de $X$ resultados( $T$ ) y es una de las principales diferencias entre PLS NIPALS y PCA NIPALS. Por lo tanto, como se dice en los comentarios, $P$ y $W$ no son las mismas matrices.

Como pequeña nota, prefiero el algoritmo SIMPLS, que es más rápido y proporciona un único vector para la regresión y hace que la interpretación sea mucho más fácil, a diferencia de NIPALS con múltiples vectores, cada uno correspondiente a la deflación $X$ que es, en mi opinión, bastante contraintuitivo y difícil de interpretar.

Las propiedades de los factores PLS obtenidos por el algoritmo NIPALS se pueden encontrar en este artículo: Geladi, Paul, y Bruce R. Kowalski. "Regresión parcial por mínimos cuadrados: un tutorial". Analytica chimica acta 185 (1986): 1-17.

1 votos

Enlace directo al PDF: ece.mcmaster.ca/faculty/reilly/ece712/ (+1)

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