최적화
라그랑주 승수법, 볼록 최적화, AI 학습의 핵심.
예산 100만 원으로 최대 만족을 얻으려면? 공장에서 원재료를 최소로 쓰면서 생산량을 최대로 하려면? '제약 조건 아래 최선의 선택을 찾는 것'이 최적화다. 경제학, 공학, AI — 모든 의사결정의 수학적 본질이다.
최적화는 '주어진 조건에서 가장 좋은 답을 찾는 것'이다. 미분에서 f'(x) = 0인 점이 극대/극소였던 것의 확장이다. 다만 현실에는 제약 조건(예산, 시간, 자원 한계)이 있으므로, 제약 아래서 최적을 찾아야 한다.
라그랑주 승수법: 제약 조건 g(x,y) = 0 아래에서 f(x,y)의 최대/최소를 구한다. 핵심 아이디어 — 최적점에서는 f의 그래디언트와 g의 그래디언트가 평행하다. ∇f = λ∇g.
| 최적화 유형 | 특징 | 응용 |
|---|---|---|
| 볼록 최적화 | 극솟값 = 전역 최솟값 (보장) | SVM, 선형 회귀 |
| 비볼록 최적화 | 지역 최솟값 함정 있음 | 딥러닝 신경망 |
| 선형 계획법 | 목적함수·제약이 모두 일차식 | 물류, 생산 계획 |
| 경사하강법 | 반복적으로 최솟값에 접근 | AI 학습 전반 |
AI 학습이 곧 최적화: 신경망의 수백만 개 가중치 중 오차(Loss)를 최소로 만드는 조합을 찾는 것이 AI 학습이다. 볼록이 아닌 비볼록 문제라 지역 최솟값에 빠질 수 있지만, Adam·SGD 같은 최적화 알고리즘이 이를 극복한다. 수학의 최적화 이론 없이는 AI도 없다.
실생활 응용: ① 금융 포트폴리오 최적화(마코위츠 모델) ② 서포트 벡터 머신(SVM) 쌍대 문제 ③ 항공사 운항 스케줄링(선형계획법) ④ 딥러닝 Adam·SGD 옵티마이저 ⑤ 전력망 수요-공급 최적 배분.
제약 x + y = 10 아래에서 f(x, y) = xy의 최댓값은?
볼록 최적화 문제에서 발견한 지역 최솟값은 곧 전역 최솟값이다.
라그랑주 승수법에서 '제약 g(x,y) = 0 아래 f의 극값'에서 성립하는 벡터 관계식은?
딥러닝 손실 함수는 일반적으로 비볼록(non-convex)이지만, SGD·Adam 등의 확률적 옵티마이저가 좋은 지역 최솟값을 찾아내므로 실용적으로 작동한다.