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