Spotify가 현재 듣고 있는 음악과 유사한 트랙을 찾아야 할 때 태그와 메타데이터만으로는 부족합니다. 오디오 자체를 분석합니다.
이 가이드에서는 Spotify가 음악 파일에서 오디오 기능을 추출하는 방법, 해당 기능의 의미, 그리고 이 기능들이 알고리즘 플레이리스트에서 트랙의 위치에 어떻게 영향을 미치는지 설명합니다.
Spotify의 오디오 분석 작동 방식
배포자를 통해 트랙이 Spotify에 업로드되면 자동화된 오디오 분석 파이프라인을 거칩니다. 시스템은 원시 파형을 처리하고 측정 가능한 수십 가지 특성을 추출합니다.
핵심 기술은 이미지 인식에 사용되는 것과 동일한 머신 러닝 모델인 **컨볼루션 신경망(CNN)**입니다. Spotify의 CNN은 픽셀을 분석하는 대신 시간 경과에 따른 사운드 주파수의 시각적 표현인 스펙트로그램을 분석합니다.
CNN은 이러한 스펙트로그램에서 패턴을 감지하는 방법을 학습합니다. 강력한 드럼 비트와 신시사이저는 일렉트로닉 또는 댄스 음악을 시사하고, 부드러운 어쿠스틱 기타 패턴은 포크 또는 싱어송라이터 장르를 나타내며, 복잡한 화성 구조는 재즈나 클래식일 수 있습니다.
Spotify가 추출하는 오디오 기능
Spotify의 API는 모든 트랙에 대해 13가지 오디오 기능을 노출합니다. 이는 알고리즘이 음향 유사성을 측정하는 데 사용하는 구성 요소입니다.
리듬 및 템포 기능
| 기능 | 정의 | 범위 |
|---|---|---|
tempo |
추정 분당 비트 수(BPM) | 0-250 |
time_signature |
마디당 비트 수(3/4, 4/4 등) | 1-7 |
danceability |
템포, 리듬 안정성, 비트 강도를 기반으로 한 춤추기에 적합한 정도 | 0.0-1.0 |
Danceability는 단순한 템포가 아닙니다. 불규칙한 리듬을 가진 120 BPM 트랙은 꾸준한 그루브를 가진 100 BPM 트랙보다 낮은 점수를 받습니다.
에너지 및 강도 기능
| 기능 | 정의 | 범위 |
|---|---|---|
energy |
강도와 활동성에 대한 인지된 측정값 | 0.0-1.0 |
loudness |
데시벨(dB) 단위의 전반적인 음량 | -60 ~ 0 dB |
Energy는 동적 범위, 인지된 음량, 음색, 온셋 속도(새로운 사운드가 시작되는 빈도), 전반적인 엔트로피 등 여러 신호를 결합합니다. 데스 메탈은 높은 점수를 받고, 바흐의 전주곡은 낮은 점수를 받습니다.
음색 기능
| 기능 | 정의 | 범위 |
|---|---|---|
key |
트랙의 중심 음(Key) | 0-11 (C=0, C#=1 등) |
mode |
장조(1) 또는 단조(0) | 0 또는 1 |
이러한 기능은 알고리즘이 라디오 및 자동 재생에서 원활한 전환을 위해 호환되는 화성 구조를 가진 트랙을 그룹화하는 데 도움이 됩니다.
분위기 및 특성 기능
| 기능 | 정의 | 범위 |
|---|---|---|
valence |
음악적 긍정성(행복함 대 슬픔) | 0.0-1.0 |
acousticness |
트랙이 어쿠스틱일 확률 | 0.0-1.0 |
instrumentalness |
트랙에 보컬이 없을 예측 | 0.0-1.0 |
speechiness |
구어체의 존재 여부 | 0.0-1.0 |
liveness |
트랙이 라이브로 연주되었을 확률 | 0.0-1.0 |
Valence는 분위기 기반 추천에 특히 중요합니다. 높은 발렌스 트랙(0.8 이상)은 쾌활하거나 황홀하게 들립니다. 낮은 발렌스 트랙(0.2 이하)은 슬프거나, 우울하거나, 화난 것처럼 들립니다.
오디오 기능이 추천에 미치는 영향
오디오 분석은 콜드 스타트 문제를 해결합니다. 새로운 아티스트가 첫 트랙을 업로드하면 청취 기록이나 협업 필터링 데이터가 없습니다. 하지만 오디오 기능은 즉시 사용할 수 있습니다.
각 알고리즘 표면이 오디오 분석을 사용하는 방법은 다음과 같습니다.
라디오 및 자동 재생
라디오가 시드 트랙을 기반으로 큐를 생성할 때, 오디오 유사성이 주요 신호입니다. 알고리즘은 다음을 가진 트랙을 찾습니다.
- 템포(원활한 전환을 위한 합리적인 범위 내)
- 에너지 수준(세션 강도 유지)
- 키 및 모드(화성 호환성)
- 발렌스(감성적 톤 유지)
이것이 높은 에너지의 일렉트로닉 트랙으로 시드된 라디오 방송국이 장르 태그를 공유하더라도 갑자기 느린 어쿠스틱 발라드를 삽입하지 않는 이유입니다.
추천 위크(Discover Weekly)
추천 위크는 주로 협업 필터링을 사용하지만, 오디오 분석은 타이브레이커 역할을 합니다. 여러 후보 트랙의 청취 오버랩 점수가 비슷할 때, 알고리즘은 기존 취향 프로필과 오디오 기능이 가장 가까운 트랙을 선호합니다.
아티스트가 오디오 기능을 통해 배울 수 있는 점
Spotify가 오디오를 분석하는 방식을 직접 제어할 수는 없지만, 이러한 기능을 이해하면 알고리즘이 음악을 어떻게 인식하는지 해석하는 데 도움이 됩니다.
트랙의 오디오 기능 확인하기
Tip 서드파티 도구는 Spotify API에서 트랙의 오디오 기능을 가져올 수 있습니다. Spotify 트랙 URL을 입력하면 기능 값을 반환하는 서비스를 찾아보세요.
주목해야 할 사항:
- 카탈로그 전반에 걸친 일관된 기능은 알고리즘이 음악을 클러스터링하는 데 도움이 됩니다. 에너지, 템포, 발렌스가 트랙별로 크게 다르면 알고리즘은 누가 좋아할지 예측하기가 더 어려워집니다.
- 타겟 오디언스와 일치하는 기능은 라디오 배치에 도움이 됩니다. 사운드가 고에너지이고 댄서블하다면 운동 및 파티 중심 라디오 세션에 트랙이 더 많이 표시될 가능성이 높습니다.
인트로 문제
오디오 분석은 전체 트랙을 검사하지만, 청취자 행동은 처음 30초에 크게 영향을 받습니다. 인트로가 노래의 나머지 부분과 다른 특성(큰 드롭 전에 조용한 앰비언트 인트로)을 갖는 경우, 오디오 기능이 청취자가 처음 경험하는 것을 반영하지 못할 수 있습니다.
이로 인해 불일치가 발생할 수 있습니다. 알고리즘은 전반적인 에너지를 기반으로 트랙을 추천하지만, 청취자는 인트로가 기대치와 일치하지 않아 건너뛸 수 있습니다. 인트로를 최적화하는 것은 전반적인 오디오 프로필을 최적화하는 것과는 별개의 기술입니다.
오디오 분석의 한계
오디오 분석은 강력하지만 맹점이 있습니다.
문화적 맥락이 누락되었습니다. 알고리즘은 트랙에 높은 에너지와 128 BPM 템포가 있다는 것을 알지만, 가사가 특정 문화적 순간을 참조한다는 사실이나 프로덕션 스타일이 특정 시대를 불러일으킨다는 사실은 알지 못합니다.
유사한 사운드가 유사한 오디언스와 같지는 않습니다. 두 트랙은 거의 동일한 오디오 기능을 가질 수 있지만 완전히 다른 청취자에게 어필할 수 있습니다. 오디오 분석은 음향 이웃을 찾지만 오디언스 이웃을 찾지는 못합니다.
장르는 추론될 뿐 선언되지 않습니다. Spotify는 배포자가 제공한 장르 태그를 사용하지만, 음향 특성이 일치하지 않으면 오디오 분석이 이를 무시할 수 있습니다. '힙합'으로 태그된 트랙이라도 어쿠스틱 포크처럼 들리면 포크 청취자에게 추천될 수 있습니다.
더 넓은 알고리즘에서 오디오의 역할
오디오 분석은 Spotify 알고리즘이 사용하는 세 가지 주요 데이터 소스 중 하나입니다.
| 데이터 소스 | 캡처하는 내용 | 최적인 경우 |
|---|---|---|
| 협업 필터링 | 사용자 간의 청취 패턴 | 오디언스 중복 찾기 |
| 자연어 처리 | 가사, 플레이리스트 제목, 웹 언급 | 문화적 맥락 이해 |
| 오디오 분석 | 파형의 음향 특성 | 음향적으로 유사한 트랙 찾기 |
기성 아티스트의 경우 협업 필터링이 우세합니다. 신인 아티스트의 경우 분석할 청취 기록이 없으므로 오디오 분석의 비중이 더 큽니다.
목표는 명확하고 일관된 오디오 특성을 가진 음악을 출시하는 동시에 참여도 높은 청취자 기반을 구축하는 것입니다. 오디오 분석은 발견을 돕고, 참여 신호는 추천을 계속 받을지 여부를 결정합니다.