24주차

J. Hwang·2025년 1월 19일
0

Boostcamp AI Tech

목록 보기
24/25

Day 1. Monday

👶 Mentoring

  • 해커톤 논의
    • 결국은 LLM의 경량화 문제?
    • 방향성 : 성능을 높이는 방향으로 갈 것인가 용량을 줄이는 방향으로 갈 것인가
    • 방법론을 탐색하는 것이 중요 (실험은 1-2명으로 제한해도 될 듯)
    • 수요일 오후 1시에 다시 멘토링

🙌🏻 Peer Session

  • SAM2 Demo 활용 발표
    • 복잡하게 변하고 글씨 색과 비슷한 환경에서 SAM2가 객체(글씨)를 잘 인식하는가?
    • 수어 영상 활용
  • 해커톤 논의
    • qwen2는 train 코드가 없어서 이용하기 어려울 듯 함 → SALMONN 활용에 집중
    • 여러 config가 있는데 어떤 과정에서 뭘 이용해야 하는지?

📋 Memo

큰일났다. 정말로 뭘 어떻게 해야할지 모르겠다. 주말동안 kaggle 페이지 살펴보면서 대회 흐름이랑 베이스라인 모델 논문 살펴보고 코드도 살펴봤는데 아직까지 구체적으로는 무엇을 어떻게 해야할지 모르겠다. CV에서 갑자기 오디오나 LLM을 다루려니 당연히 어려운 것이 맞지만 가이드라인도 전혀 제공 안 되고 팀원들도 다 0에서 시작하니 잘 될 기미가 안 보인다. 멘토님도 처음 보시는거라 더 막막한 느낌이다.
그것도 문젠데 서버 업그레이드해서 준다는걸 아직도 (현재 18시 42분) 안 주고 있다. 500GB 데이터까지 다 업로드해서 주느라 늦는거겠지? 그것도 아닌데 아직 안 주는거면 진짜 말이 안 된다. 서버가 있어야 뭐라도 돌리고 에러라도 해결하면서 진행할텐데 그렇지를 못하니 서로 추측성 논의만 하고 있다. 제발 내일 팀원들 오프라인 미팅하는데 같이 많이 논의할 수 있도록 서버가 얼른 준비되면 좋겠다.


Day 2. Tuesday

🙌🏻 Peer Session

  • NCP 서버 세팅
    • 각종 모듈 설치
    • 가상환경 설정 (pyenv, venv)
    • audio 데이터 업로드
    • kaggle 데이터 업로드
    • 라이브러리 git clone

📋 Memo

오늘 해커톤을 논의하기 위해 오프라인으로 팀원들을 만났다. 이번에는 구글 스타트업 캠퍼스라는 무료 공유 오피스에서 만났는데, 장소 자체는 좋았는데 너무 춥고 떠들면 곤란할 것 같은 분위기...그런데다 아직도 서버를 안 줘서 오전에는 각자 논문 찾으며 각자 일하다가 점심 먹고부터는 좀 돌아다니다 스타벅스에 자리를 잡았다. 커피 시키고 나니 서버가 열려서 그 때부터는 열심히 서버 세팅!! 서로서로 봐주면서 서버에 접속해보고 필요한 패키지 깔고 라이브러리 git clone해오고 나는 주로 pyenv랑 venv 가상 환경 설치 역할을 했다. 그렇게 오후를 보내고 나니 피어 세션 시간도 다 지났고 조금 일찍 파하고 회식을 하고 헤어졌다. 내일부터는 다시 빡집중해서 코드 돌려볼 수 있으면 좋겠다.


Day 3. Wednesday

🙌🏻 Peer Session

  • audiolm-evaluator 실행해보기
    • 트러블슈팅
Traceback (most recent call last):
  File "/data/nota/audiolm-evaluator/evaluate_salmonn.py", line 135, in <module>
    main(args)
  File "/data/nota/audiolm-evaluator/evaluate_salmonn.py", line 117, in main
    ref = samples["text"]
KeyError: 'text'
  • 점수를 매기기 위해 학습 json의 'text'를 참고하는 것이었는데 현재는 필요없는 task이므로 salmonn_utils.py의 if self.task is not None: entity['text'] = ann['text'] 부분을 주석 처리 하고 python evaluate_salmonn.py --task aac --skip_scoring 옵션을 추가해서 파일을 실행해서 해결.
  • audiolm-trainer 실행해보기
    여러 에러가 발생하긴 했지만, 같이 트러블슈팅하면서 마침내 동작시키는데 성공!

📋 Memo

