Boostcamp AI Tech (Day 035)
1. 강의
2. 피어세션
- 남의 코드 가져올거면 라이센스 고려하면서… 출처 주석으로 남겨야할수도 있음
- 모델이 크면 배치사이즈를 줄이든, 모델 경량화를 시키든
- 스페셜 피어세션 어땠는지
- 큰 모델을 가져올거면 트랜스퍼 러닝을 했어야했음
- wandb에 swips이란 기능으로 하이퍼파라미터 알아서 찾아준대
- ㄴ근데 이거 조심해서 써야함
- 우리가 너무 전처리를 많이 했을수도 (이번 대회의 데이터 특성 상)
- 트랜스퍼 러닝 : 뒷단 학습가능한 부분만 냄기는거
2.2 주말 팀회의
- DETR 모델이 가장 좋더라 그다음 욜로
- 랩업 리포트 마무리
- 트랜스퍼 러닝을 어떻게 하는지 파인튜닝이 뭐
- 내일 열리는 거 보고 이것 저것 생각해보자요
- 내일 타운홀미팅 끝나고 모여서 계획 짜자
- 포폴에 올릴거면 개인 회고는 올릴듯
3. 회고
- 우리 생각보다 너무 잘해왔다
- 협업도 잘 했다
- 깃도 잘 썼다
- 노션 정리가 좀 아쉽다 (가설이랑 모델 등 가져올 때 정리해서 가져오기)
- 차근차근 하고 싶던 거 이슈 만들어서 하나하나 해낸 거 잘했다
- 모델 가져오는 게 아쉽다
- 팀 분위기가 좋아졌다!
- 다음 대회는 잘 해내서 많은 기여를 하고 싶다
4. 마스터클래스
- CGV 팀 발표 : 협업을 잘 하자! 컨벤션, 깃, 소통, 데이터셋 잘 다루기 깃 플로우 dev 둠, 우리랑 똑같은디… 깃헙 사용방식이 파이토치 라이트닝 코드, EDA, 센터크롭안될듯, 그레이스케일 별로, 같은 사진 많은걸 어떻게할까. 중복자료 지웠더니 성능이 오름. 이미 어그멘테이션 된 7장 냅두고 똑같은 강아지 사진 싹 지웠더니 성능 오름, 협업에 중점을 둬서 대회 실험은 막주에 달림, 시간이 부족, 모델 : eva-clip 사용 mim -> in22k -> in1k로 사용 믹스 프리시젼 트레이닝 eva clip -> 0.93 resnet regnetY - 코사인 어닐링 convnext 앙상블 소프트맥스 소프트보팅 하이퍼 파라미터 튜닝 gradCam 마지막에 적용함
목적이 분명해서 굳(점수보단 얻고자함을 정하기) 아쉬운 부분 : 이 모델을 선택한 이유와 같은 걸 명확히 뒀어야함. 실험빡빡 안됨, 모듈ㅇ르 저렇게 두지말고 if분기로 두는게 좋음. 모듈 윗 컨피그 저거 아 우리 잘했네… 컨피그를 따로 빼서 모델 셀렉터를 따로 둬서…!
- 5조 발표 : 팀 협업. 각자 할 파트를 고르게 분배, 전체적인 일정을 세세히 나눔. EDA 색있는것, 배경있는것 등 모델 결정 resNet, ViT -> CNN, viT -> 단일모델의 성능을 최대한 끌어올려 앙상블 페이퍼윗리더보드, 허깅페이스리더보드 참고해서 성능 좋은 모델 탐색
- 논문 탐색, 구조 탐색 공부
베이스라인코드에서 모델만 수정해도 잘 되더라
어그멘테이션, 데이터셋과 테스트셋이 비슷할 것이라 판단(노이지 데이터 다수), 최적 어그멘테이션 찾기 실험 등
같은 품종 찾기 -> 생성모델 (GAN 등) 로라
글씨 제거 -> OCR 사용 -> 오히려 흐릿, 글씨가 도움될수도
단순 그림 추출 어려움 -> TTA -> 시간 이슈
믹스업, 컷믹스
최종 앙상블
근거가 명확해서 좋다
- SOTA가 왜 좋은지 판단하며 사용
5. 스페셜 피어세션
- 자기소개 ( 김태균 천문학좋 취준생, 박진영 14조 대학원졸, 임홍철 19조, 장지우 10조, 전인석,
- 대회 어땠는지 ( 생각보다 덜나왔다.
- 모델 뭐 썼는지
김태균 : 클리포모델 이미지인코더 뽑아서 그 임베딩 바탕으로 mlp 만들어서 모델 제작하고 걔랑 임피젼트넷 스윕 viT등으로 앙상블 제출했다. -> 90.~ / 한 모델만 썼을땐 88 직접 손으로 제작? 가져온걸 좀 바꿨다. 전의학습 내부외부 증강해보자에 확 쏟았다…
박진영 : 여러 모델 뽑아서… 각 모델은 -> 90/ 앙상블해서 93.2~ 앙상블에 힘 쏟았다. 각 모델 다 크로스 벨리데이션 했다. 소프트 보팅 앙상블. 각 모델 웨이트 평균내서 뽑은 걸로 앙상블 햇을 때 -> 92.8 , 클립, 이피젼트넷, viT, 컨브넥스트, 레즈넷 등 사용 5개만 앙상블 가장 굳. 싹다짬뽕했을때 -> 93.3 떠서… 최종 여러모델 써서 일반화 잘 된 듯
임홍철 : 앙상블 말고 한 개 모델만 잘. 리사이즈 모델 224 다 뽑아서 200개 다 돌렸을 때 EVA가 가장 잘 나와서… 다른 파라미터 만져서 썼음. 얘만 트렌스퍼 러닝으로 마지막에 뭐 해서 -> 93.7 근데 다 짬뽕 앙상블 했을 때 94.7 어그멘테이션 시도 많이 했는데 별 효과 없더라 정확하게 보고 있어서… 데이터 똑같은거 많더라 선글라스 선글라시스 등 이상한 태그… 걍 포기하고 돌렸다. 강아지 50개쯤 제거했더니 성능올랐다! eva02_large_patch14_448.mim_m38m_ft_in22k_in1k k폴드하면 93까지 나올거다 1에폭에 8분? 아 처음에 팀모델 싹 돌릴때 2~3일 돌았다 에폭은 걍 얼리스탑핑 개선없으면 잘리고 다른걸로 돌게 이미지 삭제 프로그래밍 돌렷다 한 클래스에 같은 개 사진 50장이 있었음. 강아지 사진들을 얼추 지우고 돌렷더니 성능 좋더라.
장지우 : 개별적으로 하고싶은거 다 해봤다. 다같이 실험은 x. 다같이 계획 세우고 들어가는게 좋을듯. 각자 중점으로 둔 모델도 달랏음… 스윈티, 퀀트넷, 컨브넥스트 앙상블에 다 섞을 때 쟤네에 가중치 두고 돌림. 데이터 전처리 열심히함. 종횡비 클레이 두그레이 각종증강… 최종 컷믹스, 가우시안 노이즈
전인석 : 앙상블, 마지막에 모델 다 합침 컨브넥스트 이피젼트넷 레즈넷 전처리보단
- 스케줄러 효과 못봐서 안 ㅆㅆ다 로스최대한 낮추고 코사인 로컬인지 글로벌인지 구별하고 ㄱㄱ했음 원 사이클 쓰고 우 코사인 폭 커지는거 로컬인지
옵티마는 : 아담 sgd 두개로 차이 있나 봤다. 빨리내려가는거 vs 일반화 이므로 비교하며 제출햇다.!!
옵티마 : 아담w나 아담 별 차이 없어서 둘다 ㄱㅊ 스케줄러 걍 대충 로스 포컬로스? 가 가장 줫드라 크로스 엔트로피 안썼네…
-
완드비 어땠냐
-
주피터 vs 파이썬 스크립트 생각보다 주피터로 돌린애들이 있네…?
- 루트에서 pip 잘못하면 터지고
-
멀티프로세싱? cpu건드는거 잘못해서 돌리니까 터지고
- 서버 부족했는지
- 간단한 앙상블 등은 코랩에서 했다. 파라미터만 빼오면 되니까. 확률값 체크포인트 따로 저장했다.
- 로컬에선 전처리, 이미지 증강 많이 건드렸다. GPU 써야되면 걍 돌아가는지만 확인하고 서버에서는 최대한 수정 덜 하게!!