6일차
딥러닝 기본 용어 설명
- 구현 능력(텐서플로우, 파이토치), 수학 능력, 최신 연구 트렌드
- 데이터, 모델, loss function, 알고리즘(loss 최소 위해서)
- data
- classification semantic segmentation, detection, pose estimation, visual QnA
- model
- resnet, densenet, googlenet, GAN ...
- loss
- 모델을 어떻게 학습할지.
- Regression Task MSE, Classification Task CE, Provbabilistic Task MLE
- optimization Algorithm
- dropout, early stopping, k-fold validation, weight decay, mixup, ensemble, bayesian optimization
Historical Review
- AlexNet: 224 by 224 image
- DQN: 알파고 강화학습
- Encoder/Decoder
- Adam Optimizer
- GAN
- Residual Networks: 레이어 늘려도 성능저하 없도록
- Tranformer
- BERT fine-tuned NLP models
- BIG Language Models. GPT-3
- Self-supervised learning. SinCLR
경사하강법 - 순한맛
- 미분
- 변수의 움직임에 따른 함수값의 변화를 측정하기 위한 도구
- 함수의 한 점에서 접선의 기울기 구하기 - 함수값 증가, 감소 여부
- 미분값을 더하면 경사상승법. 함수의 극대값 위치 구함
- 미분값을 빼면 경사하강법. 함수의 극소값 위치 구함
- 경사하강법 알고리즘
- gradient: 미분 계산 함수
- init: 시작점, lr: 학습률, eps: 알고리즘 종료 조건
var = init
grad = gradient(var)
while (abs(grad) > eps): # 정확한 0 되기 어려우므로
var = var - lr * grad # lr: 학습률. 미분을 통해 업데이트하는 속도 조절
grad = gradient(var) # 종료조건 만족 전까지 미분값 업데이트
- 변수가 벡터면 편미분
- 그라디언트 벡터 - 3차원 공간에서 최소점으로 흐르게 하는 식