컨텐츠 뷰 본문

넷플릭스, 내 취향 다 아는 이유

By 이웃집과학자
프로필 사진
이웃집과학자 작성일자2018.11.13. | 1,474 읽음

넷플릭스는 미국의 동영상 스트리밍 서비스입니다. 업체명이기도 하고 플랫폼명이기도 하죠. 지난 2016년 1월, 우리나라에서 서비스를 시작한 이후 국내 이용자 수도 꾸준히 증가하고 있습니다. 특히, 넷플릭스에서는 '한 달 무료' 시청으로 가입자 수를 늘리는 마케팅 전략을 구사하는데요.


영화볼 때 편해요~

출처 : fotolia

넷플릭스의 장점이라고 하면, 한 시즌 에피소드가 모두 업로드 되기 때문에 시청자들의 '몰아 보기'가 가능하다는 점입니다. 무엇보다 개인의 취향 맞춤형으로 영화나 드라마를 추천한다는 부분을 빼놓을 수 없습니다.


사실, 넷플릭스 이용자가 고를 수 있는 영화의 수는 무려 7만 5천편이 넘는다고 합니다. 믿기지 않으신다고요? 다음 링크에 들어가보면 눈으로 확인하실 수 있죠.

이 사이트에는 넷플릭스가 영화 장르에 따라 붙여놓은 일련번호가 나와 있는데요. 가령, n=1이면 아프리카계 미국인 범죄 타큐멘터리들이, n=1009라면, 영국 코미디 영화 장르들이 추천됩니다.


이렇게 엄청난 선택지가 당장 넷플릭스 이용자들 눈 앞에 주어진다면 우리는 아마 결정 장애를 호소하며 엄청난 스트레스를 받을 겁니다. 급기야 이용을 해지할지도 모릅니다.

뇌가 처리할 수 있는 선택지는 12개가 적절해.

출처 : fotolia
알고리즘 때문이다

최근 <Nature Human Behavior>에 게재된 연구에 따르면, 선택지가 12개 이상 많아질 경우, 판단과 결정에 관여하는 뇌의 활동 영역이 감소할 수 있다고 하는데요. 이러한 연구를 감안한 걸까요? 넷플릭스는 우리 뇌가 처리할 수 있을 정도의 한정된 영화 수만 추천합니다. 넷플릭스를 사용해본 이웃님들이라면 한 번쯤 궁금해 하셨을 법한데요. "넷플릭스는 어떻게 나만의 취향 저격 영화를 골라줄까?"하고 말입니다.

독일의 과학 저널리스트 크리스토프 드뢰서는 책<알고리즘이 당신에게 이것을 추천합니다>을 통해 넷플렉스의 추천 서비스가 모두 '알고리즘' 덕분이라고 말하는데요. 오늘날 거의 대부분의 추천 시스템이 '협업 필터링(collaborative filtering)' 알고리즘과 '내용 기반 필터링(content-based filtering)' 알고리즘을 조합한 형태라고 말합니다.

협업 vs 내용

협업 필터링이란 기존 사용자의 행동 정보를 분석해 해당 사용자와 비슷한 성향의 사용자들이 기존에 좋아했던 항목을 추천하는 기술입니다. 따라서 알고리즘의 결과가 직관적이며, 항목의 구체적인 내용을 분석할 필요가 없다는 장점이 있습니다. 즉, 협업 필터링은 사용자의 행동 기록을 이용합니다. 가령, 드라마 <하우스 오브 카드>를 시청한 시청자가 <홈랜드>를 시청한 경우가 많으면 <하우스 오브 카드>를 시청한 사람에게 홈랜드를 추천하는 방식이죠.


하우스오브 카드와 비슷한 콘텐츠를 제시해준다.

출처 : Netflix

반면, 내용 기반 필터링의 경우 항목 자체를 분석해 추천을 구현하는 방식입니다. 내용 기반 필터링을 하기 위해서는 항목을 분석한 프로파일과 사용자의 선호도를 추출한 프로파일을 추출해 유사성을 계산해야 합니다. 사용자의 특성을 비교해 사용자가 선호할 만한 콘텐츠를 제공하는거죠. '사용자가 어떤 영화를 찾는가?', '그가 보기 시작했다가 금세 그만둔 영화는 무엇인가?', '그는 시리즈물을 한꺼번에 보는가?' 하는 개인적 취향에 관한 정보와 영화의 배경, 인물, 장르 등을 분석한 정보와 비교하는 방식입니다.


현재 넷플릭스에서 사용하는 알고리즘은 협업 필터링을 기반으로 이를 고도화한 '모델 기반 협업 필터링(Model-based Collaborative Filtering algorithm)'이라고 하는데요. 이는 지난 2006년 넷플릭스에서 100만 달러의 상금을 걸고 공모한 '넷플릭스 프라이즈(Netflix Prize)'를 통해 개발됐습니다. 당시, 넷플릭스 측에서는 응모자들에게 사용자 48만 명이 영화 1만 7,000편에 준 점수를 모은 데이터 뱅크를 제공했다고 합니다. 개별 점수의 개수는 총 1억개였다고 하는데요. 

