CertNote/ 출퇴근 학습 노트
로드맵
KOEN
CLF-C02 · FoundationalCloud Practitioner - Foundational
DVA-C02 · AssociateDeveloper - Associate
SAA-C03 · AssociateSolutions Architect - Associate
SOA-C02 · AssociateCloudOps Engineer - Associate
SAP-C02 · ProfessionalSolutions Architect - Professional
DOP-C02 · ProfessionalDevOps Engineer - Professional
SCS-C03 · SpecialtySecurity - Specialty
MLA-C01 · AssociateMachine Learning Engineer - Associate
AIF-C01 · FoundationalAI Practitioner - Foundational
DEA-C01 · AssociateData Engineer - Associate
MLS-C01 · SpecialtyMachine Learning - Specialty
  • Week 1
    • 1.ML 수명주기(ML Lifecycle): 비즈니스 문제 정의부터 A/B 테스트까지
    • 2.ML용 데이터 저장소: S3·EFS·FSx for Lustre·데이터 포맷
    • 3.데이터 수집: Kinesis·Glue·배치 vs 스트리밍
    • 4.데이터 레이블링: SageMaker Ground Truth·액티브 러닝(Active Learning)·레이블 품질
    • 5.1주차 종합 복습: ML 개요와 데이터 엔지니어링 1
  • Week 2
  • Week 3
  • Week 4
  • Week 5
  • Week 6
  • Week 7
    • 1.신경망 기초: 퍼셉트론에서 역전파까지
    • 2.CNN(합성곱 신경망)과 컴퓨터 비전
    • 3.RNN과 시퀀스 모델: LSTM에서 Transformer까지
    • 4.학습 기법과 전이학습
    • 5.7주차 종합 복습: 딥러닝 정리
  • Week 8
  • Week 9
  • Week 10
  • Week 11
  • Week 12
합격 후기

© CertNote · 주간랩스

  • 소개
  • 수정 기록
  • 문의
  • 이용약관
  • 개인정보처리방침
← MLS-C01/Week 7/Day 4

기준: MLS-C01 시험 가이드·오류 제보

MLS-C01· AssociateWeek 7 · Day 4읽기 약 13분
핵심 정리
  • 손실은 문제 유형이 정한다. 회귀=MSE/MAE, 분류=교차 엔트로피. 분류에 MSE는 금물이다.
  • 옵티마이저 기본값은 Adam(적응적·빠름), 단순·견고한 대안은 SGD(+Momentum).
  • 학습률이 최우선 튜닝 대상이다. 크면 발산, 작으면 느림 → 스케줄링·워밍업으로 다룬다.
  • 과적합 방지 5종: 드롭아웃 · 가중치 감쇠(L2) · 배치 정규화 · 데이터 증강 · 조기 종료.
  • 전이학습은 데이터 양 × 도메인 유사도로 정한다. 적고 유사=동결, 많거나 상이=낮은 학습률 파인튜닝.

Day 4 - 학습 기법과 전이학습

학습이 성능을 만든다

모델 구조를 정했어도 "어떻게 학습시키는가"가 성능을 좌우한다. 오늘은 딥러닝 학습의 엔진인 손실 함수·옵티마이저·학습률과, 적은 데이터로 큰 성과를 내는 전이학습·파인튜닝, 그리고 시험에 등장하는 프레임워크(TensorFlow/PyTorch)와 SageMaker 통합을 다룬다. MLS-C01은 이 영역에서 "학습이 안 될 때/느릴 때/과적합일 때 무엇을 바꿀까"를 묻는다.

손실 함수(Loss Function)

모델 예측과 정답의 차이를 수치화한다. 문제 유형에 맞춰 선택해야 한다.

문제 유형손실 함수짝이 되는 출력층왜
회귀MSE(평균제곱오차), MAE선형(활성화 없음)MSE는 큰 오차를 크게 벌주고, MAE는 이상치에 강건
이진 분류이진 교차 엔트로피(BCE)Sigmoid 1노드확률 예측의 로그 손실
다중 분류범주형 교차 엔트로피Softmax K노드확률 분포끼리 비교
불균형/탐지Focal Loss 등 변형과제에 따름쉬운 다수 샘플의 기여를 낮춤
  • 분류에 MSE를 쓰면 학습이 느리고 불안정하므로 교차 엔트로피가 표준이다.
  • 손실은 학습의 "나침반"이다. 손실 곡선이 떨어지지 않으면 학습률·구조·데이터를 점검한다.

