Curso Gratuito en Ciencia de Datos y Aprendizaje Automático con Python




Métodos de proyección


El concepto de proyección es clave para desarrollar una intuición sobre la probabilidad condicional. Ya tenemos una intuición natural de proyección al mirar las sombras de los objetos en un día soleado. Como veremos, esta simple idea consolida muchas ideas abstractas en optimización y matemáticas. Considere la figura 2.2, donde queremos encontrar un punto a lo largo de la línea azul (es decir, x ) que esté más cerca del cuadrado negro (es decir, y ). En otras palabras, queremos inflar el círculo gris hasta que toque la línea negra. Recuerde que el límite del círculo es el conjunto de puntos para los que


( y - x ) T ( y - x ) = y - x


por algún valor de. Entonces queremos un punto x a lo largo de la línea que satisfaga esto para el más pequeño. Entonces, ese punto será el punto más cercano en la línea negra al cuadrado negro. Puede resultar obvio en el diagrama, pero el punto más cercano de la línea ocurre donde el segmento de línea desde el cuadrado negro a la línea negra es perpendicular a la línea. En este punto, el círculo gris solo toca la línea negra. Esto se ilustra a continuación en la Fig. 2.3 .


Figura Figura

Consejo de programación La Figura 2.2 usa el módulo matplotlib.patches . Este módulo contiene formas primitivas como círculos, elipses y rectángulos que se pueden ensamblar en gráficos complejos. Después de importar una forma en particular, puede aplicar esa forma a un eje existente usando el método add_patch . Los propios parches se pueden diseñar con las palabras clave de formato habituales, como color y alfa .


Ahora que podemos ver lo que está pasando, podemos construir la solución analíticamente. Podemos representar un punto arbitrario a lo largo de la línea negra como:


x = α v


donde α ∈ R desliza el punto hacia arriba y hacia abajo de la línea con


v = [1 , 1] T


Formalmente, v es el subespacio sobre el que queremos proyectar y . En el punto más cercano, el vector entre y y x (el vector de error de arriba) es perpendicular a la línea. Esto significa que


( y - x ) T v = 0


y al sustituir y resolver los términos, obtenemos


α = y T v v 2


El error es la distancia entre α v e y . Este es un triángulo rectángulo, y podemos usar el teorema de Pitágoras para calcular la longitud al cuadrado de este error como


X : [ 0 , 1 ] → [ 0 , 1 ]


donde v 2 = v T v . Tenga en cuenta que dado que 2 ≥ 0, esto también muestra que


y T v yv


que es la famosa y útil desigualdad de Cauchy-Schwarz que explotaremos más adelante. Finalmente, podemos ensamblar todo esto en el operador de proyección .


P v =


Con este operador, podemos tomar cualquier y y encontrar el punto más cercano en v haciendo


y P v y =


donde reconocemos el término entre paréntesis como el α que calculamos anteriormente. Se llama operador porque toma un vector ( y ) y produce otro vector ( α v ). Así, la proyección unifica geometría y optimización.


Distancia ponderada


Podemos extender fácilmente este operador de proyección a los casos en los que se pondera la medida de distancia entre y y el subespacio v . Podemos acomodar estas distancias ponderadas reescribiendo el operador de proyección como


P v = v v T Qv


donde Q es matriz de fi nida positiva. En el caso anterior, comenzamos con un punto y e inflamos un círculo centrado en y hasta que tocó la línea definida por v y este punto era el punto más cercano en la línea ay . Lo mismo ocurre en el caso general con una distancia ponderada excepto que ahora inflamos una elipse, no un círculo, hasta que la elipse toca la línea.


Observe que el vector de error ( y - α v ) de la figura 2.4 sigue siendo perpendicular a la línea (subespacio v ), pero en el espacio de la distancia ponderada. La diferencia entre la primera proyección (con la distancia circular uniforme) y el caso general (con la distancia ponderada elíptica) es el producto interno entre los dos casos. Por ejemplo,


Figura

en el primer caso tenemos y T v y en el caso ponderado tenemos y T Q T v . Para pasar de la caja circular uniforme a la caja elipsoidal ponderada, todo lo que teníamos que hacer era cambiar todos los productos internos del vector. Antes de terminar, necesitamos una propiedad formal de las proyecciones:


P v P v = P v


conocida como propiedad idempotente que básicamente dice que una vez que hemos proyectado en un subespacio, las proyecciones posteriores nos dejan en el mismo subespacio. Puede verificar esto calculando la ecuación. 2.2.1.1 .


Así, la proyección vincula un problema de minimización (el punto más cercano a una línea) a un concepto algebraico (producto interno). Resulta que estas mismas ideas geométricas del álgebra lineal [ 2 ] se pueden traducir a la expectativa condicional. Cómo funciona esto es el tema de nuestra próxima sección.