이 글을 보는 모든 분들은 라그랑주 승수법 개념은 알고 계실것 같습니다
고등학교 다닐 때 이런 문제를 많이 보셨을 것 같습니다
(모의고사나 수능문제 있는지 찾아봤는데 못찾겠네요)
$y = −x+1$ 위에 있는 점들 중 $f(x,y)=x^2+y$의 최소값을 찾아라
풀이
$x^2+y=k$로 두고 그래프를 그립니다
이차함수 그래프는 (0,k)를 지납니다
k가 최소가 되려면 두 그래프가 접해야 합니다
라그랑주 승수법
제약식 g(x,y)=k 이 주어졌을 때 (k는 임의의 상수) f(x,y)의 최대 또는 최소를 만족하는 점은 f와 g가 접하는 점에 있다
이를 식으로 나타내면, 서로 gradient vector가 같아야 한다는 의미이다
$\nabla f = \lambda \nabla g$
제약식이 여러개 일때 라그랑주 승수법
함수가 다음과 같이 주어져 있고 $f(x_1,x_2,...,x_n) $
제약식이 여러개 주어져 있다고 합시다
$g_i(x_1,x_2,...,x_n) = 0$
f가 최대 또는 최소를 가지려면 df = 0을 만족해야 합니다
$\partial f = \frac{\partial f}{\partial x_1} dx_1 + \frac{\partial f}{\partial x_2} dx_2 + ... + \frac{\partial f}{\partial x_n} dx_n = 0$ - (1)
여기서 $\frac{\partial f}{\partial x_i}$라는 의미는 아닙니다.
왜냐하면 $x_i$가 제약식으로 인해 서로 독립이 아니기 때문입니다
제약식에도 전미분을 계산할 수 있는데 제약 조건이 상수 이기 때문에 $dg_i$=0 입니다
$\partial g_i = \frac{\partial g_i}{\partial x_1} dx_1 + \frac{\partial g_i}{\partial x_2} dx_2 + ... + \frac{\partial g_i}{\partial x_n} dx_n = 0$ - (2)
(1)과 (2)를 다음과 같이 표현할 수 있습니다
$df = \sum \lambda_i dg_i $
대입하고 정리하면
$\sum_j (\frac{\partial f}{\partial x_j} - \sum_i \lambda_i \frac{\partial g_i}{\partial x_j})dx_j = 0$
위를 만족하기 위해서는 $dx_j$에 대한 계수가 0이어야합니다
따라서
$\frac{\partial f}{\partial x_j} - \sum_i \lambda_i \frac{\partial g_i}{\partial x_j} = 0$
이고
이를 통해 라그랑주 승수식을 얻을 수 있습니다
$\nabla f = \sum \lambda_i \nabla g_i$
위 식을 만족하는 변수가 최대 또는 최소를 만족하는지는 계산을 해보아야 알 수 있습니다
라그랑주 함수
$L(x_1,x_2,...,x_n,\lambda_1,\lambda_2,...,\lambda_k) = f(x_1,x_2,...,x_n) + \sum \lambda_i g_i(x_1,x_2,...,x_n)$
($g_i=0$으로 잡았음에 주의하자)
$\nabla L=0$을 만족하는 람다가 $\nabla f = \sum \lambda_i \nabla g_i$와 필요충분조건이다
https://tutorial.math.lamar.edu/classes/calciii/lagrangemultipliers.aspx
https://www.iist.ac.in/sites/default/files/people/Lagrange-Multiplier.pdf
'인공지능 > 기타' 카테고리의 다른 글
Deep Image Prior (2) | 2024.12.14 |
---|---|
Backpropagation for a Linear Layer (0) | 2024.10.31 |
Transformer: Attention is All you need (2) | 2024.07.27 |
[강화학습 요약] Policy Gradient (0) | 2023.10.15 |
[강화학습 요약] SARSA / VFA / DQN (1) | 2023.09.11 |