[boostcourse] 머신러닝을 위한 파이썬 - 3주차

김민수·2023년 9월 26일
0

boostcourse

목록 보기
3/8
post-thumbnail

3주차 - 선형회귀

1. Cost Function - 비용함수

2. Gradient Descent - 경사하강법

1) Full-batch Gradient Descent

  • 장단점
    • 업데이트 감소 > 계산상 효율적(속도) 가능
    • 안정적인 Cost 함수 수렴
    • 지역 최적화 가능
    • 메모리 문제 (ex - 30억개의 데이터를 한번에?)
    • 대규모 dataset > 모델/파라메터 업데이트가 느려짐

3. Stochastic Gradient Descent - 확률적 경사하강법

1) Stochasitc Gradient Descent

  • 개념

    • 원래 의미는 dataset에서 random하게 training sample을 뽑은 후 학습할 때 사용함
    • Data를 넣기 전에 Shuffle
  • 장단점

    • 빈번한 업데이트 모델 성능 및 개선 속도 확인 가능
    • 일부 문제에 대해 더 빨리 수렴
    • 지역 최적화 회피
    • 대용량 데이터시 시간이 오래걸림
    • 더 이상 cost가 줄어들지 않는 시점의 발견이 어려움

2) Epoch & Batch size

  • 전체 데이터가 Training 데이터에 들어갈 때 카운팅
  • Full-batch를 n번 실행하면 n epoch
  • Batch-size 한번에 학습되는 데이터의 개수
  • 총 5,120개의 Training data에 512 batch-size면 몇 번 학습을 해야 1 epoch이 되는가?

4. SGD 실행중 issues

1) Overfitting

  • 개념

    • 학습데이터에 과다 최적화가 되어 새로운 데이터에서의 예측이 떨어지는 경우
  • 해결방법

    • 더 많은 데이터를 활용한다.
    • Feature의 갯수를 줄인다.
    • 적절한 Parameter를 선정한다.
    • Regularization

2) 종료설정

0개의 댓글