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:

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: