본문 바로가기
인공지능/추천 시스템

[review] "카카오 AI추천 : 카카오의 콘텐츠 기반 필터링 (Content-based Filtering in Kakao)" 리뷰

by judy@ 2023. 1. 2.

[review] "카카오 AI추천 : 협업 필터링 모델 선택 시의 기준에 대하여" 리뷰에 이어 콘텐츠 기반 필터링에 대한 포스팅도 리뷰해보자

 

[review] "카카오 AI추천 : 협업 필터링 모델 선택 시의 기준에 대하여" 리뷰

오늘은 카카오 Tech 포스팅 중 하나인 "카카오 AI추천 : 협업 필터링 모델 선택 시의 기준에 대하여"를 읽고, 리뷰와 정리를 수행함. 추천 시스템 초심자의 입장에서 그 어떤 글보다 이해가 잘 되게

data-scient2st.tistory.com


Intro

카카오 서비스의 아이템 소비 패턴을 보면, 기존 소비 아이템과 유사한 아이템을 소비하는 경우가 많음. 특정 작가의 글, 같은 장르의 작품. 이렇게 소비 패턴이 뚜렷한 경우, 콘텐츠 속성 정보를 활용하여 유사 콘텐츠를 추천하는 콘텐츠 기반 추천(CB) 모델이 효과적일 수 있음

 

콘텐츠 기반 필터링

콘텐츠 기반 필터링(CB)

사용자가 소비한 아이템에 대해 아이템의 내용(content)이 비슷하거나 특별한 관계가 있는 다른 아이템을 추천하는 방법. 아이템의 내용은 주로 카테고리, 이름과 같은 텍스트, 이미지 데이터. 소비 이력은 사용되지 않음.

 

아이템이 유사한지 확인하려면 아이템의 유사도(similarity)를 수치로 계산해야 함.

아이템을 잘 표현할 수 있는 벡터를 만들기 위해 (1) 원 핫 인코딩 (2) 임베딩이 사용됨

 

원핫 인코딩(One-hot Encoding)

범주형 데이터를 표현하는 간단한 방법으로, 표현해야 하는 범주의 크기를 갖는 벡터를 만들어 데이터를 0과 1로 표현

텍스트 데이터의 경우 각 단어의 중요도나 빈도 반영을 위해 1 대신 TF-IDF 가중치(weight)를 계산하여 넣기도 함

 

임베딩(Embedding)

데이터 범주가 너무 넓거나, 이미지 같이 복잡한 경우 고정 크기의 벡터로 표현하는 임베딩(Embedding) 방식 활용. 텍스트 데이터의 경우 Word2Vec 모델을 많이 활용. 이미지 데이터의 경우 ImageNet 분류 학습 모델을 실 데이터로 fine-tuning한 뒤, 보틀넥 피처(Bottleneck feature: 분류 레이어의 입력)를 일반적인 이미지 임베딩으로 활용. 인물, 쇼핑에서는 분류 대신 동일성 여부를 직접 판별하는 샴 네트워크 삼중항 네트워크 적용

 

유사도 계산

위에서 표현한 아이템 벡터를 내적(Dot product), 코사인 유사도(Cosine Similarity), 피어슨 상관 계수(Pearson correlation coefficient)와 같은 벡터 유사도 측정 방식을 통해 측정. 사용자가 최근 소비한 아이템과 유사한 아이템을 추천하여 CB 추천됨!

 

콘텐츠 기반 필터링은 충분한 소비 이력이 쌓인 아이템에 대해서는 협업 필터링에 비해 추천 성능이 밀리는 인식이 보편적. 추천 대상 아이템이 빠르게 바뀌거나 소비 이력이 적은 아이템에 대해, 협업 필터링을 보완하려는 용도로 많이 활용됨

 

카카오 웹툰에서의 CB 사례

카카오웹툰에는 작품 홈 상단에 A 작품과 비슷한 작품들 영역이 있음.

 

로직

  1. 작품 줄거리 텍스트 데이터 -> 작품 텍스트 임베딩 생성 (By. 카카오가 학습한 한국어 임베딩 모델)
  2. 작품 대표 이미지 -> 작품 대표 이미지 임베딩 생성 (By. 이미지 모델)
  3. 작품 대표 이미지 -> 그림체 임베딩 생성 (By. 웹툰 그림체 추출 모델 - 카카오 브레인)
  4. 유사도 분석 -> 유사 작품 상위 K개 추출 (단 협업 필터링 등의 다른 모델을 함께 활용하여)
  5. 멀티암드 밴딧(multi-armed bandit) 알고리즘을 활용하여,
    사용자가 열람하는 이벤트를 실시간으로 받아 열람 확률을 최대로 만들 수 있도록 순서 조정하여 노출

 


마치며

콘텐츠 기반 추천은 로그를 활용하지 않기 때문에 속성 정보만 풍부하게 보유 가능하다면, 어떤 데이터에서도 활용 가능하다는 장점이 있음. CF에 비해 데이터를 얻기 쉬우므로, 빠른 시일 내에 실습을 수행해보고자 함. 차후에는 텍스트 + 이미지 리뷰 기반의 추천 시스템을 구축해보고 싶다!

반응형