[1st Album] 음악 데이터의 왕,

스포티파이

[1st Album]

음악 데이터의 왕,

스포티파이

혁오 x 선셋 롤러코스터 'AAA'

누구에게 더 가까울까?

혁오 x 선셋 롤러코스터 'AAA'

누구에게 더 가까울까?

OVERVIEW

OVERVIEW

대한민국의 대표밴드인 혁오와, 대만의 대표밴드인 선셋롤러코스터가 프로젝트 앨범 AAA로 뭉쳤습니다.


사실 복수의 밴드가 공동 창작을 이뤄내기란 쉽지 않습니다만,

국적이 다른 밴드의 경우엔, 작업을 위한 이동과 소통의 언어적 문제 등 더 큰 장벽이 있기도 합니다.
(물론 여기엔 둘다 자국내외에서 어느정도 성공한 밴드라는 점, 그리고 오혁이 학창시절을 중국에서 보냈다는 점 등,

특수성이 있긴 합니다)


한국의 대표밴드 혁오,

대만의 대표밴드 선셋롤러코스터,

둘의 공동창작물은 어떤 음악적인 특징을 보일까요?

혁오의 색깔이 강했을까요? 선셋롤러코스터의 색깔이 더 강했을까요?

아니면 전혀 다른 새로운 색깔을 만들어냈을까요?

우리는 이 단서를, 음악 데이터의 왕 Spotify에서 찾아보려 합니다.

대한민국의 대표밴드인 혁오와, 대만의 대표밴드인 선셋롤러코스터가 프로젝트 앨범 AAA로 뭉쳤습니다.


사실 복수의 밴드가 공동 창작을 이뤄내기란 쉽지 않습니다만,

국적이 다른 밴드의 경우엔, 작업을 위한 이동과 소통의 언어적 문제 등 더 큰 장벽이 있기도 합니다.
(물론 여기엔 둘다 자국내외에서 어느정도 성공한 밴드라는 점, 그리고 오혁이 학창시절을 중국에서 보냈다는 점 등, 특수성이 있긴 합니다)


한국의 대표밴드 혁오,

대만의 대표밴드 선셋롤러코스터,

둘의 공동창작물은 어떤 음악적인 특징을 보일까요?

혁오의 색깔이 강했을까요? 선셋롤러코스터의 색깔이 더 강했을까요?

아니면 전혀 다른 새로운 색깔을 만들어냈을까요?

우리는 이 단서를, 음악 데이터의 왕 Spotify에서 찾아보려 합니다.

대한민국의 대표밴드인 혁오와, 대만의 대표밴드인 선셋롤러코스터가 프로젝트 앨범 AAA로 뭉쳤습니다.


사실 복수의 밴드가 공동 창작을 이뤄내기란 쉽지 않습니다만,

국적이 다른 밴드의 경우엔, 작업을 위한 이동과 소통의 언어적 문제 등 더 큰 장벽이 있기도 합니다.
(물론 여기엔 둘다 자국내외에서 어느정도 성공한 밴드라는 점, 그리고 오혁이 학창시절을 중국에서 보냈다는 점 등,

특수성이 있긴 합니다)


한국의 대표밴드 혁오,

대만의 대표밴드 선셋롤러코스터,

둘의 공동창작물은 어떤 음악적인 특징을 보일까요?

혁오의 색깔이 강했을까요? 선셋롤러코스터의 색깔이 더 강했을까요?

아니면 전혀 다른 새로운 색깔을 만들어냈을까요?

우리는 이 단서를, 음악 데이터의 왕 Spotify에서 찾아보려 합니다.

Disc.1 “나야, 데이터의 왕”

Disc.1 “나야, 데이터의 왕”

스포티파이를 이용하다보면 알고리즘의 도움으로 취향에 맞는

새로운 곡들을 추천받기도 하고, 과거에 들었지만 잊고 있었던 곡을 다시 발견하기도 합니다.

이처럼 개인에게 맞춘 발전된 추천 알고리즘은 스포티파이가 스트리밍 시장에서 성공을 거둘 수 있었던 가장 큰 이유입니다.


