느리지만 꾸준히, 코딩

딥러닝 학습노트 본문

프로그래밍/AI

딥러닝 학습노트

slowin 2025. 2. 10. 18:54

1️⃣ 머신러닝 & 최적화 기법

🔹 퍼셉트론 (Perceptron)

  • 가장 단순한 인공 신경망 모델로 이진 분류에 사용
  • 활성화 함수: 스텝 함수
  • 가중치와 편향을 조정하여 최적의 결정 경계를 찾음

🔹 가중치 초기화

  • Xavier 초기화: tanh, sigmoid 활성화 함수에 적합, 분산 유지
  • He 초기화: ReLU 계열에 적합, 기울기 소실 방지

🔹 경사 하강법 (Gradient Descent)

  • 손실 함수의 기울기를 이용해 모델 최적화
  • 확률적 경사 하강법 (SGD): 일부 샘플(batch)만 사용하여 연산량 절약
  • 모멘텀 (Momentum): 이전 기울기를 반영해 더 빠르고 안정적인 학습
  • NAG (Nesterov Accelerated Gradient): 기울기를 미리 예측하여 정밀한 업데이트 수행
  • Adam: Momentum과 RMSProp을 결합한 강력한 최적화 알고리즘

2️⃣ 딥러닝 모델 구조

🔹 다층 퍼셉트론 (MLP)

  • 여러 개의 은닉층을 가진 신경망 (Fully-Connected Layer)
  • 활성화 함수: ReLU, Sigmoid, Tanh

🔹 CNN (합성곱 신경망)

  • 합성곱 연산: 이미지 데이터의 공간적 특징 유지
  • Pooling: Max Pooling(특징 강조) / Avg Pooling(정보 유지)

🔹 RNN (순환 신경망)

  • 시퀀스 데이터를 처리하는 구조, 이전 상태를 반영
  • LSTM / GRU: 장기 의존성 문제 해결을 위해 정보 게이트 사용

🔹 딥러닝 발전

  • AlexNet (2012): CNN 대중화
  • ResNet (2015): Residual Connection 도입, 깊은 네트워크 학습 가능

3️⃣ 손실 함수 & 성능 향상 기법

🔹 손실 함수 (Loss Function)

  • MSE (Mean Squared Error): 회귀 문제
  • Cross Entropy (CE): 분류 문제
  • Hinge Loss: SVM에서 사용

🔹 성능 개선 기법

  • 드롭아웃 (Dropout): 일부 노드를 비활성화하여 과적합 방지
  • 정규화 기법: 배치 정규화, 레이어 정규화, 인스턴스 정규화, 그룹 정규화
  • 학습 스케줄러: Step Decay, CosineAnnealingLR, ReduceLROnPlateau
  • 앙상블 기법 (Ensemble): 다양한 모델 및 데이터 기반 앙상블 적용

4️⃣ 데이터 증강 (Augmentation)

🔹 기본 기법

  • 리사이즈, 회전, 뒤집기, 자르기

🔹 고급 기법

  • Cutout: 특정 영역을 제거
  • Mixup: 서로 다른 두 이미지를 혼합
  • CutMix: Cutout + Mixup 결합

🔹 대회 적용

  • RandomRotation: 문서 기울기 변형
  • RandomResizedCrop: 문서를 부분 확대/축소
  • ColorJitter: 밝기, 대비, 채도 조정
  • 모델 선택: ResNet-50, EfficientNet-B0~B4, ViT (Vision Transformer)
  • 옵티마이저: AdamW, SGD + Momentum
  • 배치 크기: 16~32 추천

5️⃣ MLOps & 실험 관리

🔹 W&B (Weights & Biases)

  • 실험 결과 추적 및 시각화
  • 모델 학습 중 파라미터, 메트릭스 자동 기록

'프로그래밍 > AI' 카테고리의 다른 글

역전파  (0) 2025.02.10
머신 러닝 발전 5단계  (0) 2025.02.10
upstage: mlops 프로젝트  (0) 2025.02.03
업스테이지 서울특별시 아파트 가격 모델 경진대회  (0) 2025.01.12
Git 활용 전략  (1) 2024.12.16