역시 넷플릭스!

출처 : fotolia

이렇게 알고리즘에 많은 투자를 해서일까요? 넷플릭스는 어떤 영화가 어떻게 관객을 사로잡는지, 어떻게 해야 흥행작을 만들 수 있는지 세계에서 가장 잘 아는 회사라는 평가를 받기도 하는데요. 넷플릭스는 전체 영화 시청의 75%가 추천을 통해 이뤄진다고 전합니다.


또한, 책<알고리즘이 당신에게 이것을 추천합니다>에 따르면, 넷플릭스 회원 가운데 약 11%는 <하우스 오브 카드> 시즌 1에서 적어도 하나의 에피소드는 봤다고 합니다. 교도소를 배경으로 삼은 시리즈 <오렌지 이즈 더 뉴 블랙>은 넷플릭스 회원 가운데 무려 44%가 시청했습니다.

그렇다면, 넷플릭스의 추천 서비스 알고리즘의 뼈대가 되는 협업 필터링은 무엇일까요? 왜 넷플릭스는 계속 진화해야 했을까요? 좀 더 파헤쳐 보도록 하겠습니다.  

더 파보자.

출처 : fotolia
협업 필터링의 핵심은 '가까운 거리(TMI 주의)'

넷플릭스에서 협업필터링 알고리즘을 사용할 때 가장 중요한 점은 6,000만 명에 달하는 넷플릭스 회원 간의 취향이 서로 가까운 사람을 찾아내는 작업입니다. 따라서 협업 필터링은 반드시 기존 자료를 활용해야 한다고 합니다. <알고리즘이 당신에게 이것을 추천합니다> 책에서는 협업 필터링 알고리즘에 대해 평점을 활용해 이해를 도왔습니다.


<타이타닉>과 <스타워즈> 영화에 대해 안네, 벤, 클라우디아, 데니스 이렇게 네 명이 위 표와 같은 평가를 했다고 합시다. 안네는 취향이 낭만적이라 SF 영화에는 전혀 관심이 없습니다. 그래서 그녀는 <타이타닉>에는 별점 4.5점, <스타워즈>에는 1점을 줬습니다.


반면 벤은 멜로영화를 싫어하고, 우주나 영웅 서사를 좋아합니다. 하지만 그는 점수에 인색합니다. 따라서 그는 <스타워즈>에는 3점을, <타이타닉>에는 1점을 부여합니다. 클라우디아는 까다롭지 않은 영화팬입니다. 그녀는 화려한 할리우드 영화라면 무엇이든 좋아합니다. 클라우디아는 <타이타닉>에 4점, <스타워즈>에 4.5점을 줬습니다. 마지막으로 데니스는 대중의 취향을 따르기 보다는 독립영화를 선호해 두 편의 블록버스터에 각각 1.5점씩 박한 점수를 줬습니다.


여기서 우리는 '클라우디아'의 취향이 다른 세명과 얼마나 가까운지 계산하고자합니다. '가까움'을 계산하기 위해서는 거리를 알아야 합니다. 좌표계를 그려봅시다. 한 축은 <타이타닉>별점을, 다른 축은 <스타워즈>의 별점을 나타냅니다. 그리고 고객 네명의 별점 평가를 좌표계 안의 4개의 점으로 표시합니다. 하지만 이 공간에서 '거리'를 계산하는데에는 여러 방식이 있습니다. 이 방식에 따라 나와 취향이 가까운 사람이 어떻게 바뀌는지 한 번 볼까요?


택시운전사 방법

출처 : 책 '알고리즘이 당신에게 이것을 추천합니다'

이 방법은 오직 수평 방향과 수직 방향으로만 달릴 수 있는 택시운전사가 한 지점에서 다른 지점으로 가는 최단 경로입니다. 이는 두 영화에 부여된 각각의 별점의 차이를 합산하면 되기 때문에 가장 간단한 계산 방법입니다. 가령, 클라우디아와 안네 사이의 택시운전사 거리는 <타이타닉>에 부여한 점수차 0.5점, <스타워즈>에 부여한 점수차이 3.5점을 더하면 됩니다. 즉, 이들 사이의 택시운전사 거리는 4입니다. 이러한 방식으로 클라우디아와 나머지 사람들과도 계산을 해보면, '클라우디아'와 가장 취향이 가까운 사람은 '안네'입니다. 

항공경로의 길이.

출처 : 책 '알고리즘이 당신에게 이것을 추천합니다'

이 방법은 두 점을 잇는 항공경로의 길이, 곧 '직선거리'를 측정하는 방법입니다. 이 직선거리는 피타고라스의 정리에 기초해 계산하면 됩니다. 두 점의 x좌표 차이의 제곱과 y좌표 차이의 제곱을 더한다음 제곱근을 취하면 됩니다. 이 방식으로 계산해보면 '클라우디아'와 가장 가까운 사람은 '벤'입니다.