⚠️ 함정: 손실 함수(최적화 대상)와 평가 지표(선택 기준)를 섞으면 안 된다. 불균형 데이터에서 accuracy가 높다고 좋은 모델이 아니듯, 손실이 낮다고 비즈니스 목표를 달성한 것도 아니다. 지표는 recall·PR-AUC처럼 비용 구조를 반영하는 것으로 따로 고른다.

옵티마이저(Optimizer)

역전파로 구한 기울기를 이용해 가중치를 실제로 갱신하는 알고리즘.

옵티마이저핵심언제 쓰나주의
SGD기울기 반대 방향으로 일정 비율 이동, 단순·견고기본 이해, 대규모 모델의 최종 미세조정학습률 튜닝 부담이 크다
SGD + Momentum과거 방향을 누적해 진동 줄이고 가속좁고 긴 골짜기에서 진동할 때관성 계수도 하이퍼파라미터
RMSProp파라미터별 학습률을 기울기 크기로 조정기울기 크기가 파라미터마다 크게 다를 때단독으로는 방향 관성이 없음
AdamMomentum + RMSProp 결합, 딥러닝 기본값대부분의 출발점아주 큰 모델에선 SGD가 더 잘 일반화하기도
SGD:  w ← w - η * ∇L
Adam: 1차/2차 모멘트 추정으로 파라미터별 적응적 보폭

실무 기본값은 Adam: 빠른 수렴과 적은 튜닝. 매우 큰 모델의 마지막 미세조정엔 SGD가 더 나은 일반화를 보이기도 한다.

Adam은 각 파라미터마다 기울기의 1차 모멘트(평균)와 2차 모멘트(분산)를 추정해 적응적 학습률을 적용한다. 덕분에 학습률에 덜 민감하고 빠르게 수렴해 대부분의 딥러닝 프로젝트의 안전한 출발점이다. 시험에서 "딥러닝 학습이 너무 느리거나 학습률 튜닝이 어렵다"면 Adam이 자연스러운 선택지다.

학습률(Learning Rate)

가장 중요한 하이퍼파라미터. 한 번에 얼마나 크게 가중치를 옮길지 결정한다.

  • 너무 크면: 손실이 발산하거나 진동하며 수렴하지 못함(loss가 NaN/폭증).
  • 너무 작으면: 수렴이 지나치게 느리고 지역 최소에 갇힘.

학습률 전략표

전략동작언제주의
고정(constant)처음부터 끝까지 같은 값짧은 실험, Adam과 함께후반에 최소점 주변을 맴돔
단계 감쇠(step decay)일정 에폭마다 일정 배율로 낮춤긴 학습, 수렴 마무리감쇠 시점·배율이 추가 튜닝 대상
코사인(cosine)부드럽게 0 쪽으로 낮춤에폭 수가 미리 정해졌을 때조기 종료와 궁합을 확인
워밍업(warmup)초반 몇 스텝 동안 서서히 올림Transformer 등 초기 불안정워밍업 구간이 너무 길면 낭비
  • 학습률 스케줄링의 기본 감각: 처음엔 크게, 점차 줄인다.
  • 워밍업은 초기 몇 스텝의 큰 기울기가 가중치를 망가뜨리는 것을 막는다.

학습 곡선 진단표

학습 손실검증 손실진단처방
폭증·NaN—학습률 과대 / 기울기 폭발학습률 낮추기, 기울기 클리핑
매우 천천히 감소같이 천천히학습률 과소학습률 올리기·스케줄링, Adam
계속 감소어느 시점부터 상승과적합드롭아웃·정규화·증강·조기 종료
높은 채로 정체높은 채로 정체과소적합모델 확대, 더 오래 학습, 특성 보강
감소하다 진동진동학습률이 후반에 과대감쇠 스케줄 적용

