Como atualizar o Spark MatrixFactorizationModel para ALS
Eu construo um sistema simples de recomendação para o MovieLens DB inspirado emhttps://databricks-training.s3.amazonaws.com/movie-recom,mendation-with-mllib.html.
Eu também tenho problemas com treinamento explícito, como aqui:Resultados de filtragem colaborativa do Apache Spark ALS. Eles não fazem sentido Usar o treinamento implícito (em dados explícitos e implícitos) me fornece resultados razoáveis, mas o treinamento explícito não.
Enquanto isso está ok para mim agora, estou curioso para saber como atualizar um modelo. Enquanto minha solução atual funciona como
tendo todas as classificações de usuáriosgerar modeloobter recomendações para o usuárioEu quero ter um fluxo como este:
tendo uma base de classificaçõesgerar modelo uma vez (opcional, salvar e carregar)obtenha classificações de um usuário em 10 filmes aleatórios (não no modelo!)obtenha recomendações usando o modelo e as novas classificações de usuárioPortanto, devo atualizar meu modelo, sem recalculá-lo completamente. Existe alguma chance de fazer isso?
Embora a primeira maneira seja boa para o processamento em lote (como gerar recomendações em lotes noturnos), a segunda maneira seria boa para a geração de recomendações quase ao vivo.