Boostcamp AI Tech 4기 10주차 회고록(11/27)

유상준·2022년 11월 27일
1

10주차 회고록

dkt 대회 2주차 회고록


이번주는 어떤주였나?

dkt 대회를 본격적으로 시작하게 된 주였다. 팀원들과 오프라인으로 만나 멘토링을 준비하고 dkt 대회에 대해서 계속해서 회의를 진행했다.

월요일 : leet code week 319 문제 리뷰 (이진 트리를 level 별로 정렬하는 문제가 기억에 남는다)

화요일 : 베이스라인 코드 재구성 완료, 오프라인 미팅

수요일 : FE 어느정도 완성, wandb sweep, pytorch lightning 적용

목요일 : FE,dkt 모델 마무리

금요일 : 부스팅 모델 도입, 다음주는 부스팅 마무리되면 gcn 들어갈듯


나는 무엇을 했나?

이번주는 거의 FE(Feature Engineering)에 대한 고민을 하며 미션에 이용됐던 FE 기법들을 확인하고 어떻게 활용하면 좋을지 생각했던 것 같다.

  • 학생별 평균 정답률 분포를 확인하여 세가지 군집으로 묶어 학생의 실력을 나타내는 feature 추가 0.4, 0.8을 기준점으로 잡아 기준점보다 낮거나 높으면 실력이 낮거나 높음을 의미

  • 문제별 평균 정답률 분포를 확인하여 세가지 군집으로 묶어 문제별 난이도를 나타내는 feature 추가 0.4, 0.8을 기준점으로 잡아 기준점 보다 낮거나 높으면 문항 난이도가 어렵거나 쉬움을 의미
  • 평균보다 많이 노출된 (비교적 많이 노출된) 태그들이나 문제들의 경우 정답률이 더 높게 나타나는 경향이 보여서 feature로 추가 주황색 : 적게 풀린 태그, 파란색 : 많이 풀린 태그
    확연히 분포 차이가 보이기 때문에 정답률 예측에 분명 도움될 것이라고 생각
  • Timestamp 컬럼을 이용하여 해당 문제를 푼 시간을 계산하여 컬럼으로 활용했고, 너무 짧은 시간내에 푼 문제들은 찍었다고 간주 (정답률이 굉장히 낮았기 때문에) 1~4초간 풀었던 문제는 심지어 평균 정답률이 0.3도 안됐다.
  • Baseline 코드를 수정했기 때문에 그에 대한 숙지를 통해 이해도를 높였고, LSTM, RNN 계열의 모델에 대한 이해도 또한 높였다.
  • Wandb sweep을 이용해서 어느정도 최적의 파라미터를 찾아냈고, 그 파라미터를 모델에 적용시켜 최대한 성능을 끌어올리는 작업도 진행했다. (0.8의 벽을 뚫었다)

느낀점

이번주는 강의를 학습하기보다는 이것저것 만져보면서 프로젝트의 진척도를 높이게 된 주 같다. 팀원들과의 분업도 착실히 되어가고 있는 것 같고, 무엇보다 다들 열심히 자기 자신이 할 일을 찾아서 한다는 느낌을 받게 됐다.

특히 PM이자 모더레이터 역할을 하고 있는 팀원이 몇몇 팀원에게 어떻게 하면 좋을지 전체적인 방향을 잡아주면, 그 안에서 자신이 할 수 있는 일에 대해서 최선을 다하고자 하는 모습을 보고 자극을 많이 받았다.

내가 주로 맡게 된 역할은 FE라고 할 수 있을 것 같아서, 나도 최대한 많고 좋은 feature들을 만들어 내려고 노력했고, FE를 진행한 후에 성능이 올라서 기분이 좋았다 (wrap-up 리포트 작성시에 구체적으로 기본 데이터와 FE후의 데이터간 성능을 비교하면 좋을 것 같다.)

Wandb Sweep을 이용해 봤는데, 되게 신기했다. 특히 nohup을 이용해서 로컬 컴퓨터가 꺼져도 서버 백그라운드에서 계속 작업을 진행할 수 있었는데, 처음 사용해 본 기능이라 더욱 신기했다. 앞으로도 많이 사용하게 될 것 같다.

두런두런 3회차 시간을 100% 집중하며 듣지 못한 것 같아서 시간이 나면 빠르게 배속으로라도 돌려보면서 내용을 정리하면 좋을 것 같다.

컴퍼니데이에서 두개의 회사에 대해 설명을 듣기도 하였는데, 현업자들에게 궁금했던 점을 물어보면서 궁금증을 해소하기도 하였고, 어떤식으로 데이터 분석이 운영되고 있는지도 들었다. 아직까지는 혼자서 데이터분석을 진행하고 비즈니스에 제대로 도입하지 못했다는 회사도 있어서 실력있는 인재가 된다면 내가 주도적으로 한 프로젝트를 이끌 수도 있지 않을까 생각하게 되었다. 그런 점에서 멘토님이 PM 경험을 해보라고 했던 부분이 더욱 더 공감되었다.

학습정리를 잘 못한 주이기도 했는데, (강의 내용을 학습하지는 않았지만) 그 날 하루하루 내가 어떤 일들을 진행했고 어려움은 무엇이었는지, 어떻게 해결했는지 등을 적어 놓으면 wrap-up report 작성할 때에도 도움 되고 프로젝트가 끝난뒤에 내가 무슨 역할을 맡았는지, 어떤 문제를 해결했는지에 대해 좋은 포트폴리오를 만들 수 있을 것 같아서 그렇게 해야겠다고 생각했다.

profile
데이터 사이언티스트 지망생

0개의 댓글