사용자 취향 반영을 위한 음악 추천 알고리즘 개선 과정
·
SPRINGBOOT/음악 스트리밍 서비스
사용자 맞춤형 음악 추천 기능을 구현하기 위해서는, 사용자의 취향을 정확하게 반영할 수 있는 알고리즘 설계가 핵심입니다.MiTi 프로젝트에서는 이를 위해 곡의 특성을 기반으로 한 벡터 유사도 계산 방식을 도입하였고, 추천 정확도를 높이기 위한 리팩터링을 단계적으로 진행하였습니다.  💡 기존 추천 알고리즘 설계 방식 설계한 알고리즘: 개인 맞춤형 음악 추천, 장르별 음악 추천, 유사 음악 추천 # user_records에 포함된 album_id에 대해 평균 특성 벡터를 계산하는 함수def calculate_average_features(user_records, album_dict): feature_sums = np.zeros(len(next(iter(album_dict.values())))) # ..
Spotify 음악 크롤링 중 마주한 문제들과 이를 해결한 과정
·
SPRINGBOOT/음악 스트리밍 서비스
📌 프로젝트 배경 음악 스트리밍 프로젝트 ‘MiTi’에서는 사용자의 취향에 맞는 음악을 추천하기 위해 Spotify API를 이용한 음악 데이터 크롤링이 필요했습니다. 크롤링 과정에서 다양한 문제들이 발생했고, 이를 해결하며 기능의 완성도를 높일 수 있었습니다. spotify는 다른 플랫폼과는 달리 저작권이나 보안 문제를 책임지지 않아도 되고,특히 맞춤형 추천 기능이 주 기능인 저희 웹서비스에서는 추천 알고리즘을 중요하게 생각했기 때문에, 음악의 특성(danceability, energy 등)을 자세히 가져올 수 있어 해당 api를 선택하기로 결정했습니다.client_credentials_manager = SpotifyClientCredentials(client_id=client_id, client_s..