94강은 반례 두 개로 끝났습니다. 편미분이 모두 존재해도 함수가 연속이 아닐 수 있고, 모든 방향도함수가 존재해도 마찬가지였습니다.
편미분은 축 위만 봅니다
빈틈을 메우려면 요구를 바꿔야 합니다. 방향마다 따로 재는 대신, 한 번에 전부를 근사하라고 요구합니다.
한 변수에서 미분이 무엇이었는지 다시 봅니다. 37강의 정의는 극한이었지만, 같은 말을 이렇게 쓸 수 있습니다.
f(a+h)=f(a)+f′(a)h+o(h)
**"직선으로 근사하면 오차가 h보다 빨리 줄어든다"**는 뜻입니다. 이 문장은 차원과 무관하게 그대로 옮겨집니다. 직선을 평면으로, f′(a)h를 내적으로 바꾸면 됩니다.
f(a+h)=f(a)+∇f(a)⋅h+o(∥h∥)
이 강의는 이 식을 정의로 삼습니다. 그리고 여기 등장하는 벡터 ∇f가 93강에서 그림으로만 잡아 둔 "기울기"의 정체임을 보입니다. 등고선에 수직이고, 크기가 가파른 정도입니다.
- 선형근사와 접평면의 식을 세울 수 있습니다.
- 전미분가능성의 정의를 쓰고 확인할 수 있습니다.
- 기울기 벡터를 구하고 그 크기의 뜻을 말할 수 있습니다.
- 기울기가 등고선에 수직임을 증명할 수 있습니다.
- 편미분 존재와 전미분가능을 구별할 수 있습니다.
문제. f(x,y)=x2+y2과 점 (3,4)를 봅니다.
(1) f(3,4)와 두 편미분을 구하세요.
(2) h=(t,t/2)일 때 실제 증가량과 fxh1+fyh2를 비교하세요.
(3) 나머지를 ∥h∥로 나눈 값이 t→0에서 어떻게 됩니까?
생각의 실마리. 한 변수에서 접선이 곡선을 근사했듯, 여기서는 평면이 곡면을 근사합니다. 근사가 좋다는 말을 정확히 하려면 오차가 얼마나 빨리 줄어드는지를 봐야 합니다.
풀이. (1) f(3,4)=25이고 fx=2x=6, fy=2y=8입니다.
(2) 실제 증가량은
f(3+h1,4+h2)−f(3,4)=6h1+8h2+h12+h22
이며 앞의 두 항이 선형근사이고 뒤의 두 항이 나머지입니다. 검산에서
| t |
실제 증가 |
선형근사 |
나머지 |
나머지/∥h∥ |
| 10^ |
1.01250000 |
1.00000000 |
1.250\times10^ |
1.118\times10^ |
| 10^ |
0.10012500 |
0.10000000 |
1.250\times10^ |
1.118\times10^ |
| 10^ |
0.01000125 |
0.01000000 |
1.250\times10^ |
1.118\times10^ |
| 10^ |
0.00100001 |
0.00100000 |
1.250\times10^ |
1.118\times10^ |
| 10^ |
0.00010000 |
0.00010000 |
1.250\times10^ |
1.118\times10^ |
(3) 0으로 갑니다. 마지막 열이 t에 비례해 줄어듭니다.
이 문제에서 배우는 것: 전미분가능성.
전미분가능. f가 점 a에서 전미분가능하다 함은 벡터 g가 있어
h→0lim∥h∥f(a+h)−f(a)−g⋅h=0
이 성립하는 것입니다. 이때 g는 유일하며 g=(fx(a),fy(a))입니다.
세 부분을 나눠 읽습니다.
| 부분 |
뜻 |
| f(a+h)−f(a) |
실제 변화입니다 |
| \mathbf{g}\cdot\mathbf |
선형근사입니다 |
| ∥h∥로 나눠 0 |
오차가 일차보다 빨리 줍니다 |
셋째 줄이 핵심입니다. 오차가 그냥 0으로 가는 것만으로는 부족하고, ∥h∥로 나눠도 0이어야 합니다. 위 표의 나머지는 1.25t2이라 ∥h∥≈1.118t로 나누면 1.118t가 되어 0으로 갑니다.
g가 편미분을 성분으로 갖는다는 것은 증명해야 할 사실입니다. h=(h,0)으로 두면 정의가
h→0lim∣h∣f(a+h,b)−f(a,b)−g1h=0
이 되고, 이는 곧 g1=fx(a,b)를 뜻합니다. h=(0,k)로 두면 g2=fy(a,b)입니다. 따라서 전미분가능하면 편미분이 반드시 존재합니다. 역은 성립하지 않으며 문제 5에서 봅니다.
바로 확인 1.
확인 1-1. 전미분가능성의 정의를 쓰세요.
답. 나머지를 ∥h∥로 나눈 극한이 0인 것입니다.
확인 1-2. 나머지가 0으로 가기만 하면 충분합니까?
답. 아닙니다. ∥h∥로 나눠도 0이어야 합니다.
확인 1-3. 전미분가능하면 편미분이 존재합니까?
답. 존재하며 g의 성분이 곧 편미분입니다.
문제. 같은 함수와 점을 봅니다.
(1) (3,4,25)에서의 접평면 식을 쓰세요.
(2) (3.1,4.05)와 (3.5,4.5)에서 근사값과 실제값을 비교하세요.
(3) 오차가 왜 그만큼인지 설명하세요.
생각의 실마리. 한 변수에서 접선은 y=f(a)+f′(a)(x−a)였습니다. 각 변수마다 항을 하나씩 더하면 접평면이 됩니다.
풀이. (1) 선형근사식에서 h=(x−3,y−4)로 두면
z=25+6(x−3)+8(y−4)
(2) 검산에서
| 점 |
근사 |
실제 |
오차 |
| (3.1,4.05) |
26.0000 |
26.0125 |
0.0125 |
| (3.5,4.5) |
32.0000 |
32.5000 |
0.5000 |
(3) 나머지가 h12+h22이므로 첫 점은 0.12+0.052=0.0125, 둘째 점은 0.52+0.52=0.5입니다. 정확히 맞습니다.
거리가 5배가 되자 오차는 40배가 됐습니다. 나머지가 이차식이니 대략 제곱으로 늘어납니다.
이 문제에서 배우는 것: 접평면.
접평면. f가 (a,b)에서 전미분가능하면 곡면 z=f(x,y)의 점 (a,b,f(a,b))에서의 접평면은
z=f(a,b)+fx(a,b)(x−a)+fy(a,b)(y−b)
입니다.
차원별로 같은 구조가 반복됩니다.
| 차원 |
근사하는 것 |
식 |
| 1 |
접선 |
f(a)+f′(a)(x−a) |
| 2 |
접평면 |
f(a,b)+fxΔx+fyΔy |
| n |
접초평면 |
f(a)+∇f(a)⋅(x−a) |
세 줄이 하나의 식입니다. 마지막 형태가 가장 정직한데, 미분이 곧 선형사상이라는 사실이 드러나기 때문입니다.
h ⟼ ∇f(a)⋅h
이것은 76강에서 정의한 선형변환입니다. Rn에서 R로 가는 선형사상이고, 77강의 표현행렬이 1×n 행렬 ∇f⊤입니다. 98강에서 출력이 여럿인 경우로 넓히면 그 행렬이 야코비 행렬이 됩니다.
"전미분"이라는 이름도 여기서 옵니다. 접평면의 높이 변화를 기호로 쓰면
df=fxdx+fydy
이고, 이것이 전미분입니다. 편미분 두 개가 각자 기여한 것을 전부 합쳤다는 뜻입니다. 94강에서 ∂과 d를 구별한 이유가 여기서 분명해집니다.
바로 확인 2.
확인 2-1. 접평면의 식을 쓰세요.
답. z=f(a,b)+fx(x−a)+fy(y−b)입니다.
확인 2-2. 전미분 df를 쓰세요.
답. fxdx+fydy입니다.
확인 2-3. 점에서 거리가 2배가 되면 오차는 대략 몇 배입니까?
답. 나머지가 이차이므로 대략 4배입니다.
문제. 같은 함수와 점을 봅니다.
(1) ∇f(3,4)를 구하세요.
(2) 그 크기를 구하세요.
(3) 단위벡터로 바꾸세요.
생각의 실마리. 94강 심화 6에서 모아 보자고 했습니다. 모아 놓으니 벡터이고, 벡터에는 방향과 크기가 있습니다. 각각이 무엇을 뜻하는지가 이 문제입니다.
풀이. (1) ∇f=(2x,2y)이므로 ∇f(3,4)=(6,8)입니다.
(2) ∥(6,8)∥=36+64=10입니다.
(3) (0.6,0.8)입니다. 검산에서 확인됩니다.
이 문제에서 배우는 것: 기울기 벡터.
기울기 벡터. f가 전미분가능할 때
∇f(a)=(fx1(a),…,fxn(a))
를 기울기 벡터라 합니다. 그래디언트라고도 읽습니다.
이 벡터가 갖는 세 가지 뜻을 정리합니다. 첫째는 이미 봤고, 둘째는 문제 4에서, 셋째는 96강에서 증명합니다.
| 성질 |
내용 |
어디서 |
| 선형근사의 계수 |
f(\mathbf{a}+\mathbf{h})\approx f(\mathbf{a})+\nabla f\cdot\mathbf |
문제 1 |
| 등고선에 수직 |
∇f⊥ 접선 |
문제 4 |
| 최급증가 방향 |
∥∇f∥가 최대 증가율 |
96강 |
크기가 93강 문제 3의 "기울기"입니다. 그때 등고선 간격이 기울기에 반비례한다고 했는데, 이제 정확한 진술을 할 수 있습니다.
Δs≈∥∇f∥Δc
f=x2+y2에서 확인합니다. ∥∇f∥=2x2+y2=2c이므로 원점에서 멀수록 커지고, 따라서 간격이 줍니다. 93강의 표에서 c=1일 때 크기 2, c=4일 때 크기 4였고 간격이 절반 가까이로 줄었습니다.
∇ 기호는 나블라라 읽습니다. 뒤집힌 삼각형 모양이고, 하프의 일종인 고대 악기 이름에서 왔습니다.
바로 확인 3.
확인 3-1. f=x2+y2의 ∇f를 쓰세요.
답. (2x,2y)입니다.
확인 3-2. ∥∇f∥는 무엇을 뜻합니까?
답. 가장 가파른 방향의 증가율입니다.
확인 3-3. 등고선 간격과 ∥∇f∥의 관계를 쓰세요.
답. 반비례합니다.
문제. 같은 함수와 점을 봅니다.
(1) (3,4)를 지나는 등고선을 구하세요.
(2) 그 점에서 등고선의 접선 방향을 구하세요.
(3) ∇f(3,4)와 그 방향의 내적을 구하세요.
생각의 실마리. 등고선 위에서는 함숫값이 변하지 않습니다. 변하지 않는 방향으로 움직였는데 선형근사가 변화를 예측하면 모순입니다. 그 모순이 답을 줍니다.
풀이. (1) f(3,4)=25이므로 x2+y2=25, 반지름 5인 원입니다.
(2) 원 위의 점 (3,4)에서 접선은 반지름 (3,4)에 수직이므로 방향이 (−4,3)/5=(−0.8,0.6)입니다.
(3) 검산에서
∇f⋅t=6×(−0.8)+8×0.6=−8.882×10−16
참값은 0입니다. 손으로 계산하면 −4.8+4.8=0인데 컴퓨터가 −8.9×10−16을 낸 것은 0.8과 0.6이 이진법으로 정확히 표현되지 않기 때문입니다. 92강의 상쇄이며, 직교성을 부동소수점으로 판정할 때는 언제나 문턱이 필요합니다.
한편 기울기 자신의 방향과는
∇f⋅u=6×0.6+8×0.8=10=∥∇f∥
입니다.
이 문제에서 배우는 것: 기울기는 등고선에 수직입니다.
정리. f가 a에서 전미분가능하고 ∇f(a)=0이면, a를 지나는 등고선의 접선 방향 t에 대해
∇f(a)⋅t=0
입니다.
증명. 등고선 위를 따라 a에서 t 방향으로 조금 움직입니다. h=st+o(s)인 변위를 잡으면 등고선 위이므로
f(a+h)−f(a)=0
입니다. 전미분가능성의 정의에서
0=∇f(a)⋅h+o(∥h∥)=s∇f(a)⋅t+o(s)
이므로 양변을 s로 나누고 s→0을 취하면 ∇f(a)⋅t=0입니다. ■
증명이 짧은 이유가 있습니다. "등고선 위에서 함숫값이 변하지 않는다"는 정의와 "선형근사가 변화를 예측한다"는 전미분가능성을 맞부딪쳤을 뿐입니다. 변화가 없으므로 예측도 0이어야 합니다.
이 사실이 나중에 여러 곳에서 쓰입니다.
| 쓰이는 곳 |
내용 |
| 96강 |
등고선 방향의 방향도함수가 0입니다 |
| 109강 |
경사하강은 등고선을 수직으로 가로지릅니다 |
| 113강 |
라그랑주 승수법의 기하적 근거입니다 |
113강이 특히 중요합니다. 제약조건 g(x)=0은 g의 등위집합입니다. 그 위에서 f를 최대화한 점에서는 f의 등고선과 g의 등위집합이 접하고, 따라서 두 기울기가 같은 직선 위에 놓입니다.
∇f=λ∇g
이 식 전체가 문제 4의 결론에서 나옵니다.
바로 확인 4.
확인 4-1. 기울기와 등고선의 각을 쓰세요.
답. 수직입니다.
확인 4-2. 증명에서 쓴 사실 두 개를 쓰세요.
답. 등고선 위에서 함숫값이 변하지 않는다는 것과 전미분가능성의 정의입니다.
확인 4-3. 직교성을 컴퓨터로 판정할 때 주의할 점을 쓰세요.
답. 정확히 0이 나오지 않으므로 문턱을 정해야 합니다.
문제. 94강의 함수를 다시 봅니다.
q(x,y)=⎩⎪⎨⎪⎧x2+y2xy0(x,y)=(0,0)(x,y)=(0,0)
(1) ∇q(0,0)을 쓰세요.
(2) h=(t,t)일 때 나머지를 ∥h∥로 나눈 값을 구하세요.
(3) 원점에서 전미분가능합니까?
생각의 실마리. 94강에서 편미분이 둘 다 0이었습니다. 그러니 선형근사는 "아무 변화도 없다"고 예측합니다. 실제로 그런지 확인하면 됩니다.
풀이. (1) 94강 문제 5에서 qx(0,0)=qy(0,0)=0이므로 ∇q(0,0)=(0,0)입니다.
(2) q(t,t)=t2/(2t2)=1/2이고 q(0,0)=0이며 ∇q⋅h=0이므로 나머지는 1/2입니다. ∥h∥=t2이므로
t21/2=t0.3536
검산에서
| t |
나머지/∥h∥ |
| 10^ |
3.536\times10^ |
| 10^ |
3.536\times10^ |
| 10^ |
3.536\times10^ |
| 10^ |
3.536\times10^ |
| 10^ |
3.536\times10^ |
(3) 전미분가능하지 않습니다. 비율이 0으로 가기는커녕 발산합니다.
이 문제에서 배우는 것: 계층이 완성됩니다.
문제 1의 표와 이 표를 나란히 놓으면 차이가 분명합니다.
| 함수 |
나머지/∥h∥의 거동 |
결론 |
| x^{2}+y^ |
1.118t→0 |
전미분가능합니다 |
| xy/(x2+y2) |
0.354/t→∞ |
전미분가능하지 않습니다 |
둘째 줄이 왜 이렇게 나빴는지는 함수의 모양에 있습니다. q는 원점 근처에서 방향에 따라 −1/2에서 1/2까지 값이 튀는데, 아무리 가까이 가도 이 진폭이 줄지 않습니다. 어떤 평면으로도 근사할 수 없습니다.
이제 조건들의 관계를 정리할 수 있습니다.
| 조건 |
⇒ 연속 |
⇒ 전미분가능 |
| 편미분 존재 |
아닙니다 |
아닙니다 |
| 모든 방향도함수 존재 |
아닙니다 |
아닙니다 |
| 전미분가능 |
그렇습니다 |
정의입니다 |
| 편미분이 존재하고 연속 |
그렇습니다 |
그렇습니다 |
마지막 줄이 실용적인 판정법입니다. 정의로 확인하는 일은 번거로우므로 대개 이 충분조건을 씁니다.
충분조건. fx와 fy가 a의 어떤 근방에서 존재하고 a에서 연속이면 f는 a에서 전미분가능합니다. 이런 함수를 C1 함수라 합니다.
증명은 심화 2에서 합니다. **다항식, 지수, 로그, 삼각함수와 이들의 합성은 정의역에서 모두 C1**이므로 실무에서 만나는 함수는 거의 전부 전미분가능합니다.
다만 충분조건일 뿐 필요조건은 아닙니다. 심화 2에서 전미분가능한데 편미분이 불연속인 함수를 봅니다.
바로 확인 5.
확인 5-1. ∇q(0,0)을 쓰세요.
답. (0,0)입니다.
확인 5-2. 이 함수가 전미분가능하지 않은 이유를 쓰세요.
답. 나머지를 ∥h∥로 나눈 값이 발산하기 때문입니다.
확인 5-3. 전미분가능성의 실용적인 충분조건을 쓰세요.
답. 편미분이 존재하고 연속이면 됩니다.
| 개념 |
정의 |
| 전미분가능 |
나머지/∥h∥→0 |
| ∇f |
편미분을 모은 벡터 |
| 접평면 |
f(a)+∇f⋅(x−a) |
| 전미분 df |
fxdx+fydy |
| C^ |
편미분이 존재하고 연속 |
| ∇f의 성질 |
내용 |
| 방향 |
가장 가파르게 증가합니다 |
| 크기 |
그 방향의 증가율입니다 |
| 등고선 |
수직입니다 |
| \nabla f=\mathbf |
임계점입니다 |
| 조건 |
연속 |
전미분 |
| 편미분 존재 |
아닙니다 |
아닙니다 |
| 방향도함수 전부 존재 |
아닙니다 |
아닙니다 |
| C^ |
그렇습니다 |
그렇습니다 |
| 전미분가능 |
그렇습니다 |
정의입니다 |
| 자주 하는 실수 |
바로잡기 |
| 편미분이 있으면 전미분가능하다고 봅니다 |
반례가 있습니다 |
| 나머지가 0으로만 가면 된다고 봅니다 |
∥h∥로 나눠야 합니다 |
| C1을 필요조건으로 봅니다 |
충분조건일 뿐입니다 |
| ∇f를 등고선에 나란하다고 봅니다 |
수직입니다 |
| 직교를 정확히 0으로 판정합니다 |
문턱이 필요합니다 |
문제 6. f(x,y)=3x2y의 ∇f를 구하세요.
답. (6xy,3x2)입니다.
문제 7. f(x,y)=excosy의 ∇f(0,0)을 구하세요.
답. fx=excosy, fy=−exsiny이므로 (1,0)입니다.
문제 8. f(x,y)=x2+y2의 (1,2)에서 접평면을 쓰세요.
답. z=5+2(x−1)+4(y−2)입니다.
문제 9. f(x,y)=xy의 (2,3)에서 접평면을 쓰세요.
답. z=6+3(x−2)+2(y−3)입니다.
문제 10. f(x,y)=x2+y2의 ∇f를 구하세요.
답. (x,y)/x2+y2이며 원점에서는 정의되지 않습니다.
문제 11. 문제 10의 ∥∇f∥를 구하고 93강과 연결하세요.
답. 1입니다. 원뿔이라 어디서나 기울기가 같고 등고선 간격이 일정했습니다.
문제 12. f(x,y)=x2+4y2의 (2,1)에서 등고선에 수직인 방향을 구하세요.
답. ∇f=(2x,8y)=(4,8)이므로 (1,2)/5 방향입니다.
문제 13. ∇f=0인 점을 무엇이라 합니까?
답. 임계점입니다.
문제 14. f(x,y)=x2−y2의 임계점을 구하세요.
답. (2x,−2y)=(0,0)에서 원점 하나이며 93강에서 본 안장입니다.
문제 15. f(x,y)=x3y2의 임계점을 모두 구하세요.
답. 3x2y2=0이고 2x3y=0이므로 두 좌표축 전체입니다.
문제 16. df를 f=x2y에 대해 쓰세요.
답. df=2xydx+x2dy입니다.
문제 17. f(1.02,0.97)을 f=x2y의 (1,1) 접평면으로 근사하세요.
답. ∇f(1,1)=(2,1)이므로 1+2(0.02)+1(−0.03)=1.01입니다. 실제는 1.0088입니다.
문제 18. n변수 함수의 접초평면 식을 쓰세요.
답. z=f(a)+∇f(a)⋅(x−a)입니다.
심화 1. 전미분가능하면 연속임을 증명하세요.
94강에서 편미분 존재가 연속을 주지 못했습니다. 전미분가능성은 줍니다. 이것이 정의를 바꾼 값어치입니다.
증명. f가 a에서 전미분가능하다 하고 g=∇f(a)라 둡니다. 정의에서 나머지를
R(h)=f(a+h)−f(a)−g⋅h
로 두면 R(h)/∥h∥→0입니다. 따라서
f(a+h)−f(a)=g⋅h+R(h)
이며, 오른쪽 두 항의 극한을 각각 봅니다. 코시-슈바르츠에 의해
∣g⋅h∣≤∥g∥∥h∥ ⟶ 0
이고, 나머지는
∣R(h)∣=∥h∥∣R(h)∣⋅∥h∥ ⟶ 0⋅0=0
입니다. 그러므로 f(a+h)→f(a)이고 f는 a에서 연속입니다. ■
63강의 코시-슈바르츠를 썼습니다. 유한차원에서 선형사상이 항상 유계라는 사실을 쓴 것이며, 71강 심화 4에서 무한차원에서는 그렇지 않다고 한 것과 대비됩니다.
증명을 되짚으면 왜 편미분만으로는 안 됐는지가 보입니다. 편미분은 h가 축 위에 있을 때만 나머지를 통제합니다. 축을 벗어난 h에 대해서는 아무 말도 하지 않으니 R(h)가 얼마든지 클 수 있습니다. 전미분가능성은 모든 h에 대해 한꺼번에 나머지를 통제합니다.
심화 2. C1이면 전미분가능함을 증명하고, 역이 성립하지 않음을 보이세요.
증명. fx와 fy가 a=(a,b)의 근방에서 존재하고 a에서 연속이라 합니다. h=(h,k)에 대해 변화를 두 단계로 나눕니다.
f(a+h,b+k)−f(a,b)=x만 변함[f(a+h,b+k)−f(a,b+k)]+y만 변함[f(a,b+k)−f(a,b)]
각 대괄호는 한 변수 함수의 증분이므로 39강의 평균값 정리를 쓸 수 있습니다. a와 a+h 사이의 ξ와 b와 b+k 사이의 η가 있어
=hfx(ξ,b+k)+kfy(a,η)
이제 나머지를 계산합니다.
R(h)=h[fx(ξ,b+k)−fx(a,b)]+k[fy(a,η)−fy(a,b)]
∣h∣≤∥h∥이고 ∣k∣≤∥h∥이므로
∥h∥∣R(h)∣≤∣fx(ξ,b+k)−fx(a,b)∣+∣fy(a,η)−fy(a,b)∣
h→0이면 (ξ,b+k)→(a,b)이고 (a,η)→(a,b)이므로, 편미분의 연속성에 의해 오른쪽이 0으로 갑니다. ■
연속성을 마지막 한 줄에서만 씁니다. 94강 심화 1의 클레로 정리 증명과 구조가 같습니다. 평균값 정리로 중간점을 만들고, 연속성으로 그 중간점의 값을 원래 점의 값으로 되돌립니다.
역은 성립하지 않습니다. 다음 함수를 봅니다.
s(x,y)=⎩⎪⎨⎪⎧r2sinr1, r=x2+y20r=0r=0
원점에서 ∇s(0,0)=0이고 ∣s(h)∣≤∥h∥2이므로
∥h∥∣s(h)−0−0⋅h∣≤∥h∥ ⟶ 0
이라 전미분가능합니다. 검산에서 이 비율이 줄어드는 것이 확인됩니다.
| t |
나머지/∥h∥ |
| 10^ |
5.440\times10^ |
| 10^ |
5.064\times10^ |
| 10^ |
8.269\times10^ |
| 10^ |
3.056\times10^ |
| 10^ |
3.575\times10^ |
단조롭게 줄지 않는 것은 sin(1/r)이 진동하기 때문이며, 상한 ∥h∥ 안에서 움직입니다.
그런데 r=0에서 x축 위의 편미분을 계산하면
sx(x,0)=2xsinx1−cosx1
이고 x→0에서 cos(1/x)가 진동해 극한이 없습니다. 검산에서
| x |
s_ |
| 1.592\times10^ |
−1.000000 |
| 1.516\times10^ |
+1.000000 |
| 1.592\times10^ |
−1.000000 |
| 1.591\times10^ |
+1.000000 |
아무리 원점에 가까이 가도 −1과 +1을 오갑니다. sx(0,0)=0이므로 sx는 원점에서 불연속입니다.
전미분가능 ⇒ C1
정리하면 포함관계가 진짜 포함입니다.
C1 ⊊ 전미분가능 ⊊ 편미분 존재
심화 3. 선형근사의 오차를 정량적으로 평가하세요.
문제 2에서 (3.5,4.5)의 오차가 0.5였습니다. 미리 예측할 수 있는지가 실무의 질문입니다.
f=x2+y2은 이차식이라 나머지가 정확히 계산됩니다.
R(h)=h12+h22=∥h∥2
일반적으로는 100강의 테일러 정리가 답을 줍니다. 미리 적으면
R(h)=21h⊤Hf(c)h
이고 c는 a와 a+h를 잇는 선분 위의 어떤 점입니다. 여기에 90강의 노름 부등식을 쓰면
∣R(h)∣≤21∥Hf(c)∥2∥h∥2
오차가 거리의 제곱에 비례하고 계수가 곡률의 크기입니다. 확인해 봅니다. f=x2+y2의 헤세는 2I이고 ∥2I∥2=2이므로 상한은 ∥h∥2이며, 실제 나머지와 정확히 같습니다. 이차함수라 등호가 성립합니다.
실용적인 결론을 표로 정리합니다.
| 상황 |
선형근사 |
| ∥H∥가 작습니다 |
넓은 범위에서 잘 맞습니다 |
| ∥H∥가 큽니다 |
좁은 범위에서만 맞습니다 |
| H=O |
정확합니다, 함수가 일차식입니다 |
최적화에서 이것이 학습률의 정체입니다. 109강의 경사하강법은 현재 점에서 선형근사를 믿고 한 발 내딛는데, 그 발을 얼마나 크게 디딜지가 학습률입니다. 선형근사가 믿을 만한 범위를 넘어서면 손실이 오히려 늘어납니다.
η ≲ ∥H∥21
110강에서 이 조건을 정확히 유도하며, ∥H∥2=λmax이므로 최대 고유값이 학습률의 상한을 정합니다.
심화 4. 기울기가 등고선에 수직이라는 사실이 어디에 쓰이는지 정리하세요.
문제 4의 결론이 이 과목 뒷부분을 관통합니다.
첫째, 경사하강법의 방향입니다. 109강에서 −∇f 방향으로 움직이는데, 이 방향은 등고선을 직각으로 가로지릅니다. 등고선을 따라 움직이면 값이 변하지 않으니 시간 낭비이고, 직각으로 가로지르는 것이 순간적으로는 가장 빠릅니다.
다만 "순간적으로 가장 빠름"이 "전체적으로 가장 빠름"은 아닙니다. 93강 심화 5에서 길쭉한 타원 등고선을 봤습니다. 그런 지형에서 등고선에 수직인 방향은 골짜기 바닥을 향하지 않고 반대편 벽을 향합니다.
| 지형 |
등고선 수직 방향 |
결과 |
| 원형 등고선 |
최소점을 곧장 가리킵니다 |
한 번에 도달합니다 |
| 길쭉한 타원 |
벽을 가리킵니다 |
지그재그로 갑니다 |
이 어긋남의 크기가 조건수이고, 112강의 뉴턴법은 H−1∇f 방향으로 가서 이를 고칩니다.
둘째, 제약 최적화입니다. 113강의 라그랑주 승수법은 문제 4의 직접적인 따름정리입니다. g(x)=0 위에서 f를 최적화한다고 합니다. 최적점 x∗에서 제약곡선을 따라 움직여도 f가 늘지 않아야 하므로
∇f(x∗)⋅t=0(제약곡선의 접선 t에 대해)
한편 문제 4에 의해 ∇g(x∗)⋅t=0입니다. 평면에서 같은 벡터에 수직인 방향은 하나뿐이므로
∇f(x∗)∥∇g(x∗)⟹∇f=λ∇g
라그랑주 승수법 전체가 두 줄로 나옵니다.
셋째, 등위면의 법선벡터입니다. 3변수에서는 ∇F가 등위면 F=c의 법선벡터입니다. 곡면 F(x,y,z)=0 위의 점 p에서 접평면은
∇F(p)⋅(x−p)=0
입니다. 64강에서 평면의 방정식을 법선벡터로 썼던 형태 그대로입니다. 397강의 부호거리함수와 402강의 미분 가능 래스터화에서 이 법선을 씁니다.
심화 5. 미분이 선형변환이라는 관점을 설명하세요.
이 강의의 정의를 다시 봅니다.
f(a+h)=f(a)+L(h)+o(∥h∥),L(h)=∇f(a)⋅h
L은 선형사상입니다. 76강의 조건 두 개를 확인하면
L(h1+h2)=L(h1)+L(h2),L(ch)=cL(h)
이 내적의 성질에서 바로 나옵니다.
미분은 수가 아니라 선형사상입니다
한 변수에서 f′(a)가 수처럼 보였던 것은 R에서 R로 가는 선형사상이 모두 h↦ch 꼴이라 1×1 행렬을 수와 동일시했기 때문입니다. 77강에서 선형사상과 표현행렬을 구별했는데, 그 구별이 여기서 값어치를 냅니다.
| 함수 |
미분의 정체 |
표현행렬 |
| \mathbb{R}\to\mathbb |
h↦f′(a)h |
1×1 |
| \mathbb{R}^{n}\to\mathbb |
\mathbf{h}\mapsto\nabla f\cdot\mathbf |
1×n |
| \mathbb{R}^{n}\to\mathbb{R}^ |
\mathbf{h}\mapsto J\mathbf |
m×n |
세 줄이 같은 정의이며 차원만 다릅니다. 98강에서 셋째 줄을 세웁니다.
이 관점이 주는 이득이 둘 있습니다.
첫째, 연쇄법칙이 행렬 곱이 됩니다. 합성함수의 선형근사는 선형근사의 합성이므로
D(g∘f)(a)=Dg(f(a))∘Df(a)
이고, 표현행렬로 쓰면 곱입니다. 66강에서 "행렬 곱은 변환의 합성"이라 한 것이 97강의 연쇄법칙 전체를 설명합니다.
둘째, 역함수 정리가 역행렬 조건이 됩니다. Df(a)가 가역이면 f가 국소적으로 가역입니다. 69강의 가역성 판정이 그대로 쓰이며, 105강의 변수변환에서 야코비 행렬식이 0이 아니어야 한다는 조건이 이것입니다.
미분을 선형사상으로 보면 S4가 통째로 도구가 됩니다
심화 6. 이 강의가 96강부터 98강으로 어떻게 이어지는지 정리하세요.
∇f를 정의했으니 이제 쓸 차례입니다.
96강은 임의 방향의 변화율을 잽니다. 편미분은 축 방향만 봤는데, 단위벡터 u 방향으로 일반화하면
Duf(a)=∇f(a)⋅u
가 됩니다. 이 식이 전미분가능성에서 바로 나옵니다. h=tu로 두면
tf(a+tu)−f(a)=∇f⋅u+to(t) ⟶ ∇f⋅u
여기에 63강의 코시-슈바르츠를 쓰면
∣Duf∣≤∥∇f∥∥u∥=∥∇f∥
이고 등호는 u가 ∇f와 나란할 때입니다. 문제 3에서 예고한 "최급증가 방향"이 이렇게 증명됩니다. 문제 4의 결론도 다시 나옵니다. u가 등고선 방향이면 Duf=0입니다.
97강은 합성을 다룹니다. 변수들이 다른 변수에 의존할 때 미분이 어떻게 전파되는지 봅니다. 이 강의의 선형사상 관점에서 보면 합성의 미분은 미분의 합성이고, 표현행렬 수준에서 행렬 곱입니다. 역전파가 이 법칙의 반복 적용이며 233강에서 그대로 쓰입니다.
98강은 출력이 여럿인 경우입니다. ∇f가 행벡터 하나였다면, 출력이 m개면 그런 행이 m개 쌓여 m×n 야코비 행렬이 됩니다. 이 행렬의 행렬식이 105강에서 부피 변화율로 나타납니다.
정리하면 01단원의 뒷부분은 이 강의의 정의를 세 방향으로 펼치는 일입니다.
| 방향 |
강의 |
결과 |
| 방향을 고릅니다 |
96 |
D_{\mathbf{u}}f=\nabla f\cdot\mathbf |
| 합성합니다 |
97 |
연쇄법칙 |
| 출력을 늘립니다 |
98 |
야코비 행렬 |
그다음 02단원에서 한 차수를 더 올려 이차 근사로 갑니다. 선형근사가 임계점에서 아무 말도 하지 않기 때문이며, 그 빈자리를 99강의 헤세 행렬이 메웁니다.
import numpy as np
# --- 문제 1: 선형근사의 오차 -------------------------------------------
f = lambda x, y: x**2 + y**2
a, b = 3.0, 4.0
g = np.array([2*a, 2*b])
print(" f(3,4) = %.0f, grad = %s, 크기 %.0f" % (f(a,b), g, np.linalg.norm(g)))
print(" t 실제 증가 선형근사 나머지 나머지/||h||")
for k in range(1, 6):
t = 10.0**(-k)
h = np.array([t, t/2])
real = f(a+h[0], b+h[1]) - f(a, b)
lin = g @ h
rem = real - lin
print(" 1e-%d %12.8f %12.8f %10.3e %10.3e" % (k, real, lin, rem, rem/np.linalg.norm(h)))
# f(3,4) = 25, grad = [6. 8.], 크기 10
# t 실제 증가 선형근사 나머지 나머지/||h||
# 1e-1 1.01250000 1.00000000 1.250e-02 1.118e-01
# 1e-2 0.10012500 0.10000000 1.250e-04 1.118e-02
# 1e-3 0.01000125 0.01000000 1.250e-06 1.118e-03
# 1e-4 0.00100001 0.00100000 1.250e-08 1.118e-04
# 1e-5 0.00010000 0.00010000 1.250e-10 1.118e-05
# --- 문제 2: 접평면 -----------------------------------------------------
print(" 접평면 z = 25 + 6(x-3) + 8(y-4)")
for p in [(3.1, 4.05), (3.5, 4.5)]:
approx = 25 + 6*(p[0]-3) + 8*(p[1]-4)
print(" %s 근사 %.4f 실제 %.4f 오차 %.4f" % (p, approx, f(*p), f(*p)-approx))
# 접평면 z = 25 + 6(x-3) + 8(y-4)
# (3.1, 4.05) 근사 26.0000 실제 26.0125 오차 0.0125
# (3.5, 4.5) 근사 32.0000 실제 32.5000 오차 0.5000
# 오차가 정확히 h1^2 + h2^2 입니다. 이차함수라 나머지가 딱 떨어집니다.
# --- 문제 3: 기울기 벡터의 크기와 방향 ----------------------------------
u = g/np.linalg.norm(g)
print(" 단위 기울기 방향 %s" % u)
print(" 등고선 f=25 는 반지름 %.0f 인 원" % np.sqrt(25))
# 단위 기울기 방향 [0.6 0.8]
# 등고선 f=25 는 반지름 5 인 원
# --- 문제 4: 기울기는 등고선에 수직 -------------------------------------
t_vec = np.array([-b, a])/np.linalg.norm([a, b]) # 원의 접선 방향
print(" (3,4) 에서 등고선 접선 방향 %s" % t_vec)
print(" grad . 접선 = %+.3e (참값 0)" % (g @ t_vec))
print(" grad . 단위기울기 = %+.1f (= ||grad||)" % (g @ u))
# (3,4) 에서 등고선 접선 방향 [-0.8 0.6]
# grad . 접선 = -8.882e-16 (참값 0)
# grad . 단위기울기 = +10.0 (= ||grad||)
# 참값 0 인데 부동소수점이 -8.9e-16 을 냅니다. 직교 판정에는 문턱이 필요합니다.
# --- 문제 5: 편미분이 있어도 전미분가능이 아니다 ------------------------
def q(x, y):
if x == 0.0 and y == 0.0: return 0.0
return x*y/(x*x + y*y)
print(" grad q(0,0) = (0, 0) 인데")
print(" t 나머지/||h|| (h = (t,t))")
for k in range(1, 6):
t = 10.0**(-k)
rem = q(t, t) - q(0.0, 0.0) - 0.0
print(" 1e-%d %18.6e" % (k, rem/np.hypot(t, t)))
# grad q(0,0) = (0, 0) 인데
# t 나머지/||h|| (h = (t,t))
# 1e-1 3.535534e+00
# 1e-2 3.535534e+01
# 1e-3 3.535534e+02
# 1e-4 3.535534e+03
# 1e-5 3.535534e+04
# 0 으로 가기는커녕 발산합니다. 전미분가능이 아닙니다.
# --- 심화 2: 전미분가능한데 편미분이 불연속 -----------------------------
def s(x, y):
r = np.hypot(x, y)
return 0.0 if r == 0.0 else r*r*np.sin(1.0/r)
print(" s = r^2 sin(1/r) 의 원점 나머지/||h||")
for k in range(1, 6):
t = 10.0**(-k)
print(" 1e-%d %18.6e" % (k, abs(s(t, 0.0))/t))
sx = lambda t: 2*t*np.sin(1/t) - np.cos(1/t) # x축 위에서의 s_x
print(" 그런데 x축을 따라 s_x 는")
for n in [10, 100, 1000]:
t1 = 1.0/(2*np.pi*n); t2 = 1.0/(np.pi*(2*n+1))
print(" x=%.3e -> %+.6f, x=%.3e -> %+.6f" % (t1, sx(t1), t2, sx(t2)))
# s = r^2 sin(1/r) 의 원점 나머지/||h||
# 1e-1 5.440211e-02
# 1e-2 5.063656e-03
# 1e-3 8.268795e-04
# 1e-4 3.056144e-05
# 1e-5 3.574880e-07
# 그런데 x축을 따라 s_x 는
# x=1.592e-02 -> -1.000000, x=1.516e-02 -> +1.000000
# x=1.592e-03 -> -1.000000, x=1.584e-03 -> +1.000000
# x=1.592e-04 -> -1.000000, x=1.591e-04 -> +1.000000
# 전미분가능한데 편미분이 진동해 불연속입니다. C1 은 충분조건일 뿐입니다.
세 함수가 계층을 보입니다.
| 함수 |
편미분 |
전미분 |
C^ |
| x^{2}+y^ |
존재 |
가능 |
그렇습니다 |
| r2sin(1/r) |
존재 |
가능 |
아닙니다 |
| xy/(x2+y2) |
존재 |
불가능 |
아닙니다 |
가운데 줄이 포함관계가 진짜임을 증명합니다.
96강에서 이 기울기 벡터를 임의 방향에 내적해 방향도함수를 얻습니다.
- 전미분가능성의 정의를 쓰세요.
- 나머지를 ∥h∥로 나누는 이유를 쓰세요.
- 접평면의 식을 쓰세요.
- 전미분 df를 쓰세요.
- ∇f의 세 가지 뜻을 쓰세요.
- 기울기와 등고선의 각을 쓰고 이유를 쓰세요.
- 전미분가능하면 연속입니까?
- 편미분이 존재하면 전미분가능합니까?
- C1은 전미분가능의 어떤 조건입니까?
- 미분의 정체를 한 문장으로 쓰세요.
정답.
- 나머지를 ∥h∥로 나눈 극한이 0인 것입니다.
- 오차가 일차보다 빨리 줄어야 선형근사라 부를 수 있기 때문입니다.
- z=f(a,b)+fx(x−a)+fy(y−b)입니다.
- df=fxdx+fydy입니다.
- 선형근사의 계수, 등고선의 법선, 최급증가 방향입니다.
- 수직입니다. 등고선 위에서 값이 변하지 않으므로 선형근사도 0이어야 하기 때문입니다.
- 연속입니다.
- 아닙니다. xy/(x2+y2)이 반례입니다.
- 충분조건이며 필요조건은 아닙니다.
- 선형사상이며 차원에 따라 수, 벡터, 행렬로 적힙니다.
| 기호 |
읽는 법 |
뜻 |
| ∇f |
나블라 에프, 그래디언트 |
편미분을 모은 벡터입니다 |
| o(∥h∥) |
스몰 오 |
∥h∥로 나눠도 0입니다 |
| df |
전미분 |
fxdx+fydy입니다 |
| Df(a) |
미분 |
선형사상 자체입니다 |
| C^ |
씨 원 |
편미분이 존재하고 연속입니다 |
| 접평면 |
tangent plane |
일차 근사의 그래프입니다 |
| 임계점 |
critical point |
∇f=0인 점입니다 |
| Duf |
방향도함수 |
96강에서 정의합니다 |
| J |
야코비 행렬 |
98강에서 정의합니다 |
다음 96강에서는 방향도함수를 다룹니다. 편미분이 축 방향만 봤다면, 이제 임의의 단위벡터 u 방향으로 재고 Duf=∇f⋅u를 증명합니다. 63강의 코시-슈바르츠가 기울기 방향이 가장 가파르다는 결론을 주며, 그 결론이 109강 경사하강법의 근거가 됩니다.