개발공부도중 AI모델에 관심이 생겨서 모델을 웹 서비스에 접목시키고 여러개의 서버를 통합해서 개발해보고자 개인 프로젝트를 진행했습니다. 리액트와 스프링부트의 RESTful API통신 및 파이썬의 감정분석 AI모델을 이용해 개발했습니다.
개발기간 : 2024.06.14 ~ 2024.06.21
TuneMoods는 유저의 감정을 분석해 그에 맞는 어울리는 노래를 추천,재생 그리고 저장기능까지 지원해주는 프로젝트입니다. 사용자 로그인 및 회원가입페이지, 그리고 감정 상태에 맞는 노래를 추천해주는 메인 페이지로 구성되어있습니다.
로그인 페이지 |
회원가입 페이지 |
메인 페이지 |
플레이리스트 재생 |
- JWT를 이용한 사용자 인증
- 감정 분석 및 분류
- 감정 기반 노래 추천 및 YouTube Data API v3로 노래 데이터 제공
- 사용자 및 플레이리스트 관리
개발에 사용된 모델은 Python의 transformers 라이브러리를 이용한 “nlptown/bert-base-multilingual-uncased-sentiment” 라는 모델이 사용되었습니다. 해당 모델은 영어 기반으로 0~5단계로(좋은,슬픈,화난,짜증,중립 등) 감정을 분석합니다. 따라서 한글로 번역해주는 모델을 추가로 사용했지만 “ㅎㅎ”, “ㅋㅋㅋ”, “ㅡㅡ”, 등 몇몇 감정을 나타내는 키워드는 알아듣지 못해서 따로 훈련을 시켜서 정확도를 향상시킬 수 있었습니다.