데이터 엔지니어링/데이터 분석

[데이터분석] 협업 필터링 (Collaborative Filtering)

pythaac 2022. 5. 29. 13:00

추천 알고리즘 종류

  1. 협업 필터링 (Collaborative Filtering)
    • Memory-based Approach
      - User-based Filtering
      - Item-based Filtering
    • Model-based Approach
      - Matrix Factorization
  2. 콘텐츠 기반 필터링 (Contents-based Filtering)

 

정의

  • 유저-아이템 간 상호작용 데이터를 활용하는 방법
    - ex) 이 영화를 좋아하는 다른 사람이 좋아하는 영화
  • 콘텐츠 기반 필터링과 비교
    - 정의 : 콘텐츠 특성을 기반으로 추천하는 방법
    - ex) 내가 좋아하는 감동, 장르 등을 활용

 

특징

  • 장점
    • 일반적으로 Content-based보다 성능이 좋음
    • 도메인에 의존되지 않음
    • 쉽게(학습없이, 산술연산으로) 만들 수 있음
  • 단점
    • Cold start
      - 새로운 유저/아이템에 대한 데이터가 적으면(sparce) 추천이 어려움
      - [대안] Random, Association Rule

 

종류

User-based Filtering

  • 유사한 사용자가 좋아하는 아이템을 추천
    - 유저간의 유사도를 측정
    - 유사도가 높은 유저가 선호하는 아이템을 추천
  • 당신과 비슷한 사용자 "A"가 "B" 아이템을 좋아함

 

Item-based Filtering

  • 아이템을 선택한 사용자들이 공통으로 좋아하는 다른 아이템을 추천
    - 특정 아이템을 좋아한 사용자들을 찾음
    - 이 사용자들이 공통으로 좋아하는 다른 아이템을 찾음
  • 이 아이템을 좋아하는 사용자들이 "B" 아이템을 좋아함

 

Matrix Factorization

https://yeomko.tistory.com/5

  • 유저-아이템의 매트릭스에 비어있는(sparce) 요소를 채우는 기술
  • 잠재적 특성인 Latent vector를 활용하여 Rating Matrix를 분해하고 내적값으로 추천하는 방식
    - Rating Matrix : User x Item의 행렬
    - Nf : Latent vector의 차원
    - X : user latent factor matrix
    - Y : item latent factor matrix
  • SVD, KNN, Deep Learning 등을 활용

 

 

https://kmhana.tistory.com/31

 

추천 시스템 기본 - 협업 필터링(Collaborative Filtering) - ①

*크롬으로 보시는 걸 추천드립니다* 우리 일상생활에 녹아있는 "인공지능(AI)"에는 추천 시스템이 있다는 것을 소개해 드렸습니다 https://kmhana.tistory.com/30 Have A Nice AI kmhana.tistory.com 이제 부터는..

kmhana.tistory.com

https://data-matzip.tistory.com/entry/Collaborative-FilteringCF-%ED%98%91%EC%97%85%ED%95%84%ED%84%B0%EB%A7%811-%ED%8A%B9%EC%A7%95-%EA%B0%9C%EB%85%90-%EC%88%98%EC%A0%95%ED%95%84%EC%9A%94

 

Collaborative Filtering(CF: 협업필터링)1: 개요

CF에 관한 내용들이 많아서 1과 2로 나눠서 게시했다. 1은 CF의 특징, 개념에 관한 내용이고, 2는 CF를 어떻게 계산하는지에 대한 직접적인 유도를 하는 내용이다. 관련한 모델 또한 추가로 정리했

data-matzip.tistory.com

https://tech.kakao.com/2021/10/18/collaborative-filtering/

 

카카오 AI추천 : 협업 필터링 모델 선택 시의 기준에 대하여

안녕하세요. 카카오 추천팀의 hee.yoon입니다.  여기에서는 협업 필터링(Collaborative Filtering, CF)이 무엇인지를 먼저 살펴 본 다음, 협업 필터링을 활용해 추천 시스템을 개발할 때 중요하게 고려해

tech.kakao.com

https://kmhana.tistory.com/32

 

추천 시스템 기본 - 협업 필터링(Collaborative Filtering) - ②

*크롬으로 보시는 걸 추천드립니다* 대표적 추천 시스템인 협업 필터링(Collaborative Filtering) 중 Memory-Based Approach에 대해서 다루어보았습니다 https://kmhana.tistory.com/31?category=882777 Have A Ni..

kmhana.tistory.com

https://blog.naver.com/PostView.naver?blogId=shino1025&logNo=222394488801 

 

[추천 시스템] Matrix factorization

이번 포스팅에서는 추천 알고리즘 중에서도 Collaborative Filtering 방법론 중 하나인 Matrix Factori...

blog.naver.com

https://yeomko.tistory.com/5

 

갈아먹는 추천 알고리즘 [3] Matrix Factorization

지난 글 갈아먹는 추천 알고리즘 [1] 추천 알고리즘의 종류 갈아먹는 추천 알고리즘 [2] Collaborative Filtering 들어가며 지난 글에서 Collaborative Filtering에 대하여 자세히 알아보았습니다. 세부적인 알

yeomko.tistory.com