오늘 우리 팀 알차게 달렸다! 오전에는 내가 제안해서 evaluator부터 돌려보고, 이슈가 많이 생겨서 같이 달라붙어서 해결한 끝에 돌리는데 성공해서 리더보드 제출해보고, 오후부터는 train.py 돌리는 방법 시작했다. 이것도 이슈가 많이 생겼지만 끝까지 붙어서 분석해서 성공적으로 동작했다. 뿌듯하다.
그리고 두런두런 마지막 시간이라 슬펐다. 변성윤 마스터님이 커리어 관리에 대해서 말씀해주셨는데 언제나 그랬듯 정말 알찼다. 더 이상 공식 교육에서 만나지는 못하지만, 정말로 성공해서 현업에서 직접 만나 팬입니다!!! 하고 말할 수 있도록 열심히 해야겠다.


Day 4. Thursday

🙌🏻 Peer Session

  • 대회 진행 상황 논의
    • 학습이 왜 이렇게 오래 걸리나?
    • validation step 조절의 필요성
  • 오늘의 할 일
    • 분산 학습 구현
    • wandb 연동
    • 양자화 기법 공부
  • audiolm-evaluator v1.1으로 업그레이드
  • 분산 학습 & validation step = 30으로 조정 후 stage 1 학습이 epoch 5 정도에서 갑자기 종료됨...
    찾아낸 대안으로 1) train.py에 export TOKENIZERS_PARALLELISM=false 추가하고 2) 학습 시에 nohup torchrun train.py & disown 옵션을 사용하여 코드를 돌림.

📋 Memo

너무 늘어지는 학습을 가속화해보고자 일단은 분산 학습에 매달렸다. GPU가 2개인데 하나만 쓰고 있는 것이 아깝기도 하고. 분명 코드를 뜯어보니 DDP를 구현한 흔적이 있는데 안 되고 있으니 이상했다. 한참 코드 뒤져보고 ChatGPT한테 물어보고 하니 이때까지 병렬 학습을 할 수 있었던 것을 에러가 난다는 이유로 GPU 하나로 학습하도록 코드를 고치고 있었던 거였다ㅋㅋㅋ알고보니 분산 학습을 돌리려면 python이 아니라 torchrun으로 실행해야 했다. 이건 내가 해결해서 (사실 ChatGPT지만...) 뿌듯했다!! 학습 잘 되고 나면 양자화 실험 많이 하고 다른 모델 탐색 등 부지런히 해서 경량화에서도 좋은 성과낼 수 있도록 노력해야겠다.
오늘은 포트폴리오 특강을 들었는데 역시나 좋은 포트폴리오는 어찌 어찌 잘 써서 만드는 것이 아니라 그냥 스펙이 빵빵하면 (질 좋은 프로젝트를 많이 했다면) 잘 나오는 것이라서 허무하고 우울해졌다...해커톤에서 어떻게든 좋은 경험을 만들어서 좋은 포트폴리오를 만들도록 노력해야겠다.....


Day 5. Friday

👶 Mentoring

  • LLM이 가장 크기 때문에 이를 경량화 하는 것이 key
  • num_workers 수 늘리기 (코어 몇 개?)
    보통 DDP는 한 gpu로 모두 감당을 못할때 (out of memory) 쓰는 거니까 workers 수 늘려서 하나의 gpu에 돌릴 수 있으면 그렇게 해서 최적의 학습 속도를 찾는 것이 좋다. + batch size 조절
  • json과 오디오가 잘 일치하는지 살펴봐야한다 (EDA 필요성)

🙌🏻 Peer Session

  • stage 2 학습 시작
  • 이번에는 v1.1로 수정된 버전의 evaluator를 돌림. 결과는 ASR 값이 지나치게 낮게 나옴. (llama 1B라서 그런 것인지?)
  • 분산 학습 & 비분산 학습 방법 연구
  • 학습 시 num_workers 적절한 수치 연구 → 64?
  • wandb 세팅
  • 역할 분배
    • dataset 검토
    • 경량화 관련 정보 및 논문 탐색
  • 추후 계획 수립

📋 Memo

이제 해커톤 1주일차이다. 분명 본격적으로 경량화는 시작도 안했는데 왜이리 하기가 싫은 느낌이 들까ㅠ 물론 초기 서버 세팅이랑 트러블슈팅이 충분히 힘든 일이긴 하지만 본격적인 일은 시작도 안 되었는데 이렇게까지 의욕이 없으니 이상하다. 그래도 주말동안 차근차근 공부하고 생각 좀 정리해서 다시 열심히 할 수 있도록 해야겠다.

profile
Let it code

0개의 댓글