안녕하세요 효니톰입니다.
이번 주제는 데이터 기반 개인화 추천 시스템을 위한 기술입니다.
큐레이션이라고도 하는데요.
간단히 설명드리자면 정보의 홍수 속에서 고객 관심사에 따른 정보를 제공하는 것입니다.
모두 넷플릭스나 유튜브에서 알고리즘을 따라가거나 관심있는 컨텐츠가 보이는 경험을 해보셨죠?
구글의 쿠키 수집을 통한 맞춤형 광고, 인터넷 쇼핑 시 관심있을 만한 상품 추천도 모두 비슷합니다.
초기에는 기획자가 양질의 콘텐츠를 엄선해 모든 고객에게 제공했습니다.
하지만 이제는 서비스들이 점점 개인화가 되어가고 있습니다.
‘누구나 좋아할 콘텐츠’가 아닌 ‘이 사람이 좋아할 콘텐츠’를 찾는 것이 중요해진거죠.
섬세한 큐레이션을 위해서는 방대한 데이터를 분석하고 다른 사람과 구분하여 개인의 취향을 알아내야 합니다.
사람이 하기엔 힘들기 때문에 최근에는 AI가 수행하도록 고도화되는 추세입니다.
추천 알고리즘은 고객의 행동 이력, 고객-고객 관계, 상품-상품 관계, 고객-상품 유사도등을 기반으로 활용합니다.
이제 그 종류에 대해 알려드리겠습니다.
콘텐츠 추천 알고리즘은 이렇게 나눌 수 있는데, 표시한 4가지에 대해 설명해보도록 하겠습니다.
1. 콘텐츠 기반 필터링
예전에는 많이 사용한 방식입니다.
굉장히 단순한 방식인데요, 콘텐츠 (상품) 자체를 분석해 유사한 콘텐츠를 추천하는 기술입니다.
예를 들어 유저1이 사과에 높은 평점을 주었다면 사과와 비슷한 딸기를 추천하는 것이죠.
(물론 설명을 위한 것이며, 설명보다는 복잡하게 분석하겠죠?)
장점
- 기능에 따라 콘텐츠를 분석하기 때문에 추천 이유 설명이 가능
- 다른 사용자의 데이터 불필요
단점
- 다양한 취향 반영이 어렵고, 유사한 특성이 있는 콘텐츠를 반복 추천할 수 있음
- 한정된 메타정보로 사용자와 상품의 프로파일 함축 불가
2. 협업 필터링
최근 많이 사용되는 기술로, 특히 잠재요인 협업 필터링이 자주 사용되고 있습니다.
사용자 행동양식에 기반해 대규모 고객의 행동 데이터를 분석합니다.
그리고 비슷한 성향의 고객이 선호하는 컨텐츠를 추천합니다.
장점
- 콘텐츠 기반 필터링보다 정확한 예측 가능
단점
- 기존 데이터가 필요하기 때문에 신규 사용자에게 추천하기 어려움
- 관심이 저조한 항목의 정보가 부족해 쏠림 현생 발생
- 사용자가 많을 경우 계산이 어렵고 오래 걸려 효율 저하
협업 필터링은 2가지로 나눌 수 있습니다.
2-1) 최근접 이웃기반 기반 협업 필터링 (= 메모리 기반 협업 필터링)
사용자의 행동 양식 (평점, 구매 이력 등)을 기반으로 추천하는 것입니다.
고객-상품 간 고객이 아직 평가하지 않은 상품을 예측하는 것이죠.
여기에서도 두가지로 분류할 수 있습니다.
사용자 기반
나와 취향이 비슷한 사람들이 좋아하는 상품을 보여주는 것입니다.
다만 사용자가 이미 보유하고 있는 상품이나 이미 본 콘텐츠가 추천에 포함될 수 있습니다.
유저 1과 2는 사과, 포도, 딸기에 비슷한 평점을 주었기 때문에 취향이 비슷합니다.
따라서 유저 1은 귤에도 높은 평점을 주었기 때문에 유저 2에게 귤을 추천해주는 방식입니다.
아이템 기반
해당 상품과 평점 분포가 비슷한 상품을 추천해주는 것입니다.
추천 기준은 고객이 해당 상품을 좋아하느냐 아니냐입니다.
사용자 기반 협업 필터링보다 정확하다는 것이 특징입니다.
유저 1,2,3,4는 사과에 대해 높은 평점을 주었습니다.
또한 유저 1,2,3은 포도에게도 높은 평점을 주었기 때문에 유저 4에게 포도를 추천해주는 방식입니다.
2-2) 잠재요인 협업 필터링
잠재요인은 행렬분해를 사용합니다.
대규모 다차원 행렬을 차원 감소기법으로 분해하는 과정에서 잠재요인을 찾는 건데요.
고객이 평가하지 않은 상품의 평가 점수를 예측해 추천하는 것입니다.
이 방식은 저장공간을 절약할 수 있어 최근 가장 많이 사용합니다.
중간에 잠재요인을 뽑아내, 파라미터 개수를 줄일 수 있기 때문입니다.
유저 1은 딱딱한 사과보다 말랑말랑한 딸기에게 높은 평점을 주었습니다.
따라서 추천 기준을 '말랑한 정도'로 가정하고 마찬가지로 말랑한 귤을 추천해주는 방식입니다.
여기까지 전통적 추천 알고리즘의 유형이였습니다.
최근에는 모델 기반 협력 필터링, 딥러닝 기반 필터링을 사용하기도 하는데요.
특히 딥러닝 기반 KNN, DBSCAN, SVM 등의 AI기술을 적극 활용해 필터링 기법을 개발하는 추세입니다.
저는 완벽히 이해하기까지 너무 어려워서 빠른 이해를 위해 이렇게 도식화를 해보았습니다.
도움이 되셨다면 좋겠습니다.
'회사생활' 카테고리의 다른 글
블록체인 상에서의 환불 (14) | 2021.04.28 |
---|---|
디자이너 없이 레이어 공지 만들기 (Feat. 미리캔버스) (12) | 2021.04.27 |
막내 기획자의 당근마켓 분석하기 (배경, 비즈니스모델, IA, 성공요인, 가치, 리소스, 주요기술 등) (15) | 2021.04.23 |
중소기업의 막내기획자 면접 준비하기 (4) | 2021.04.22 |
정보 구조화하기 (IA) (12) | 2021.04.21 |