Writer : Harim Kang
추천 시스템관련 두번째 포스팅입니다. 추천 시스템의 개요와 알고리즘을 알고싶으시다면 아래의 포스팅을 봐주시길 바랍니다. 현 포스팅은 페이스북, 넷플릭스, 왓챠, 아마존 등에서 사용하고 있는 추천 시스템에 대한 분석 포스팅입니다.
2020/01/08 - [IT/Machine Learning & Deep Learning] - 추천 시스템 (1) - 개요 및 알고리즘
앞선 포스팅에서는 추천 서비스의 개요와 기본적인 알고리즘에 대해서 알아보았습니다. 추천 시스템은 실제로 어떤 형태로 서비스를 제공할까요? 현재 우리 일상에 아주 다양한 형태로 제공되지만, 그중에서도 저는 SNS, 영화, 쇼핑 분야의 대표적인 기업들이 추천 서비스를 어떤 식으로 사용하고 있는지와 구체적인 방법을 알아보고자 합니다.
페이스북에는 뉴스피드라는 공간이 있습니다. 사용자와 연관 있는 사람들의 게시글이 올라오는 소통 공간입니다. 초기 페이스북에 사용자가 적을 때는 사용자당 읽어야 할 게시글이 적어서 문제가 없었습니다. 하지만, 사용자의 증가에 따라 한 사람당 읽어야 할 게시글이 방대하게 증가하게 되었습니다. 해당 뉴스피드들은 사용자의 관심이 없어도 보이고, 정작 관심이 있는 것은 너무나 아래쪽으로 가서 못 보는 경우가 생기게 됩니다. 그래서 페이스북은 뉴스피드 선정 방식에 추천 알고리즘을 도입합니다.
사용자와 관련된 게시물을 먼저 보여주기 위해서 우선순위를 매기는 알고리즘입니다. 이는 사용자가 좋아할 만한 뉴스피드를 우선적으로 노출시키는 추천 시스템입니다.
사용자와 게시글을 작성한 작성자 간의 관계를 살펴봅니다.
여기서 반응이란 좋아요, 댓글, 공유, 태그 등의 활동을 의미합니다.
과거 사용자가 반응한 게시물과 현재 평가하고자 하는 게시물의 유사성 & 다른 사용자들의 게시물에 대한 반응을 살펴봅니다.
또한 아래의 우선순위로 가중치를 계산합니다.
동영상 > 그림/사진 > 텍스트
링크 > 직접 작성
게시물이 작성된 시간, 게시물에 대한 마지막 반응 시간, 작성자와 관계를 맺은 시기 등을 기준으로 계산합니다.
넷플릭스는 DVD 대여 사업으로 시작하여 최근에는 온라인에서 바로 시청 가능한 스트리밍 서비스를 주력으로 성장 중인 영화 스트리밍 업체입니다.
넷플릭스 영화 시청의 75%가 추천을 통해 이루어지는 것으로 알려져 있습니다. 넷플릭스는 추천 시스템의 정확도가 회사의 핵심적인 경쟁력이라고 생각합니다.
실제로 2007년부터 매년 Netflix Prize 공모전을 통해서 기존보다 10% 이상 개선을 이루는 알고리즘에 100만 달러를 주는 공모전을 개최하며 추천 시스템에 막대한 투자를 하고 있습니다.
넷플릭스는 전체 서비스하는 데에 100여 가지 이상의 알고리즘을 사용하고 있습니다. 그중에서도 사용자에게 알맞은 영화를 추천하는 알고리즘은 Cine-match Algorithm입니다.
Cine-match Algorithm은 Content-based와 Collaborative filtering을 함께 사용하는 Hybrid 추천 알고리즘입니다.
해당 알고리즘은 세 가지의 방식을 사용하여 가중치를 결정합니다.
Bayesian Classifier
A영화를 본 사람이 B영화를 볼 확률 (큰 표본을 작은 표본으로 예측)
Association Analysis : Co-occurrence
동시 발생 상관관계, A와 B를 동시에 좋다고 판단할 때, A와 B의 관계를 알아보는 방법
Neural Network
소비자 선호 분야를 포함한 영화적 Attribute들에 대해 가중치를 결정
넷플릭스는 콘텐츠를 약 5만여 가지의 태그 중 적합한 태그를 부여하여 정리한다고 합니다. 이렇게 나눈 콘텐츠를 개별 이용자의 이용 이력에 따라 맞춤형으로 더 정교한 추천을 해주는 것입니다.
이렇게 많은 종류의 태그를 콘텐츠에 부여하는 것은 직접 사람이 한다고 합니다. 넷플릭스는 50여 명의 정규직 태거가 근무하며, 일과에 넷플릭스 콘텐츠를 보고 직접 태그를 부여한 다고 합니다. 그래서 콘텐츠에 부여된 Tag들을 People Powered data라고 하기도 합니다.
이를 통해 우리가 알 수 있는 점은 정교한 추천을 위해서는 정교한 데이터가 필요하다는 것을 알 수 있고, 이는 아직 사람이 해야 하는 아주 힘든 작업이라는 점입니다.
한국판 Netflix라고도 불리는 왓챠는 다양한 영화 콘텐츠와 평점 기반 유저 분석과 추천 시스템으로 사랑받는 스트리밍 기업입니다.
Collaborative Filtering을 사용하여 선호하는 영화를 바탕으로, 사용자 간의 연관성을 파악합니다.
위의 그림에서 동그라미(선호도)의 크기는 유저가 결정(평점)합니다. 이를 통해서 유저 간의 경향성 (Covariance)을 파악합니다.
Amazon은 온라인 서점에서 시작되어 현재는 세계에서 가장 큰 이커머스 쇼핑몰입니다. 아마존은 특히 추천 시스템을 이용하여 많은 발전을 하였습니다. 매출의 35%가 추천 상품에서 발생한다고 할 정도입니다.
아마존은 자신들만의 추천 시스템이 여러 가지 있는데 대표적으로 'A9'이 있습니다. 자신들만의 고유한 Item-to-Item Collaboration Filtering을 사용하는 시스템으로서, 아래와 같은 방식으로 수행됩니다.
아래는 아마존에 플레이스테이션을 검색했을 때의 결과이다.
제일 먼저 위와 같이 적절한 아이템을 보여줍니다.
아이템을 선택하면, 해당 아이템을 본 후에 소비자들이 사는 물건들을 알려줍니다.
또한, 해당 아이템을 본 후에 소비자들이 함께 많이 본 아이템을 알려줍니다.
그리고, 해당 아이템을 산 후에 소비자들이 함께 사는 아이템들을 알려줍니다. 이런 식으로 아마존은 한 아이템과 연관되는 다양한 추천 상품을 보여줌으로써 더 많은 소비를 유도합니다.
페이스북 데이터 과학 연구팀이 2012년 사용자 68만 9000여 명을 대상으로 뉴스피드에서 특정 감정과 관련된 단어를 삭제한 실험입니다.
해당 실험의 결과를 해석하자면, '뉴스피드가 긍정적이면 우리의 감정도 긍정적이 되고, 뉴스피드가 부정적이면 우리의 감정도 부정적이 될 수 있다'라는 결과를 얻었다고 볼 수 있습니다.
위의 실험을 통해서 증명되었듯이 추천 시스템이라는 점을 이용하여 사람의 심리를 나쁘게 이용할 수도 있다는 우려가 존재합니다.
현재는 기업들이 '개인화 기술'이라고 부르는 시스템을 형성하고 있습니다. 하지만 가까운 미래에는 '초 개인화 기술'이라는 더욱더 소비자를 잘 아는 기술이 될 것입니다. 아마존은 '1인 마케팅'이 아닌 '0.1인 마케팅'을 하겠다고 선언하였습니다. 이것은 한 사람에게 소비패턴은 10가지 이상이 될 수도 있다는 의미입니다. 상품별로 또는 시간, 상황에 따라 소비자의 소비 패턴이 바뀔 수 있다는 의미입니다. 현재의 한 사람당 하나의 소비패턴 그리고 하나의 추천 시스템이 아닌, 한 사람당 10가지 이상의 소비 패턴을 예측하고 이에 맞는 추천 시스템이 되려고 기업들은 노력할 것입니다.
또한 사용자의 점점 더 다양한 정보를 수집할 수 있게 되면서, 이에 맞춰서도 추천 시스템이 더 정교해질 것이라고 생각됩니다. 위의 그림과 같이 사용 가능한 모든 시그널(데이터)을 통해 추천 시스템을 구축하게 될 것입니다.
머신러닝 (4) - ML 모델 생성과 훈련, 예측, 평가 (2) | 2020.01.28 |
---|---|
머신러닝 (3) - 데이터 전처리 (0) | 2020.01.22 |
머신러닝 (2) - ML프로젝트를 위한 데이터 선택 및 준비 (0) | 2020.01.21 |
추천 시스템 (1) - 개요 및 알고리즘 (2) | 2020.01.08 |
머신러닝 (1) - 머신러닝을 사용하는 이유와 분류 그리고 문제점 (0) | 2020.01.05 |