데이터 분석 이모저모 ~.~

개인화 추천 알고리즘_Content-Based Filtering 본문

AI/추천시스템

개인화 추천 알고리즘_Content-Based Filtering

jjangoocrush 2025. 12. 27. 19:26

좀 늦었쥬 ? ㅎㅎ 늦은 김에 얼른 써볼라고 했는디..

아아니 인프런에서 추천시스템 유료 강의를 들었고, 공부한 내용을 정리해서 포스팅하는 건데 말이쥬 ?

포스팅한 내용들을 다시 읽어보는데 뭔가 이상해서,, 다시 찾아봤는데 강의가 잘못된 내용이었던 거에여 ? 샤갈 ! ㅋ

그래서 제대로된 내용으로 다시 가져옴 ㅋㅋ 후...

 


 

 

Content-Based Filtering은 사용자가 조회하거나 관심있는 아이템과 유사한 컨텐츠를 추천하는 알고리즘이다.

쿠팡에서 단백질 쉐이크를 검색해서 클릭하면 아래 함께 비교하면 좋을 상품이 뜨지 않는가? 그게 이거다.

 

[그림6] 쿠팡 '함께 비교하면 좋을 상품'

 

이 알고리즘은 사용자가 선호한 아이템의 속성을 분석하고, 동일하거나 유사한 속성을 가진 다른 아이템을 추천한다.

예를 들어 단백질 쉐이크라면 브랜드, 맛, 단백질 함량, 가격대, 칼로리 와 같은 특징들을 벡터로 변환하여 유사도를 계산한다.

유사도 계산에는 대표적으로 Cosine Similarity, Euclidean Distance 등이 사용된다.

 

Content-Based Filtering 의 장점은 다음과 같다.

(1) 콜드 스타드 문제 완화

사용자의 데이터가 적어도, 아이템의 특징만 있다면 추천 가능하다

(2) 개인화 수준이 높다

사용자의 취향이 명확하게 반영되므로, 관심이 있을만한 아이템을 정교하게 추천한다

(3) 설명 가능성이 높다

'당신이 초코 단백질 쉐이크를 좋아하기 때문에 비슷한 맛의 제품을 추천합니다' 처럼, 근거 제시가 가능하다

 

하지만 한계점도 존재한다.

(1) 취향의 다양성 부족

관심있는 아이템과 비슷한 상품만 추천하여 새로운 카테고리 탐색이 어렵다

(2) 아이템 Feature 설계 필요

텍스트, 이미지, 수치형 데이터 등 다양한 속성을 잘 추출해야 성능이 나온다

 

그럼에도 불구하고 Content-Based Filtering은 전자상거래, OTT, 뉴스, 음악플랫폼에서 기본이 되는 핵심 추천 기법이다.

대규모 사용자 행동데이터가 없어도 구축이 가능하기 때문에 스타트업이나 신규 추천 기능 구현에도 자주 사용된다 !

 

참고로 현업에서는 Content-based Filtering을 단독으로 쓰기 보다는 Collaborative Filtering과 함께 사용하여 Hybrid 방식으로 많이 쓰인다 !

 


 

 

너무 짧아서 Python 코드와 함께 가져올까 했지만,,

아직 개념 포스팅도 많이 남았기 때문에 다음기회에 !

'AI > 추천시스템' 카테고리의 다른 글

통계 기반 비개인화 추천 알고리즘  (0) 2025.12.07
추천 시스템이란?  (0) 2025.12.06