Spotify의 데이터로 빌보드 차트 트렌드 알아보기 — 기획편

2023. 1. 18. 23:50PM・PO/코드스테이츠 PMB

코드스테이츠 PMB 16기 W6D3

Spotify

스포티파이는 전 세계에서 가장 사랑받는 음원 스트리밍 서비스이다. 현재 4억 명이 넘게 사용하고 있으며 2021년 드디어 한국에도 상륙했다. 스웨덴 기업으로 시작한 스포티파이가 구글의 유튜브, 애플과 같은 초거대 기업들을 제치고 업계 1위를 할 수 있었던 것은 그들만의 추천 알고리즘이 매우 정교하기 떄문이다. 내가 좋아할 음악을 나보다도 더 잘 아는 느낌을 줄 만큼 고도화되어 있기 때문에 알고리즘이 뛰어나기로 한 유튜브보다도 더 높은 수준의 추천을 해준다.

또한 광고가 껴있는 무료 요금제를 (한국을 제외하고) 제공한다는 사실 역시 1등을 유지할 수 있는 요인 중 하나이나, 오늘 주제와는 상관이 없기 때문에 따로 다루지 않겠다.

음원 스트리밍 서비스 이용자 순위

데이터

나는 항상 스포티파이가 어떤 식으로 음악을 분석하고 그에 맞게 추천하는지 궁금했다. 그래서 Kaggle에 스포티파이 관련 데이터가 있는지 찾아봤더니 노래에 대한 스포티파이의 분석 정보가 나와있었다. 대부분 연도별로 인기 있었던 곡들을 TOP100과 같은 식으로 해서 올려놓았다. csv 파일을 열어보니 곡에 대한 상세한 정보와 함께 스포티파이가 노래들을 분류하는 속성들을 알 수 있었다. 여러 개의 파일을 비교해보니 속성들이 나열된 순서나 데이터 포맷은 조금씩 달랐지만 모두 공통된 속성값들을 가지고 있어서 비교가 가능할 것 같았다.

 

Spotify Past Decades Songs Attributes

Spotify attributes of songs from all available past decades (50s - 10s)

www.kaggle.com

 

Spotify Top 200 Charts (2020-2021)

Spotify Top 200 Charts dataset useful for prediction Machine Learning model

www.kaggle.com

 

Spotify top chart songs 2022

Dataset with global top chart songs during 2022

www.kaggle.com

위의 링크에 들어가면 원본 파일을 다운받을 수 있다. 아래는 파일들이 어떻게 생겼는지에 대한 스크린샷이다.

주옥같은 2010년대 히트곡들..

속성들에 대해서는 스포티파이가 개발자들에게 제공하는 API에 관한 공식문서가 있어서 참고했다. 아래 링크로 가면 구체적인 원문을 확인할 수 있지만, 일일이 확인하기 번거롭기 때문에 일부만 간략히 설명하자면 다음과 같다.

 

Web API Reference | Spotify for Developers

Music, meet code. Powerful APIs, SDKs and widgets for simple and advanced applications.

developer.spotify.com

  • acousticness : 얼마나 어쿠스틱한지 (통기타, 피아노 등의 악기)
  • danceability : 얼마나 춤추기 좋은지 (템포, 리듬의 안정성, 비트의 강함 등)
  • duration : 곡의 길이 (밀리세컨드 단위)
  • energy : 곡이 얼마나 강하고 활동적인지 (빠르기, 볼륨, 소음 등)
  • liveness : 곡이 얼마나 현장감 있는지
  • loudness : 곡의 전체적인 볼륨이 얼마나 큰지
  • speechiness : 곡에 얼마나 말하는 소리가 있는지 (토크쇼, 나레이션 등)
  • valence : 곡이 얼마나 긍정적인지

 

가설 설정

나는 이 데이터들을 가지고 시간의 변화에 따른 대중가요 트렌드의 변화를 알아보고 싶었다. 또한 이를 검증하는 과정에서 스포티파이가 만들어내는 곡의 속성들이 정말로 유효한지도 확인할 수 있을 것 같다. 따라서 다음과 같은 가설들을 세웠다.

 

시간이 지날수록 점점 곡 길이가 짧아질 것이다.

사람들이 콘텐츠 하나에 소모하는 시간이 계속해서 짧아지고 있기 때문에 노래 역시 계속해서 짧아지고 있는 것 같다. 옛날에 Bohemian Rhapsody나 Stairway to heaven 같은 대곡들은 곡 길이가 6~8분 가까이 되는 노래면서도 빌보드 차트에 올랐는데, 요즘에는 2분대의 곡들도 많이 나오는 것 같다. 이러한 경향이 소수의 곡들에만 적용되는 것인지, 전체적인 트렌드인지 확인해보려고 한다.

최근 히트한 노래 중엔 1분대 노래도 있다

검증지표 : 단위기간 별 Duration의 평균값 — 곡 길이가 곧 Duration이기 때문에 이 지표만 보면 된다. '단위기간'이라고 지정한 이유는 기본적으로 10년 평균을 낼 계획이지만, 최근의 트렌드를 더 민감하게 반영하기 위해 단위를 더 짧게 잡은 분석을 한번 더 할 수 있기 때문이다.

 

시간이 지날수록 점점 노래들이 어두워질 것이다.

