본문 바로가기

boostcamp AI tech/WeeklyReviews

Boostcamp AI - week6,7

728x90

그동안 배운 이론들을 가지고 써먹을 때가 됐다. 배운 이론들을 구현해보며 점검하고 그동안 읽어온 좋은 코드들과 얼마나 가깝게 구현을 할 수 있을까 기대되는 한 주였다.

역시 실험을 하는건 정말 괴롭다. 학습이 시작되면 두 손 모아 기도하는 것 외에 할 수 있는게 없다. 짧은 시간 내에 실험 결과들을 바탕으로 옳은 결정들을 찾아가는게 AI 연구자의 가장 중요한 스킬이 아닐까 싶다.

나는 늘 이 능력이 부족하다고 생각했었다. 이번에야말로 극복할 수 있는 좋은 기회다.

숫자에만 집착하지 말고 이 leader board 경쟁을 통해서 내가 시도해 보아야할 경험들을 다 겪었는지에 집중하자.

반드시 이 실험 지옥에 대한 트라우마를 극복하겠다.

 

1. project 구조화, 전 과정에 대한 이해 ✅

     - dataset -> data_loader (pre-processing, tokenizing) -> model -> train, test, inference

2. 실험하기 편한 환경을 설정할 수 있는가? ✅

     - checkpoint, log, model load

     - yaml config로 src변경 없이 다양한 실험 자동화

3. data_augmentation을 할 수 있는가? ✅

4. 여러 Pretrained model 비교 ✅

5. loss를 여러가지로 바꿔서 구현할 수 있는가? ✅

    - l1, mse, cross_entropy

6. hyper parameter를 바꿔가면서 실험 전략을 세울 수 있는가? ✅

7. pretrained model을 frozen 시키거나 layer를 custom할 수 있는가? ✅

8. 논문을 참고하여 아이디어를 접목시킬 수 있는가?  ❎

9. WandB , sweep 기법 등을 사용해 보았나? ✅

10. Ensemble을 활용해서 성능을 높여보았나? ✅  

 

첫 대회가 마무리 됐다. 최종 등수가 만족스럽지는 않다.

대회가 끝나고 한동안은 아쉬움이 너무 컸다. 뭘 극복했어야 했을까? 어디서 내가 무의미한 gpu돌리기에 빠졌을까?

빠르게 슬퍼하고 이젠 1등 팀, 마스터님으로부터 뭘 배워야 할지로 나아가보자.

- prediction 결과를 분석해서 Outlier들을 살펴보기 (안되는 녀석들에 대한 분석이 미흡했다.) 내 시스템의 약점을 찾으면 거기서 효과적인 데이터 증강을 시도해볼 수 있다.

- 데이터에 대한 꼼꼼한 분석이 없었다.

- 나는 3개 모델을 섞었는데 1등 팀을 보니 5개 이상의 모델을 섞었다.

- LLM을 활용한 데이터 증강(이번 대회에서는 금지였지만 항상 염두하자)

- 모델의 마지막 hidden vector들을 0,1 판단하도록 활용할 것인지, 3.8처럼 regression시킬 것인지, "3.8입니다"를 만들도록 할 것인지?

- 아무런 학습을 하지 않아도 initialize를 잘만 설정해도 성능을 높일 수 있다. (random seed를 건드려보지 않은 것 같다)


취업특강

더보기

- 상상력은 적어도 인간이 볼 수 있는 시각에서 출발한다. 갑자기 별똥별처럼 번쩍 하고 나타나지 않는다.

- 정답이 없는 예술, 복잡한 사실관계의 추론이 필요한 사업분야, 사람이 하지 않으면 무의미한 스포츠, 공감의 분야는 아직 컴퓨터가 따라오지 못하고 있다.

 

- 나는 모델링 뿐 아니라 필요한 그 외에 일을 기꺼이 할 수 있을까? 나는 결과가 안나와도 인내심을 가지고 버틸 수 있는가? -> researcher?

- 기술이 주는 실생활에서의 변화가 더 재미있는가? 비즈니스에 관심이 있는가? -> engineer?

 

- 기회가 닫는대로 마구마구 도전하라. 첫 선택이 마지막 선택이 되지 않는다. 첫 결정의 부담으로 내딛는걸 두려워하지 마라.

- 하나의 기회가 다른 기회의 문을 열어준다.

- 시간이 지나봐야지만 선택의 결과를 알 수 있다. 시작하고나서 그 선택을 옳은 선택으로 만들 수 있다.

 

- 인생의 사다리가 한길로 위로만 쭉 뻗어있다고 생각하지만. 2D 격자형이다. 내려갈수도 옆으로 갈 수도 다시 올라갈 수도 있는 형태다. 

 

- 인재 시장은 냉정하다. 실력에 대한 평가가 아주 냉혹하다. fundamental을 키우자.

- 나의 경험,경력이 이 회사에 이렇게 보탬이 될 수 있다. (hard skill, soft skill 부각)

- "이런이런 경험 했습니다"도 좋지만 그 경험에서 이런 "성과"를 냈습니다. 부각

- Modeling외에 일이 너무너무 많다. 나는 인턴십동안 이걸 아주 크게 느꼈다 이거 부각

 

- 내가 가지고 있는 능력이 80 이라면 '나는 40만큼 준비된 것 같아..."라고 생각하지만 실제로는 100을 가지고 있을 수 있다.


Introduction to NLP task : https://jsdysw.tistory.com/488

PyTorch Lightning Preview : https://jsdysw.tistory.com/489

Tokenization : BPE, hugginface_tokenizer, sentencePiece, KoNLPy

Hugging Face : 다양한 도메인의 많은 기학습 모델들이 오픈소스로 공개되어 있는 곳이다. 까다로운 beam search, tokenization등의 utility들도 잘 구현되어 있으므로 이를 잘 활용해서 생산성을 배로 높여보자.

Github Guide : https://jsdysw.tistory.com/494

Representation Learning & Self Supervised Learning : https://jsdysw.tistory.com/493

728x90
반응형

'boostcamp AI tech > WeeklyReviews' 카테고리의 다른 글

Boostcamp AI - week9, 10, 11  (1) 2024.01.02
Boostcamp AI - week8  (0) 2023.12.26
Boostcamp AI - week5  (1) 2023.12.06
Boostcamp AI - week4  (0) 2023.11.27
Boostcamp AI - week3  (1) 2023.11.20