일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- dfs
- 부스트캠프_AITech_3기
- 구현
- 파이썬 3
- 단계별문제풀이
- 개인회고
- ODQA
- python3
- 다이나믹프로그래밍
- 정렬
- 다시보기
- 주간회고
- 이코테
- 프로그래머스
- 그래프이론
- 기술면접
- 최단경로
- 이진탐색
- U_stage
- 알고리즘_스터디
- mrc
- Level2
- 백준
- Level2_PStage
- 백트랙킹
- 그리디
- 부스트캠프_AITech3기
- 알고리즘스터디
- Level1
- dp
- Today
- Total
국문과 유목민
[일일리포트] Day 31 (Level1_PStage_5) 본문
해당 일일리포트에서는 네이버 커넥트에서 진행하는 '부스트캠프 AI Tech 3기'에서 배운 내용을 다루고 있습니다. 저작권 이슈 때문에 관련 자료를 올릴 수는 없기에 핵심 이론과 코드를 요약해서 올리고 있기에 내용이 부족할 수 있습니다.
▶ Today I Learned (핵심 요약 정리)
Data Generator
데이터의 분포를 나이별로 보게 되면 나이가 많으신 분들의 데이터가 많이 부족한 것을 확인할 수 있었다. 그리고 현재 가장 좋은 성적을 보여준 densenet모델에서 나이많으신 분들을 잘 맞추지 못하는 문제가 있었기에 데이터의 절대적인 양을 늘리는 방법을 사용하고자 했다. 따라서 해당 코드를 어제 Imbalanced한 데이터의 양을 늘리는 코드를 이용해서 데이터의 양을 늘렸다.
그런데 결과적으로 Data Generator의 성능이 좋았는지에 대해서는 아직까지 의문이 든다. 프로젝트 마지막 날이다보니 다양한 시도를 했고, 그로 인해서 해당 기법을 활용해서 성능이 좋아진 것인지 다른 것을 해서 성능이 좋아진 것인지는 잘 모르겠다.
wandb
wandb를 구현한 것은 사실 어제였는데 이것을 활용할 방법이나 규칙 등이 제대로 정해져있지 않아서 팀원들이 잘 사용을 하지 못하고 있었다는 것을 알게 됐다. 그래서 마지막 날이었지만 몇 가지 규칙을 정해 조금 수월하게 실험 관리를 진행할 수 있게 하고자 했다. 우리는 프로젝트 마지막쯤에 이걸 알게 됐지만 혹시 나중에 프로젝트를 진행하는 다른 분들은 좀 더 수월하게 사용을 하실 수 있도록 간단하게 적겠다.
- config를 저장하고자 할 때에는 init에 같이 적어둬야만 저장이 된다.
- wandb의 경우 실험명이 임의로 조합돼서 생성이 되기 때문에, 실험명을 '모델_변경사항' 처럼 적어서 한번에 실험을 확인할 수 있게 해야 한다.
- wandb의 경우 running이나 finish말고, kill이나 conflict와 같은 state가 있는데 해당 실험 내역을 제거해주지 않으면 다른 실험을 관리에 어려움이 있기 때문에 해당 내역들을 제거해줘야 한다.
Pretrained Model
프로젝트 마감을 3시간 앞두고 진행한 피어세션에서 가장 좋은 성능을 내셨던 팀원분께서 bestscore모델의 결과를 pretrain해서 더 성능을 끌어올려보자는 말씀을 하셨다. 그래서 3시간 동안 줌을 키고 lr을 조절하면서 학습을 진행했다. 처음에는 긴가민가 했지만 실제적으로 성능을 0.01정도 끌어올렸었다. 이미 학습이 완료된 모델을 다시 한 번 재학습시킨다고 해서 의미가 있을까 했는데 이전에 했던 lr보다 더 낮은 lr을 줘서 더 깊게 학습하도록 하니까 된 것 같다는 생각을 했다. 나중에 또 프로젝트를 하게 된다면 이 방법도 다시 한 번 생각해봐야겠다.
▶ Review (생각)
오늘 하루는 프로젝트 마지막날이라서 그런지 시간이 굉장히 빨리 지나갔던 하루였고, 또 많은 것을 생각했던 하루였다. 우선 아침에데이터 Generation코드를 작성하면서 다른 팀원분의 모델 개선에 도움을 주려고 했다. 오후 들어서는 모델을 테스트 해보려고 했는데 아침부터 새벽까지 다른 분들께서 작업하신 내용을 pull해오는 과정에서 branch가 엉켜서 모델이 안 돌아가는 문제가 있었다. 또 wandb세팅을 잘못해서 이것저것 코드를 수정하느라 모델을 돌리지 못했었다. 그래서 피어세션 이전까지는 이렇다 할만한 모델 향상을 이뤄내지 못해서 아쉬움이 있었다.
그런데 피어세션 바로 전에 한 팀원분께서 성능을 끌어올리셨고, 피어세션 때 다같이 해당 모델을 올리기 위해 3시간동안 다양한 시도를 한 끝에 0.01을 올릴 수 있었다. 그리고 그 결과 하루만에 리더보드에서 15등이 올라갔다. (물론 오늘의 출발이 그렇게 높지 않긴 했지만...) 성능을 올렸다는 것도 뿌듯했지만 다른 부분에서도 성장을 했다는 것에서 더 뿌듯했다. 피어세션에서 같이 모델을 돌리면서 결과를 기다리는 동안 프로젝트에 대한 피드백을 자연스럽게 하게 됐다. 그러면서 스스로 부족했던 점 그리고 개선할 점들에 대해서 얘기했는데, 비록 프로젝트 성적이 높지는 않았을지라도 새로운 경험을 통해 성장을 했다는 것을 느낄 수 있었다. 부스트캠프에서 계속해서 성적에 연연하지 말라고 얘기하신 이유가 아마 이것 때문이지 않았을까라는 생각을 했다.
이래저래 많은 일들이 있었는지는 모르겠지만, 꽤 빠르게 프로젝트가 끝났다. 모델의 성능을 올리는데 뭔가 많이 기여하지는 못한 것 같아 아쉽다. 하지만 팀원들이 실험을 다양하게 할 수 있는 도구를 제공했다고는 얘기할 수 있을 것 같다. 프로젝트에 대한 정리와 후기는 내일 주간 회고 겸 WrapUp리포트를 적을 때 더 적어야겠다.
오늘 요약
'IT 견문록 > 2022_부스트캠프 AITech 3기(100일)' 카테고리의 다른 글
[7주차] 개인 회고 (Level1_프로젝트 정리) (0) | 2022.03.05 |
---|---|
[일일리포트] Day 32 (Level1_PStage_6) (0) | 2022.03.04 |
[일일리포트] Day 30 (Level1_PStage_4) (0) | 2022.03.02 |
[일일리포트] Day 29 (Level1_PStage_3) (2) | 2022.03.01 |
[일일 리포트] Day 28 (Level1_PStage_2) (0) | 2022.02.28 |