콘텐츠 기반 필터링
컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
콘텐츠 기반 필터링은 항목 기능을 사용하여 다른 항목을 추천합니다.
사용자의 이전 행동이나 명시적인 행동을 기준으로
사용자가 원하는 것과 유사한
의견을 보냅니다.
콘텐츠 기반 필터링을 시연하기 위해 몇 가지 특성을 직접 엔지니어링해 보겠습니다.
'Google Play 스토어'로 이동합니다. 다음 그림은 특성 행렬을 보여줍니다.
각 행은 앱을 나타내고 각 열은 기능을 나타냅니다. 특징
카테고리 (예: 교육, 일반, 건강), 게시자
앱 등이 있습니다. 단순화하기 위해 다음 특성 행렬이 바이너리라고 가정합니다.
0이 아닌 값은 앱에 해당 기능이 있음을 의미합니다.
또한 동일한 특성 공간에서 사용자를 나타냅니다. 일부 사용자 관련 콘텐츠는
사용자가 명시적으로 기능을 제공할 수 있습니다. 예를 들어 사용자가
'엔터테인먼트 앱' 표시됩니다. 다른 기능은 암시적일 수 있지만
이전에 설치한 앱을 기반으로 합니다. 예를 들어 사용자가
Science R Us에서 게시한 다른 앱을 설치했습니다.
모델에서 이 사용자와 관련된 상품을 추천해야 합니다. 이렇게 하려면
먼저 유사성 측정항목 (예: 내적)을 선택합니다. 그런 다음
이러한 유사성에 따라 각 후보 항목을 채점하도록 시스템을 설정합니다.
측정항목입니다. 추천은 이 사용자에게 한정되므로
다른 사용자에 대한 정보는 전혀 사용하지 않았습니다.
내적을 유사성 척도로 사용
사용자가 임베딩 및 앱을 \(x\) 만드는 경우를 생각해 보겠습니다.
임베딩 \(y\) 은 모두 바이너리 벡터입니다. 이후
\(\langle x, y \rangle = \sum_{i = 1}^d x_i y_i\), a
특성이 \(x\) \(y\)
있습니다. 즉, \(\langle x, y \rangle\) 는
특성으로 할 수 있습니다. A 최고
그러면 내적이 더 일반적인 특성을 나타내므로 유사성이 더 높아집니다.
직접 해 보세요.
앞의 앱 문제에서 각 앱의 내적을 계산합니다.
그런 다음 이 정보를 사용하여 아래 질문에 답하세요.
어떤 앱을 추천해야 할까요?
Science R Us에서 만든 교육용 앱입니다.
정답입니다. 이 상품의 내적이 가장 높습니다.
2. 저희 사용자는 과학 및 교육용 앱을 정말 좋아합니다.
Healthcare에서 만든 건강 앱입니다.
이 앱은 1점을 받았습니다. 나쁘지 않은 추천이지만
하지만 최선의 선택은 아닙니다.
TimeWastr에서 만든 캐주얼 앱입니다.
이 앱은 실제로 내적이 0으로 가장 낮습니다. Google의
게임과 같은 캐주얼 앱에 관심이 없는 사용자
달리 명시되지 않는 한 이 페이지의 콘텐츠에는 Creative Commons Attribution 4.0 라이선스에 따라 라이선스가 부여되며, 코드 샘플에는 Apache 2.0 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 Google Developers 사이트 정책을 참조하세요. 자바는 Oracle 및/또는 Oracle 계열사의 등록 상표입니다.
최종 업데이트: 2024-07-26(UTC)
[null,null,["최종 업데이트: 2024-07-26(UTC)"],[[["\u003cp\u003eContent-based filtering suggests items similar to a user's preferences by analyzing item features and user interactions.\u003c/p\u003e\n"],["\u003cp\u003eUser and item features are represented in a feature matrix, where common features indicate higher similarity.\u003c/p\u003e\n"],["\u003cp\u003eDot product is used as a similarity metric, with higher values indicating stronger relevance between user and item.\u003c/p\u003e\n"],["\u003cp\u003eRecommendations are tailored to individual users based on their specific features and interactions, without using data from other users.\u003c/p\u003e\n"],["\u003cp\u003eThe system identifies the best recommendations by calculating dot products and selecting items with the highest scores.\u003c/p\u003e\n"]]],[],null,["# Content-based filtering uses item features to recommend other items\nsimilar to what the user likes, based on their previous actions or explicit\nfeedback.\n\nTo demonstrate content-based filtering, let's hand-engineer some features\nfor the Google Play store. The following figure shows a feature matrix where\neach row represents an app and each column represents a feature. Features\ncould include categories (such as Education, Casual, Health), the publisher\nof the app, and many others. To simplify, assume this feature matrix is binary:\na non-zero value means the app has that feature.\n\nYou also represent the user in the same feature space. Some of the user-related\nfeatures could be explicitly provided by the user. For example, a user selects\n\"Entertainment apps\" in their profile. Other features can be implicit,\nbased on the apps they have previously installed. For example, the user\ninstalled another app published by Science R Us.\n\nThe model should recommend items relevant to this user. To do so, you must\nfirst pick a similarity metric (for example, dot product). Then, you must\nset up the system to score each candidate item according to this similarity\nmetric. Note that the recommendations are specific to this user, as the model\ndid not use any information about other users.\n\nUsing dot product as a similarity measure\n-----------------------------------------\n\nConsider the case where the user embedding \\\\(x\\\\) and the app\nembedding \\\\(y\\\\) are both binary vectors. Since\n\\\\(\\\\langle x, y \\\\rangle = \\\\sum_{i = 1}\\^d x_i y_i\\\\), a\nfeature appearing in both \\\\(x\\\\) and \\\\(y\\\\) contributes a 1 to\nthe sum. In other words, \\\\(\\\\langle x, y \\\\rangle\\\\) is the number\nof features that are active in both vectors simultaneously. A high\ndot product then indicates more common features, thus a higher similarity.\n\nTry it yourself!\n----------------\n\nCalculate the dot product for each app in the preceding app problem.\nThen use that information to answer the question below: \nWhich app should we recommend? \nThe educational app created by Science R Us. \nYou are correct! This item has the highest dot product at 2. Our user really likes science and educational apps. \nThe health app created by Healthcare. \nThis app scores a 1. It isn't the worst recommendation our system could make, but it certainly isn't the best. \nThe casual app created by TimeWastr. \nThis app actually has the lowest dot product at 0. Our user isn't interested in casual apps like games."]]