A filtragem com base em conteúdo usa recursos para recomendar outros itens semelhantes ao que o usuário gosta, com base nas ações anteriores ou no feedback explícito.
Para demonstrar o filtro com base no conteúdo, faremos engenharia manual de alguns recursos da Google Play Store. A figura a seguir mostra uma matriz de atributos em que cada linha representa um app e cada coluna representa um recurso. Os recursos podem incluir categorias (como Education, casual, Health), editor do app e muitas outras. Para simplificar, suponha que essa matriz de recursos seja binária: um valor diferente de zero significa que o app tem esse recurso.
Você também representa o usuário no mesmo espaço de recurso. Alguns dos recursos relacionados ao usuário podem ser fornecidos explicitamente pelo usuário. Por exemplo, um usuário seleciona "quot;Apps de entretenimento" no perfil. Outros recursos podem ser implícitos, com base nos apps instalados anteriormente. Por exemplo, o usuário instalou outro app publicado pela Science R Us.
O modelo deve recomendar itens relevantes para este usuário. Para isso, escolha primeiro uma métrica de semelhança (por exemplo, produto pontilhado). Em seguida, é preciso configurar o sistema para classificar cada item candidato de acordo com essa métrica de semelhança. As recomendações são específicas para esse usuário, porque o modelo não usou informações sobre outros usuários.
Usando o produto pontilhado como medida de semelhança
Considere o caso em que o usuário incorporado \(x\) e o de incorporação de apps \(y\) são vetores binários. Desde \(\langle x, y \rangle = \sum_{i = 1}^d x_i y_i\), um recurso que aparece em \(x\) e \(y\) contribui com um 1 para a soma. Em outras palavras, \(\langle x, y \rangle\) é o número de atributos ativos nos dois vetores simultaneamente. Um produto de alto ponto indica recursos mais comuns, portanto, uma maior semelhança.
Experimente por conta própria!
Calcule o produto de pontos de cada app no problema anterior. Depois, use essas informações para responder à pergunta abaixo: