O uso da IA na recomendação de games

Já se passaram os tempos em que videogames eram considerados como diversão somente para jovens e amantes da tecnologia. O fato é: o mercado de videogames vem crescendo ano após ano e cada vez mais pessoas dos mais diversos grupos sociais adotam este meio de entretenimento. Ao mesmo tempo, vemos nos últimos anos um boom de tecnologias de recomendação, desde o algoritmo de recomendação de vídeos do Tik Tok até a sugestão de produtos semelhantes da Amazon, a conclusão que podemos chegar é: possuir soluções personalizadas e precisas de recomendação é obrigatório para o sucesso de qualquer negócio.

Nesse artigo vamos entender a ideia por trás de um algoritmo de recomendação, e como podemos aplicar esse conceito dentro do mercado de videogames.

Como funciona um algoritmo de recomendação?

Algoritmos de recomendação são aplicações capazes de sugerir um novo item para uma pessoa baseado em diversos fatores. Esses algoritmos são capazes de descobrir padrões e relações entre dados para criar uma predição probabilística.

Para compreendermos como funciona um algoritmo de recomendação precisamos primeiro analisar o problema por trás dele, a ideia é: com base no comportamento de determinado usuário precisamos prever que outros produtos ele gostaria de consumir, por exemplo: a partir das avaliações de um usuário sobre um videogame específico determinar quais outros videogames ele gostaria de jogar.

Com base no problema mencionado existem 2 técnicas que são comumente utilizadas para a criação de predições: a filtragem de conteúdo e a filtragem colaborativa.

  • Filtragem de Conteúdo: Funciona através das chamadas features dos itens que um determinado usuário gosta. Seguindo o exemplo dos videogames, alguns exemplos de features são: gênero, desenvolvedora, franquia. A partir disso é possível pegar itens com features em comum com itens que o usuário gosta. Ainda no exemplo de jogos podemos pensar desta maneira: se o usuário X gostou de um jogo do gênero Y da franquia Z podemos recomendar para ele outros jogos do gênero Z da franquia Y.
    Algumas vantagens desse método são: não são necessários dados de outros usuários para criar as recomendações, fazendo com que ele seja facilmente escalável, e é uma excelente forma de criar recomendações focadas nos nichos de cada usuário. Em contrapartida este método exige alto conhecimento do domínio dos itens sendo recomendados, além disso ele não é eficiente para expandir os interesses de cada usuário.
  • Filtragem Colaborativa: Por sua vez, a filtragem colaborativa funciona através das similaridades entre produtos e usuários e a similaridade entre usuário e usuários, ou seja, é possível recomendar itens para um usuário baseado em interesses em comum com outros usuários. Seguindo na recomendação de jogos, temos o seguinte exemplo: O usuário X gostou do jogo Y, e diversos outros usuários que gostaram do jogo Y também gostaram do jogo Z, logo, podemos recomendar o jogo Z para o usuário X.
    As vantagens da filtragem colaborativa são: não é necessário conhecimento profundo do domínio da recomendação, já que as as relações entre os dados são calculadas automaticamente pelo modelo, além disso, é excelente para fazer o usuário descobrir novos itens fora do seu nicho de preferência.

É importante destacar também que existem sistemas de recomendação híbridos, que misturam 2 ou mais técnicas para atingir uma maior precisão nas recomendações.

Fatoração de Matrizes

Com base no que foi descrito anteriormente podemos ter uma boa base sobre sistemas de recomendações. As técnicas de fatoração de matrizes são essenciais para trabalhar com esse tipo de sistema e com a filtragem colaborativa. Veja a seguir uma matriz, representando os dados necessários para uma filtragem colaborativa, onde cada linha representa um usuário e cada coluna um jogo, a intersecção entre usuário e jogo possui a nota que aquele determinado usuário deu para aquele jogo.

Repare que existem valores faltando na matriz, esses são os casos em que não possuímos informações, por exemplo: O usuário 1 atribuiu a nota 2 para o jogo 2, porém ele não atribuiu nota alguma ao jogo 1, indicando que ele nunca o jogou. 

O papel do nosso algoritmo é descobrir outras 2 matrizes, que, quando multiplicadas uma pela outra, resultam o mais próximo possível da nossa matriz original. Essas outras 2 matrizes são o que determinam a correlação entre os dados, e a partir delas, podemos preencher os dados que faltam na matriz original, assim descobrindo quais jogos os usuários terão mais interesse. A partir da nossa matriz original poderíamos descobrir essas outras duas matrizes:

Agora que possuímos essas matrizes podemos multiplicar uma pela outra, resultado em uma nova matriz, que preenche os espaços faltantes da nossa matriz original:

Com essa nova matriz podemos determinar as preferências dos usuários, como por exemplo: o usuário 3 teria uma alta compatibilidade com o jogo 1.

Sistemas de recomendação já são uma prática comum no mercado, e podemos encontra-los nas mais diversas áreas. Através desse artigo foi possível entender melhor como funciona um sistema de recomendação e como podemos aplicar esse conceito no mundo dos games.

Autor: Paulo Bodaneze Reva

Referências:

https://www.statista.com/outlook/dmo/digital-media/video-games/worldwide

https://www.youtube.com/watch?v=n3RKsY2H-NE&ab_channel=ArtoftheProblem

https://developers.google.com/machine-learning/recommendation/content-based/basics

https://www.nvidia.com/en-us/glossary/recommendation-system/#:~:text=A%20recommendation%20system%20is%20an,demographic%20information%2C%20and%20other%20factors

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *