JUINTINATION
ETRI 2024 동계 연구연수생 - 7주차 본문
7주차 후기
설 연휴는 눈 깜빡하니까 사라져있었고, 에트리는 벌써 6주차라는게 믿기지 않을 정도로 시간이 참 빠른 것 같다. 퇴직 관련 서류 제출 안내 메일도 날아오고.. 이제 다시 대학생이 되는 날이 진짜 얼마 남지 않았다니..
늦은 환영회
월요일에 출근하니까 메일이 한 통 와있었다. 오늘 저녁 식사 괜찮은지에 대한 메일이었다. 물론 며칠 전에 보내신거긴 하지만 회사 인트라넷 메일로 보내신거라 확인을 못 한 것일 뿐이다. 아무튼 우리는 산촌쌈밥이라는 곳에서 회식을 하게 되었다. 뭔가 술을 먹을 것 같아서 점심시간에 차를 집 앞에 주차해두고 버스타고 다시 돌아올까 고민중이었는데 같이 가는 동기 형이 내가 차가 있다는 사실을 박사님께 말씀드린 것 같다. 그래서 박사님이 내 자리로 오시더니 "인턴들은 학생 차 타고 이 주소로 6시까지 오면 될 것 같아요~" 하셔서 운전을 해서 갔다.
아니나 다를까 센터장님은 오시자마자 술부터 시키셨고 나도 정말 같이 먹고 싶었지만 차를 갖고와서 사이다로만 짠을 해드렸다. 대리를 부를까 고민했지만.. 배보다 배꼽이 더 커지는 것 같아 아쉽지만 그냥 진짜 삼겹살과 낚지볶음이었나 아무튼 저녁만 먹고 왔는데 진짜 맛있었다. 박사님들 눈치 보여서 음식 사진은 못 찍었지만 아무튼 기회가 된다면 친구들을 데리고 한 번 쯤은 더 가고 싶을 정도였다.
같이 간 동기 2명은 술을 한 잔만 먹어도 바로 얼굴이 빨개질 정도로 잘 못 먹어서 흑기사 해주고 싶은 마음이 너무 굴뚝같았고 매운걸 잘 못먹는 동기 형이 구운 김치를 한 입 먹고 빨개진 얼굴에 땀을 닦았던 애피소드도 나중에 추억하면 미소를 지을 것 같아서 남겨둔다.
사실은 환영회가 아닌 송별회
화요일은 같은 부서 동기가 대학원에 들어가게 되어서 다음주까지만 출근하고 조기 종료를 한다고 박사님께 말씀드렸다. 그래서 급하게 회의가 잡혔는데 박사님이 농담식으로 어제 회식은 환영회가 아니라 송별회였다는 말씀을 하셨다. 먼저 간다니.. 나 혼자 어떡하라고 ㅠㅠ
아무튼 회의를 통해 지금까지의 진행상황을 설명드렸다. 간단하게 적어두자면 지난 글에서 언급한 Apple 주식의 전망을 예측하는 모델을 참고한 모델을 계속 유지중인데 기존에 사용하던 XGBoost 모델은 유지하면서 LSTM 모델을 CatBoost 모델로 변경했다.
CatBoost 모델은 XGBoost 모델과 유사한 부스팅 방식인데 랜덤 포레스트와 방식이 유사하다고 한다. 둘 다 GridsearchCV로 찾은 하이퍼 파라미터를 적용한 후에 모델을 학습시킨다. 아무튼 예측 그래프를 실제값과 비교하여 출력하도록 하니 생각보다 박사님 반응이 더 좋으셨다. XGBoost 모델과 CatBoost 모두 유사한 것 같은데 왜 쓴거냐는 질문을 하시고 싶으셨는데 그 전에 내가 둘의 예측이 XGBoost 모델은 맞고 CatBoost 모델은 틀리거나 반대인 경우가 있어서 둘의 예측값을 평균냈다고 설명드려서 내심 뿌듯했다.
계속되는 Modeling..
처음에는 박사님의 요청으로 특정 kan4로만 학습시키고 예측했는데 이제 모든 kan4에 대해 학습 및 예측을 진행하도록 모델을 수정했다. 데이터별로 데이터의 개수가 부족하거나 전부 다 값이 0인 열을 지우는 과정에서 사라지는 열이 달라서 for문으로 적용시키는게 생각보다 오래 걸리긴 했다. 아무튼 이후에는 이 모델이 예측하는 데이터의 판매량에 대한 top N, 판매량 증가율에 대한 top N를 실제 판매량 top 5와 비교해서 몇 개나 맞췄는지 확인하도록 모델을 수정했다. 혹시 몰라서 예측값에 대한 top N가 아닌 테스트 데이터(전체 데이터의 약 20% 정도의 최신 데이터)의 판매량 평균에 대한 top N도 비교하도록 추가했다.
이제 kan4로 예측하던 모델에 kan6, kan8을 적용해보면서 테스트를 계속 진행해야 한다. kan6는 kan4보다 더 정밀한 분류 기준이기 때문에 확실히 모델이 돌아가는 시간이 오래 걸렸다. 문제는 kan8 부분이었다. 실제 상품 데이터를 분류하는 기준이 되기 때문에 데이터 개수가 터무니없이 부족한 경우도 있어서 이를 걸러주는 필터링을 적용하다가 결국 포기했다. 다음주에는 고민을 해봐야겠다.
아무튼 top N을 비교하는데 데이터마다 다 다르지만 보통은 판매량 증가율보단 판매량에 대한 top N이 정밀도가 더 높았고 대부분 테스트 데이터의 판매량 평균에 대한 top N이 정밀도가 가장 높았다. 박사님은 다음과 같이 지적해주셨다. "이건 간단한 쿼리문으로 할 수 있는 거잖아요?" 내 대답은 다음과 같았다. "모델의 예측 성능이 데이터에 따라 많이 달라질 수 있기 때문에 사용자에게 간단한 쿼리문에 대한 정보도 함께 제공해주면 좋을 것 같다고 생각했습니다." 어쨌든 판단은 사용자의 몫이기도 하고.. 더 이상 모델의 성능을 올릴 자신이 없다. 애초에 데이터가 문제임..
VSC 버전 관련..
아 그리고 지난 글에서 vscode 버전 자동 업데이트를 꺼놓는 설정을 했는데 출근할 때마다 업데이트되어있다. 매번 이전 버전을 재설치해야 하는데 생각보다 귀찮다.. 이거 해결 방법 아시는 분들 계시면 댓글 부탁드립니다..
결론
박사님께 확인을 받은 후에 이제서야 윤곽이 조금씩 잡히는 것 같아서 좋은 것 같기도 하고.. 생각보다 모델의 성능은 그저 그래서 안 좋은 것 같기도 하고.. 복잡한 감정이다. 아무튼 금요일에는 퇴근하자마자 조치원으로 쐈다. 금요일은 쉬엄쉬엄 하다가 토요일에 요즘 읽고 있는 스프링 책의 Guestbook 프로젝트를 따라 치면서 공부했다. 생각보다 버전 차이가 많이 나서 같은 코드를 쳐도 오류가 나는 경우가 많아서 시간이 걸릴 것 같다. 이렇게 공부하다가 오랜만에 대학 동기들과 한 잔.. 두 잔.. 도파민 풀충전하고 이제 다시 현생으로 돌아갈 시간이네.. 사실 에트리 과제보다 이번주 금요일에 있을 수강신청이 더 걱정된다. 졸업하고 싶어요.. 아 몰라 어떻게든 되겠지. 현생 화이팅!
'ETRI(한국전자통신연구원)' 카테고리의 다른 글
ETRI 2024 동계 연구연수생 - 마무리 (0) | 2024.03.02 |
---|---|
ETRI 2024 동계 연구연수생 - 8주차 (1) | 2024.02.25 |
ETRI 2024 동계 연구연수생 - 6주차 (1) | 2024.02.11 |
ETRI 2024 동계 연구연수생 - 5주차 (1) | 2024.02.04 |
ETRI 2024 동계 연구연수생 - 4주차 (2) | 2024.01.28 |