13 votos

KKT en pocas palabras, gráficamente

Objetivo

Confirmar si la comprensión de KKT es correcta o no. Buscar más explicaciones y confirmaciones sobre KKT.

Antecedentes

Tratando de entender las condiciones KKT, especialmente la complementaria, que siempre aparece de sopetón en los artículos de SVM. No necesito una lista de fórmulas abstractas, sino una explicación concreta, intuitiva y gráfica.

Pregunta

Si P, que minimiza la función de coste f(X), está dentro de la restricción (g(P) >= 0), es la solución. Parece que KKT no es relevante en este caso.

enter image description here

Parece que KKT dice que si P no está dentro de la restricción, entonces la solución X debe satisfacer lo siguiente en la imagen. ¿Es KKT todo o me pierdo otros aspectos importantes?

enter image description here

Otras aclaraciones

  1. ¿Debe f(x) ser convexa para que se aplique KKT?
  2. ¿Debe g(x) ser lineal para que se aplique el KKT?
  3. ¿Debe ser necesario λ en λ*g(X) = 0? ¿Por qué g(X) = 0 o g(Xi) = 0 no es suficiente?

Referencias


Actualización 1

Gracias por las respuestas, pero todavía me cuesta entenderlo. Centrarse en la necesidad sólo aquí:

¿La condición(2) de la respuesta de Matthew Gunn se refiere al punto no óptimo (en el círculo verde) y el KKT no se satisface allí? ¿Y el punto se identificaría mirando el hessiano como en la respuesta de Mark L. Stone?

Supongo que otra situación es la de los puntos de sillín, pero se aplica lo mismo

enter image description here

enter image description here usuario23658

8voto

Martin Robins Puntos 1893

La idea básica de las condiciones KKT como condiciones necesarias para un óptimo es que si no se cumplen en un punto factible $\mathbf{x}$ entonces existe una dirección $\boldsymbol{\delta}$ que mejore el objetivo $f$ sin aumentar (y, por tanto, sin violar) las restricciones. (Si las condiciones KKT no se cumplen en $\mathbf{x}$ entonces $\mathbf{x}$ no puede ser un óptimo, por lo que las condiciones KKT son necesarias para que un punto sea un óptimo).

Imagina que tienes un problema de optimización:

\begin {Ecuación} \begin {array}{*2{>{} \displaystyle }r}} \mbox {minimizar (sobre $\mathbf{x}$ )} & f( \mathbf {x}) \\ \mbox {sujeto a} & \forall_ {j \in \{1 \ldots k\}}; g_j( \mathbf {x}) \leq 0 \end {array} \end {Ecuación}

Dónde $\mathbf{x} \in \mathbb{R}^n$ y hay $k$ limitaciones.

Condiciones KKT y El lema de Farkas

Dejemos que $\nabla f(\mathbf{x})$ sea un vector columna que denote el gradiente de $f$ evaluado en $\mathbf{x}$ .

Aplicado a esta situación, El lema de Farkas establece que para cualquier punto $\mathbf{x} \in \mathbb{R}^n$ exactamente un de las siguientes afirmaciones es válida:

  1. Existe $\boldsymbol{\lambda} \in \mathbb{R}^k$ tal que $\sum_{j=1}^k \lambda_j \nabla g_j(\mathbf{x}) = -\nabla f(\mathbf{x})$ y $\boldsymbol{\lambda} \geq \mathbf{0}$
  2. Existe $\boldsymbol{\delta} \in \mathbb{R}^n$ tal que $\forall_j \boldsymbol{\delta}' g_j(\mathbf{x}) \leq 0$ y $ \boldsymbol{\delta}'\nabla f(\mathbf{x}) < 0$

¿Qué significa esto? Significa que para cualquier punto factible $\mathbf{x}$ Tampoco:

  • La condición (1) se mantiene y las condiciones KKT se satisfacen.
  • La condición (2) se cumple y existe una dirección factible $\boldsymbol{\delta}$ que mejora la función objetivo $f$ sin aumentar las restricciones $g_j$ . (por ejemplo, puede mejorar $f$ al pasar de $\mathbf{x}$ a $\mathbf{x} + \epsilon \boldsymbol{\delta}$ )

