05. 다섯 번째 수업: 가성비 극한의 아이템 셋업! 최적화 문제 퀘스트 (Optimization Problems)

알파고나 챗GPT 모델을 훈련할 때 딥러닝 해커들의 유일한 목표는 단 하나입니다. “컴퓨터의 오차율(Loss) 을 무조건 이 우주 바닥 끝 가장 낮은 심연의 골짜기(최솟값 Min) 로 쳐박아 버려라!”

이것을 수학 기하학에서 ‘최적화 문제 (Optimization Problem)’ 라고 칭합니다. 아무리 현실 세계의 더러운 실물 문제라도, 미분 레이저 스캐너 앞에서는 단지 “내가 찾고자 하는 랭크 1위(최댓값) 봉우리” 거나 “내가 찾고자 하는 랭크 꼴찌(최솟값) 분화구” 중 하나를 스나이퍼 헤드샷으로 맞추는 게임으로 전락합니다.


1. 현실 세계를 2D 함수 매트릭스로 번역하라!

[미션] 택배 상점 사장의 빡침: “창고에 가로 $24\text{cm}$, 세로 $24\text{cm}$ 짜리 널따란 정사각형 골판지가 수천 장이 쌓여있네! 이 골판지 귀퉁이 네 모서리에서 조그만 똑같은 사이즈의 정사각형 쪼가리 길이를 $\mathbf{x}$ 만큼 가위로 잘라내고, 날개를 접어 올려 뚜껑 없는 ‘직육면체 택배 상자’ 를 대량 생산하고 싶어! 도대체 그 엑스($\mathbf{x}$) 길이를 얼만큼 피투성이로 가위로 잘라내야 이 상자 안에 택배 물건을 가장 많이 욱여넣을 수 있는 신이 내린 궁극의 가성비 [최대 부피(Max Volume)] 상자가 탄생하는가?”

초등학생들은 상자를 1cm, 2cm, 3cm 노가다로 천 번 잘라보고 우연히 답을 맞힙니다. 하지만 미분 해커들은 단 10초 만에 다음과 같이 텍스트 물리 엔진 렌더링에 들어갑니다.

부피 함수 $V(x)$ 설계도 록온!

  1. 자를 모서리 네 귀퉁이 길이를 미지수 $x$ 로 두고 변수 세팅! (주의점: $x$ 는 상자 면에서부터 자르는 거니까 $0$보다는 크고 한쪽 면 절반인 $12$보다는 무조건 작아야 함. $\to$ $0 < x < 12$ 도메인 락다운!)
  2. 모서리를 잘라버린 후 접어 올린 밑바닥 상자의 한 변 길이는? $(24 - 2x)$
  3. 접어 올렸으니 상자의 높이는? 바로 자른 쪼가리 길이 $x$ 가 됩니다.
  4. 부피(Volume) = 가로 $\times$ 세로 $\times$ 높이 수식 대입! $V(x) = (24 - 2x)^2 \times x$
  5. 전개 폭증: $V(x) = 4x^3 - 96x^2 + 576x$
택배 상자의 밑면과 높이를 잡고 부피 공식 V(x)를 설계한 뒤, 미분을 통해 부피가 가장 최대가 되는 정점 포인트를 스나이핑하는 과정 SVG

2. 미분 스매시! 정점을 색출하라!

이 $V(x)$ 라는 아름다운 3차원 포물선 지형 데이터 뼈대를 도출해 냈습니다. 우리의 목표는? “이 산맥 곡선에서, 부피 $Y$ 값이 아에 대기권을 뚫고 올라간 가장 높은 미친 최대 봉우리(극대) 스파크 지점의 정체($x$ 값) 가 어디인가!”

주저 없이 미분 도함수 믹서기를 가동합니다! diff() 엔터!

  • $V’(x) = 12x^2 - 192x + 576$

그리고 차가운 수평 정지를 뜻하는 기어파킹 $= 0$ 스위치를 눌러 미분계수를 0으로 터뜨립니다!

  • $12(x^2 - 16x + 48) = 0$
  • $12(x - 4)(x - 12) = 0$

정답 후보 도출! $x = 4$ 이거나 $x = 12$ 일 때 스피드가 멈춘다! 그런데 아까 도메인 락다운에서 $x$ 는 절대 $12$ 가 될 수 없다(종이를 전부 다 잘라버리면 상자가 소멸) 고 설계했습니다. 그렇다면 우주에서 남은 해답의 진리가 딱 한 픽셀 스팟으로 좁혀졌습니다!

해킹 완료 승리 선언! $\mathbf{x = 4}$ $\text{cm}$ 크기만큼 귀퉁이를 가위로 정밀 타격하여 잘라냈을 때야말로, 부피 V(x) 렌더링 그래프가 우주 끝 꼭대기 치고 최고 극댓값 정점에 도달하는 황금의 엑스 스팟이다!! (그때의 한계 돌파 최대 부피 = 약 $1,024\text{cm}^3$)

이것이 인류가 “미분(스피드 기울기 포착 공구)” 이라는 마법 무기를 실생활에 뿌려 가장 적은 원가로 가장 엄청난 마진 이윤을 뽑아버리는 궁극의 ‘최적화 스캔(Optimization)’ 입니다. 6장에서는 바로 이 미친 최적화 산 정상 스팟을 AI 딥러닝 모듈이 어떻게 강제로 멱살 쥐고 찾아가 깃발을 꽂아버리는지 SciPy 로 파이썬 코드를 부숴보겠습니다.

서브목차