스포티파이는 다양한 데이터를 처리해서 사용자가 좋아할만한 노래를 추천해줍니다.

이 데이터 중 일부는 스포티파이가 외부에 공개하고 있습니다.

덕분에 우리는 API를 통해 쉽게 스포티파이의 데이터에 접근할 수 있습니다.

스포티파이를 이용하다보면 알고리즘의 도움으로 취향에 맞는 새로운 곡들을 추천받기도 하고,

과거에 들었지만 잊고 있었던 곡을 다시 발견하기도 합니다.

이처럼 개인에게 맞춘 발전된 추천 알고리즘은 스포티파이가 스트리밍 시장에서 성공을 거둘 수 있었던 가장 큰 이유입니다.


스포티파이는 다양한 데이터를 처리해서 사용자가 좋아할만한 노래를 추천해줍니다.

이 데이터 중 일부는 스포티파이가 외부에 공개하고 있습니다.

덕분에 우리는 API를 통해 쉽게 스포티파이의 데이터에 접근할 수 있습니다.

이 데이터가 필요해요!

코딩 프로그램

데이터 요청(Request)

데이터 수신

오케이!

Open API

이 데이터가 필요해요!

코딩 프로그램

데이터 요청(Request)

데이터 수신

오케이!

Open API

API는 응용 프로그램 인터페이스(Application Programming Interface)의 약자로,

프로그램에서 데이터를 주고 받기 위해 사용하는 규칙이나 방법을 의미합니다.


어떤 방식으로 정보를 요청해야 하는지,

그리고 어떠한 데이터를 제공 받을 수 있을지에 대하여 정의한 규격이죠.

쉽게 말해서, API는 일종의 데이터 창고입니다.

더 쉽게 표현하자면, 거대한 엑셀 시트라고 할까요.


이런 엑셀시트에 담긴 정보를 앱이나 웹사이트를 만들 때 자동으로 불러와 사용할 수 있게 만들어 주는 것이 API입니다.

아래 그림처럼 행과 열로 구성된 데이터에서

Artist와 Album명, Track을 지정하면 각 Track에 대한 다양한 정보(Field)를 얻을 수 있습니다. 마치 엑셀의 VLOOKUP 함수로 원하는 데이터를 찾는 것처럼 말이죠.

API는 응용 프로그램 인터페이스(Application Programming Interface)의 약자로,

프로그램에서 데이터를 주고 받기 위해 사용하는 규칙이나 방법을 의미합니다.


어떤 방식으로 정보를 요청해야 하는지,

그리고 어떠한 데이터를 제공 받을 수 있을지에 대하여 정의한 규격이죠.

쉽게 말해서, API는 일종의 데이터 창고입니다.

더 쉽게 표현하자면, 거대한 엑셀 시트라고 할까요.


이런 엑셀시트에 담긴 정보를 앱이나 웹사이트를 만들 때 자동으로 불러와 사용할 수 있게 만들어 주는 것이 API입니다.

아래 그림처럼 행과 열로 구성된 데이터에서

Artist와 Album명, Track을 지정하면 각 Track에 대한 다양한 정보(Field)를 얻을 수 있습니다. 마치 엑셀의 VLOOKUP 함수로 원하는 데이터를 찾는 것처럼 말이죠.

Playboi Carti의 Whole Lotta Red의 트랙별 지표 @Lab CHASM

Playboi Carti의 Whole Lotta Red의 트랙별 지표 @Lab CHASM

Playboi Carti의 Whole Lotta Red의 트랙별 지표 @Lab CHASM

Disc.2 스포티파이 알고리즘의 비결은 결국 데이터!

Disc.2 스포티파이 알고리즘의 비결은 결국 데이터!

스포티파이 알고리즘이 사용하는 데이터는 크게 두 가지입니다.


첫 번째는 사람들의 청취 데이터로,

이를 이용해 사용자와 비슷한 청취 패턴을 지닌 다른 사용자가

선호하는 노래들을 추천합니다.


두 번째는 음악 자체의 특성입니다.

