안녕하세요,
PlusX UX designer Henry입니다. 미뤄왔던 브런치 차례가 다가왔네요. 뒤로 갈수록 소재가 고갈되는 상황에서 ‘나도 공부할 수 있는 것을 해보자’라는 생각이 들었습니다. 그리하여 선택하게 된 주제는 *개인화 서비스입니다. 주된 사례들이 넷플릭스와 유튜브를 대상으로 설명되어 영상 콘텐츠의 추천처럼 보일 수 있지만 다른 서비스에 빗대어 보는 것을 추천해 드립니다. 또한 투머치토커가 될 수 있으나 함께 공부하는 기분으로 재밌게 읽어주세요. :)
개인화 서비스를 선택한 이유
이미 구글, 페이스북, 넷플릭스, 아마존, 유튜브 등 다양한 플랫폼에서 개인화를 제공하고 있지만, 아직까지 많은 서비스들이 개인화 단계가 아닌 타겟 세분화 정도로만 진행하고 있다고 생각합니다. ‘왜 하지 않는 거지?’, ‘개인화 서비스를 만드는 데에는 어떤 어려움이 있을까?’라는 의문과 함께 공부를 시작하게 되었습니다.
개인화 서비스를 어떻게 접근해야 할까?
해당 내용은 6개의 파트로 분할하여 이야기하고자 합니다. 1,2,3,4 파트에서는 개인화에 대한 이해를 돕는 내용으로 구성하였고, 5,6 파트에서는 개인화를 위한 설계에 대해서 이야기할 예정입니다. UX/UI 관점에서 바라보는 개인화 서비스에 관한 글로 구체적인 알고리즘에 대한 부분은 설명이 부족할 수 있습니다.
목차
Part1. 개인화란 무엇일까?
Part2. 개인화에 필요한 데이터 이해하기
Part3. 추천 방식에 따른 차이 이해하기
Part4. 개인화의 위험 요소 이해하기
Part5. 어떻게 시작해야 할까요?
Part6. 데이터 수집하기
Part7. 콘텐츠 추천하기
Part8. 추천 알고리즘
2019. 5. 31. 목차 수정
2편의 상세 파트가 변경됨에 따라 Part5,6이 수정, Part7,8이 추가되었습니다.
Part1. 개인화란 무엇일까?
개인화 서비스란 Data를 기반으로 개개인에게 맞춤형 콘텐츠를 추천해주는 서비스를 말합니다. 최근에는 ‘알고리즘 경험(Algorithm Experience)’이라 부르기도 하더군요. 여기서 말하는 콘텐츠는 유, 무형의 산출물을 의미합니다.
마케팅에서 타겟 세분화의 진화단계를 개인화로 흔히 말하는데요, 비슷한 용어인 듯하지만 분명한 차이점이 있습니다. 이해를 돕기 위해 극단적으로 연출한 아래 이미지를 살펴보겠습니다.
차이가 느껴지시나요? 개인의 로그 데이터를 활용하여, 결과물을 제공하느냐에 따라 타겟 세분화와 개인화를 구분할 수 있습니다. 타겟 세분화의 경우 인구 통계학적 데이터만을 기반으로 결과물을 노출하고 있지만 개인화의 경우 사용자의 *로그를 활용하여 데이터를 제공하고 있습니다. 개인화를 구현하려면 사용자도 플랫폼도 모두 TMI(Too Much Information)가 되어야 하는 거죠.
*로그(log): 컴퓨터의 처리 내용이나 이용 상황을 시간의 흐름에 따라 기록한 것 혹은 기록하는 것. 페이스북의 활동 로그, 유튜브의 시청 기록, 검색 기록 등이 사용자 로그에 해당합니다.
개인화 서비스는 어떤 원리로 구현되나요?
간략히 설명하자면 ‘사용자 데이터를 기반으로 콘텐츠 데이터에 *알고리즘을 더하여 결과를 보여주다.’라고 할 수 있습니다. 개인들의 유의미한 로그를 분석하고 최적의 결과물을 추천해주는 것이 알고리즘의 역할입니다.
*알고리즘: 아랍의 수학자인 알콰리즈미의 이름에서 유래한 말로 ‘어떤 문제를 해결하기 위한 방법이나 단계의 집합’을 의미합니다.
이해를 돕기 위해 아랫 글과 함께 보시면 좋을 것 같아요.
인간과 컴퓨터는 인터페이스(Interface)를 통해서 상호작용합니다. 콘텐츠를 제공하는 플랫폼(Platform)은 개인화 모델(Model)을 통해 콘텐츠를 선별하고 사용자(User)에게 추천해줍니다. 이에 사용자는 개인의 스키마(Schema)를 통해 콘텐츠 추천에 대한 반응(Interaction)을 하게 됩니다. 그리고 사용자의 반응은 개인화 모델(Model) 속 데이터에 저장됩니다. 이러한 과정을 반복하는 것이 개인화 서비스의 원리라고 할 수 있습니다.
여기서 스키마라는 용어가 생소하실 수 있을 텐데요, 스키마란 심리학에서 나온 용어로 개인의 총체적 지식을 의미합니다. 구체적으로 인간의 어떤 특정 경험과 관련된 일화적 지식(Episodic knowledge)과 이러한 경험으로부터 추상화 또는 일반화되어 기억 속에 저장된 개념적 지식(Semantic knowledge), 이러한 두 종류의 지식 모두를 가리키는 개념입니다.
정리하자면 플랫폼과 사용자 모두 각자의 '뇌'를 거친 후 추천과 반응, 그리고 기록하는 것이죠. 위의 이미지에서는 모델(Model), 스키마(Schema)로 표현하였습니다.
Part2. 개인화에 필요한 데이터 이해하기
개인화에 필요한 데이터는 크게 콘텐츠에 대한 데이터와 사용자에 대한 데이터로 분류할 수 있습니다. 사용자가 어떤 사람인지에 대해 파악한 후 적합한 콘텐츠를 선별하여 제공되기까지 필요한 데이터를 살펴볼까요?
먼저 콘텐츠의 키워드 데이터는 콘텐츠를 설명할 수 있는 모든 키워드를 의미합니다. 카테고리가 될 수도 있고, 형용사적 표현이 될 수도 있습니다. 그리고 인구 통계학적 선호도 데이터는 해당 콘텐츠에 대한 집단 데이터를 의미합니다. 예를 들어 “OO영화는 20대 여성이 좋아하는 영화이지만 20대 남성들은 선호하지 않는다”와 같이 해당 콘텐츠에 대한 집단 데이터를 의미합니다.
다음으로 사용자의 키워드 데이터는 사용자를 설명할 수 있는 모든 키워드를 의미합니다. 저를 예를 들자면 서울에 거주하는 30대 남성을 이야기할 수 있겠습니다. 더 세분화한다면 소득수준, 교육수준 등 나를 설명할 수 있는 키워드들은 매우 많습니다. 그리고 콘텐츠 선호도 데이터는 개인이 좋아하거나 싫어하는 콘텐츠들에 대한 데이터입니다. 예를 들자면 ‘저는 다크나이트, 인셉션, 메멘토와 같은 영화를 좋아하지만, 리틀 포레스트와 같은 힐링 영화도 좋아합니다.’ 와 같은 데이터입니다.
키워드 데이터들을 제외한 인구통계학적 선호도, 콘텐츠 선호도 데이터들은 결국 사용자들의 로그를 기반으로 수집되기에 항시 바뀔 수 있는 데이터입니다.
*키워드와 선호도 데이터의 구분은 이해를 돕기위한 표현입니다. 카테고리, 형용사적 표현 등 데이터는 세분화되고 그룹핑될 수록 효과를 발휘합니다.
Part3. 추천 방식에 따른 차이 이해하기
첫 번째, 콘텐츠 기반 추천 (Content-based recommendations)
내가 봤던 콘텐츠를 기반으로 비슷한 콘텐츠를 추천하는 방식을 의미합니다. 이 경우 콘텐츠 자체에 키워드 데이터가 방대한 경우에 적합한 추천 방식이며, 개인의 콘텐츠 선호도 데이터를 모으는 것이 핵심이라고 할 수 있습니다. 예를 들어 비긴어게인을 봤던 사용자에게 원스, 위플래쉬, 라라랜드, 어거스트러쉬와 같은 영화를 추천하는 경우를 의미합니다.
네이버 영화 추천의 경우 이러한 콘텐츠 키워드를 묶음으로 제공하고 있습니다.
넷플릭스의 경우에는 영상 콘텐츠 1개당 평균 250개의 태그를 작성하며, 태깅(Tagging) 작업만 진행하는 직군이 존재할 정도로 콘텐츠 키워드 데이터의 질을 높이고 있습니다. 이러한 키워드는 국가별 법령과 정서에 맞게 알고리즘을 거쳐서 노출한다고 하니 질적 향상을 매우 잘하고 있는 사례라고 할 수 있습니다. (넷플릭스 태깅 관련 기사링크: https://www.sedaily.com/NewsView/1OOQ5CKM28)
두 번째, 유사 사용자 기반 추천(Collaborative recommendations)
나와 유사한 사용자 그룹이 많이 봤던 콘텐츠를 추천하는 방식을 의미합니다. 서비스의 실제 유저수가 많은 경우에 적합한 추천 방식이며, 인구통계학적 선호도를 모으는 것이 핵심이라고 할 수 있습니다.
예를 들어 30대 남성인 저에게 30대 남성들이 선호하는 영화들을 추천해주는 것이 이에 해당합니다. 이러한 방식을 쉽게 발견할 수 있는 플랫폼은 유튜브라고 할 수 있습니다. 이래 이미지를 살펴보세요.
EBS 컬렉션 - 라이프스타일 시청자가 이 채널을 시청합니다! 내가 구독하는 채널을 구독하는 사람들이 주로 시청하는 채널을 추천해주는 것을 발견할 수 있습니다. 즉 콘텐츠의 적합성 여부보다 유사 사용자를 기반으로 콘텐츠를 추천하는 방식이라고 할 수 있습니다.
필자의 궁금증과 추측 1.
그렇다면 유튜브에서 유사 사용자 기반 추천을 사용하는 이유는 무엇일까요?
이는 유튜브 서비스 구조를 살펴보면 추측할 수 있습니다. 회원 누구나 영상과 타이틀, 간략한 설명만 작성한다면 쉽게 영상을 올릴 수 있도록 설계되어 있기 때문입니다. 만약 유튜브의 직원들이 영상하나하나를 시청하고 Tagging 작업을 진행한다면, 이는 어마어마한 인력과 시간이 소비될 것입니다. 이와같은 문제로 인해 사용자에게 업로드 페이지(PC)에서 카테고리 선택과 태그 작성을 유도하지만 데이터의 정확도 측면에서는 현저히 저하될 수 밖에 없는 구조를 가지고 있습니다.
이를 해결하기 위해 알파고 엔진을 유튜브에 사용한다는 소문도 있더군요. 알파고 엔진으로 영상을 분석하여, 자동 키워드 작업을 사용한다면 위와 같은 문제들은 해결 가능성이 있는 문제라고 할 수 있을 것 같습니다. (결국 영상도 다수의 이미지 프레임이고 이미 알파고의 이미지 인식 기술의 정교성은 외부적으로도 잘 알려져 있기 때문이죠.)
필자의 궁금증과 추측 2.
넷플릭스는 영상에 태깅 작업을 엄청 많이 하는데도 왜 유사 사용자 기반 추천을 사용하는 것일까요?
선호도 데이터의 활용도 측면에서 유사 사용자 기반 추천을 선택한 것이라 추측됩니다. 콘텐츠 기반 추천의 경우 인구통계학적 선호도 데이터를 도출하게 되는데 이는 결국 '10대가 좋아하는 콘텐츠 1,2,3,4의 형태로 도출되어, 콘텐츠 2는 2-30대가 좋아하는 콘텐츠이다.' 라는 식의 결론이 나옵니다. 반면 유사 사용자 기반 추천의 경우 콘텐츠 선호도 데이터가 도출되어 '콘텐츠 1,3,7 을 좋아하는 사람 1,2,3,4의 형태로 도출되어 콘텐츠 3은 그룹1(사람 1,2,3,4)의 사람들이 좋아한다.'의 형태의 결론이 나옵니다. 두 가지를 비교하였을 때 데이터의 결과가 정밀하면 정밀할 수록 후자의 데이터가 활용 가치나 정확도 측면에서 더 좋은 결과를 가질 수 있다고 생각합니다. 하지만 여기서 왜? 라는 질문에 대한 답을 얻기 위해 넷플릭스는 태깅 작업을 진행하는 것이 아닐까 조심스레 추측해봅니다.
2019. 5. 31. 내용추가
넷플릭스의 추천 방식은 정확히는 모델 기반 협업 필터링이라고 불립니다. 유사 사용자 기반 추천을 사용하는 것은 맞지만, 여기에 잠재 모델을 추가하는 방식입니다. 잠재 모델이란 사용자가 특정 항목을 선호하는 이유를 알고리즘적으로 알아내는 방법을 말합니다.
Part4. 개인화의 위험요소 이해하기
개인화 데이터의 위험 요소는 바로 자신의 울타리 속에 갇히는 것입니다. 이를 에코챔버효과(Echo chamber effect)라고 부르기도 합니다. 이러한 경험은 유튜브를 사용해본 사용자라면 한 번쯤은 느끼셨을 것이라고 생각합니다. 바로 내가 봤던 콘텐츠를 기반으로 비슷한 유형의 콘텐츠가 홈 리스트에 노출되는 것입니다. 우연히 후킹되어 보게 된 스타크래프트 영상하나 때문에 홈에서 스타크래프트 영상들이 나타나기 시작하는 것입니다.
그.. 그만...!
저에게는 관심없는 주제인 스타크래프트 영상들이 스트레스로 다가오지만 관심이 있는 유저에게는 해당 영상들이 리스트에서 더욱 많아지게 될 것이기 때문입니다. 이러한 현상이 무서운 이유는 사회, 문화, 정치, 경제에 걸쳐 잘못된 지식이 전파되고 그 것만을 믿는 현상들이 발생할 수 있기 때문입니다. 이를 방지하고자 추천 서비스들은 사용자의 취향과 관계 없는 콘텐츠를 일정 비율로 추천해주고 있지만, 이미 에코챔버효과로 인한 *확증편향은 곳곳에 노출되고 있으며, 위험성을 인식할 필요는 있다고 생각합니다.
*확증편향: 선입관을 뒷받침하는 근거만 수용하고, 자신에게 유리한 정보만 선택적으로 수집하는 것을 말합니다. 자기가 보고 싶은 것만 보고 믿고 싶은 것만 믿는 현상인데, 정보의 객관성과는 상관이 없습니다. (네이버 지식백과 발췌)
"우리를 위해 만든 시스템이 우리를 망칠 수도 있는 것이죠."
이번 편은 여기서 마무리하겠습니다. 객관적인 사실이나 용어가 잘못된 경우 알려주시고, 주관적인 의견도 피드백과 크리틱은 언제든지 주세요. 지루할 수도 있는 긴 내용이지만 도움이 되셨길 바랍니다. 아직 끝나지 않았어요..! 5,6번 파트도 업데이트 될 예정이니 재밌게 읽어주세요.
감사합니다.
*참고한 레퍼런스들은 다음편에 공유될 예정입니다.
-
플러스엑스의 UXUI 실무 배우러 가기
UX 상위기획 실무 강의 : 플러스엑스 UX 실무 마스터 패키지
UX 디자인 실무 피그마 강의 : Plus X UX디자이너가 피그마로 화면 설계하는 방식
-
UI 디자인 기초 강의 : 플러스엑스 UI 실무 마스터 패키지
UI 디자인 실무 피그마 강의 : Plus X UI팀의 입문자를 위한 피그마 디자인 매뉴얼