BookmarkSubscribeRSS Feed

Collaborative Filtering

Started ‎10-31-2024 by
Modified ‎10-31-2024 by
Views 481

협업 필터링(Collaborative Filtering)은 사용자와 데이터 간의 상호작용 데이터를 기반으로 추천을 생성합니다.

'A제품을 선호하는구나! A제품을 선호한 사용자는 B도 선호하더라구!'

사용자와 데이터 간의 유사성을 분석하여 사용자가 관심을 가질만한 상품 또는 서비스를 추천하는데 주로 사용합니다.

사용자의 선호 패턴을 수치 형태로 나타내고, 사용자간의 '비슷한 정도'를 계산해야 합니다.

■ Process

1. 사용자 - 아이템 행렬 생성

수치 형태로 표현하는 방법은 행을 사용자로 설정하고, 열을 아이템으로 설정해서 각 아이템에 대한 사용자의 평점을 기록해 상호작용 행렬(interaction matrix)로 표현할 수 있습니다.

사용자가 아이템을 평가, 클릭, 구매 등 데이터를 활용해 정보를 기반으로 interation matrix를 채울 수 있습니다.

2. 유사도 계산

협업 필터링에는 사용자 기반 협업 필터링(User-Based Collaborative Filtering)과 아이템 기반 협업 필터링(Item-Based Collaborative Filtering) 이 있습니다.

  • 사용자 기반 협업 필터링(User-Based Collaborative Filtering

- 유사한 관심사와 선호도를 가진 사용자들 간의 행동 패턴을 분석

  • 아이템 기반 협업 필터링(Item-Based Collaborative Filtering)

- 특정 사용자가 선호하는 항목과 유사한 다른 항목을 추천하는 방식

유저 기반의 협업 필터링의 경우 평가한 아이템의 index를 feature로 사용자별로 유사도를 계산합니다.

아이템 기반의 협업 필터링의 경우 아이템별로 유사도를 계산합니다.

3. 이웃 지정

추천 대상인을 생성할 때, 이웃의 수를 고정시킬수도 있으며 상황에 따라 변형하며 적용할 수 있습니다.

보통 높은 유사도를 가진 사용자 n 명을 사용합니다.

4. 랭킹

이웃들의 상호작용 데이터를 기반으로 추천 스코어를 계산할 수 있습니다.

 

■ 장단점

 

집단 지성을 활용한 개인화된 추천으로 사용자의 과거 행동을 기반으로 유사한 집단을 찾아 추천을 적용할 수 있습니다. 또한 뚜렷하게 드러나지는 않지만 선호 정보에 대한 반응으로 부터 데이터를 추출하여 하용하기 때문에 다양한 상품군에 대해서 추천이 가능합니다. 또한, 상호작용 데이타가 많아질수록 더 정교하고 다양한 제품의 추천이 가능합니다.

하지만, 한번도 추천되지 않은 아이템은 추천하기가 어렵다라는 단점이 있으며 과거 상호 작용 데이터에 기반하기 때문에 한번도 사용하지 않은 cold user 는 추천 품질이 떨어질 수 있습니다.

Version history
Last update:
‎10-31-2024 08:16 AM
Updated by:
Contributors

SAS Innovate 2025: Register Now

Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!

Article Labels
Article Tags