문제
사용자에게 한 줄로 다양한 정보를 전달해야되는 본 서비스의 특성상, 다른 정보들과 정보를 제공해주는 시간의 차이가 많이 날 경우 사용자가 서비스를 사용하는데 불편할 것이라고 판단하였습니다. 이런 관점에서 초기 담당한 주식 종목의 종가 예측 기능을 구현하였을 때, 모델을 학습하는데 걸리는 시간이 2분 정도 소요되었습니다. 다른 기능들은 모델을 생성하지 않고, 외부 API를 통해 응답값을 받아왔기 때문에 비교적 제가 구현한 기능의 소요 시간이 오래 걸렸습니다.
해결
이를 해결하기 위해서 성능이 저하되지 않는 선에서 모델의 학습 설정을 조정해 주었습니다. 학습되는 모델을 분석한 결과 epoch 값이 10 이상 반복될 때, loss값의 변화가 무의미한 것을 발견하였습니다. 모델을 학습할 때, epoch값은 학습을 반복하여 성능을 높여주는 설정으로 딥러닝에서 매우 중요한 옵션 중 하나입니다. 그러나 그 만큼 epoch 값이 높을 수록 학습에 소요되는 시간이 증가합니다. 그래서 반복 학습되는 과정에서 손실(loss) 값이 더 이상 유의미하게 줄어들지 않는 만큼 설정해 주는 것이 중요합니다.
결과
결과적으로 모델의 예측 성능을 유지하며 기존에 구현한 모델의 학습 소요 시간을 2분에서 1분으로 단축하였습니다.
'개발 > SmileStock 😃📈' 카테고리의 다른 글
[프로젝트 회고] CI/CD를 적용하기 위한 노력, 과금 문제 (0) | 2024.05.01 |
---|---|
[개발 이슈] 도커 이미지로 빌드하며 마주한 이슈들 (0) | 2024.05.01 |
[개발 이슈] API 응답 소요시간 1분 (0) | 2024.05.01 |
[프로젝트 회고] 소통에 나이 차이는 중요하지 않다 (0) | 2024.05.01 |
[프로젝트 회고] 주식 종가 예측 개발 회고 (0) | 2024.04.26 |