Na etapa final de um sistema de recomendação, ele pode classificar novamente os candidatos para considerar critérios ou restrições adicionais. Uma abordagem de reclassificação é usar filtros que removam alguns candidatos.
Outra abordagem de reclassificação é transformar manualmente a pontuação retornada pelo classificador.
Esta seção trata rapidamente da atualidade, diversidade e justiça. Esses fatores estão entre muitos que podem ajudar a melhorar seu sistema de recomendação. Alguns desses fatores geralmente exigem a modificação de diferentes estágios do processo. Cada seção oferece soluções que podem ser aplicadas individualmente ou coletivamente.
Atualização
O objetivo da maioria dos sistemas de recomendação é incorporar as informações de uso mais recentes, como o histórico do usuário atual e os itens mais recentes. Manter o modelo atualizado ajuda ele a fazer boas recomendações.
Soluções
- Execute o treinamento novamente com a maior frequência possível para saber mais sobre os dados de treinamento mais recentes. Recomendamos iniciar o treinamento com estado quente para que o modelo não precise aprender novamente do zero. A inicialização a quente pode reduzir significativamente o tempo de treinamento. Por exemplo, na fatoração de matriz, aqueça os embeddings de itens que estavam presentes na instância anterior do modelo.
- Crie um usuário com "média" para representar novos usuários em modelos de fatoração de matrizes. Não é necessário incorporar o mesmo embedding para cada usuário, porque é possível criar clusters de usuários com base nos recursos dele.
- Use uma DNN, por exemplo, um modelo softmax ou um de duas torres. Como o modelo usa vetores de recursos como entrada, ele pode ser executado em uma consulta ou item que não foi visto durante o treinamento.
- Adicione a idade do documento como um recurso. Por exemplo, o YouTube pode adicionar a idade de um vídeo ou a hora da última visualização como um recurso.
Diversidade
Se o sistema sempre recomenda itens "mais próximos" da incorporação de consultas, os candidatos tendem a ser muito semelhantes uns aos outros. Essa variedade de diversidade pode resultar em uma experiência do usuário ruim ou entediante. Por exemplo, se o YouTube apenas recomendar vídeos muito semelhantes ao vídeo que o usuário está assistindo no momento, como nada mais do que vídeos de coruja (como mostrado na ilustração), o usuário provavelmente perderá o interesse rapidamente.
Soluções
- Treinar vários geradores candidatos usando fontes diferentes
- Treinar vários avaliadores usando diferentes funções de objetivos
- Reclassifique itens com base no gênero ou em outros metadados para garantir a diversidade.
Justiça
Seu modelo deve tratar todos os usuários de maneira justa. Portanto, verifique se o modelo não está aprendendo vieses inconscientes dos dados de treinamento.
Soluções
- Inclua perspectivas diversas em design e desenvolvimento.
- Treine modelos de ML em conjuntos de dados abrangentes. Adicionar dados auxiliares quando os dados forem muito esparsos (por exemplo, quando determinadas categorias são sub-representadas).
- Rastreie métricas (por exemplo, precisão e erro absoluto) em cada demografia para observar se há vieses.
- Crie modelos separados para grupos carentes.