Visão geral das recomendações
Os sistemas de recomendação são uma das aplicações mais bem-sucedidas e disseminadas de machine learning para empresas. Você pode usar um sistema de recomendação para ajudar seus usuários a encontrar conteúdo atraente em um grande corpo de conteúdo. Por exemplo, a Google Play Store oferece milhões de apps, enquanto o YouTube fornece bilhões de vídeos, com mais apps e vídeos adicionados todos os dias. Os usuários podem usar a pesquisa para encontrar conteúdo novo, mas isso é limitado pelos termos de pesquisa usados. Um sistema de recomendação pode sugerir conteúdo que os usuários talvez não tenham pensado em pesquisar por conta própria. Para mais informações, consulte Visão geral dos sistemas de recomendação.
Os algoritmos de aprendizado de máquina em sistemas de recomendação geralmente são classificados nas seguintes categorias:
- Filtro com base no conteúdo: usa a semelhança entre os itens para fornecer recomendações. Por exemplo, se um usuário assistir a dois vídeos de gatinhos fofos, o sistema de recomendação poderá recomendar mais vídeos de animais fofos.
- Filtragem colaborativa: usa semelhanças entre usuários (com base nas consultas deles) para fornecer recomendações. Por exemplo, se o usuário A pesquisar coisas semelhantes ao usuário B e o usuário B marcar o vídeo 1 com "Gostei", o sistema de recomendação poderá recomendar o vídeo 1 ao usuário A, mesmo que o usuário A não tenha assistido nenhum vídeo semelhante ao vídeo 1.
Modelos de fatoração de matrizes
Os modelos de fatoração de matrizes são amplamente usados como um método de filtragem colaborativa para sistemas de recomendação.
Em um modelo de fatoração de matrizes, os pares de usuário e item são mapeados para uma matriz bidimensional, com os usuários exclusivos em um eixo e os itens exclusivos no outro eixo. As classificações que um usuário deu aos itens ficam nas células da matriz. Essa matriz não precisa estar completamente preenchida. Na maioria das vezes, os usuários não têm um valor para cada item. O objetivo do modelo de fatoração de matriz é criar duas matrizes de pesos menores e densas que, quando multiplicadas, se aproximam dos valores originais da célula da matriz e fornecem classificações previstas para as células vazias da matriz.
Uma das matrizes menores contém os usuários únicos em um eixo e o número
de fatores latentes no outro eixo, conforme especificado pela
opção NUM_FACTORS
da instrução CREATE MODEL
. A outra matriz menor contém os itens
exclusivos em um eixo e o número de fatores latentes no outro eixo. Nesta
matriz, os pesos de fator latente são gerados pelo algoritmo usado para treinar
o modelo com base nas combinações de usuário e item da matriz de entrada.
Para mais informações, consulte Fatoração de matrizes.
É possível usar um modelo de fatoração de matrizes com a
função ML.RECOMMEND
para fazer recomendações.
Outros modelos de recomendação
Para ampliar um sistema de recomendação baseado em filtragem colaborativa além do que é
possível com um modelo de fatoração de matrizes, é possível usar
redes neurais profundas (DNN)
e modelos de
amplitude e profundidade
com a
função ML.PREDICT
para fazer recomendações. Esses modelos podem incorporar recursos de consulta e item para melhorar a relevância das
recomendações. Para saber mais, acesse os recursos a seguir:
- Recomendação usando modelos de rede neural profunda
- Redes neurais profundas para recomendações do YouTube
- Aprendizado profundo e amplo para sistemas do recomendador
Conhecimento recomendado
Usando as configurações padrão nas instruções CREATE MODEL
e nas
funções de inferência, é possível criar e usar um modelo de recomendação mesmo
sem muito conhecimento de ML. No entanto, ter conhecimentos básicos sobre
o desenvolvimento de ML e modelos de recomendação em particular
ajuda a otimizar os dados e o modelo para
produzir melhores resultados. Recomendamos o uso dos seguintes recursos para se familiarizar
com as técnicas e os processos de ML:
- Curso intensivo de machine learning
- Introdução ao aprendizado de máquina
- Aprendizado de máquina intermediário
- Sistemas de recomendação