Dados divididos usando a Divisão de Recomendadores

Este artigo descreve como usar a opção Recommender Split no módulo de dados divididos do Azure Machine Learning Studio (clássico). Esta opção é útil quando é necessário preparar conjuntos de dados de treino e teste para utilização com um modelo de recomendação. Estes modelos não só requerem um formato específico, como pode ser muito difícil dividir as classificações, os utilizadores e os itens de forma equilibrada sem ferramentas especiais.

Nota

Aplica-se a: Machine Learning Studio (clássico)

Este conteúdo diz respeito apenas ao Studio (clássico). Módulos semelhantes de arrasto e queda foram adicionados ao designer de Aprendizagem automática Azure. Saiba mais neste artigo comparando as duas versões.

A opção de divisão do Recomendador facilita este processo pedindo o tipo de modelo de recomendação com o quais está a trabalhar: por exemplo, recomenda itens, sugere uma classificação ou encontra utilizadores relacionados? Em seguida, divide o conjunto de dados por critérios que especifica, como manusear utilizadores frios ou itens frios.

Quando divide os conjuntos de dados, o módulo devolve dois conjuntos de dados, um destinado a treino e outro para testes ou avaliação de modelos. Se o conjunto de dados de entrada contiver quaisquer dados adicionais por instância (tais como classificações), é preservado na saída.

Para obter informações gerais sobre a partilha de dados para experiências de aprendizagem automática, consulte

Outras opções no módulo Dados Divididos suportam diferentes formas de dividir os dados:

Divida um conjunto de dados usado por um modelo de recomendação

A opção Recommender Split é fornecida especificamente para os dados utilizados para formar sistemas de recomendação.

Antes de utilizar esta opção, certifique-se de que os seus dados estão num formato compatível. O separador de recomendadores funciona sob o pressuposto de que o conjunto de dados consiste apenas em pares de artigos de utilizador ou triplos de classificação de artigos de utilizador. Para mais informações, consulte os requisitos de dados de entrada neste artigo.

  1. Adicione o módulo de Dados Divididos à sua experiência e conecte-o como entrada ao conjunto de dados que pretende dividir.

  2. Para o modo de divisão, selecione Recommender split.

  3. Desa estada as seguintes opções para controlar a forma como os valores são divididos. Especifique uma percentagem representada como número entre 0 e 1.

    • Fração de formação apenas utilizadores: Especifique a fração de utilizadores que deve ser atribuída apenas ao conjunto de dados de formação. Isto significa que as filas nunca seriam usadas para testar o modelo.

    • Fração das classificações dos utilizadores de teste para a formação: Especifique que alguma parte das classificações de utilizador que recolheu podem ser utilizadas para o treino.

    • Fração de utilizadores frios: Os utilizadores frios são utilizadores que o sistema não encontrou anteriormente. Normalmente, como o sistema não tem informação sobre estes utilizadores, eles são valiosos para o treino, mas as previsões podem ser menos precisas.

    • Fração de itens frios: Itens frios são itens que o sistema não encontrou anteriormente. Como o sistema não tem informação sobre estes itens, eles são valiosos para o treino, mas as previsões podem ser menos precisas.

    • Fração de utilizadores ignorados: Esta opção permite ao recomendador ignorar alguns utilizadores, o que permite treinar o modelo num subconjunto de dados. Isto pode ser útil por razões de desempenho. Especifica a percentagem de utilizadores que deve ser ignorada.

    • Fração de itens ignorados: O separador recomendador pode ignorar alguns itens e treinar o modelo num subconjunto de dados. Isto pode ser útil por razões de desempenho. Especifica a percentagem de itens a ignorar.

  4. Remover ocasionalmente itens frios produzidos: Esta opção é normalmente definida para zero, para garantir que todas as entidades do conjunto de testes estejam incluídas no conjunto de treino.

    Diz-se que um item é "ocasionalmente frio" se for coberto apenas pelo conjunto de teste e não foi explicitamente escolhido como frio. Estes itens podem ser produzidos por etapas (4) e (6) no algoritmo descrito na secção Como Os Dados Recomendadores são Divididos.

  5. Semente aleatória para recomendador: Especifique um valor de semente se quiser dividir os dados da mesma forma sempre. Caso contrário, por padrão, os dados de entrada são divididos aleatoriamente, utilizando o valor do relógio do sistema como semente.

  6. Execute a experimentação.

