240923 TIL #496 AI Tech #34 하이퍼파라미터 튜닝

김춘복·2024년 9월 23일
0

TIL : Today I Learned

목록 보기
498/543
post-custom-banner

Today I Learned

7주차 시작! 프로젝트가 목요일까지라 얼마 남지 않았다.
열심히 해보자!!


강의 복습


하이퍼파라미터

모델 학습 과정에서 외부에서 설정하는 변수
cf. 파라미터는 모델 학습 과정에서 데이터를 통해 자동으로 학습되는 값

  • 학습률, batch size, epoch, 정규화 계수, 드롭아웃 비율, 레이어 수, 뉴런 수, 최대 깊이 등이 하이퍼 파라미터에 속한다.

하이퍼 파라미터 튜닝

하이퍼파라미터를 어떻게 조정하냐에 따라 모델의 성능은 천차만별이 된다.

  • 모델 성능 향상, 학습시간 조정, 일반화 등의 요소를 조절하기 위해 하이퍼파라미터 튜닝은 반드시 필요하다.

  • grid, random, manual, bayesian 방법은 TIL #398 참고

하이퍼 파라미터 최적화 툴

  • WandB Sweep
    실험관리가 주 목적이지만, HPO도 사용 가능하다.
    config 파일에 딕셔너리 형태로 하이퍼파라미터의 범위와 방법을 정의하고 이를 바탕으로 sweep해서 훈련하면 각각의 하이퍼 파라미터가 어떤 결과를 내는지 시각화해서 보여준다.
    "method"는 grid, random, bayesian중에서 선택 할 수 있고, "parameters"에서 탐색할 값을 구간이나 분포로 지정할 수 있다.

  • Optuna
    자동으로 효율적인 탐색을 수행하며, Pruning(학습 도중 성능이 떨어지는 실험을 중단) 기능을 통해 시간과 자원을 절약할 수 있다.
    대시보드를 띄울 수 있고, 결과는 plotly로 시각화하면 된다.



피어세션

  • bitcoin의 close(종가)를 바로 다른 feature와 correlation을 하니 너무 높게 나왔다. close의 가격 변동에 비해 가격 자체가 너무 높아서 정규화를 해야하나? 싶었지만 막상 정규화를 시도해도 잘 되지 않았다. 이와 관련해서 토론을 했다.

  • LSTM 모델로 진행하니 종가가 -log 그래프처럼 수렴하는 그래프로 나왔다. 그래서 일단은 계속 해보는 중

  • OverSampling 기법을 사용해서 분포가 적은 0,3 카테고리 데이터를 데이터 증강해서 적용해봤으나, 오히려 accuracy가 떨어졌다.


회고

  • 여러 시도를 해보고 있지만 하면 할수록 오히려 accuracy가 떨어지고있다. 방법들을 정리해서 새로운 try를 해봐야겠다.
profile
Backend Dev / Data Engineer
post-custom-banner

0개의 댓글