Processing math: 3%

1 votos

¿Cómo se puede reducir este problema L(2,1) al problema de Procrustes ortogonal?

NOTA: No tome esto muy en serio -- la pregunta en realidad se debe a mi mala lectura yiWxi2 como \|y_i - Wx_i\|_2, vea la respuesta.


Smith et al. en Offline bilingual word vectors, orthogonal transformations and the inverted softmax describen el aprendizaje de una "transformación de alineación" entre incrustaciones de palabras al resolver el problema

\begin{align} & \min_W \sum_{i=1}^N \|y_i - Wx_i\|_2, \text{ s.t. } W^{T}W = I. \end{align}

sobre incrustaciones x_i, y_i de diccionarios alineados X_D y Y_D. La restricción garantiza la ortogonalidad para hacer que W esté "autoalineado". Este problema se puede escribir bastante fácilmente como

\max_W \sum_{i=1}^N y^T_i W x_i,\quad \text{ s.t. } W^{T}W = I.

Ahora, en lugar de usar descenso de gradientes, afirman que la solución óptima se obtiene analíticamente a través de una SVD:

W^* = U V^T, \text{ donde } U \Sigma V^T = Y^T_D X_D

Pero no logro entender por qué esto es válido. La solución SVD, según he descubierto, es la solución del "problema de Procrustes ortogonal" similar con la norma de Frobenius,

\begin{align} & \min_W \|Y - W X\|_F, \quad \text{ s.t. } W^{T}W = I; \end{align}

pero aquí tenemos una norma por entradas diferente:

\begin{align} & \min_W \|Y - W X\|_{2,1}, \quad \text{ s.t. } W^{T}W = I. \end{align}

¿Por qué se aplica la misma solución? ¿Es alguna desigualdad de normas que estoy pasando por alto?

(Intenté investigar otras fuentes para este enfoque, pero todas simplemente usan DG o no justifican esta solución de manera más convincente. Véase Xing et al., 2015)

2voto

throwaway Puntos 18

El primer problema de optimización que escribiste no corresponde al que están resolviendo en el documento. Pero, el segundo problema que escribiste sí (ver ecuación 6). La relación entre este problema y el problema ortogonal de Procrustes se explica en el apéndice A.

El problema ortogonal de Procrustes es:

\min_W \sum_{i=1}^n \|y_i - W x_i\|^2 \quad \text{s.t. } \ W^T W = I

donde \|\cdot\|^2 es la norma \ell_2 al cuadrado. Para establecer una conexión con tu notación, se podría escribir la pérdida en forma de matriz como \|Y - W X\|_F^2, donde \|\cdot\|_F^2 es la norma de Frobenius al cuadrado, y las matrices X e Y contienen \{x_i\} y \{y_i\} en las columnas.

La distancia euclidiana al cuadrado entre dos vectores está dada por la suma de las normas al cuadrado de los vectores, menos dos veces el producto punto:

\|y_i - W x_i\|^2 = \|y_i\|^2 + \|W x_i\|^2 - 2 y_i^T W x_i

En este problema particular, x_i e y_i están normalizados. Además, multiplicar por W no cambia la norma, ya que es ortogonal. Por lo tanto, \|y_i\|^2 = \|W x_i\|^2 = 1 y:

\|y_i - W x_i\|^2 = 2 - 2 y_i^T W x_i

Sustituye esto en el problema ortogonal de Procrustes, y nota que los términos constantes no afectan la solución. Por lo tanto, podemos resolver equivalente:

\max_W \sum_{i=1}^n y_i^T W x_i

Este es el mismo problema definido en la ecuación 6. Por lo tanto, el problema resuelto en el documento es equivalente al problema ortogonal de Procrustes (en el caso normalizado). Y, la solución de Procrustes usando la SVD se puede utilizar.

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