학습 곡선 진단이 핵심이다. 손실이 폭증/진동 → 학습률 낮추기. 학습 손실은 낮은데 검증 손실이 높아짐 → 과적합(드롭아웃·정규화·증강·조기 종료). 학습·검증 손실 모두 높음 → 과소적합(모델 키우기·더 학습·특성 추가). SageMaker Automatic Model Tuning(베이지안 최적화)으로 학습률·배치·층 수를 자동 탐색할 수 있다.

정규화와 과적합 방지

딥러닝은 파라미터가 많아 과적합되기 쉽다. 대표 처방을 기법·효과·시점·주의로 나눈다.

기법효과언제 쓰나주의
드롭아웃(Dropout)학습 중 뉴런 일부를 무작위로 끔 → 공동적응 방지완전연결 층이 큰 망추론 시에는 끈다. 비율이 과하면 과소적합
L2 가중치 감쇠큰 가중치에 페널티 → 매끄러운 결정 경계거의 항상 기본 옵션계수가 크면 과소적합
L1 정규화가중치를 0으로 밀어 희소하게 만듦피처 선택 효과가 필요할 때딥러닝에서는 L2가 더 일반적
배치 정규화(BatchNorm)층 입력을 정규화해 학습 안정·가속깊은 CNN·MLP배치가 매우 작으면 통계가 불안정
데이터 증강입력을 변형해 다양성 확보데이터가 적을 때 1순위학습셋에만 적용. 레이블 의미를 깨지 않게
조기 종료(Early Stopping)검증 손실이 더 안 줄면 학습 중단거의 항상검증셋이 필요하고, 인내(patience) 설정에 민감

⚠️ 함정: 배치 정규화와 드롭아웃은 목적이 다르다. 배치 정규화는 학습 안정·가속이 주목적이고(부수적으로 약한 정규화 효과), 드롭아웃은 과적합 억제가 목적이다. "학습이 불안정하다"에 드롭아웃을, "과적합이다"에 배치 정규화만 고르면 방향이 어긋난다.

무엇으로 모델을 고를 것인가 — 지표 해석표

조기 종료·Automatic Model Tuning 모두 "무엇을 최적화할지" 지표를 하나 정해야 동작한다. 이 선택이 곧 비즈니스 판단이다.

지표무엇을 말하나우선할 상황함정
Accuracy전체 중 맞힌 비율클래스가 균형일 때만양성 1%면 "전부 음성"도 99%
Precision양성이라 한 것 중 진짜오탐 비용이 큼소수만 양성 예측하면 쉽게 올라감
Recall실제 양성 중 잡아낸 비율미탐 비용이 큼전부 양성 예측하면 1.0
F1precision·recall의 조화평균두 비용이 비슷할 때어느 쪽이 문제인지 감춘다
ROC-AUC임계값 무관 분별력모델끼리 비교극단 불균형에서 낙관적
PR-AUC소수 클래스 분별력양성 비율이 극히 낮을 때클래스 비율이 바뀌면 값도 바뀜
RMSE / MAE회귀 오차 크기큰 오차를 벌줄 때 / 이상치에 강건할 때RMSE는 이상치에 민감

튜닝 목표 지표를 accuracy로 두면 불균형 데이터에서 탐색이 엉뚱한 방향으로 수렴한다. 목표 지표는 비용이 큰 오류 유형을 반영하도록 먼저 정한 뒤 튜닝을 돌린다.

전이학습(Transfer Learning)

대규모 데이터로 사전학습된 모델의 지식을 새 과제로 옮긴다. 적은 데이터·짧은 시간에 강력하다.

사전학습 모델(ImageNet/대형 코퍼스)
   ├─ 백본(특징 추출기): 가중치 재사용
   └─ 헤드(출력층): 새 과제에 맞게 교체·재학습