알고리즘은 사용자가 듣고 있는 노래의 음악적 특성을 분석해

그와 비슷한 음악을 추천하고, 동시에 사용자의 취향에 대한 정보를 구성합니다.

SPOTIFY ALGORITHM

SPOTIFY ALGORITHM

Input Data

Input Data

  • 수십억개의

    사용자 플레이리스트

  • 사용자의 청취기록

a. 머신러닝

알고리즘

a. 머신러닝

알고리즘

  • 음악 자체의 특성

  • 비슷한 청취 패턴을 지닌 유저의 선호 음악

→ 유사한 곡을 도출해내는 알고리즘

-> 유사한 곡을 도출해내는 알고리즘

b. 청취기록

전처리

b. 청취기록

전처리

  • 청취기록 데이터를 바탕으로 사용자 별 ‘취향 프로필’ 형성

예측

예측

  • 30개의 곡을 사용자의 선호에 맞춰서 제안

이 중 음악적 특성과 관련된 데이터는 API를 통해 얻어낼 수 있습니다.


이 데이터를 보면,

한 곡의 음악적 특징이 12개의 음악적 요소를 나타내는 숫자들로 표현됩니다.


그 중엔 박자, 빠르기와 같은 단순한 요소도 있지만

‘춤추기 좋은 정도(danceability)’, ‘분위기가 긍정적인 정도(valence)’와 같이 추상적인 요소들도 있습니다.

Spotify API: Track Features

Spotify API: Track Features

한 곡의

분위기를

나타내는 지표

한 곡의

분위기를

나타내는 지표

어쿠스틱함

(Acousticness)

어쿠스틱함

(Acousticness)

어쿠스틱함

(Acousticness)

댄스 적합성

(Dancability)

댄스 적합성

(Dancability)

댄스 적합성

(Dancability)

에너지

(Energy)

에너지

(Energy)

에너지

(Energy)

반주 비중

(Instrumentalness)

반주 비중

(Instrumentalness)

반주 비중

(Instrumentalness)

라이브스러움

(Liveness)

라이브스러움

(Liveness)

라이브스러움

(Liveness)

나레이션 비중

(Speechness)

나레이션 비중

(Speechness)

나레이션 비중

(Speechness)

감정

(Valence)

감정

(Valence)

감정

(Valence)

한 곡의

정보를

나타내는 지표

한 곡의

정보를

나타내는 지표

라우드니스

(Loudness)

라우드니스

(Loudness)

라우드니스

(Loudness)

조성

(Key)

조성

(Key)

조성

(Key)

장단조

(Mode)

장단조

(Mode)

장단조

(Mode)

템포

(Tempo)

템포

(Tempo)

템포

(Tempo)

박자표

(Time Signature)

박자표

(Time Signature)

박자표

(Time Signature)

스포티파이의 목표는 물리적으로 유사한 노래를 추천하는 게 아니라 ‘사용자가 느끼기에’ 유사한 노래를 추천해주는 것입니다.


그렇기 때문에 음악의 물리적인 정보들을 ‘춤추기 좋은 정도’와 같은 사용자의 감상과 직접적으로 연결되는 정보들로 재구성합니다.


즉, 이 12개의 숫자들에는 실제 감상 경험이 반영되어 있습니다.

