Chapter 07
연쇄 법칙: 겹친 함수를 풀다, 역전파의 핵심
함수를 겹쳐 쓴 걸 미분할 때는 밖의 미분 × 안의 미분으로 곱하면 됩니다. 역전파의 핵심이에요.
챕터별 수학 도식화
챕터를 선택하면 아래 도식이 해당 챕터 내용으로 바뀌어요. 기초 수학 흐름을 한눈에 보세요.
겹친 함수는 → 안쪽 → 밖쪽 → 처럼 연쇄로 이어져 있어요. 밖의 미분 × 안의 미분을 곱하면 전체 미분이에요.
예시로 보는 계산 순서 (한 번에 하나씩 강조)
1.예: 위 그래프처럼 , 일 때 를 로 미분하자.
2.① 안의 미분 (왼쪽 그래프): 을 로 미분 →
3.② 밖의 미분 (오른쪽 그래프): 를 로 미분 →
4.③ 곱하기: → 답
점이 연쇄를 따라 움직이듯, 변화율이 곱해지면서 전달돼요. 역전파도 이 곱하기가 반복되는 구조예요.
연쇄 법칙이란
연쇄 법칙(Chain Rule)은 함수 안에 또 다른 함수가 들어있는 합성함수를 미분하는 규칙입니다. 마치 양파 껍질을 까듯, '바깥쪽 함수를 미분하고() 안쪽 함수를 미분()해서 곱한다'는 원리입니다. 수식으로는 로 표현하며, 서로 맞물린 톱니바퀴의 회전 비율을 구하는 것과 같습니다.
직관적 예시: '나'()가 '친구'()를 밀고, '친구'가 '수레'()를 밉니다. 내가 친구를 2배 힘으로 밀고, 친구가 수레를 3배 힘으로 민다면, 결과적으로 수레는 내 힘의 배로 움직입니다. 이처럼 단계별 변화율(기울기)을 곱셈으로 연결하는 것이 연쇄 법칙입니다.
핵심 공식: . 기억하세요, '겉미분 곱하기 속미분'입니다.
- 단계1
- 할 일안/밖 구분
- 예: 안쪽 , 바깥쪽
- 단계2
- 할 일겉미분
- 예: 을 미분하면 (이때 는 그대로 둠)
- 단계3
- 할 일속미분
- 예: 안쪽 을 미분하면
- 단계4
- 할 일곱하기
- 예:
| 단계 | 할 일 | 예: |
|---|---|---|
| 1 | 안/밖 구분 | 안쪽 , 바깥쪽 |
| 2 | 겉미분 | 을 미분하면 (이때 는 그대로 둠) |
| 3 | 속미분 | 안쪽 을 미분하면 |
| 4 | 곱하기 |
대표 수식: . 가 에 의해 변하고, 가 에 의해 변할 때, 가 변할 때 의 총 변화량은 두 변화율의 곱입니다.
왜 더하지 않고 곱할까요? 비율(Rate)이기 때문입니다. 시속 100km로 달리는 차()가 있고, 환율이 1달러당 1300원()이라면, 이 둘을 더하는 건 의미가 없죠. 변화의 증폭이나 감쇄를 계산하려면 반드시 곱해야 합니다.
숫자로 확인하기: 에서 일 때 변화율을 구해봅시다. 공식대로면 입니다. 실제로 가 1에서 1.01로 만큼 아주 조금 변하면, 는 9에서 로 약 만큼 변합니다. 의 12배인 가 변했으니, 변화율이 12가 맞습니다.
딥러닝(Deep Learning) 모델은 수십, 수백 개의 함수가 겹겹이 쌓인 거대한 합성함수()입니다. 우리가 원하는 건 '맨 처음 입력이나 중간의 가중치()를 바꿀 때, 맨 마지막 오차()가 어떻게 변하는가'입니다. 이를 구하려면 연쇄 법칙을 필수로 써야 합니다.
역전파(Backpropagation) 알고리즘의 정체가 바로 연쇄 법칙입니다. 출력층에서 발생한 오차를 입력층 방향으로 거꾸로 전파할 때, 각 층의 미분값(기울기)을 계속해서 곱해 나갑니다. 이 과정이 없다면 깊은 신경망의 학습 자체가 불가능합니다.
결국 AI가 학습한다는 것은 '미분값을 연쇄 법칙으로 곱해서 전달하는 과정'입니다. 층이 깊을수록 이 곱이 반복되는데, 1보다 작은 수(예: 0.5)를 여러 번 곱하면 0에 가까워집니다. 이렇게 기울기가 사라지는 현상을 그라디언트 소실(Vanishing Gradient)라고 하며, 깊은 신경망 학습이 어려웠던 이유 중 하나였어요. ReLU나 스킵 연결 같은 기술이 이 문제를 완화합니다.
복잡한 인과관계를 분석할 때 쓰입니다. A가 B에 영향을 주고, B가 C에 영향을 주는 상황에서 A가 C에 미치는 영향을 계산하려면 각 단계의 영향력을 곱해야 합니다.
- 상황비용 → 생산량 → 시간
- 구하는 것시간이 비용에 미치는 영향
- 연쇄 법칙 (총 변화율)(비용/생산량) (생산량/시간)
- 상황부피 → 반지름 → 시간
- 구하는 것풍선에 바람 넣을 때 부피 변화 속도
- 연쇄 법칙 (총 변화율)(부피/반지름) (반지름/시간)
- 상황오차 → 출력 → 가중치
- 구하는 것AI 학습: 가중치 업데이트 양
- 연쇄 법칙 (총 변화율)(오차/출력) (출력/가중치)
| 상황 | 구하는 것 | 연쇄 법칙 (총 변화율) |
|---|---|---|
| 비용 → 생산량 → 시간 | 시간이 비용에 미치는 영향 | (비용/생산량) (생산량/시간) |
| 부피 → 반지름 → 시간 | 풍선에 바람 넣을 때 부피 변화 속도 | (부피/반지름) (반지름/시간) |
| 오차 → 출력 → 가중치 | AI 학습: 가중치 업데이트 양 | (오차/출력) (출력/가중치) |
자동 미분(Automatic Differentiation): PyTorch나 TensorFlow 같은 AI 프레임워크는 우리가 `loss.backward()`라고 한 줄만 치면 알아서 미분을 해줍니다. 이때 컴퓨터 내부에서는 연산 그래프(Computation Graph)를 그리고, 각 노드마다 연쇄 법칙을 적용하여 기울기를 계산하고 곱해주는 작업이 순식간에 일어납니다.
겹친 함수를 미분할 때는 안쪽을 한 덩어리로 보고 밖을 미분한 것과 안을 미분한 것을 곱하면 돼요. 안쪽이 또 겹쳐 있으면 그 부분에도 같은 방식으로 반복해요. 팁: 먼저 ‘안쪽 = 무엇’으로 두고, 밖 함수만 미분한 뒤, 안쪽을 로 미분한 것을 곱하면 돼요.
가장 쉬운 예: . 안쪽 → 미분하면 . 밖쪽 → 미분하면 . 곱하면 . 일 때 기울기는 이에요.
쉬운 것부터 다양한 예시를 표로 정리했어요. 각 줄에서 ‘안의 미분’과 ‘밖의 미분’을 곱하면 답이에요.
- 문제쉬운 예
- 풀이안 → 안 미분 , 밖 → 밖 미분 ; 곱하면
- 문제쉬운 예
- 풀이안 → 안 미분 , 밖 → 밖 미분 ; 곱하면
- 문제예
- 풀이안 미분 , 밖 미분 → 곱하면
- 문제예
- 풀이안 미분 , 밖 미분 → 곱하면
- 문제예
- 풀이안 → 안 미분 , 밖 → 밖 미분 ; 곱하면
- 문제예
- 풀이안 미분 , 밖 미분 → 곱하면
- 문제예
- 풀이안 미분 , 밖 미분 → 곱하면
| 문제 | 풀이 |
|---|---|
| 쉬운 예 | 안 → 안 미분 , 밖 → 밖 미분 ; 곱하면 |
| 쉬운 예 | 안 → 안 미분 , 밖 → 밖 미분 ; 곱하면 |
| 예 | 안 미분 , 밖 미분 → 곱하면 |
| 예 | 안 미분 , 밖 미분 → 곱하면 |
| 예 | 안 → 안 미분 , 밖 → 밖 미분 ; 곱하면 |
| 예 | 안 미분 , 밖 미분 → 곱하면 |
| 예 | 안 미분 , 밖 미분 → 곱하면 |
문제 유형별 풀이
- 유형거듭제곱
- 식 형태
- 구하는 법밖 미분 × 안 미분 .
- 유형지수
- 식 형태
- 구하는 법밖 미분 × 안 미분 → .
- 유형삼각
- 식 형태,
- 구하는 법밖 미분(cos 또는 −sin) × 안 미분.
- 유형루트
- 식 형태
- 구하는 법밖 미분 × 안 미분.
- 유형로그
- 식 형태
- 구하는 법밖 미분 × 안 미분 → .
- 유형이차식 안
- 식 형태 등
- 구하는 법안 미분은 , 밖 미분 후 곱.
| 유형 | 식 형태 | 구하는 법 |
|---|---|---|
| 거듭제곱 | 밖 미분 × 안 미분 . | |
| 지수 | 밖 미분 × 안 미분 → . | |
| 삼각 | , | 밖 미분(cos 또는 −sin) × 안 미분. |
| 루트 | 밖 미분 × 안 미분. | |
| 로그 | 밖 미분 × 안 미분 → . | |
| 이차식 안 | 등 | 안 미분은 , 밖 미분 후 곱. |
예시 (거듭제곱)
일 때 에서의 도함수 값을 구하세요.
풀이
. 대입 → . → 정답 36
예시 (지수)
일 때 에서의 도함수 값을 구하세요.
풀이
. 대입 → . → 정답 3
예시 (삼각)
일 때 에서의 도함수 값을 구하세요.
풀이
. 대입 → . → 정답 2
예시 (로그)
일 때 에서의 도함수 값을 구하세요.
풀이
. 에서 이므로 . → 정답 0