Recomendação para usuário
Os sistemas de recomendação com Collaborative Filtering (Filtragem Colaborativa) ajudam a sugerir itens relevantes analisando o comportamento de diferentes usuários.
Por exemplo, imagine que você gostou de um filme em uma plataforma de streaming. Com o método user-user, o sistema procura pessoas com gostos parecidos com os seus e sugere filmes que elas gostaram.
Esse método funciona como uma espécie de "rede de amigos invisível", ajudando você a descobrir coisas novas que têm tudo a ver com o usuário.
EXEMPLO DE USO
Para gerar o arquivo com todas as configurações necessárias para utilizar posteriormente:
Ao concluir a procedure "FindBestModel", será criado o arquivo no diretório passado por parâmetro.
Para utilizar o modelo a partir do arquivo gerado:
A estrutura da base de dados pode ser encontrado aqui.
GUIA DE CLASSES E MÉTODOS
TEasyAIRecommendationFromItem
constructor Create(aItemsToRecommendCount : Integer); : cria o objeto com a base que será usada para treinamento.
aItemsToRecommendCount : quantidade máxima de itens que serão recomendados.
procedure LoadDataset(aDataSet : String; aHasHeader : Boolean = True); : carrega a base de dados para treinamento ou uso nos modelos que necessitam.
aDataSet : caminho do arquivo CSV.
aHasHeader : indica se tem cabeçalho no arquivo.
procedure LoadDataset(aDataSet : TDataSet); : carrega a base de dados para treinamento ou uso nos modelos que necessitam.
aDataSet : objeto TDataSet que contém os dados que serão usados para treinamento.
procedure FindBestModel(aPathResultFile: String; aMode : TEasyTestingMode = tmStandard; aMaxThreads : Integer = 0; aCsvResultModels : String = ''; aLogFile : String = ''); : testa várias opções de modelos para encontrar e preparar o melhor dentre eles para ser usado nas predições.
aPathResultFile : caminho onde salva as configurações do modelo encontrado, antes do uso basta usá-lo para preparar todo o objeto para predições.
aMode : modo de pesquisa se será realizada, tendo 3 opções:
tmFast : testa somente os prováveis melhores modelos. É o modo mais rápido;
tmStandard : testa os prováveis melhores modelos, além de explorar parâmetros mais extremos;
tmExtensive : testa um grande número de modelos, incluindo o dos outros métodos. É o modo mais demorado.
aMaxThreads : opcional, máximo de threads que serão utilizadas simultaneamente. Caso for 0, irá usar a quantidade de threads disponíveis no CPU.
aCsvResultModels : opcional, caminho que irá gerar um arquivo CSV contendo cada método testado, junto aos seus resultados.
aLogFile : opcional, caminho do arquivo de log.
procedure LoadFromFile(aPath : String); : carrega o arquivo gerado no "FindBestModel" para criar e preparar o uso do melhor modelo encontrado.
function RecommendItem(aFromUserSample : TArray<Double>) : TArray; : retorna X itens recomendados para um usuário que não estava no dataset.
aFromItemSample : dados do usuário que receberá a recomendação, cada posição X do array representa a nota que esse usuário deu para o item no índice X.
function RecommendItem(aFromUserID : Integer) : TArray; : retorna X itens recomendados para um usuário que já está no dataset.
aFromItemID : ID do usuário que receberá a recomendação.
Last updated