방향으로 거리 정의.

출처 : 책 '알고리즘이 당신에게 이것을 추천합니다'

세 번째 방법은 사용자들의 별점을 주는 성향까지도 포함한 방법입니다. 클라우디아처럼 점수를 후하게 주는 사용자가 있긴 하지만, 데니스처럼 점수를 짜게 주는 사용자도 있기 때문입니다. 이 방법에서는 사용자들의 위치를 좌표계에 표시한 뒤, 원점과 그 위치를 연결한 직선의 방향을 살펴보면 됩니다.

이 방법에서 '방향'을 거리로 정의하기 위해서는 특정 위치와 원점을 연결한 직선, 다른 위치와 원점을 연결한 직선 사이 각의 코사인을 계산하면 됩니다. 그렇게 되면, 클라우디아의 평가는 데니스의 평가와 매우 유사한 것을 볼 수 있습니다. 왜냐하면 두 사람은 각각 영화에 대해 거의 같은 점수를 줬기 때문입니다. 따라서 이 방식으로 계산한다면 '클라우디아'와 가장 가까운 사람은 '데니스'입니다.

 

이렇게, 계산 방식에 따라 나와 가까운 사람이 바뀌게 됩니다. 물론 세 가지 중 가장 옳은 것은 없습니다. 답은 그때그때 달라질 겁니다. 이 방식은 조밀한 데이터 집합에 산출될 수 있어 임의의 두 사용자를 아주 잘 비교할 수 있습니다.


협업의 한계점 보완책 '내용 기반'

하지만, 현실에서는 이렇게 조밀한 데이터 집합을 얻는 것이 사실상 불가능하다고 합니다. 왜냐하면, 협업 필터링은 계산량이 비교적 많은 알고리즘이라 사용자 수가 많을 경우 효율적으로 추천할 수 없기 때문이라고 합니다. 또한, 사용자가 별점을 매기지 않은 영화의 경우, 이 방법을 사용할 수 있을까요? 두 사용자가 과거 상품들을 유사하게 평가했다고 하더라도, 그들의 평가가 미래에도 일치할지는 의문입니다.


이러한 문제점 때문에 넷플릭스의 추천 알고리즘은 나와 취향이 같은 한 사람을 찾아내기 보다는 나와 비교적 취향이 가까운 사용자 집단을 찾아낸 다음, 그들 모두가 좋아하는 작품을 선별하는 것이라고 하는데요. 이처럼 컴퓨터는 영화의 내용을 모르더라도 영화를 대략적으로나마 장르 별로 분류할 수 있습니다. '영화가 얼마나 로맨틱한가?', '영화가 어떻게 끝나는가?', '주연이 인사이더인가?', '아웃사이더인가?', '영화의 무대는 어디인가?' 같이 작은 요소로 분해하는 거죠. 

아하. 그런거였군.

출처 : fotolia

이렇게 분해된 요소들은 '내용 기반 필터링' 알고리즘의 토대를 이루게 됩니다. 그래서 우리는 넷플릭스에서 '톱 10' 추천작 뿐만 아니라, '책을 원작으로 삼았으며 평론가로부터 높은 평가를 받은 액션 영화', 혹은 '강한 여주인공이 나오는 로맨스 영화'와 같이 실제 영화 내용에 기반한 듯한 장르의 영화까지 추천까지 받을 수 있는거죠.  

협업 필터링과 내용 기반 필터링을 토대로 진화를 거듭한 넷플릿스는 '모델 기반 협력 필터링(Model-based Collaborative Filtering algorithm)'을 통해 현재, 높은 정확도로 추천 서비스를 제공해주고 있습니다. 

관련 책
알고리즘이 당신에게 이것을 추천합니다
알고리즘이 당신에게 이것을 추천합니다
저자
크리스토프 드뢰서
발행일
2018.11.05
출판사
해나무
가격
정가 15,800원보러가기

넷플릭스가 어떻게 우리에게 어떻게 추천 서비스를 제공하는지 궁금증이 좀 풀리셨나요? 이밖에도 페이스북의 뉴스피드가 어떻게 작동하는지 궁금하거나 온라인 데이트 서비스가 어떤 원리와 알고리즘으로 작동하는지 궁금한 이웃님들이라면 이 책에서 자세한 정보를 얻어가시기 바랍니다.


##참고자료##

크리스토프 드뢰서, 「알고리즘이 당신에게 이것을 추천합니다」, 해나무, 2018


서봉원. "콘텐츠 추천 알고리즘의 진화." 방송트렌드 & 인사이트 5 (2016): 19-24.

Reutskaja, Elena, et al. "Choice overload reduces neural signatures of choice set value in dorsal striatum and anterior cingulate cortex." Nature Human Behaviour (2018): 1.


놓치지 말아야 할 태그

#피식

    많이 본 TOP3

      당신을 위한 1boon

        더보기