[특징 추출 — 데이터가 매우 적을 때]        [파인튜닝 — 데이터가 어느 정도 있을 때]
 
  ❄️ Conv 블록 1  (동결)                     ❄️ Conv 블록 1  (동결 유지)
  ❄️ Conv 블록 2  (동결)                     ❄️ Conv 블록 2  (동결 유지)
  ❄️ Conv 블록 3  (동결)                     🔥 Conv 블록 3  (낮은 학습률로 해동)
  🔥 새 Dense 헤드 (학습)                    🔥 새 Dense 헤드 (학습)
 
  ❄️ = 가중치 고정   🔥 = 갱신됨
  헤드를 먼저 학습한 뒤 백본을 점진적으로 푸는 "단계적 해동"이 안정적이다.

두 가지 방식:

  • 특징 추출(feature extraction): 백본을 동결(freeze) 하고 새 헤드만 학습. 데이터가 매우 적을 때.
  • 파인튜닝(fine-tuning): 백본 일부/전체를 낮은 학습률로 함께 재학습. 데이터가 어느 정도 있을 때.

데이터 양 × 도메인 유사도 4분면

도메인이 사전학습과 유사도메인이 상이
데이터 적음백본 동결 + 헤드만 학습(특징 추출)상위 일부 층만 낮은 학습률로 해동, 증강 병행
데이터 많음전체를 낮은 학습률로 파인튜닝파인튜닝 폭을 넓히거나 처음부터 학습도 검토

선택 기준 요약:

  • 데이터 적음 + 도메인 유사 → 특징 추출(동결).
  • 데이터 많음 또는 도메인 상이 → 파인튜닝(낮은 학습률).

파인튜닝 시 사전학습 가중치를 망치지 않도록 처음부터 학습할 때보다 훨씬 낮은 학습률을 쓴다. 또 헤드를 먼저 학습한 뒤(백본 동결) 백본을 점진적으로 푸는 "단계적 해동"이 안정적이다. SageMaker JumpStart는 비전·NLP 사전학습 모델과 파인튜닝 스크립트를 제공해 이 과정을 단순화한다.

전이학습에서 "모든 층을 큰 학습률로 동시에 재학습"은 오답이다. 사전학습으로 얻은 지식을 첫 몇 스텝에 지워 버린다.

프레임워크와 SageMaker 통합

프레임워크특징
TensorFlow / Keras산업 배포·서빙 생태계 풍부, Keras로 고수준 API
PyTorch동적 그래프로 연구·디버깅 친화, 현재 가장 널리 사용
MXNetSageMaker 일부 빌트인의 기반(과거)

SageMaker에서의 사용:

  • Script Mode: 본인의 TF/PyTorch 스크립트를 SageMaker 학습 컨테이너로 실행.
  • 사전 빌트 컨테이너 / Deep Learning Containers(DLC): TF·PyTorch 버전별 관리형 이미지.
  • 분산 학습: 데이터 병렬/모델 병렬 라이브러리, 다중 GPU·다중 인스턴스.
  • SageMaker JumpStart: 사전학습 모델·솔루션을 클릭/스크립트로 배포·파인튜닝.
  • GPU 학습엔 ml.p·ml.g 인스턴스, 추론 비용 최적화엔 ml.inf(Inferentia) 등을 고려.

상황 → AWS 선택 매핑표

상황선택이유
자체 학습 스크립트를 관리형으로 돌린다Script Mode코드를 그대로 학습 컨테이너에서 실행
프레임워크 환경을 직접 빌드하기 싫다Deep Learning Containers버전별 관리형 이미지
학습률·배치·드롭아웃을 자동 탐색Automatic Model Tuning베이지안 최적화로 효율적 탐색
모델이 한 GPU에 안 올라간다모델 병렬 분산 학습모델을 쪼개 여러 장치에 배치
데이터가 커서 한 인스턴스로는 느리다데이터 병렬 분산 학습배치를 나눠 여러 장치에서 처리
사전학습 모델로 빠르게 시작JumpStart모델 + 파인튜닝 스크립트 제공
추론 비용을 낮추고 싶다ml.inf(Inferentia) 계열 검토추론 특화 가속기

증상 → 원인 → 처방

