개념 지도
네 덩어리입니다 — 데이터를 고르고, 다듬고, 알고리즘을 고르고, 잰다.
규칙을 다 적을 수 없으니 데이터에서 찾게 했고(1차시), 그러려면 무엇을 맞히고 무엇으로 맞힐지부터 정해야 하며(2차시), 그 데이터가 세상을 닮았는지 봐야 합니다(3차시). 데이터를 다듬고(4~6차시) 알고리즘을 고르면(7~10차시) 이제 잘했는지 재야 하는데, 훈련 점수는 답이 아니고(11차시) 정확도 하나로도 모자랍니다(12차시). 직선으로 안 되는 문제는 층을 하나 더 쌓아 넘고(13~14차시), 마침내 그것을 진짜 데이터에 붙여 네 칸으로 잽니다(15차시).
열일곱 차시 한 줄 정리
'남는 숫자'는 여러분이 직접 돌려서 얻은 값입니다.
| 차시 | 한 줄로 | 남는 숫자 |
|---|---|---|
| 1 | 규칙으로는 끝까지 못 간다. 낱말을 늘릴수록 정상 메일이 함께 잡힌다. | 규칙 4개 72.7% · 조각 2,497개 전수 천장 43/44 |
| 2 | 무엇을 맞힐지와 무엇으로 맞힐지를 가르는 것이 첫 단추다. | 「잔반 kg」을 넣으면 100% — 누수 · 합격선 1.98kg |
| 3 | 전체 정확도는 다수의 성적이다. 소수는 그 뒤에 숨는다. | 전체 85.0% = 밝은 92.2% · 어두운 20.0% |
| 4 | 이상치 하나가 평균은 끌고 중앙값은 못 끈다. | 1750cm 하나 · IQR과 z가 다른 답을 내는 값 |
| 5 | 단위를 안 맞추면 큰 숫자를 가진 특성이 거리를 독차지한다. | 정규화 거리 0.5269 / 0.9686 / 1.0422 — 순위가 뒤집힌다 |
| 6 | 쓸모없는 특성은 무시되지 않는다. 훈련만 올리고 테스트를 내린다. | 20일치 기준선 0.70kg → 0.32kg |
| 7 | 정답표가 있는가 하나로 지도·비지도·강화가 갈린다. | 늘 쓰기만 하면 1번 기계에 갇힌다 |
| 8 | 가까운 이웃에게 물어본다. k를 키우면 경계가 매끈해진다. | 씨앗 55알 · k=1 훈련 100% / 시험 60.0% |
| 9 | 오차가 줄어드는 쪽으로 조금씩 민다. 크게 밀면 튄다. | 손실 5305.40 → 7.33 · y = 8.97x + 42.11 |
| 10 | 이름표 없이도 묶인다. 다만 어디서 시작하느냐로 답이 갈린다. | K=3 · 6회에 멈춤(움직인 것 5번) |
| 11 | 훈련 점수는 답이 아니다. k=1이면 반드시 100%다. | k=1 훈련 100% / 시험 60.0% · 교차검증은 k=25를 고른다 |
| 12 | 정확도 하나로는 모자란다. 「모두 정상」이 98.0%를 받는다. | 재현율 0.0% · 정확도 최고 기준점 78, F1 최고는 71 |
| 13 | 직선 하나로 나눌 수 있는 문제와 없는 문제가 있다. | XOR — 1에폭 주기의 완전한 제자리걸음 |
| 14 | 층을 하나 얹으면 넘는다. 다만 씨앗에 따라 실패한다. | 손실 0.262336 → 0.000383 · 은닉 2개는 30번 중 6번 실패 |
| 15 | 코드는 그대로, 데이터만 바꾼다. 그리고 네 칸으로 잰다. | 테스트 정확도 80.6% · 기준선 65.3% · 천장 94.4% |
| 16 | 작은 창을 밀며 무엇을 볼지 정한다. 다만 여기엔 학습이 없다. | 144 → 100 → 25칸 · 무작위 필터는 손으로 정한 것의 1/3.7 |
| 17 | 다음 낱말을 맞히다 보면 문장이 나온다. 다만 두 낱말만 본다. | 바이그램 새 문장 11 · 트라이그램은 6 (외운 것 9 → 14) |
이 단원이 남긴 숫자 여섯
외우라는 뜻이 아닙니다. 왜 그 값인지 말할 수 있으면 이 단원을 이해한 것입니다.
과장하지 않기 위해 — 이 단원이 하지 않은 것 셋
할 수 있게 된 것만큼, 아직 못 하는 것을 아는 것도 배움입니다.
16차시의 필터는 사람이 정했다
세로선 검출기의 아홉 숫자를 우리가 손으로 적어 넣었습니다. 진짜 합성곱 신경망은 저 아홉 숫자마저 데이터에서 배웁니다. 우리가 무작위 필터 12장을 만들어 봤을 때 손으로 정한 넉 장의 3.7분의 1밖에 못 했던 것을 기억하세요 — 좋은 필터를 찾는 일 자체가 학습입니다.
17차시의 바이그램은 딥러닝이 아니다
앞 낱말 하나만 보고 다음을 고르는 표입니다. 신경망이 아니에요. 그래서 「바람이 불면 창문을 열면 바람이 불면 창문을 닫는다」 같은 고리에 빠집니다. 트라이그램으로 늘리면 어긋남은 사라지지만 새 문장이 11개에서 6개로 줄고 외운 문장이 9개에서 14개로 늘었습니다 — 문맥을 넓히면 외우기 쉬워진다는 맞바꿈이 여기서도 나옵니다.
15차시에서 만든 신경망은 작다
층 둘, 은닉 노드 서넛입니다. "이제 딥러닝을 만들 줄 안다"가 아니라 "원리는 같고 규모가 다르다"가 맞는 말입니다. 다만 원리가 같다는 것이 작은 일은 아닙니다 — 예측하고, 틀린 만큼 되짚어 가중치를 밀고, 그것을 수백 번 되풀이하는 고리는 매개변수가 수천억 개인 모델에서도 똑같이 돕니다.
서·논술형 자기 점검
먼저 스스로 써 본 뒤에 예시 답안을 여세요.
1. 훈련 정확도가 100%인 모델을 보고했더니 선생님이 "그래서 쓸 수 있는 모델인가요?"라고 되물었습니다. 왜 그렇게 물었는지 설명하고, 무엇을 함께 보고해야 하는지 이 단원의 숫자를 들어 쓰시오. 12인기02-04
2. 어떤 얼굴 인식 서비스가 전체 정확도 85%라고 발표했습니다. 이 숫자만으로 안심할 수 없는 까닭을 3차시의 실험을 들어 설명하고, 편향을 줄이려 할 때 치러야 하는 대가를 함께 쓰시오. 12인기02-01
대가도 분명하다. 표집 비율과 가중치를 바꾸는 1,040가지를 전부 시험했지만 "전체 90% 이상 + 격차 10%포인트 이내"를 만족하는 조합은 하나도 없었다. 격차를 0.2%포인트까지 줄인 설정은 전체가 52.8%로 떨어졌다 — 둘 다 못 맞히게 되어 '공평'해진 것이다. 다만 집단마다 따로 배우게 하자 어두운 사진 정확도가 사진을 한 장도 더 안 모으고 20.0%에서 89.0%로 뛰었다. 문제는 데이터의 양이 아니라 두 집단을 같은 자로 잰 것이었다.
3. 15차시에서 여러분은 14차시의 신경망 코드를 한 글자도 고치지 않고 진짜 데이터에 붙였습니다. 그것이 왜 중요한 경험인지 쓰고, 그럼에도 여러분이 만든 것과 실제 딥러닝 사이의 거리를 세 가지로 쓰시오. 12인기02-06 · 02-05
train()이 240일치 급식 기록도 배웠다.
바뀐 것은 데이터의 모양뿐이다. 그래서 새 문제를 만나면
알고리즘을 새로 짜는 것이 아니라 데이터를 그 모양으로 옮기는 일부터 하게 된다 —
2차시에서 배운 '무엇을 맞히고 무엇으로 맞힐까'가 여기로 돌아온다.거리 셋은 이렇다. ① 규모 — 우리 신경망의 매개변수는 열 개 남짓이고 데이터는 240일이다. 오늘날의 모델은 그보다 몇 자리 위다. ② 층 — 우리는 층 하나를 더 얹었을 뿐이다. '딥'러닝은 그 층이 훨씬 깊다. ③ 학습 시간과 계산 — 우리 코드는 몇 초면 끝나지만 큰 모델은 전용 장비로 며칠에서 몇 달을 돈다.
그럼에도 고리는 같다 — 예측하고, 틀린 만큼 되짚고, 가중치를 조금 밀고, 되풀이한다.
성취기준 자가 평가
솔직하게 고르세요. 부족한 곳이 있어야 다음에 무엇을 볼지 정할 수 있습니다.
12인기02-01 문제에 필요한 데이터를 고르고, 그 데이터가 세상을 닮았는지 집단별로 갈라 잴 수 있다.
12인기02-02 빠진 값·튀는 값을 다루고, 단위를 맞추고, 쓸모없는 특성을 골라낼 수 있다.
12인기02-03 지도·비지도·강화를 구별하고, 문제에 맞는 알고리즘을 까닭을 대며 고를 수 있다.
12인기02-04 훈련과 테스트를 가르고, 네 칸(혼동행렬)으로 정밀도·재현율까지 보고할 수 있다.
12인기02-05 퍼셉트론과 다층 신경망의 구조를 설명하고, 왜 층을 더 쌓는지 말할 수 있다.
12인기02-06 신경망에 내 데이터를 넣어 학습시키고, 그 성능을 네 칸으로 평가할 수 있다.
3단원으로 넘기는 물음 셋
이 단원이 답하지 못한 것들입니다.
① 격차를 없앨 수 없다면, 누가 그 대가를 정하는가?
3차시에서 1,040가지를 다 시험해도 "성능도 지키고 격차도 없애는" 길은 없었습니다. 그러면 무엇을 얼마나 포기할지 누가 정합니까? 만드는 사람일까요, 쓰는 사람일까요, 아니면 그 결정에 걸린 사람일까요. 3단원이 이 물음을 정면으로 다룹니다.
② 12차시의 기준점을 옮기는 일은 누구의 몫인가?
같은 모델인데 기준점을 78에 두면 정확도가 최고가 되고, 71에 두면 F1이 최고가 됩니다. 암 검진처럼 놓치는 쪽이 훨씬 위험한 문제에서는 기준점을 낮춰야 하는데, 그러면 건강한 사람 수백 명이 재검사를 받습니다. 이 숫자 하나가 사람들의 하루를 바꿉니다.
③ 우리 신경망은 왜 그렇게 답했는지 말하지 못한다
1단원 12차시의 후향 추론은 밟은 규칙의 사슬이 그대로 설명이었습니다. 그런데 15차시의 신경망은 가중치 숫자만 있을 뿐, "왜 이 날을 많이 남는다고 봤는지" 말해 주지 않습니다. 설명하지 못하는 판단을 사람의 삶에 적용해도 되는가 — 3단원의 중심 물음입니다.