저장소

[추천시스템] 01. 추천시스템 개요 본문

IT/인공지능

[추천시스템] 01. 추천시스템 개요

huiu 2022. 4. 5. 18:31

1. 추천 시스템이란?

  • 사용자(User)와 아이템(Item)으로 구성
  • Item, User 구분 없이 관심 갖을만한 정보를 관련도에 따라 리스트(list) 형태로 추천
  • 사용자의 정보 수집 소요 시간 줄이기가 목적

 

2. 사용자(User)와 아이템(Item)

  • 사용자-아이템 관계 분석 + 연관 관계 찾기 + 연관 관계 점수화
  • 사용자-아이템 정보 활용

(1) 사용자 프로필(Profile)

  • 사용자 or 사용자 그룹별 분석 가능 요소로 프로파일링
  • 사용자 구분 가능 정보 활용: ID, 쿠키, 행동 패턴, ...
  • 수집 방법
    • 직접적(Explicit): 설문조사, 평가, 피드백 등
    • 간접적(Implicit): 웹 페이지 잔류 시간, 행동 패턴, 검색 로그 등

 

(2) 아이템 프로필

  • 플랫폼마다 정의하는 아이템의 종류가 상이하고 관련있는 상품(or 아이템)만 추천
  • 아이템 프로필 정보 활용: 아이템 ID, 고유 정보(크기, 색, 가격 등), 구매자 정보 등

 

3. 추천점수

  • 분석된 사용자-아이템 정보(feature)를 활용해 정량화된 기준을 바탕으로 추천점수 계산
    • 어떤 정보를 사용할지에 따라 추천 알고리즘 결정
  • 추천 알고리즘의 목적 = 점수화(Scoring)

4. 추천 시스템 활용

(1) 예시

  • 넷플릭스(콘텐츠 추천), 인스타그램(광고 노출), 쿠팡(상품 추천) 등

 

(2) 데이터 종류

  • Items: 추천 항목, 가치와 데이터의 복잡함에 따라 구분
  • Users: 여러 목적과 특징을 갖는 집단
    • 프로필 수집: 유저 모델링
    • 협업 필터링: 평점 리스트 생성
    • 사회적인 요인 활용
  • Transaction: 유저-아이템 간 상호작용
    • 유저의 인터넷에 남긴 로그에서 중요 정보 추출 가능

 

(3) 풀고자 하는 문제

  • 랭킹 문제
    • 특정 유저-아이템 사이의 선호도에 따른 Top-K를 선정 가능해야 함
  • 예측 문제
    • 유저(m명)-아이템(n명)의 m*n 행렬을 채우는 문제
    • 비어있는 부분 존재
    • 관측값(Observed value): 모델 학습에 사용
    • 결측값(Missing value): 모델 평가에 사용


5. 추천 시스템 알고리즘

  • 대상 상품에서 후보 상품 추출 => 추출 상품에 대한 예측 or 필터링 => 순위 매기기

(1) Content-based Recommender System: 콘텐츠 기반 추천시스템

  • 사용자가 과거에 좋아했던 아이템 파악 => 비슷한 아이템 추천

 

(2) Collaborative Filtering: 협업 필터링

  • 비슷한 성향 또는 취향을 갖는 다른 유저가 좋아한 아이템을 현재 유저에게 추천
  • 간단하지만 수준 높은 정확도

 

 

(3) Hybrid Recommender System

  • 콘텐츠 기반 + 협업 필터링의 장-단점 상호보완
    • 협업 필터링 = 새로운 아이템에 대한 추천 부족
    • 콘텐츠 기반 = cold-start 문제에 도움
      • cold-start: 추천 시스템이 새로운 또는 어떤 유저들에 대한 충분한 정보가 수집되지 않아서 해당 유저들에게 적절한 아이템을 추천해주지 못하는 문제

(4) Other Recommendation Algorithms

  • Context-based Recommendation: 맥락 기반 추천시스템
    • Context-aware
    • 유저가 처한 상황, 맥락에 기초한 상품추천 방법
    • Ex) Location-Based(위치), Real-time or Time-Sensitive(시간) Recommender
  • Community-based Recommendation: 커뮤니티 기반 추천 시스템
    • 친구, 커뮤니티 등 관계 대상의 선호 기반 추천 방법
    • SNS 뉴스 피드, 네트워크 데이터 등 활용
  • Knowledge-based Recommendation: 지식 기반 추천 시스템
    • 특정 도메인(산업) 지식 기반 고객/아이템 특성 활용 추천
    • Ex) Case-based(사례 기반: 사용자의 needs 중 가장 적합한 것), Constraint-based(제약 기반: 경험이나 전문 지식을 통해 정해진 규칙)


6. 추천 시스템 한계

종류 특징
Scalability 학습 or 분석 사용 데이터와 실전 데이터의 차이
Ex) 트렌드 변화, 예상치 못한 아이템의 선호도 급증
Proactive Recommender System 특별 요청이 없어도 사전에 먼저 제공하는 추천서비스
Ex) push-information: 유저의 갈증 해소를 위해 끊임없이 정보를 추천해야 함
Colde-Star Problem 데이터 부족
협업필터링 모델 구축 어려움
콘텐츠 기반 or 지식 기반 방법 => 서비스로 적용 어려움
Privacy preserving Recommender System 개인정보 등 유저 정보 접근/직접 사용 어려움
Mobile devices and Usage Contexts 개별 상황 또는 환경 등에 따라 다른 context 사용
Long-term and Short-term user preference 개인 or 그룹의 단기/장기 관심사항: 추천받고 싶은 아이템이 어느 시기와 관련 있는지 파악 어려움
Generic User models and Cross Domain Recommender System 유사 도메인 데이터 활용 시에도 동일 성능 보장X
Starvation and Diversity  

 

  • Long Tail Economy
    • 10% 데이터만 활용하여 추천 => 치중될 수 있음
    • 나머지 90% 데이터 활용 필요
Comments