La condición (1) establece que existen multiplicadores no negativos $\boldsymbol{\lambda}$ tal que las condiciones KKT se satisfacen en el punto $\mathbf{x}$ . (Geométricamente, dice que el $- \nabla f$ se encuentra en el cono convexo definido por los gradientes de las restricciones).

La condición (2) establece que en el punto $\mathbf{x}$ existe una dirección $\boldsymbol{\delta}$ para moverse (localmente) tal que:

  • Moviéndose en la dirección $\boldsymbol{\delta}$ reduce la función objetivo (porque el producto punto de $\nabla f(\mathbf{x})$ y $\boldsymbol{\delta}$ es menor que cero).
  • Moverse en la dirección $\boldsymbol{\delta}$ no aumenta el valor de las restricciones (porque el producto punto de $\nabla g_j(\mathbf{x})$ y $\boldsymbol{\delta}$ es menor o igual a cero para todas las restricciones $j$ ).

(Geométricamente, la dirección factible $\boldsymbol{\delta}$ define un hiperplano de separación entre el vector $-\nabla f(\mathbf{x})$ y el cono convexo definido por los vectores $\nabla g_j(\mathbf{x})$ .)

(Nota: para mapear esto en El lema de Farkas definir la matriz $A = \begin{bmatrix} \nabla g_1, \nabla g_2, \ldots, \nabla g_k \end{bmatrix}$ )

Este argumento le da la necesidad (pero no la suficiencia) de las condiciones KKT en un óptimo. Si las condiciones KKT no se satisfacen (y las calificaciones de las restricciones sí), es posible mejorar el objetivo sin violar las restricciones.

El papel de las calificaciones de las restricciones

¿Qué puede salir mal? Se pueden producir situaciones degeneradas en las que los gradientes de las restricciones no describan con exactitud las direcciones factibles de movimiento.

Hay una multitud de diferentes calificaciones de las restricciones para elegir que permitirá que el argumento anterior funcione.

La interpretación mínima y máxima (en mi opinión, la más intuitiva)

Formar el lagrangiano

$$ \mathcal{L}(\mathbf{x}, \boldsymbol{\lambda}) = f(\mathbf{x}) + \sum_{j=1}^k \lambda_jg_j(\mathbf{x})$$

En lugar de minimizar $f$ con limitaciones $g_j$ Imagina que estás tratando de minimizar $\mathcal{L}$ mientras algún oponente intenta maximizarlo. Puedes interpretar los multiplicadores $\lambda_i$ como penalizaciones (elegidas por algún opositor) por violar las restricciones.

La solución del problema de optimización original es equivalente a:

$$ \min_x \max_\lambda \mathcal{L}(\mathbf{x}, \boldsymbol{\lambda}) $$

Eso es:

  1. Primero eliges $\mathbf{x}$ para minimizar el Lagrangiano $\mathcal{L}$ ...consciente de que...
  2. Entonces elegiré $\boldsymbol{\lambda}$ para maximizar el Lagrangiano (habiendo observado su elección $\mathbf{x}$ ).

Por ejemplo, si se viola la restricción $g_2$ Puedo penalizarte fijando $\lambda_2$ hasta el infinito.

Dualidad débil

Para cualquier función $f(x, y)$ observa que:

$$ \forall_{\hat{x},\hat{y}} \quad \min_x f(x, \hat{y}) \leq f(\hat{x}, \hat{y}) \leq \max_y f(\hat{x}, y)$$

Dado que esto es válido para cualquier $\hat{x}$ y $\hat{y}$ también sostiene que: $$ \max_y \min_x f(x, y) \leq \min_x \max_y f(x, y)$$

En el entorno de Langrian, este resultado que $\max_\lambda \min_x \mathcal{L}(\mathbf{x}, \boldsymbol{\lambda}) \leq \min_x \max_\lambda \mathcal{L}(\mathbf{x}, \boldsymbol{\lambda})$ se conoce como dualidad débil.

El doble problema $\max_\lambda \min_x \mathcal{L}(\mathbf{x}, \boldsymbol{\lambda})$ le da un límite inferior a la solución

