Fractionner les données avec Recommender Split

Important

Le support de Machine Learning Studio (classique) prend fin le 31 août 2024. Nous vous recommandons de passer à Azure Machine Learning avant cette date.

À partir du 1er décembre 2021, vous ne pourrez plus créer de nouvelles ressources Machine Learning Studio (classique). Jusqu’au 31 août 2024, vous pouvez continuer à utiliser les ressources Machine Learning Studio (classique) existantes.

La documentation ML Studio (classique) est en cours de retrait et ne sera probablement plus mise à jour.

cet article explique comment utiliser l’option de fractionnement de recommandation dans le module fractionner les données de Machine Learning Studio (classic). Cette option est utile lorsque vous devez préparer des jeux de données d’apprentissage et de test à utiliser avec un modèle de recommandation. Non seulement ces modèles nécessitent un format spécifique, mais il peut être très difficile de diviser les évaluations, les utilisateurs et les éléments de façon équilibrée sans outils spéciaux.

Notes

s’applique à: Machine Learning Studio (classic) uniquement

Des modules par glisser-déposer similaires sont disponibles dans Concepteur Azure Machine Learning.

L’option de fractionnement du conseiller facilite ce processus en vous demandant le type de modèle de recommandation que vous utilisez : par exemple, recommandez-vous des éléments, Suggérez-vous une évaluation ou recherchez des utilisateurs associés ? Il divise ensuite le jeu de données en fonction de critères que vous spécifiez, par exemple comment gérer les utilisateurs à froid ou les éléments froids.

Lorsque vous fractionnez les jeux de données, le module retourne deux jeux de données, un destiné à l’apprentissage et l’autre à des fins de test ou d’évaluation de modèle. Si le jeu de données d'entrée contient des données supplémentaires par instance (telles que des évaluations), il est conservé dans la sortie.

Pour obtenir des informations générales sur le partitionnement des données pour les expériences Machine Learning, consultez.

D’autres options du module fractionner les données prennent en charge différentes façons de diviser les données :

Diviser un jeu de données utilisé par un modèle de recommandation

L’option de fractionnement du conseiller est fournie spécifiquement pour les données utilisées pour l’apprentissage des systèmes de recommandation.

Avant d’utiliser cette option, assurez-vous que vos données sont dans un format compatible. Le séparateur de recommandation fonctionne en supposant que le jeu de données se compose uniquement de paires utilisateur-élément ou de triplets utilisateur-élément-évaluation . Pour plus d’informations, consultez spécifications des données d’entrée dans cet article.

  1. Ajoutez le module Fractionner les données à votre expérience et connectez-le en tant qu’entrée au jeu de données que vous souhaitez fractionner.

  2. Pour le mode de fractionnement, sélectionnez le fractionnement du conseiller.

  3. Définissez les options suivantes pour contrôler la façon dont les valeurs sont divisées. Spécifiez un pourcentage représenté sous la forme d’un nombre compris entre 0 et 1.

    • Fraction d’utilisateurs de formation uniquement: spécifiez la fraction des utilisateurs qui doivent être affectés uniquement au jeu de données d’apprentissage. Cela signifie que les lignes ne seront jamais utilisées pour tester le modèle.

    • Fraction des évaluations d’utilisateur de test pour l’apprentissage: indiquez qu’une partie des évaluations utilisateur que vous avez collectées peut être utilisée pour l’apprentissage.

    • Fraction d’utilisateurs froids: les utilisateurs froids sont des utilisateurs que le système n’a pas encore rencontrés. En règle générale, comme le système ne possède aucune information sur ces utilisateurs, ils sont utiles pour l'apprentissage, mais les prédictions peuvent être moins précises.

    • Fraction d’éléments froids: les éléments froids sont des éléments que le système n’a pas précédemment rencontrés. Comme le système ne possède aucune information sur ces éléments, ils sont utiles pour l'apprentissage, mais les prédictions peuvent être moins précises.

    • Fraction des utilisateurs ignorés: cette option permet au conseiller d’ignorer certains utilisateurs, ce qui vous permet d’effectuer l’apprentissage du modèle sur un sous-ensemble de données. Cela peut être utile pour des raisons de performances. Vous spécifiez le pourcentage d’utilisateurs qui doivent être ignorés.

    • Fraction d’éléments ignorés: le séparateur de recommandation peut ignorer certains éléments et effectuer l’apprentissage du modèle sur un sous-ensemble de données. Cela peut être utile pour des raisons de performances. Vous spécifiez le pourcentage d’éléments à ignorer.

  4. Supprimer les éléments Cold créés occasionnellement: cette option est généralement définie sur zéro, pour s’assurer que toutes les entités du jeu de test sont incluses dans le jeu d’apprentissage.

    Un élément est dit « occasionnellement froid » s'il est couvert uniquement par le jeu de test et s'il n'a pas été explicitement choisi en tant que froid. Ces éléments peuvent être produits par les étapes (4) et (6) dans l'algorithme décrit dans la section Fractionnement des données de recommandation.

  5. Valeur initiale aléatoire pour le conseiller: spécifiez une valeur initiale si vous souhaitez fractionner les données de la même façon à chaque fois. Sinon, par défaut, les données d’entrée sont fractionnées de façon aléatoire, en utilisant une valeur d’horloge système comme valeur initiale.

  6. Exécutez l’expérience.

