목차
학습 정리 & 배운점
# 231211
이날 하루는 포스팅을 했다.
# 231212
학습 정리 및 배운점 📚
- 3강 듣기
- latent factor model: 유저나 아이템을 축약된 벡터 공간에 표현할 수 있다는 아이디어.
- SVD는 수학적으로 분해, MF는 SVD의 일반화된 버전으로 유저와 아이템 행렬의 선형적인 관계를 SGD로 캡처하여 학습하는 방법. MF를 ALS로 학습하면, loss가 parameter에 대해 convex 형태가 되어 학습이 더 쉬워지며, 병렬 처리가 가능해져 더 효율적인 학습 가능함
- hybrid 접근법: weighted, switching, mixed 까지는 이해가 가는데, Feature combination, augmentation 등은 이해가 잘 안됨
- GBTM 방식 중 GBM을 발전시킨 세 종류의 모델(XGBoost, lightGBM, CatBoost)에 대해 학습함. 세 모델은 추천 문제에서도 robust하며, 높은 성능을 내는 편이라고 함 -> 이번 대회에도 적용해봄.
- 부캠 살롱을 통해 다른 캠퍼들과 관심사를 서로 공유함. 몇 팀이 결성됨에 따라 조바심도 나고, 신중해야할 것 같기도 하고 고민이 많았던 날이었음
# 231213
학습 정리 및 배운점 📚
- 무사히 팀업을 완료함. 같이 잘해보아요 🥰
- Book Rating 대회의 리더보드가 오픈된 날. 월화 동안 많은 고민을 했지만, GPU서버를 받아 세팅하니 시간이 많이 흘렀다.
- 우선 잘 작성되어 있는 베이스 코드 중 배웠던 것들을 위주로 뜯어보고, 재구성해보기로 했고 밤 늦게까지 뜯어보며 1회 제출을 해보았다. 공지해주신 loss 대비 높게 나온 감이 있어 앞으로 어떻게 실험 관리를 해야할지 고민이 되는 날이었다.
- 내가 분석한 모델은 CNN-FM로, 배운 개념을 아주 약하게 응용한 모델이었음. 책표지 이미지에서 CNN을 통해 특성을 추출하고 ID 임베딩과 내적을 통해 rating을 예측하는 모델이었음. 내손으로 다시 모델을 구현하려고 보니 np.cumsum 등을 활용하는 곳에서 익숙하지 않았는데, 이번 기회를 통해 FM vs. FFM의 개념을 구현을 통해 다시 한 번 알 수 있게 됨
# 231214
학습 정리 및 배운점 📚
- 팀원들과 Git을 통한 프로젝트 관리 방법에 대해 오랜 시간 논의하고, 앞으로 어떤 실험을 할 것이며, 공유를 어떻게 할지 논의함.
- 혼자하는 것보다 속도는 덜 나지만, 같이 하게 되어 서로의 지식을 공유하고, 협업을 위해서 어떻게 git을 관리할 것인지에 대해 충분히 생각해볼 수 있는 시간이 되어 좋았음.
- 팀원 중 한 명이 manual parameter tuning으로 당일 리더보드 1위를 했는데, 나도 그러고 싶다 + 음..저 모델이 여기서 잘 동작하는 이유는 뭘까 생각해보게 됨.
- 다음주까지 cheatsheet draft를 만들고 구체화해서 1월 내로 전체에 배포해봐야겠다는 다짐(과 실행)을 한 날
- 그리고 앞으로 어떤 식으로 대회에 임해볼지 계획해보았다. 아직은 대회 중이니 말을 아껴야겠지만, 계획한 거 다하면 그것만으로도 나 스스로 정말 잘했다고 할 수 있을 것 같다.
# 231215
학습 정리 및 배운점 📚
- 지난 밤에 학원을 다녀와서 바로 해보고 싶은 시도를 해봤고, 가능성이 보였다.
- 오전에 FM vs. FFM과 nn.Parameter vs. nn.Embedding의 구현에 대해서 이해가 가도록 팀원들에게 설명해주었는데, 모두 이해가 잘 가고 좋았다고 해서 뿌듯했다! 앞으로도 도와가면서 나도 공부 더하고 그렇게 계속 해보쟈!!
- 실험관리 툴을 세팅하니 확실히 결과를 시각적으로 확인해볼 수 있어서 매우 편한 것 같았다.
- Git issue, pull request 계속해도 conflict 도 나고 꼬이고 하지만, 그래도 하나씩 얻어가는 것 같아 재미있다.
- 매일 무념무상으로 git pull... 했는데 이제는 git fetch.. git merge or rebase.. 의 습관으로 바뀌어간다.
- git checkout vs. git switch + git restore 정확히는 이해되지 않았지만, 브랜치간 전환에는 switch, 워킹 디렉토리의 파일 수정 사항을 head commit으로 바꿀 수 있다는 정도만 알았다. 애초에 checkout을 이 용도로만 쓴 것 같은데 혹시 다른 기능이 더 있었던 건가..?
5주차 총평 🤔
극비도 있으니까 이번주는 조용히 마무리, 다음주 랩업 리포트 잘 제출하기 위해 지금까지 한 작업들을 차곡차곡 잘 정리해두어야겠다. 혼자는 작은 대회 몇 번 참여해봤으나, 같이 하는 대회는 또 처음이라 어렵기도 재미있기도 하다. 같이 마음 맞춰서 성장도 잘하고, 좋은 성능까지 덤으로 따라오면 좋겠다!
'회고 🤔 > 네부캠 AI Tech' 카테고리의 다른 글
[네부캠 AI Tech] 8주차 학습 정리 🤓 (1) | 2023.12.29 |
---|---|
[네부캠 AI Tech] 7주차 학습 정리 🤓 (1) | 2023.12.22 |
[네부캠 AI Tech] 6주차 첫째 날 학습 정리 + 일기 (2) | 2023.12.12 |
[네부캠 AI Tech] 5주차 학습 정리 🤓 (1) | 2023.12.08 |
[네부캠 AI Tech] 4주차 학습 정리 🤓 (0) | 2023.12.01 |