본문 바로가기
Data Science/Recommendation System

[Recsys] 추천시스템 알고리즘 - 콘텐츠 기반(Content-based)

by VAMOSSS 2022. 12. 19.
반응형

 

본 글은 Recommender Systems(Charu C. Aggarwal), 추천 시스템 기법 연구동향 분석(손지은, et al.) 참고하여 정리한 내용들을 바탕으로 작성한 글입니다.

콘텐츠 기반 접근방식

해당 포스팅에서는 추천시스템 알고리즘 중 콘텐츠 기반 접근방식을 정리해보았다.

 

 

 

콘텐츠 기반 접근방식은 아이템의 콘텐츠를 직접 분석하여 아이템과 아이템 혹은 아이템과 사용자 선호도간 유사성을 분석하여 이를 토대로 고객에게 아이템을 추천해주는 방식이다.

The algorithm of content-based approach

위 그림은 콘텐츠 기반 접근방식 추천 기법을 보여주고 있다.

 

  1. 사용자가 직접 입력한 정보나, 사용자가 아이템에 대해 평가한 점수 혹은 과거 구매내역을 바탕으로 생성 된 정보를 통해 선호하는 아이템을 파악.
  2. 미리 선정된 기준을 통해 분류된 아이템 카테고리와 사용자의 선호 아이템 간의 유사도를 측정.
  3. 유사도가 가장 높게 나타난 '카테고리 5'에 해당하는 아이템을 추천 대상 고객에게 추천.

본 방식은 분석의 용이함과 메타데이터의 가용성으로 인해 영화, 음악, 도서뿐만 아니라 텍스트 기반의 뉴스나 인터넷 기사 등을 추천하는데 널리 쓰이고 있다.

 

콘텐츠 기반 접근방식의 특징

  • 독립적 정보 활용
    • 추천 대상 고객의 선호도를 파악하기 위해 자신만의 과거 구매이력이나 프로파일 정보가 이용됨.
      추천하고자 하는 고객의 독립적인 정보만을 필요로 하므로, 다른 사용자의 정보가 부족할 경우에도 유용하게 쓰일 수 있는 추천 기법으로 알려져 있음.
    • 과거 구매이력이 부족할 경우 추천의 성능을 보장할 수 없으며, 구매이력과 프로필 정보가 모두 존재하지 않는다면 콘텐츠 기반 접근방식 추천 시스템을 구현하는 것이 불가능하다는 단점 존재.
  • 새로운 아이템
    • 새로운 아이템에 대한 평가점수가 존재하지 않더라도 아이템 간의 속성을 파악하여 카테고리에 할당됨.
    • 최종적으로, 사용자가 선호하는 아이템 속성과 유사도가 높은 카테고리의 아이템들이 사용자에게 추천되기 때문에 First rater 문제가 발생하지 않음
      ※ First rater 문제 : 누군가가 점수를 주기 전까지 해당 아이템을 추천 리스트에 포함할 수 없는 문제
  • 과도한 특수화(Over Specialization)
    • 추천대상이 되는 고객의 과거 구매 이력을 바탕으로 유사한 제품을 찾아줌.
      그렇기 때문에 다른 사용자들의 취향이나 선호도를 반영하지 못하고 이전에 구매한 상품과 너무 비슷한 상품들만이 추천된다는 문제점 존재. 즉, 추천 상품의 다양성을 보장할 수 없는 과도한 특수화 문제 존재.
    • 이를 해결하기 위해 추천 과정에서 유전자 알고리즘을 적용하여 무작위 요소를 추가하거나 돌연변이 방식을 사용하는 기법이 제안되었음.

아이템 속성 분석

아이템은 속성들(Features)의 집합으로 표현될 수 있으며, 이는 크게 구조적 데이터비구조적 데이터로 나뉠 수 있음

  • 구조적 데이터
    • 속성이 명확히 정의되어 있고 이에 따른 속성 값이 구조적으로 입력되어있는 데이터
      아이템을 잘 표현할 수 있는 속성의 개수가 비교적 적고 아이템마다 각 속성에 해당하는 값이 모두 존재해야함
    • 예를 들어, 주연배우, 감독, 개봉일, 장르, 배급사 등에 대한 속성 값을 가지고 있는 영화 데이터베이스
    • 기존의 K-Means같은 기계학습 알고리즘을 적용하여 비슷한 속성의 아이템으로 구성된 카테고리 생성 가능
  • 비구조적 데이터
    • 이미지, 소리, 텍스트와 같이 구조화된 데이터 관리 시스템에 포함할 수 없는 데이터
      속성 정의가 어려움
    • 텍스트 데이터에서 콘텐츠 기반 접근 방식은 크게 키워드 분석의미 분석으로 나눌 수 있음
      • 키워드 분석은 각 텍스트 아이템에서 키워드를 추출한 뒤, 아이템간의 키워드를 비교하여 유사도를 계산
        대표적인 키워드 추출 방법 : TF-IDF
        대표적인 유사도 측정척도 : 코사인 유사도(cosine similarity)

        하나의 단어가 다양한 의미를 가지는 경우 실제로 유사하지 않은 아이템이 추천될 수 있으며, 반대로 다양한 단어로 표현되지만 실제로 같은 의미를 가지는 경우에는 내용적으로 유사한 아이템일지라도 유사도가 낮으므로 추천 리스트에서 누락될 수 있음

      • 의미론 분석은 단어의 단순 스트링 비교가 아닌 내용 파악을 목적으로 하므로 보다 정확도 높은 추천 결과를 도출할 수 있음

사용자 선호도 학습

콘텐츠 기반 접근 방식에서 사용자의 선호도를 파악하기 위해 사용되는 두 가지 방법

  • 사용자가 직접 흥미 분야에 대해 입력한 프로파일 정보 이용
    • 관심분야를 체크하거나 텍스트 형식으로 기재
      평가점수 데이터가 부족한 경우 널리 쓰임
    • 정확한 입력을 하는 사용자 확보의 어려움, 사용자의 선호 경향 변화, 아이템들의 중요도 판단 불가 등 다양한 이유로 인해 정교한 추천 성능을 보장할 수는 없음
  • 사용자의 과거 구매이력 정보를 분석
    • 최근 혹은 자주 구입한 아이템을 통해 선호도를 파악
    • 나이브 베이즈모델, 의사결정나무, K-근접 이웃 기법 등과 같은 기계학습을 이용하여 선호도를 정확하게 파악하여 추천의 성능을 향상시키고자 하는 다양한 연구 제안

Reference

추천 시스템 기법 연구동향 분석(손지은, et al.)

 

https://wannabenice.tistory.com/42

 

[Recsys] 추천시스템이란?

본 글은 Recommender Systems(Charu C. Aggarwal)라는 책과 다양한 블로그를 참고하여 정리한 내용들을 바탕으로 작성한 글입니다. 추천시스템 추천시스템은 사용자(user)에게 상품(item)을 제안하는 소프트

wannabenice.tistory.com

https://wannabenice.tistory.com/43

 

[Recsys] 추천시스템 - 데이터 형태, 평가지표

본 글은 Recommender Systems(Charu C. Aggarwal)라는 책과 다양한 블로그를 참고하여 정리한 내용들을 바탕으로 작성한 글입니다. 데이터 형태 요즘 다양한 분야에서 추천시스템이 활용되면서 다양한 알

wannabenice.tistory.com

 

반응형

댓글