Exemplos

Por exemplo, como dividir um conjunto de classificações e funcionalidades usadas para treinar ou testar um modelo de recomendação, recomendamos que reveja o walkthrough fornecido com esta experiência de amostra na Galeria Azure AI: Recomendação de filme

Notas técnicas

Esta secção contém detalhes de implementação, dicas e respostas a perguntas frequentes.

Requisitos para dados de entrada

O separador de recomendadores funciona sob o pressuposto de que o conjunto de dados consiste apenas em pares de artigos de utilizador ou triplos de classificação de artigos de utilizador. Portanto, o módulo Dados Divididos não pode funcionar em conjuntos de dados que têm mais de três colunas, para evitar confusão com dados do tipo recurso.

Se o seu conjunto de dados contiver demasiadas colunas, poderá obter este erro:

Erro 0022: Número de colunas selecionadas no conjunto de dados de entrada não é igual a x

Como solução alternativa, pode utilizar Colunas Selecionadas no Conjunto de Dados para remover algumas colunas. Pode sempre adicionar as colunas mais tarde, utilizando o módulo Add Columns.

Em alternativa, se o seu conjunto de dados tiver muitas funcionalidades que pretende utilizar no modelo, divida o conjunto de dados usando uma opção diferente e treine o modelo usando o Modelo de Comboio em vez do Recomendador train Matchbox.

Para obter informações detalhadas sobre os formatos de dados suportados, consulte o Recomendador train Matchbox.

Dicas de utilização

  • Um erro é levantado se o conjunto de dados não contiver pelo menos duas linhas.

  • Se especificar um número em percentagem, ou se utilizar uma cadeia que contenha o caráter "%", o valor é interpretado em percentagem.

    Todos os valores percentuais devem estar dentro do intervalo (0,100), sem incluir os valores 0 e 100.

  • Se especificar um número ou percentagem que é um ponto flutuante número inferior a um, e não utilizar o símbolo por cento (%), o número é interpretado como um valor proporcional.

Detalhes de implementação

O seguinte algoritmo é utilizado ao dividir dados em conjuntos de treino e teste para utilização com um modelo de recomendação:

  1. A fração solicitada de itens ignorados é removida com todas as observações associadas.

  2. A fração solicitada de itens frios é transferida para o conjunto de teste com todas as observações associadas.

  3. A fração solicitada de utilizadores ignorados que permanecem após os dois primeiros passos é removida com todas as observações associadas.

  4. A fração solicitada de utilizadores frios que permanecem após os dois primeiros passos é transferida para o conjunto de testes com todas as observações associadas.

  5. A fração solicitada de utilizadores apenas de formação que permanecem após os dois primeiros passos é transferida para o conjunto de formação com todas as observações associadas.

  6. Para cada utilizador que permanece após todas as etapas anteriores, a fração solicitada das classificações de utilizador de teste para treino é transferida para o conjunto de treino, e o restante é transferido para o conjunto de testes.

    Pelo menos uma observação é sempre transferida para o conjunto de treino para cada utilizador.

  7. Se solicitado, os casos associados aos itens frios ocasionalmente produzidos podem ser removidos do conjunto de ensaios.

    Diz-se que um item é "ocasionalmente frio" se for coberto apenas pelo conjunto de teste, e não foi explicitamente escolhido como frio. Estes itens podem ser produzidos por etapas (4) e (6).

    O uso antecipado desta opção é que o número solicitado de utilizadores e itens frios está definido para zero. Isto garante que todas as entidades do conjunto de testes estão incluídas no conjunto de formação.

Ver também

Dados Divididos Partição e Divisão