데이터베이스 수업에서 간단하게 배운 지식을 정리한다.
추천시스템이란?
사용자들의 요구와 취향에 따른 적합한 상품을 추천하는 시스템
(여기서의 상품은 실질적인 상품보다는 영화, 음악, 책등을 말한다.)
추천시스템이 필요한 이유?
인터넷상의 너무 많은 정보들 때문에 오히려 사용자가 원하는 정보는 찾을 수 없는 상황이 많기 때문에 정보의 filtering의 필요성이 생겼기 때문
추천시스템(RS)의 타입들
추천시스템은 크게 Personalized RS와 Group RS로 나뉜다.
Personalized RS: 개인에게 적합한 추천결과를 제공한다. 개개인에 따른 맞춤 정보를 제공할 수 있지만 data가 많아짐에 따라 비용이 높아질 수 있다.
Group RS: 비슷한 성향을 갖는 사용자들을 그룹화하여 해당 그룹에게 적합한 추천결과를 제공한다. 비용을 줄일 수 있다.
Group RS
1. 사용자들을 그룹화한다.
2. Aggregation Method : 그룹안의 모든 사용자들의 평점들을 더하거나 곱하는 연산을 한다. -> 가장 평점이 높은 상품을 해당 그룹에 추천한다. (이 방법은 data에 null이 많기 때문에 어떤 연산을 하느냐에 따라 결과가 달라질 수 있다.)
Personalized RS
대부분의 추천시스템은 Personalization에 초첨을 맞춘다.
-filtering algorithm의 종류
- demographic filtering사용자의 기본적인 특성에 기반한다. 성별, 나이, 지역 등에 따라 추천한다.
- content-based filtering컨텐츠를 기반으로 비슷한 특징을 갖는 상품을 추천하거나, 과거에 좋아했던 상품과 유사한 상품을 추천한다.->과거의 기록이 없을 경우에는 효율적이지 않다.
- collaborative filtering가장 많이 사용되는 알고리즘으로, 개인사용자의 정보가 적을 때, 사용자와 유사한 성향의 다른 사용자의 정보를 바탕으로 추천한다.memory-based와 model-based로 나눌 수 있다.-Memory-based: 두 사용자, 혹은 두 상품간의 유사도를 사용한다. (Item-based vs User-based)-Model-based: 사용자의 선호도 정보 특정한 feature로 바꿔서 모델에 적용시킨다.
- hybrid filtering
'소소한 it지식' 카테고리의 다른 글
비트연산자로 2의 제곱수 여부 확인하기! (1) | 2021.03.24 |
---|---|
배열 처음부터 0으로 초기화 하기! (1) | 2021.03.23 |