증상원인1차 처방
손실이 NaN으로 폭증학습률 과대학습률 낮추기
수렴이 너무 느림학습률 과소, 옵티마이저 부적합학습률 상향·스케줄링, Adam
학습 손실↓ 검증 손실↑과적합드롭아웃·L2·증강·조기 종료
두 손실 모두 높음과소적합모델 확대, 더 오래 학습, 특성 보강
학습 데이터가 1,000장뿐데이터 부족전이학습(동결) + 증강
파인튜닝 후 성능이 오히려 하락학습률 과대로 사전 지식 파괴학습률 대폭 축소, 단계적 해동
OOM으로 학습 실패배치·모델 과대배치 축소, 모델 병렬
하이퍼파라미터 조합이 너무 많다수동 탐색의 한계Automatic Model Tuning

다음 글에서는 Week 7 전체를 하나의 결정 지도로 압축하고, 헷갈리는 개념 짝을 비교 관점으로 정리한다.

📖 용어

  • 손실 함수(loss) : 예측과 정답의 차이를 하나의 수로 만든 값. 학습이 최소화하려는 대상.
  • 옵티마이저(optimizer) : 역전파로 구한 기울기로 가중치를 실제로 갱신하는 알고리즘.
  • Adam : Momentum과 RMSProp을 합쳐 파라미터별 적응적 보폭을 쓰는 옵티마이저. 딥러닝 기본값.
  • 학습률(learning rate) : 한 번에 가중치를 얼마나 옮길지 정하는 값. 가장 먼저 튜닝할 대상.
  • 학습률 워밍업 : 초반 몇 스텝 동안 학습률을 서서히 올려 초기 불안정을 막는 기법.
  • 드롭아웃(dropout) : 학습 중 뉴런 일부를 무작위로 꺼 공동적응을 막는 과적합 억제 기법.
  • 가중치 감쇠(weight decay, L2) : 큰 가중치에 페널티를 줘 모델을 매끄럽게 만드는 정규화.
  • 배치 정규화 : 층 입력의 분포를 정규화해 학습을 안정시키고 가속하는 기법.
  • 조기 종료(early stopping) : 검증 손실이 더 이상 줄지 않으면 학습을 멈춰 과적합을 막는 기법.
  • 전이학습 / 파인튜닝 : 사전학습 가중치를 가져와 재사용하는 것 / 그 가중치를 낮은 학습률로 함께 재학습하는 것.

📝 연습 문제

선택지를 클릭하면 정답·해설이 펼쳐집니다.

문제 1

학습을 시작하자마자 손실이 NaN으로 폭증한다. 가장 먼저 시도할 처방은?

문제 2

학습 데이터가 1,000장뿐인데 도메인이 ImageNet과 유사하다. 가장 효율적인 전략은?

문제 3

다중 클래스 분류 신경망의 손실 함수로 표준적인 것은?

문제 4

대부분의 딥러닝 프로젝트에서 학습률 튜닝 부담이 적고 빠른 수렴으로 기본값으로 권장되는 옵티마이저는?

문제 5

학습 손실은 계속 낮아지는데 검증 손실은 어느 시점부터 다시 올라간다. 가장 적절한 대응은?

이전RNN과 시퀀스 모델: LSTM에서 Transformer까지Week 7 · Day 3다음 7주차 종합 복습: 딥러닝 정리Week 7 · Day 5

참고 공식 자료

  • MLS-C01 공식 시험 안내(새 탭에서 열림)
  • Amazon SageMaker AI 공식 문서(새 탭에서 열림)

이 페이지

  • 학습이 성능을 만든다
  • 손실 함수(Loss Function)
  • 옵티마이저(Optimizer)
  • 학습률(Learning Rate)
  • 학습률 전략표
  • 학습 곡선 진단표
  • 정규화와 과적합 방지
  • 무엇으로 모델을 고를 것인가 — 지표 해석표
  • 전이학습(Transfer Learning)
  • 데이터 양 × 도메인 유사도 4분면
  • 프레임워크와 SageMaker 통합
  • 상황 → AWS 선택 매핑표
  • 증상 → 원인 → 처방
  • 용어
  • 연습 문제