개발자노트/네이버 부스트캠프 AI
-
[부스트캠프 AI tech] 12주차 주간회고 (01/22~01/26)개발자노트/네이버 부스트캠프 AI 2024. 1. 26. 20:47
💗한 주의 평가 OCR을 처음 경험해봤다. 문서 이미지가 이전에 경험해 본 이미지들과 특징이 달라서 초반에는 뭘 해야할지 헤메었다. 일단 대회의 기본 세팅을 해놓고 베이스 코드로 학습을 진행했는데 기본 세팅만으로 F1 score 0.8이 넘었다. 추론 결과를 시각화해서 살펴보니 무엇이 문제인지, 성능을 높이려면 어떤 문제에 포커스를 맞춰야 하는지 알 수 있었다. 그리고 팀원들과 즐겁게 회의하면서 진행해서 좋았다. Annotation 가이드를 정할 때 정말 다양한 케이스가 많아서 룰을 정하는 것이 쉽지 않았다. 또 룰은 정했더라도 이것을 가이드 문서로써 언어로 알아듣기 쉽게 표현하는 것도 어려웠다. 예시 이미지를 첨부하면 이해에 많은 도움이 된다. 개발자로서 문서 표현 능력 또한 중요한 것을 다시금 실감하..
-
대회가 끝났지만 DINO에 미련남아서 학습한 후기개발자노트/네이버 부스트캠프 AI 2024. 1. 23. 11:43
대회 마감 이틀전 DINO를 만났지만 backbone을 swinL로 하니 batch size를 1로 해야 겨우 CUDA out of memory 없이 돌았다. 어제 밤에 돌리고 약 14시간 정도만에 학습이 완료되었는데 제출하려고 하니 제출버튼이 비활성화 되었다. 하지만 제출을 못하더라도 눈으로라도 확인한 결과가 굉장했다! DINO가 배터리를 굉장히 잘 잡는다. 아래 그래프에서도 확인 가능하다. 실험 그래프 다른 모델들과 다르게 학습하면서 점점 우상향 하는 그래프는 아니고 심지어 하향하는 것처럼 보이기도 한다. 그러나 왼쪽의 y축 값을 보면 mAP 50의 값이 0.75~0.77사이로 큰 폭으로 감소하지는 않는다. 다른 클래스들의 결과도 상당하다. 다른 모델들과 비교하면 차이가 확실히 보인다. small은 ..
-
[네부캠 AI tech] 11주차 주간회고 (01/15~01/19)개발자노트/네이버 부스트캠프 AI 2024. 1. 19. 19:33
💗한 주의 평가 Detection 대회 마지막 주간이었다. 학습을 돌리느라 늦게 자고 생활 패턴이 많이 안 좋아졌다. 그러나 이번 대회를 통해 얻은 점도 많다. 지난 대회는 정말 정신 없이 끝나서 제대로 알지 못하고 넘어간 부분이 많았는데 이번에는 validation, wandb, mmdetection 등 제대로 학습하고 경험할 수 있어서 좋았다. 물론 아쉬움이 남는 부분도 많았지만 지난번 부족한 부분을 채울 수 있어서 스스로 만족한다. 📖주간 학습 내용 MMDetection Neck, FPN 1 Stage Detectors 앙상블 기법 - NMS, WBF Model - Cascade R-CNN, ddq, dino 2024.01.15 - [개발자노트/네이버 부스트캠프 AI] - (MMDetection) ..
-
나의 삶의 지도 '개발자 진화 과정'개발자노트/네이버 부스트캠프 AI 2024. 1. 16. 15:49
이번에 부스트캠프 두런두런세션을 통해 삶의 지도를 작성해보았습니다! 글로 쓰다가는 책 한권이 될 것 같아서 아이패드로 슥삭 그려보았습니다. (〃^▽^〃)ゝ 10년전 20년전에는 정말 제가 개발자가 될 것이라곤 1도 생각해본적이 없었어요. 집에있는 어린이 대백과에서 영어, 컴퓨터는 엄청 깨끗하고 인체, 우주, 예술만 계속 봤었으니까요. 그런데 삶이란 정말 알다가도 모르는 것 같습니다. 아마 10년 후, 20년 후에도 지금의 제가 생각지 못한 일들을 하고 있을 수도 있겠네요!
-
모델 앙상블 기법 - NMS, WBF개발자노트/네이버 부스트캠프 AI 2024. 1. 16. 11:47
딥러닝 결과의 성능을 높이기 위해서 여러 모델의 예측결과를 앙상블 한다. 앙상블에도 여러가지 방법이 있는데 NMS, WBF를 사용하고 정리해본다. Non-Maximum Suppression (NMS) 겹치는 부분의 정도가 일정 threshold 이상인 박스들 중에서 가장 확률이 높은 박스를 선택하고 나머지 겹치는 박스를 제거하는 기법 장점 : 간단함. 중복 제거를 효과적으로 할 수 있음. 단점 : 가장 확률이 높은 박스를 선택하기 때문에 다양한 객체를 탐지하기 어려움, 임계값에 민감하여 임계값 설정이 중요함. Weighted Boxes Fusion (WBF) 각 모델의 예측에서 박스의 좌표를 가중 평균하여 최종 예측을 생성함. 각 박스에 대한 예측 점수를 가중치로 사용하여 모델 간의 성능 차이를 고려함...
-
[네부캠 AI tech] 10주차 주간회고 (01/08~01/12)개발자노트/네이버 부스트캠프 AI 2024. 1. 12. 20:58
💗한 주의 평가 코어타임에 거의 쉬지않고 컴퓨터 앞에 있었다. 가장 오랫동안 집중했지만 강의는 오히려 조금밖에 못 들었다. 대회관련해서 해봐야할 것 들이 많았고 시간이 오래 걸렸다. 그래도 첫 대회 경험 덕분에 익숙한 부분은 빠르게 할 수 있었다. 지금 어려운 부분들도 나중에 더 빠르게 할 수 있을 것이다. 새롭게 배우는 내용들을 잘 정리해놔야겠다. 라이브러리를 처음 배우는 것은 새로운 나라를 여행하는 것과 비슷한 것 같다. 처음에는 낯설고 어렵지만 익숙해지면 여러가지 경험을 할 수 있게 된다. docs를 익숙하게 사용하는 것을 배웠다. 역시 공식문서를 잘 봐야하고 영어는 필수다. 📖주간 학습 내용 MMDetection 3.x 버전 사용하기 Config hook 경진대회 중간 점검 git 협업 - iss..
-
(작성중) Grad CAM개발자노트/네이버 부스트캠프 AI 2024. 1. 12. 20:40
CAM Class Activation Map 이미지 분류 모델에서 이미지의 어느 부분을 보고 class를 예측했는지 시각화 CNN의 마지막 레이어를 FC layer로 Flatten 시키면 각 픽셀들의 위치 정보를 잃게 됩니다. 그래서 Classification의 정확도가 높더라도, 우리는 그 CNN이 무엇을 보고 특정 class로 분류했는지 알기 어렵습니다. Global Average Pooling을 적용하면 특정 클래스 이미지의 Heat Map을 생성할 수 있고 그 Heat Map을 통해서 어떤 것을 보고 분류했는지 이해할 수 있게 됩니다. 그러나 CAM을 사용하기 위해서는 GAP를 사용해야 합니다. 이를 해결하기 위해서 Grad-CAM이 나왔습니다. Grad-CAM Gradient-Weighted C..
-
[wandb] 팀 세팅, mmdetection 3에서 팀 초대하는 방법개발자노트/네이버 부스트캠프 AI 2024. 1. 12. 13:52
1. 먼저 wandb 좌측 패널 맨 아래에 있는 Create new team을 클릭합니다. 2. 팀 이름을 설정하고 Create Team 을 눌러줍니다. 3. 팀 생성 후 팀원들을 초대합니다. wandb 가입한 이메일로 초대해줍니다. 4. 각자의 환경에서 relogin 하고 API키를 등록해줍니다. wandb login --relogin 4. 좌측 패널에서 Create new project 를 눌러서 새로운 프로젝트를 만들고 Project Owner에 만들어놓은 팀을 선택합니다. 5. config 파일에 아래와 같은 코드를 추가합니다. 여기서 'project'에 4번에서 만든 프로젝트 명을 입력해 주면 됩니다. 'group'에는 만들고 싶은 그룹명을 입력합니다. 'entity'에는 팀 이름을 입력합니다...
-
[fix] mmdetection + wandb 연동 후 에러 해결개발자노트/네이버 부스트캠프 AI 2024. 1. 9. 23:13
증상 학습코드를 실행하면 아래와 같은 에러가 발생함. wandb: ERROR Dropped streaming file chunk (see wandb/debug-internal.log) 예상 원인 기존에 wandb 연동하던 파일이 아닌 다른 파일에서 wandb 연동 코드를 실행했더니 이후로 에러가 발생함. 내부에서 꼬인 것으로 예상됨. 해결방법 1. wandb 재설치 pip uninstall wandb pip install wandb 2. wandb가 연동될 당시 자동으로 생성된 wandb폴더를 삭제 후 다시 실행 +만일 주피터 노트북이면 파일을 닫았다 다시 열어야 패키지 업데이트 적용이 됨.
-
[네부캠 AI tech] 9주차 주간회고 (01/03~01/05)개발자노트/네이버 부스트캠프 AI 2024. 1. 5. 20:05
💗한 주의 평가 너무 어려워서 이 길이 맞나....라는 생각이 진지하게 들었다가, 그래도 일단 지금은 제대로 해봐야지 해보고 나서 결정해도 안 늦다는 생각으로 조금씩 해나가는 중이다. 새로운 대회를 시작하면서 또 모르는 게 너무 많기에 벽에 부딪힌다. 그러나 이 고비만 넘으면 재밌어질 것 같다는 생각이 든다.👏 지난번엔 서버 세팅하는 것부터 오래 걸렸는데 그래도 경험이 쌓이니 그런 부분은 빨리 진행되는 것 같다. 계속해서 시도하고 경험하는 것이 중요하다. 📖주간 학습 내용 새로운 팀과 새로운 시작 그라운드 룰 세팅 적응하기 Detection 대회 목표설정 git을 잘 활용하기 지난 대회의 아쉬운 점을 보완하기 중위권 이내에 들기 업무 분담 wandb 연결 성능 지표 코드 추가 EDA, 데이터 분석 멘토님..