머신러닝&딥러닝/기초정리

추천 시스템 기초

Like_Me 2022. 12. 20. 11:26
반응형

- 추천 vs 검색 : 검색은 유저가 원하는 것을 알고 있을 때 그와 관련된 정보를 주는 것이고 추천은 유저가 스스로 원하는 것을 특정하지 않았을 때(모를 때) 관심 있을 만한 것들을 제시해 주는 것이다.

 

- 콘텐츠 기반 추천시스템 : 유저가 좋게 보는 아이템과 유사한 다른 아이템을 추천하는 방법.

장점

1. 다른 유저의 데이터가 필요하지 않다!

2. 추천할 수 있는 아이템의 범위가 넓다. (새롭거나 유명하지 않은 것까지 모두 가능 -> cold start problem 해결 가능)

3. 추천하는 이유를 제시할 수 있다. (기존에 좋아하던 아이템과 비슷하므로 해석 가능함.)

단점

1. 적절한 features를 찾기가 어렵다. (영화, 사진, 음악, 뉴스 등, 너무 많은 features가 있어 그중 어떤 게 좋은지 판단 어려움.)

2. 새로운 유저를 위한 추천이 어렵다. (기존에 무엇을 좋아하는지 모름, user profile이 부족함.)

3. 선호하는 특성을 가진 항목을 반복 추천한다. (다양한 취향 반영이 어렵다, 유저 프로필 외 추천이 불가하여 항상 비슷한 것만 추천해 버림.)

 

- 협업필터링(CF): 많은 사람의 의견으로 더 나은 추천을 한다. 여러 사람의 의견을 종합적으로 사용. (집단지성 사용)

* Neighborhood-based Collaborative Filtering (이웃기반 CF, Memory-based CF(기존의 데이터를 사용해서))

특징

1. User-Item 간의 평점 등 주어진 데이터로 새로운 아이템을 예측한다.

2. 구현이 간단하다.

3. model-based CF에 비해 계산량이 적다. (model은 학습을 해야 함)

4. 새로운 user, item이 추가되어도 비교적 안정적이다.

5. 새로운 content(user or item)를 추천할 수 있다.

한계

1. Cold-start 문제 (좋은 추천을 위해서는 충분한 데이터가 필요하고, 유저 혹은 아이템에 대한 기록이 없다면 추천 불가) -> 딥러닝 기반 추천알고리즘으로 한계 극복 가능.  

2. 계산량 (데이터가 많아지면 유사도 계산이 많아진다. 반대로 데이터가 없으면 추천 성능 하락.)

3. Long-tail Economy (대부분의 사용자가 관심 갖는 소수 아이템으로 쏠림 현상. 관심이 적은 아이템은 추천되지 못함.) -> 모델 기반 협업필터링으로 한계 극복 가능.

 

 User-based CF vs. Item-based CF

1. 정확도

User가 Item보다 많다면 Item-based, 반대면 User-based가 나음. (더 적은 것으로 CF를 할 때 덜 sparse 한 matrix를 사용할 수 있다.)

2. 모델 Robustness

유저와 아이템이 얼마나 자주 그리고 많이 변하는지에 따라 다르다.

아이템 수가 크게 변하지 않는다면, Item-based.

3. 설명력

Item-based는 비슷한 item과 가중치로 함께 설명할 수 있다.

User-based는 특정 user와 비슷한 user로 분류된 user의 실제 취향을 알기 어렵다.

4. 새로운 추천기능

Item-based: 과거 아이템 데이터에 의존하기 때문에 새로운 item을 추천하기 어렵다.

User-based: 여러 유저의 데이터를 보기 때문에 더 새로운 추천을 할 수 있다.

 

* Model-based Collaborative Filtering

특징

1. 머신러닝을 활용한 추천알고리즘의 일종.

2. 주어진 데이터를 활용하여 모델 학습.

3. 항목 간 유사성에서 벗어나, 데이터의 패턴을 학습.

4. 데이터 크기 또는 데이터의 특징을 동적으로 활용 가능하다.

5. 데이터의 잠재적 특성(선호하는 취향)을 파악하는 모델. (Latent Factor Model)

 

장점

1. 추천모델의 크기가 작다. 기존에는 sparase matrix를 계산해야 했으므로 훨씬 효율적.

2. 추천모델의 학습과 예측 속도. (준비된 모델로 inference만 하면 됨.)

3. 추천모델의 과적합 방지. 데이터를 다양하게 학습할 수 있으며, 새로운 추천을 할 가능성이 있다.

4. Sparse data, Cold start 문제에 잘 대처할 수 있음.

5. 공통의 유저 또는 아이템이 선택된 데이터를 확보하기 어려워 이웃기반 CF를 사용하기 어려울 때 사용 가능.

반응형