[Recommendation System] 추천시스템①

DD[Dev_Diary]·2024년 11월 11일

이번 게시물의 주제는 추천 시스템입니다. 😊


1. 추천 시스템이란? 🤔

추천 시스템은 특정 시점에 특정 고객에게 특정한 상품을 추천하는 시스템입니다.
E-commerce, OTT 등 다양한 서비스에서 상품 구매 및 선호도에 대한 사용자의 피드백(예: 평점, 후기 등)을 바탕으로 아이템을 추천하는 것이 추천 시스템의 기본 아이디어입니다.

추천 시스템의 발전을 간략히 살펴보면, 초기에는 단순한 연관 상품 추천 방식에서 시작되었습니다. 이후 넷플릭스에서 데이터를 활용한 추천 시스템 대회를 열었고, 이때 SVD(Singular Value Decomposition) 방식을 기반으로 한 협업 필터링 모델이 우승하면서 추천 시스템 연구가 활발해졌습니다. 현재는 FM 모델(Factorization Machine), 강화 학습, 딥러닝을 이용하고, 최근 뉴런 기반의 추천시스템과 그래프 기반의 추천시스템 등 추천 시스템의 기술은 지속적으로 발전하여 초개인화 추천시스템으로 발전하고 있습니다. 🔍


2. 추천 시스템의 종류 🧩

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

콘텐츠 기반 추천 시스템은 아이템의 세부 정보를 기반으로 사용자가 과거에 소비한 콘텐츠와 유사한 콘텐츠를 추천하는 방식입니다.
여기서 콘텐츠란 아이템의 성질이나 특성을 의미하며, 보통 텍스트로 이루어진 정보가 많이 사용됩니다. 이를 벡터화하여 유사도를 계산합니다.

장점 👍

  • 신규 사용자에게도 추천 가능: 다른 사용자의 데이터가 없어도 됩니다.
  • 추천의 근거를 제공: 어떤 콘텐츠를 추천하는지 설명이 가능합니다.
  • 새로운 콘텐츠 추천: 기존에 유명하지 않거나 새로 추가된 콘텐츠도 추천 가능.

단점 👎

  • 흥미 기반의 제한: 사용자가 과거에 흥미를 보인 콘텐츠가 없으면 추천이 어렵습니다.
  • 유사 콘텐츠만 추천: 이미 알고 있는 콘텐츠와 비슷한 것만 추천하는 경향이 있습니다.

Collaborative Filtering (협업 필터링) 👥

협업 필터링은 많은 사용자의 구매 패턴이나 평점을 바탕으로 다른 사용자에게 콘텐츠를 추천하는 방식입니다.
주된 가정은 "비슷한 취향을 가진 사용자에게 비슷한 콘텐츠를 추천한다"는 것입니다. 사용자 행동 데이터를 기반으로, 크게 두 가지 방식이 있습니다: 메모리 기반 알고리즘모델 기반 알고리즘입니다.

1) Memory-Based Algorithm 🔄

메모리 기반 협업 필터링은 사용자 간, 혹은 아이템 간의 유사도를 계산하여 추천하는 전통적인 방식입니다.

  • User-Based (사용자 기반): 유사한 취향을 가진 사용자가 선호하는 콘텐츠를 추천
  • Item-Based (아이템 기반): 유사한 아이템을 바탕으로 콘텐츠를 추천

장점은 쉽게 구현 가능하고, 결과를 쉽게 해석할 수 있다는 점입니다.

2) Model-Based Algorithm 💡

모델 기반 협업 필터링은 잠재 요인(Latent Factor)을 추출하여 추천하는 방식으로, 행렬 분해(Matrix Factorization)를 통해 잠재 요인을 추출해 추천을 합니다.
이 방식은 예측 속도가 빠르며, 대규모 데이터에도 효율적입니다. 하지만 추천의 설명력이 부족하며, 예측 정확도를 높이기 위해서는 모델의 튜닝이 필요합니다.


Hybrid Model (하이브리드 추천 시스템) ⚙️

하이브리드 추천 시스템은 Content-Based와 Collaborative Filtering 방식을 결합하여 두 방식의 단점을 보완하는 방식입니다. 다양한 알고리즘을 함께 사용하여 추천의 정확도추천 범위를 넓히고 있습니다. 💪


마치며 📝

이번 글에서는 추천 시스템의 기본 개념과 주요 알고리즘의 종류에 대해 간략히 알아보았습니다.
아직 공부하는 단계에서 작성한 내용이라 부족할 수 있지만, 앞으로 추천 시스템에 대해 하나씩 더 깊이 있게 다뤄볼 예정입니다!😊

잘못된 내용이나 피드백은 언제나 환영입니다~!!

profile
AI로 유용한 서비스 개발을 꿈꾸는 A린이

0개의 댓글