DL, ML/Recommender System

[Recommender System: the textbook] 5. Knowledge-Based Recommender Systems

 5.1 introduction

Collaborative systems: 많은 데이터가 필요 --> 그렇지않으면 cold-start 문제 발생.
Content-based: 조금 낫지만, new user에 대한 cold-start 문제는 여전히 남아있음.

또한, 매우 customized한 아이템에 잘 맞지않는 추천기법이다. 부동산, 자동차, 관광, financial services, 럭셔리 제품들은 판매량이 많지않고, 충분한 ratings가 이루어지지않음. 그리고 이런 상품들에 대한 도메인 영역은 매우 복잡하다. 집을 사고자할 때, 우리는 옷을 사듯이 고르는 것이 아니고, 평수, 방 개수, 베란다 유무 뭐 이런 것들을 명확하게 원하기때문.. 부동산 아이템과 같은 것들은 아이템을 설명하는데에 있어서 복잡성이 매우 커서, 유저가 비슷한 아이템에 대해 과거에 남긴 ratings를 반영하여 합리적인 ratins set을 구하는 것 자체가 어렵다.

그렇다면, 어떻게 이런 customization, paucity(ratings 부족)를 다룰 것인가?
--> knowledge-based recommender system.(KB)

explicitly soliciting user requirements for such items # 유저의 요구를 직접적으로 명시하게 요청한다.
그러나 문제는, 유저가 요구 전체를 말하거나, 그들조차도 그 요구들이 매칭되는 product가 있는지 알지 못한다. 따라서, KB는 interactive feedback(상호작용 피드백)을 사용하며, 유저가 이 피드백을 통해 본질적으로 복잡한 아이템 도메인을 탐색 및 다양한 옵션 사이에서 사용할 수 있는 절충안을 배우게한다.

KB 추천시스템에는 주로 정기적으로 팔리지않는 아이템들이 적합하다. 영화를 볼 때는 대충 어떤 내가 직접 요구사항으로 적어넣은 것 없이 추천된 영화를 봐도 무리가 없지만, 만약 내가 집을 구하는데 세부적으로 원하는 요구사항 정보를 넣지않고 추천된 집은 절대 보지않을 것이다. 따라서 이런 상황의 아이템들을 주로 KB추천시스템에 적합하다. 좀 더 자세히 보자! 1. customer가 그들의 요구사항을 직접 입력하고자하며, interactive가 중요한 요소인 경우. 2. product conplexity때문에 item에 대한 ratings정보를 얻기 힘든 경우. 3. 시간에 민감한 경우.(차, 컴퓨터의 경우에는 시간이 지나면서 발전하고, 예전 제품들은 더이상 찾지않는다. )
즉, customer가 갖고있는 어떠한 통제력이 중요한 요소!

KB추천시스템의 두 가지 types
- 둘 다 user에게 요구를 수정할 기회가 주어진다는 공통점
- case-based: case들을 유사도행렬과 연계하여 검색을 안내
- constraint-based: 구체적인 rule/criteria들을 활용하여 검색을 안내
1. constraint-based recommender systems
user가 직접 아이템 속성에 대한 요구나 제약조건을 명시하고, 계속해서 수정할 기회가 있다. 어떠한 조건에 대해 검색해본 후, 더 넓은/좁은 범위에 대해 다시 검색하는 등 interactively repeat를 반복하여 원하는 결과를 얻어낸다.


2. case-based recommender systems
해당 타겟 케이스에 대한 비슷한 아이템을 검색하기 위해서, 아이템속성에 대한 유사도행렬을 정의한다. 유사도 행렬 정의는 도메인 영역마다 다를 수 있음. interacte하게 수정되어 나온 결과는 새로운 타겟 케이스로 사용된다.

어떻게 user가 쿼리를 지정하고, 후속 개선을 위해 시스템과 상호작용을 하는지에 대한 차이점?
1. 오리지날 쿼리는 addition, deletion, modification, relaxtion of the original set에 의해 수정된다.
2. 유저와의 상호작용을 통해 수정되거나, directional critiques사용을 통해 검색결과가 삭제된다(가지치기). # 무슨의미징. 이러한 비판에서 사용자는 검색 결과의 특정 속성을 특정 방식으로 증가, 감소 또는 변경할 필요가 있는지 말하기만 하면 된다.

-

<interaction types>
목표: user에게 복잡한 product space를 잘 안내하기 위함.
1. conversational systems:
feedback loop에서 결정됨
2. search-based systems:
사전에 정해진 질문 순서에 따름(ex."Do you prefer a house in a suburban area or within the city?")
--> constraint-based에 잘 맞음
3. navigation-based recommendation(=critiquing recommeder system):
user가 현재 추천된 itemset에서 변경을 요청하여 검색을 다시해나감.
--> case-based에 잘 맞음