1. 모델링 자동화와 실험 검증 전략
구건모
# RAY[TUNE] #WANDB #SLACK-BOT #JSON
부스트캠프 AI Tech <Tech Talk>
2. 목차
• 모델링 자동화
• 모델링 자동화란?
• 모델링 자동화의 장점
• 실험 검증 전략
• 하이퍼 파라미터 검증 전략
• 학습 검증 전략 (1) - 학습 곡선
• 학습 검증 전략 (2) - 시각화
• 실험 공유를 통한 검증 전략 부스트캠프 AI Tech <Tech Talk>
2/
4. 모델링 자동화란?
• Key 를 사용하여
• Value 에 해당하는
부스트캠프 AI Tech <Tech Talk>
4/
5. 모델링 자동화란?
• Key 를 사용하여
• Value 에 해당하는
• Modeling 을 수행
• train
• evaluate
부스트캠프 AI Tech <Tech Talk>
5/
6. 모델링 자동화란?
• Key 를 사용하여
• Value 에 해당하는
• Modeling 을 수행
• Config 파일로 통제되는 환경
부스트캠프 AI Tech <Tech Talk>
6/
7. 모델링 자동화란?
• Key 를 사용하여
• Value 에 해당하는
• Modeling 을 수행
• Config 파일로 통제되는 환경
• 한 개 Config이 모델 한 개를 모델링
부스트캠프 AI Tech <Tech Talk>
7/
8. 모델링 자동화의 장점
• 다양한 실험 을 간편하게 할 수 있다.
• retriver_name : "TFIDF"
• retriver_name : "BM25"
• retriver_name : "DPRKOBERT"
• ST00.json, ST01.json, ST02.json
부스트캠프 AI Tech <Tech Talk>
8/
9. 모델링 자동화의 장점
• 다양한 실험 을 간편하게 할 수 있다.
• 코드의 가독성 이 좋아진다.
• 추상화를 필연적으로 해야한다.
부스트캠프 AI Tech <Tech Talk>
9/
10. 모델링 자동화의 장점
• 다양한 실험 을 간편하게 할 수 있다.
• 코드의 가독성 이 좋아진다.
• 추상화를 필연적으로 해야한다.
• 코드 효율이 좋아진다.
부스트캠프 AI Tech <Tech Talk>
10/
11. 모델링 자동화의 장점
• 다양한 실험 을 간편하게 할 수 있다.
• 코드의 가독성 이 좋아진다.
• 안전한 기능 추가 가 가능하다.
• Key로 판단
• Key Default값 존재
• args.path
부스트캠프 AI Tech <Tech Talk>
11/
12. 실험 검증 전략
• 모델링을 잘 했다고 성능이 좋지는 않다.
• 다만 다양한 실험을 쉽게 할 수 있을 뿐..
• 다양한 실험을 진행하면서 검증을 해야 된다.
• 이 실험이 정말 유의미한지
부스트캠프 AI Tech <Tech Talk>
12/
13. 실험 검증 전략
• 실험을 진행하면서 들었던 의문점들
• 좋은 하이퍼파라미터 는 어떻게 찾아야 될까?
• 모델이 내가 원하는 대로 동작 을 하는 건가?
• A Seed와 B Seed에서 결과가 다른데 어떻게 판단을 해야 할까?
부스트캠프 AI Tech <Tech Talk>
13/
14. 하이퍼파라미터 검증 전략
• 좋은 하이퍼파라미터 찾기는 굉장히 어렵습니다.
• 학습이 잘 안 될 경우
• 코드 문제인가?
• 눈에 보이는 오류가 아니라서 더 어렵습니다.
• 학습이 잘 될 경우
• 더 좋은 하이퍼파라미터가 있지 않을까?
부스트캠프 AI Tech <Tech Talk>
14/
15. 하이퍼파라미터 검증 전략
• 제가 원하는 것은 최고의 하이퍼파라미터
• 첫 번째 스테이지에서 LB Score를 높이기 위해서
• 큰 변화 없는데 하이퍼 파라미터만 만지작.. 만지작..
• 그렇게 2주가 지나고
부스트캠프 AI Tech <Tech Talk>
15/
16. 하이퍼파라미터 검증 전략
• 제가 원하는 것은 최고의 하이퍼파라미터
• 첫 번째 스테이지에서 LB Score를 높이기 위해서
• 큰 변화 없는데 하이퍼 파라미터만 만지작.. 만지작..
• 그렇게 2주가 지나고
• 이렇게 하면 안되겠다
부스트캠프 AI Tech <Tech Talk>
16/
17. 하이퍼파라미터 검증 전략
• 필요한 것은 탄탄한 지식과 최적화 알고리즘
• Search Space를 잘~ 설정하는데 탄탄한 지식이 필요합니다.
부스트캠프 AI Tech <Tech Talk>
17/
18. 하이퍼파라미터 검증 전략
• MSE Loss : 3.78
• 산술 계산해서 나오는 값?
• Likelihood를 최적화 하는 통계량
• 모수와의 거리
부스트캠프 AI Tech <Tech Talk>
18/
19. 하이퍼파라미터 검증 전략
• Focal과 Cross Entropy
• Focal : [0.7 0.3]의 Confidence로 Acc 100%
• CE : [0.7 0.3]의 Confidence로 Acc 100%
부스트캠프 AI Tech <Tech Talk>
19/
20. 하이퍼파라미터 검증 전략
• Learning Rate, Batch Size
• Gradient 벡터의 크기와 방향
부스트캠프 AI Tech <Tech Talk>
20/
21. 하이퍼파라미터 검증 전략
• 지식과 경험이 부족하면 발생하는 일
• 4일 내내 BERT 하이퍼파라미터 이슈로 고생한다.
• 3일 동안 코드만 고쳤다.
부스트캠프 AI Tech <Tech Talk>
21/
22. 하이퍼파라미터 검증 전략
• 최적화 알고리즘의 하이퍼파라미터
• Search Space 정의
• 하이퍼파라미터 최적화
• RAY[TUNE]
부스트캠프 AI Tech <Tech Talk>
22/
23. 하이퍼파라미터 검증 전략
• 알고리즘은 뭐를 사용해야 할까?
• Sequential Optimisation
• Parallel Random Search
• Parallel Grid Search
• Population Based Training
부스트캠프 AI Tech <Tech Talk>
23/
24. 하이퍼파라미터 검증 전략
Sequential Optimisation
• 학습하고 체크하고.. 학습하고..
• 저비용, 많은 시간 소요
부스트캠프 AI Tech <Tech Talk>
24/
25. 하이퍼파라미터 검증 전략
Parallel Random/Grid Search
• 경우의 수가 굉장히 많다.
• 고 비용, 적은 시간 소요
부스트캠프 AI Tech <Tech Talk>
25/
26. 하이퍼파라미터 검증 전략
Population Based Training
• 두 방법을 결합한 새로운 방법
• 저비용, 적은 시간 소요
• Exploit 성능이 안 좋은 모델 대체
• Explore perturbations 이후 학습
부스트캠프 AI Tech <Tech Talk>
26/
27. 하이퍼파라미터 검증 전략
Population Based Training
• 단점은 많은 디스크 용량을 필요로 한다.
• Exploit 과정을 하기 위해서
• N개의 모델을 Checkpoint에 저장
• Gpu와 디스크 용량만 많다면
좋은 알고리즘
부스트캠프 AI Tech <Tech Talk>
27/
28. 학습 검증 전략 (1) - 학습 곡선
• 과대 적합, 과소 적합을 판단하기에 가장 좋다.
부스트캠프 AI Tech <Tech Talk>
28/
29. 학습 검증 전략 (1) - 학습 곡선
• WANDB
부스트캠프 AI Tech <Tech Talk>
29/
30. 학습 검증 전략 (1) - 학습 곡선
• A Seed와 B Seed에서 결과가 다른데 어떻게 판단을 해야 할까?
• N번 돌린다음 모델의 성능 지표의 평균 값으로 판단을 하자.
부스트캠프 AI Tech <Tech Talk>
30/
31. 학습 검증 전략 (2) - 시각화
• 학습 곡선만으로는 부족하다.
• 시각화
• 모델을 분석하는데 도움이 된다.
• 잘 만들어 놓으면 재사용이 용이하다.
부스트캠프 AI Tech <Tech Talk>
31/
32. 학습 검증 전략 (2) - 시각화
• 시각화의 좋은 예
• 분석 할 때 좋은 시각화
• 결과 분석이 가능한 시각화
• 전체를 대상 으로 하는 시각화
부스트캠프 AI Tech <Tech Talk>
32/
33. 학습 검증 전략 (2) - 시각화
• 시각화의 좋은 예
• 분석 할 때 좋은 시각화
• 결과 분석이 가능한 시각화
• 전체를 대상 으로 하는 시각화
• 모델들 간의 우위를 볼 수 있는 시각화
• Competition에 큰 도움이 됐다.
부스트캠프 AI Tech <Tech Talk>
33/
34. 학습 검증 전략 (2) - 시각화
• 시각화의 나쁜 예
• 분석 할 때 나쁜 시각화
• 어딜 보고 예측하는 거니..?
• 하나를 대상 으로 하는 시각화
부스트캠프 AI Tech <Tech Talk>
34/
35. 학습 검증 전략 (2) - 시각화
• 시각화의 나쁜 예
• 분석 할 때 나쁜 시각화
• 어딜 보고 예측하는 거니..?
• 하나를 대상 으로 하는 시각화
부스트캠프 AI Tech <Tech Talk>
35/
36. 실험 공유를 통한 검증 전략
• 공유를 하면 자동으로 검증 이 되는 전략
• 모델링에 공유 기능을 추가 하면 효율이 좋다
부스트캠프 AI Tech <Tech Talk>
36/