콘텐츠 기반 필터링

콘텐츠 기반 필터링은 항목 기능을 사용하여 사용자의 이전 작업이나 명시적 피드백을 기반으로 사용자가 좋아하는 것과 유사한 다른 항목을 추천합니다.

콘텐츠 기반 필터링을 시연하기 위해 Google Play 스토어의 몇 가지 기능을 직접 엔지니어링해 보겠습니다. 다음 그림은 각 행이 앱을 나타내고 각 열은 특성을 나타내는 특성 행렬을 보여줍니다. 기능에는 카테고리 (예: 교육, 캐주얼, 건강), 앱 게시자 등이 포함될 수 있습니다. 단순화하기 위해 이 특성 행렬이 바이너리라고 가정합니다. 0이 아닌 값은 앱에 해당 기능이 있음을 의미합니다.

또한 동일한 특성 공간에서 사용자를 나타냅니다. 일부 사용자 관련 기능은 사용자가 명시적으로 제공할 수 있습니다. 예를 들어 사용자가 프로필에서 '엔터테인먼트 앱'을 선택합니다. 이전에 설치한 앱에 따라 다른 기능이 암시적일 수도 있습니다. 예를 들어 사용자가 과학 R US에서 게시한 다른 앱을 설치했습니다.

모델은 이 사용자와 관련된 상품을 추천해야 합니다. 이렇게 하려면 먼저 유사성 측정항목 (예: 내적)을 선택해야 합니다. 그런 다음 이 유사성 측정항목에 따라 각 후보 항목에 점수를 매도록 시스템을 설정해야 합니다. 모델이 다른 사용자에 관한 정보를 사용하지 않았으므로 추천은 이 사용자에게만 적용됩니다.

권장될 수 있는 사용자 및 앱을 보여주는 매트릭스 이미지

점 제품을 유사성 척도로 사용

사용자 임베딩 \(x\) 과 앱 임베딩 \(y\) 이 모두 바이너리 벡터인 경우를 생각해 보세요.\(\langle x, y \rangle = \sum_{i = 1}^d x_i y_i\)부터 \(x\) 와 \(y\) 모두에 표시되는 특성이 합계에 1이 됩니다. 즉, \(\langle x, y \rangle\) 는 두 벡터에서 동시에 활성 상태인 특성의 수입니다. 그런 다음 높은 점은 더 일반적인 특성을 나타내므로 유사성이 높아집니다.

직접 사용해 보세요.

앞의 앱 문제에 있는 각 앱의 내적을 계산합니다. 그런 다음 이 정보를 사용하여 아래 질문에 답하세요.

어떤 앱을 추천해야 할까요?
Science R Us에서 제작한 교육용 앱입니다.
정답입니다. 이 항목의 가장 내적은 2입니다. 사용자가 과학/교육 앱을 정말 좋아합니다.
Healthcare에서 만든 건강 앱입니다.
이 앱의 점수는 1점입니다. Google 시스템이 최악의 추천은 아니지만 이는 최악의 추천은 아닙니다.
TimeWastr에서 만든 캐주얼 앱입니다.
이 앱은 실제로 내점이 0입니다. 사용자는 게임과 같은 캐주얼 앱에 관심이 없습니다.