Fuerte dualidad

Bajo ciertas condiciones especiales (por ejemplo, un problema convexo en el que se cumple la condición de Slater), se tiene una dualidad fuerte (es decir, la propiedad del punto de silla).

$$\max_\lambda \min_x \mathcal{L}(\mathbf{x}, \boldsymbol{\lambda}) = \min_x \max_\lambda \mathcal{L}(\mathbf{x}, \boldsymbol{\lambda})$$

Este hermoso resultado implica que se puede invertir el orden del problema.

  1. Primero elijo los penaltis $\boldsymbol{\lambda}$ para maximizar el Lagrangiano.

  2. A continuación, elige $\mathbf{x}$ para minimizar el Lagrangiano $\mathcal{L}$ .

El $\lambda$ Los precios que se fijan en este proceso son los precios por violar las restricciones, y los precios se fijan de manera que nunca se violen las restricciones.

5voto

Mark L. Stone Puntos 2037

Que f(x) sea convexa es necesario para que el KKT sea suficiente para que x sea mínimo local. Si f(x) o -g(x) no son convexos, x satisface el KKT podría ser un mínimo local, un punto de equilibrio o un máximo local.

Que g(x) sea lineal, junto con que f(x) sea continuamente diferenciable, es suficiente para que las condiciones KKT sean necesarias para el mínimo local. Que g(x) sea lineal significa que se satisface la cualificación de la restricción de linealidad para que KKT sea necesaria para el mínimo local. Sin embargo, hay otros requisitos de restricción menos restrictivos que son suficientes para que las condiciones KKT sean necesarias para el mínimo local. Véase la sección Condiciones de regularidad (o calificaciones de las restricciones) de https://en.wikipedia.org/wiki/Karush%E2%80%93Kuhn%E2%80%93Tucker_conditions .

Si un mínimo local no tiene restricciones "activas" (por lo que en el caso de una única restricción de desigualdad, dicha restricción no se satisface con la igualdad), los multiplicadores de Lagrange asociados a dichas restricciones deben ser cero, en cuyo caso, KKT se reduce a la condición de que el gradiente del objetivo = 0. En tal caso, hay un "coste" cero para el valor objetivo óptimo de un ajuste épsilon de la restricción.

Más información :

La función objetivo y las restricciones son convexas y continuamente diferenciables, lo que implica que KKT es suficiente para el mínimo global.

Si la función objetivo y las restricciones son continuamente diferenciables y las restricciones satisfacen una calificación de restricción, el KKT es necesario para un mínimo local.

Si la función objetivo y las restricciones son continuamente diferenciables, convexas, y las restricciones satisfacen una cualificación de las mismas, el KKT es necesario y suficiente para un mínimo global.

La discusión anterior sólo se refiere a las condiciones KKT de primer orden. También existen condiciones KKT de 2º orden, que pueden enunciarse como Un punto que satisface las condiciones KKT de primer orden y para el que la función objetivo y las restricciones son dos veces diferenciables de forma continua es (suficiente para) un mínimo local si el hessiano del lagrangiano proyectado en el espacio nulo del jacobiano de las restricciones activas es semidefinido positivo. (Dejaré que busques la terminología utilizada en la frase anterior.) Dejando que $Z$ sea una base para el espacio nulo del jacobiano de las restricciones activas, la condición KKT de 2º orden es que $Z^T H Z$ es semidefinido positivo, donde $H$ es el hessiano del lagrangiano. Las restricciones activas consisten en todas las restricciones de igualdad más todas las restricciones de desigualdad que se satisfacen con igualdad en el punto considerado. Si no hay restricciones activas en el punto KKT de primer orden considerado, la matriz identidad es una base nula $Z$ y todos los multiplicadores de Lagrange deben ser cero, por lo tanto, la condición necesaria de 2º orden para un mínimo local se reduce a la condición conocida de la optimización sin restricciones de que el hessiano de la función objetivo es semidefinido positivo. Si todas las restricciones son lineales, el hessiano del lagrangiano = el hessiano de la función objetivo, ya que la segunda derivada de una función lineal es 0.

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