이는 음악적 특성 데이터를 이용한 모델이 차트 성적이나 인기도를 어느정도 설명한다는 연구들(#,#)을 통해서 확인되기도 합니다.

스포티파이의 목표는 물리적으로 유사한 노래를 추천하는 게 아니라 ‘사용자가 느끼기에’ 유사한 노래를 추천해주는 것입니다.


그렇기 때문에 음악의 물리적인 정보들을 ‘춤추기 좋은 정도’와 같은 사용자의 감상과 직접적으로 연결되는 정보들로 재구성합니다.

즉, 이 12개의 숫자들에는 실제 감상 경험이 반영되어 있습니다. 이는 음악적 특성 데이터를 이용한 모델이 차트 성적이나 인기도를 어느 정도 설명한다는 연구들(#,#)을 통해서 확인되기도 합니다.

어떤 음악을 ‘느낌’이 아닌 말로 표현하기는 어렵고, 그래서 분석하기도 어렵습니다.

그렇기에 지각되는 음악적 특성을 몇 개의 숫자만으로 나타내는 이 데이터는 좋은 분석 도구가 될 수 있습니다.


우리는 이 데이터를 사용해 한 아티스트의 음악적 변화 관찰이나 아티스트 간의 음악적 비교, 유사한 아티스트들의 그룹화와 같은 것들을 해보려고 합니다.

이렇게 할 때 ‘장르’ 중심으로 진행되어 온 그 동안의 분석들과는 다른 시야를 얻게 수도 있습니다.

Q: 스포티파이는 특성들을 어떻게 알아낼까?

스포티파이는 등록된 하나의 음악 마다, 음악의 오디오 스펙트럼 정보를 이용할 수 있습니다.

스포티파이는 여기서 악기별로 구분합니다.


더 정확히는 이 스펙트럼에서 시간대 별 음색(timbre)과 음정(pitch)를 추출하고 음색과 음정이 동일한 시간대들을 구간(segment)으로 분리합니다.

음색 별로 분리되는 과정은 전체 스펙트럼이 악기 별로 분리되는 것처럼 볼 수 있을 겁니다.

예를 들면 드럼이 가진 고유의 음색과 음정이 있기 때문에, 스펙트럼으로부터 드럼의 구성을 알아낼 수 있습니다.

이렇게 악기별로 구분된 스펙트럼의 패턴을 이용해서 박자, 음정, 댄스 적합성, 에너지 등 특성들을 구성합니다.
가령 비트의 강도와 리듬 규칙성, 템포로부터 댄스 적합성이 어느 정도인지를 찾아냅니다.

스포티파이는 여기서 악기별로 구분합니다.

우선 시간대 별 음색(timbre)과 음정(pitch)를 추출하고, 다음으로 음색과 음정이 동일한 시간대들을 구간(segment)으로 분리합니다. 음색 별로 분리되는 과정이 마치 악기 별로 분리되는 것처럼 볼 수 있을 겁니다.

특정한 음정과 음색을 가진 구간들이 나타나는 패턴을 이용해서 사전에 학습된 기계가 박자, 음정, 댄스 적합성, 에너지 등 상위의 특성들을 구성합니다.

특성을 구성하는 것은 수많은 곡의 정보를 기반으로 학습한 알고리즘의 역할입니다.


아쉽게도, 알고리즘이 스펙트럼에 나타나는 패턴을

구체적으로 어떻게 조합해 특성을 구성하는지에 대해서는 공개된 정보가 제한적입니다.

특성을 구성하는 것은 수많은 곡의 정보를 기반으로 학습한 알고리즘의 역할입니다.


아쉽게도, 알고리즘이 스펙트럼에 나타나는 패턴을 구체적으로 어떻게 조합해 특성을 구성하는지에 대해서는 공개된 정보가 제한적입니다.

기존에 있는 분석 방법이 아닌, 새로운 시각에서 본 접근법은 사람들에게 새롭게 다가왔으며,
이러한 API를 활용해서 재미있는 서비스가 만들어지기도 합니다.

글로벌 스트리밍 서비스 1위인 스포티파이의 힘은 결국 데이터였습니다.
음악을 들으면서 느꼈던 감정들을 데이터로 확인할 수 있다는 점이 흥미롭지 않나요?


2021년 2월 2일, 스포티파이가 세계 93번째로 한국에서 서비스를 시작한 이후로 한국에서의 성적은 그다지 좋지는 못했었죠.

하지만 드디어 한국에도 무료 광고요금제를 실시하며 스포티파이를 무료로 즐길 수 있게 되었습니다.


스포티파이 데이터를 통해서 다양한 음악을 경험하고, 나의 감정과 음악을 시각적으로 공유할 수 있는 시대가 기대됩니다.

2nd & 3rd Article

COMING SOON !

©Lab CHASM. All rights reserved.

©Lab CHASM. All rights reserved.

©Lab CHASM. All rights reserved.