9 votos

¿Cuáles son los pasos para convertir la suma ponderada de cuadrados en forma de matriz?

Soy nuevo en la conversión de fórmulas en forma de matriz. Pero esto es necesario para un código de aprendizaje automático eficiente. Así que quiero entender la manera "correcta", no el vaquero que hago.

Muy bien aquí vamos, estoy tratando de convertir la suma ponderada de cuadrados de la forma de abajo en forma de matriz. A menudo veo la forma matricial como equivalente a la de abajo, y no se da ninguna explicación sobre cómo se deriva.

$$J(w)=\sum_{i=1}^m u_i (w^T x_i - y_i)^2$$

donde $u_i$ es el peso de cada error de la muestra $_i$ . También, $x_i \in \mathbb{R^n}$ , $w \in \mathbb{R^n}$ , $y \in \mathbb{R}$ , $u_i \in \mathbb{R}$ , $i=1,...,m$ . $w^T x_i$ es el valor predicho, el resultado de multiplicar un vector de pesos por un vector de características.

Esto es lo que pienso, y me pongo creativo. Así que siéntase libre de saltar hasta el final si me voy por la tangente.

Dejemos que $r$ sea un vector columna de funciones que represente el error no cuadrado. Podemos representar $(w^T x_i - y_i)^2$ en $i=1,...,m$ como

$$ r^2 = \begin{bmatrix}r_1 & r_2 & \cdots & r_m\end{bmatrix} \begin{bmatrix} r_1 \\ r_2 \\ \vdots \\ r_m \\ \end{bmatrix} \tag{1}\label{1}$$

Los resultados de la $1 \times m $ multiplicado por el vector $m \times 1$ vector es un $ 1 \times 1$ matriz (escalar).

Dejemos que $u$ sea un vector de pesos que pondera cada error de la muestra. Como necesitamos ponderar los errores al cuadrado, tenemos que incorporar $u$ en Fórmula $\ref{1}$ antes de obtener el escalar. Como queremos el primer $r$ para permanecer como $1 \times m$ vector, definimos $U$ sea una matriz diagonal con los términos diagonales procedentes de $u$ . Ahora tenemos:

$$ J(w) = \begin{bmatrix}r_1 & r_2 & \cdots & r_m\end{bmatrix} \begin{bmatrix} u_1 & 0 & \cdots & 0\\ 0 & u_2 & \cdots & 0\\ \vdots & \vdots & \ddots & \vdots\\ 0 & 0 & \cdots & u_m\\ \end{bmatrix} \begin{bmatrix} r_1 \\ r_2 \\ \vdots \\ r_m \\ \end{bmatrix} \tag{2}\label{2}$$

Podemos simplificar esto a $$ J(w) = r^T U r \tag{3}\label{3}$$

Ahora ampliamos $r$ . Tuvimos $x_i \in \mathbb{R^n}$ multiplicado por $w \in \mathbb{R^n}$ , dándonos $Xw$ donde X es ahora un $m \times n$ matriz y $w$ es un $n \times 1$ vector de columnas. Sea y el $m \times 1$ vector de columnas que representa las etiquetas $y = 1,...,m$ . Ahora $r = (Xw - y)$ . Lo sustituimos por la fórmula $\ref{3}$ , dándonos la suma final de cuadrados ponderados en forma de matriz: $$ J(w) = (Xw - y)^T U(Xw-y) \tag{4}\label{4} $$

En primer lugar, ¿tiene esto sentido? En segundo lugar, y más importante, ¿es realmente así como se supone que hay que hacerlo?

Gracias

1voto

alexs77 Puntos 36

Me aventuro a responder a esta pregunta: Todo lo que has presentado es correcto.

Lo que has derivado básicamente es el teorema de Gauss-Markov: el estimador de mínimos cuadrados ponderados es el mejor estimador lineal insesgado para datos ponderados. Este estimador minimiza la suma de cuadrados ponderada (su primera visualización) y viene dado por: $\hat{\beta}_{WLS} = \left( \mathbf{X}^T\mathbf{W}\mathbf{X} \right) \left( \mathbf{X}^T \mathbf{W} Y \right)$ . Aquí $\mathbf{X}$ es la matriz de diseño con la primera columna fijada en $\mathbf{1}$ el $n \times 1$ vector de unos (es el término de intercepción).

Este resultado se aplica a una matriz de covarianza arbitraria. Sin embargo, los datos independientes ponderados se representan con un vector de pesos a lo largo de la diagonal de la matriz de pesos. (su notación tiene $w$ como coeficiente de regresión y $u$ como el peso, por lo que para evitar confusiones, la matriz de diseño sería $\mathbf{X} = [x], \mathbf{W} = \text{diag}(u),$ y $\beta=[w]$ .

El prueba del teorema de Gauss Markov es por contradicción. Véase aquí . Lo que esto significa es que no derivamos analíticamente dicho estimador directamente de la función de pérdida. Es posible que haya visto este enfoque en la derivación de ecuaciones de estimación de regresión lineal y logística.

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