넷플릭스(Netflix) 추천 사례 - Zero to 추천시스템

    최근들어 유튜브(Youtube)의 "오늘도 알 수 없는 유튜브 알고리즘이 나를 이 영상으로 끌고왔다" 라는 댓글이 밈처럼 퍼져서 추천의 상징처럼 되어가고 있지만 추천시스템을 만드는 사람에게는 넷플릭스(Netflix)를 떠올리지 않을 수 없다. 

     

    넷플릭스(Netflix) 추천 사례 - Zero to 추천시스템


    퀀텀 이론(Quantum Theory)

    넷플릭스는 콘텐츠를 추천하는 것으로 큰 재미를 보았지만 어느 순간 추천의 한계를 느끼게 되었다. 이를 극복하기 위해 자체적으로 만든 퀀텀 이론(Quantum Theory)라는 것을 만들어 콘텐츠를 분류하였다.

     

    더이상 분류할 수 없을 정도로 쪼개는 양자(Quantum) 단위로 7만 6000여개의 자체적인 장르를 만든 후 내부적으로 평가하는 과정을 통해서 영화별로 수많은 분류 태그를 만들고 데이터베이스를 만들었다. 이렇게 엄청난 콘텐츠의 수작업과 분류 기준을 만들어서 사용자의 취향을 구체적으로 반영할 수 있었으며 정교한 추천을 할 수 있게 되었다.

     

    이를 통해 알 수 있는 것은 알고리즘 만으로 문제를 해결하는 것이 아니라 수많은 사람들의 데이터 수작업을 통해서 성능을 더욱 끌어올렸다는 것이다. 한번 데이터에 정교한 태그가 생성되었다면 그 이후 기계학습(Machine Learning)을 통해서 사용자별 맞춤 컨텐츠를 제공하게 되며 사용자의 만족도는 더욱 향상되게 되고 추천의 서비스를 더욱 믿게 되는 선순환 구조를 만들게 된다. 

     

    넷플릭스 프라이즈(Netflix Prize)

    넷플릭스는 자사의 추천 알고리즘의 성능을 10%까지 끌어올리기 위해 100만 달러의 상금을 걸고 넷플릭스 프라이즈(Netflix Prize)라는 대회를 2006년부터 2009년까지 개최하였다. 수많은 분석가 및 머신러닝 연구진(딥러닝의 아버지라고 하는 제프리 힌튼 교수도 참여하였다)들이 참여했으며 2009년 7월 26일 BellKor's Pragmatic Chaos라는 팀이 10.06%의 성능을 끌어올리면서 대회는 마무리 되었으며 이때 수많은 협업 필터링들이 탄생하게 되었다.

     

    https://www.netflixprize.com/leaderboard.html

     

    넷플릭스 프라이즈는 48만 명의 사용자가 1만8천여 개의 영화에 대해 작성한 약 1억개의 평가 데이터를 제공하고, 사용자가 좋아할 만한 영화를 추천하는 알고리즘을 일반 대중에게 제한 없이 공모하였는데 2007년 오스틴에 있는 텍사스 대학교 연구원들은 인터넷 영화 데이터베이스의 영화 등급과 데이터 세트를 비교하여 개별 사용자의 식별 해버리는 문제도 있었다.

     

     

    고도화된 협업 필터링

    넷플릭스는 양자 이론으로 자료를 분석하기 쉽게 만든 것 뿐만 아니라 추천 시스템(CineMatch)과 알고리즘 등을 끊임없이 고도화 하였는데 알고리즘의 경우 협업 필터링에서 내재된 패턴을 알 수 있는 모델기반 협업 필터링(Model-based Collaborative filtering)을 사용하고 있다. 모델기반 협업 필터링의 개념은 추천 시스템의 알고리즘 설명에서 자세히 설명할 예정이다.

     

    넷플릭스의 추천 콘텐츠 시스템 작동 방법

    사실 넷플릭스의 추천에 대해서 자세히 알고 싶으면 넷플릭스의 사이트를 방문하면 된다. 추천 시스템의 성지 답게 자신들이 어떻게 추천을 하는지 친절하게 설명을 하고 있다.

     

    회원이 넷플릭스 서비스에 액세스할 때마다 넷플릭스 추천 콘텐츠 시스템이 작동하여 최소한의 노력으로 좋아하는 TV 프로그램 또는 영화를 찾도록 도와줍니다. 넷플릭스는 다음과 같은 다양한 요소를 기반으로 회원이 카탈로그에 있는 특정 콘텐츠를 시청할 가능성을 추정합니다.

    - 넷플릭스 서비스와의 상호작용(시청 기록, 다른 콘텐츠 평가 결과 등)
    - 유사한 취향을 가진 회원 및 넷플릭스 서비스에서의 선호 대상
    - 장르, 카테고리, 배우, 출시연도 등 콘텐츠 관련 정보

    회원이 넷플릭스에서 시청한 콘텐츠를 파악할 뿐 아니라 개인화된 추천 콘텐츠를 최적화하기 위해 다음 항목도 고려합니다.
    - 하루 중 시청 시간대
    - 넷플릭스를 시청하는 디바이스
    - 시청 시간

    이러한 데이터 하나하나를 입력 정보로 사용해 넷플릭스 알고리즘에서 처리합니다. (알고리즘이란 문제 해결 과정에서 따르는 절차 또는 규칙 집합입니다.) 추천 콘텐츠 시스템은 인구통계 정보(연령, 성별 등)를 의사결정 절차의 일부로 포함하지 않습니다.

    시청하고자 하는 콘텐츠가 표시되지 않는 경우, 언제든지 해당 국가에서 이용 가능한 전체 카탈로그를 검색할 수 있습니다. 넷플릭스는 최대한 간편하고 빠른 검색을 구현하기 위해 노력합니다. 검색 쿼리를 입력하면, 이전에 동일하거나 유사한 검색어를 입력한 다른 회원의 작업을 기반으로 상위 검색 결과가 반환됩니다.

    넷플릭스의 추천 콘텐츠 시스템 작동 방법

     

    이와 같이 추천 시스템의 공로가 많은 넷플릭스는 그에 걸맞게 구독자들은 콘텐츠의 4편 중 3편을 추천을 통해서 보게 될 정도로 높은 품질과 만족도를 자랑하고 있다. 

     

    참고자료

    https://en.wikipedia.org/wiki/Netflix_Prize
    http://www.kocca.kr/insight/vol05/vol05_04.pdf
    https://help.netflix.com/ko/node/100639

    댓글

    Designed by JB FACTORY