Exemples

Pour obtenir des exemples sur la façon de diviser un ensemble d’évaluations et de fonctionnalités utilisées pour l’apprentissage ou le test d’un modèle de recommandation, nous vous recommandons de consulter la procédure pas à pas fournie avec cet exemple d’expérience dans la recommandation Azure ai Gallery: Movie

Notes techniques

Cette section contient des détails, des conseils et des réponses aux questions fréquentes concernant l’implémentation.

Configuration requise pour les données d’entrée

Le séparateur de recommandation fonctionne en supposant que le jeu de données se compose uniquement de paires utilisateur-élément ou de triplets utilisateur-élément-évaluation. Par conséquent, le module fractionner les données ne peut pas fonctionner sur les jeux de données qui contiennent plus de trois colonnes, afin d’éviter toute confusion avec les données de type fonctionnalité.

Si votre jeu de données contient trop de colonnes, vous pouvez recevoir cette erreur :

Erreur 0022 : le nombre de colonnes sélectionnées dans le jeu de données d’entrée n’est pas égal à x

Pour résoudre ce problème, vous pouvez utiliser l’option Sélectionner des colonnes dans le jeu de données pour supprimer certaines colonnes. Vous pouvez toujours rajouter les colonnes ultérieurement à l’aide du module Ajouter des colonnes .

Sinon, si votre jeu de données a de nombreuses fonctionnalités que vous souhaitez utiliser dans le modèle, divisez le jeu de données à l’aide d’une autre option et formez le modèle à l’aide de l’option former le modèle plutôt que former le recommandation Matchbox.

Pour plus d’informations sur les formats de données pris en charge, consultez la page formation au conseiller Matchbox.

Conseils d’utilisation

  • Une erreur est générée si le DataSet ne contient pas au moins deux lignes.

  • Si vous spécifiez un nombre sous forme de pourcentage ou utilisez une chaîne contenant le caractère « % », la valeur est interprétée comme un pourcentage.

    Toutes les valeurs de pourcentage doivent être dans la plage (0, 100), les valeurs 0 et 100 non comprises.

  • Si vous spécifiez un nombre ou un pourcentage correspondant à un nombre à virgule flottante inférieur à un et que vous n'utilisez pas le symbole de pourcentage « % », le nombre est interprété comme une valeur proportionnelle.

Informations d’implémentation

L'algorithme suivant est utilisé lorsque les données sont fractionnées entre des jeux d'apprentissage et de test pour une utilisation avec un modèle de recommandation :

  1. La fraction demandée d'éléments ignorés est supprimée avec toutes les observations associées.

  2. La fraction demandée d'éléments froids est déplacée vers le jeu de test avec toutes les observations associées.

  3. La fraction demandée d'utilisateurs ignorés restant après les deux premières étapes est supprimée avec toutes les observations associées.

  4. La fraction demandée d'utilisateurs froids restant après les deux premières étapes est déplacée vers le jeu de test avec toutes les observations associées.

  5. La fraction demandée d'utilisateurs d'apprentissage seul restant après les deux premières étapes est déplacée vers le jeu d'apprentissage avec toutes les observations associées.

  6. Pour chaque utilisateur qui reste après toutes les étapes précédentes, la fraction demandée d'évaluations d'utilisateurs de test pour l'apprentissage est déplacée vers le jeu d'apprentissage, tandis que le reste est déplacé vers le jeu de test.

    Une observation au moins est toujours déplacée vers le jeu d'apprentissage défini pour chaque utilisateur.

  7. Si nécessaire, les instances associées aux éléments froids occasionnellement produits peuvent être retirées du jeu de test.

    Un élément est dit « occasionnellement froid » s'il est couvert uniquement par le jeu de test et s'il n'a pas été explicitement choisi en tant que froid. Ces éléments peuvent être produits par les étapes (4) et (6).

    L'utilisation anticipée de cette option tient au fait que le nombre demandé d'éléments et d'utilisateurs froids est défini à zéro. Cela garantit l'inclusion de toutes les entités du jeu de test dans le jeu d'apprentissage.

Voir aussi

Fractionnerunepartition de données et fractionner