최근 빌보드 차트에 올라오는 곡들을 보면 YOLO, Flex 등의 유행으로 세속적인 곡들이 참 많아졌다고 생각이 든다. 사랑을 얘기하는 방식도 많이 달라진 것 같다. 과거에는 Can't take my eyes off you 같은 곡들처럼 순수한 사랑을 주로 얘기했다면, 지금 차트에 올라와 있는 사랑 노래인 The Weeknd의 Die For You의 가사는 좀 더 암울한 상황에서의 사랑을 얘기하고 있다. 이는 빈부격차, 우울증, 마약 등 여러 사회 문제가 심각해진 미국의 상황을 대변하고 있는 것 같다. 따라서 과거보다 현재로 올수록 곡의 분위기가 전반적으로 어두워질 것이라고 생각한다. 

암울한 The Weeknd의 가사 (클릭 시 출처)

검증지표 : 단위기간 별 Valence의 평균값 — Valence가 곡의 긍정적임을 나타내는 지표임으로, 이 값이 낮아진다면 가설이 검증된다.

 

시간이 지날수록 점점 전자음악 위주의 곡들이 많아질 것이다.

예전에는 노래를 만들기 위해 모든 악기들을 스튜디오에서 직접 녹음하고, 효과음도 수제로 만들어 냈다. 80년대 신디사이저가 본격적으로 사용되기 시작했을 때조차 신디사이저라는 전자악기 역시 아날로그였다. 하지만 PC의 성능과 음악 소프트웨어의 발전으로 인해 음악을 만들어내는 방식이 완전히 달라졌다. 현재 대부분의 프로듀서들은 '가상악기'라는 개념의 소프트웨어를 사용해서 사운드를 만들어내고, 심지어는 Splice 같은 샘플링 플랫폼에서 마음에 드는 소리를 골라 복붙하고 있다.

대표적인 가상악기 Serum
음원 샘플링 플랫폼 Splice의 UI

사실 전자음악 위주가 된다는 건 검증할 필요도 없는 자명한 사실이지만, 그것을 스포티파이가 만들어낸 지표들이 검증해낼 수 있는지가 더 궁금해서 이런 가설을 세우게 되었다.

검증지표 : 단위기간 별 acousticness / liveness의 평균값 — acousticness는 사운드가 얼마나 어쿠스틱한지에 대한 지표이기 때문에 이 값이 낮을수록 전자적인 소리에 가깝다고 볼 수 있다. 또한 전자적인 사운드일수록 자연스러운 live함이 떨어지는 편이기에 livness 역시 확인해볼만한 지표이다

 

시간이 지날수록 점점 곡의 음량이 커지다가 2020년 이후로 다시 낮아질 것이다.

뮤직 프로덕션 업계의 불문율 중 하나는 'Louder is better'로, 더 크게 들릴수록 더 좋게 들린다는 뜻이다. Beatles 같은 옛날 음악을 듣다가 BTS 같은 요즘 노래를 들으면 볼륨이 확 커져서 줄인 경험이 있을 것이다. 이는 음원마다 가지고 있는 '음압(Loudness)'이 다르기 때문인데, 이 음압의 개념은 일반인이 이해하기 어려운 영역이기 때문에 '음량(Volume)'이라고 이해해도 무방하다.

Loudness War에 대한 예시

이 음압에 대한 경쟁은 Loudness War라고 불리며 80년대부터 시작되었는데, 2010년대 들어 최고치를 찍었다고 한다. 이 역시 자명한 사실이기 때문에 당연하게 검증될 것으로 예상된다. 다만 여기서 하나 더 검증해보고 싶은 것은 Spotify, Apple Music 등이 곡들의 음압을 강제로 일정하게 맞춰버리는 Normalize를 기본값으로 설정한 이후부터 음압이 다시 낮아지기 시작했다는 것이다. 아무리 음압을 높여봤자 스포티파이에서 다시 낮춰버리기 때문에 과도하게 음압을 높일 필요가 없어진 것이다. 이것이 실제로도 차트에 반영되었는지 검증해보고자 한다.

검증지표 : 단위기간 별 Loudness / Energy의 평균값 — 음량을 나타내는 수치가 바로 Loudness이다. 좀 더 전문적인 용어로는 LUFS라는 지표인데, 스포티파이에서는 쉽게 Loudness라고 표기하고 있다. 또한 Energy 역시 곡의 볼륨과 관련 있는 지표라고 설명되어 있었기 때문에 이 역시 검증 지표로 사용해보고자 한다.

 

시각화

모든 가설들이 시간에 따른 변화를 알아보기 위한 가설이기 때문에 모두 막대 그래프로 시각화 할 것이다. 막대 그래프가 가장 시간에 따른 변화를 보여주기 좋기 때문이다.


내가 검증하고자 하는 가설들은 사실 업계에서는 사실로 받아들여지고 있는 말들이다. 다만 이를 스포티파이가 생산해내고 있는 지표들로 검증했을 때 실제로 검증이 되는지 비교해보고자 한다. 다른 분들은 비즈니스와 관련해서 멋지게 가설을 설정해주신 것 같아서 과제 엎어야 되나 고민도 했는데, 그래도 내가 알아보고 싶은 것을 알아보는 게 더 유익할 것 같아서 이렇게 가설을 설정하게 되었다.

다음 글
 

Spotify의 데이터로 빌보드 차트 트렌드 알아보기 — 분석편

코드스테이츠 PMB 16기 W6D4 지난 글 [코드스테이츠 PMB 16기 W6D3] Spotify의 데이터로 빌보드 차트 트렌드 분석하기 Spotify 스포티파이는 전 세계에서 가장 사랑받는 음원 스트리밍 서비스이다. 현재 4

hnsl.tistory.com