Accéder au contenu principal Passer au contenu complémentaire

Propriétés du tALSModel pour Apache Spark Batch

Ces propriétés sont utilisées pour configurer le tALSModel s'exécutant dans le framework de Jobs Spark Batch.

Le composant tALSModel Spark Batch appartient à la famille Apprentissage automatique.

Ce composant est disponible dans les produits Talend Platform avec Big Data et dans Talend Data Fabric.

Basic settings

Define a storage configuration component

Sélectionnez le composant de configuration à utiliser pour fournir les informations de configuration pour la connexion au système de fichiers cible, comme HDFS.

Si vous laissez cette case décochée, le système de fichiers cible est le système local.

Le composant de configuration à utiliser doit se trouver dans le même Job. Par exemple, si vous avez ajouté un composant tHDFSConfiguration dans votre Job, vous pouvez le sélectionner pour écrire le résultat dans un système HDFS donné.

Feature table

Complétez cette table afin de mapper les colonnes d'entrée aux trois facteurs requis pour le calcul du modèle de recommandation.
  • Input column : dans la liste déroulante, sélectionnez la colonne d'entrée à utiliser.

    Les colonnes sélectionnées doivent contenir les ID des utilisateurs et des utilisatrices, les ID des produits. De plus, les notes et les données doivent être des valeurs numériques.

  • Feature type : sélectionnez le facteur auquel chaque colonne d'entrée sélectionnée doit être mappée. Les trois facteurs sont User_ID, Product_ID et Rating.

Ce mapping permet au tALSModel de lire le bon type de données pour chaque facteur requis.

Training percentage

Saisissez le pourcentage (exprimé sous forme décimale) des données d'entrée à utiliser pour l'apprentissage du modèle de recommandation. Le reste des données est utilisé pour tester le modèle.

Number of latent factors

Saisissez le nombre de facteurs latents avec lesquels chaque caractéristique utilisateur·rice ou produit est mesurée.

Number of iterations

Saisissez le nombre d'itérations que vous souhaitez que le Job effectue pour apprendre le modèle.

Ce nombre doit être inférieur à 30 afin d'éviter des problèmes de dépassement de pile. En pratique, le résultat de la convergence (racine carrée de l'erreur quadratique moyenne ou RMSE) peut généralement être obtenu avant que vous ayez besoin d'utiliser un nombre supérieur à 30.

Cependant, si vous devez effectuer plus de 30 itérations, vous devez augmenter la taille de la pile utilisée pour exécuter le Job. Pour ce faire, vous pouvez ajouter l'argument -Xss, -Xss2048k par exemple, dans la table JVM Settings de l'onglet Advanced settings de la vue Run. Pour plus d'informations concernant la table JVM Settings, consultez Spécifier les limites de mémoire de la machine virtuelle pour un Job ou une Route.

Regularization factor

Saisissez le nombre de régularisations que vous souhaitez utiliser afin d'éviter le surapprentissage.

Build model for implicit feedback data set

Cochez cette case pour laisser le tALSModel gérer les jeux de données implicites.

À la différence des jeux de données explicites, comme la note d'un produit, un jeu de données implicite interprète les préférences des utilisateurs et des utilisatrices, par exemple, un enregistrement montre à quelle fréquence un utilisateur ou une utilisatrice achète un produit donné.

Si vous laissez la case décochée, le tALSModel gère les jeux de données explicites uniquement.

Pour plus d'informations concernant la gestion des jeux de données implicites par le modèle ALS, consultez la documentation de Spark à l'adresse suivante :https://spark.apache.org/docs/latest/mllib-collaborative-filtering.html (en anglais).

Confidence coefficient for implicit training

Saisissez le nombre pour indiquer le niveau de confiance en les préférences utilisateur·trices observées.

Parquet model path

Saisissez le répertoire dans lequel stocker le modèle de recommandation généré dans le système de fichiers à utiliser.

Le bouton pour parcourir votre système ne fonctionne pas en mode Local de Spark. Si vous utilisez les autres modes Yarn de Spark supportés par le Studio Talend avec votre distribution, assurez-vous d'avoir correctement configuré la connexion dans un composant de connexion dans le même Job. Utilisez le composant de configuration relatif au système de fichiers à utiliser.

Parquet model name

Saisissez le nom à utiliser pour le modèle de recommandation.

Advanced settings

Set Checkpoint Interval

Définissez la fréquence des points de contrôle. Il est recommandé de conserver la valeur par défaut (10).

Avant de définir la valeur de ce paramètre, activez l'opération de point de contrôle et définissez le répertoire de stockage des points de contrôle dans l'onglet Spark Configuration de la vue Run.

Pour plus d'informations concernant les checkpoints, consultez Logs et checkpoints des activités de votre Job Apache Spark.

Utilisation

Règle d'utilisation

Ce composant est utilisé en tant que composant de fin et requiert un lien d'entrée.

Les paramètres que vous devez configurer sont des paramètres libres. Leur valeur peut être fournie par des essais, des suppositions empiriques ou autres. Ils n'ont aucune valeur optimale applicable pour les jeux de données. Par conséquent, vous devez effectuer l'apprentissage du modèle généré à l'aide de différents ensembles de valeurs afin d'obtenir la racine carrée de l'erreur quadratique moyenne (RMSE) minimale. Le résultat est écrit dans la console de la vue Run à chaque exécution du Job.

Installation de MLlib

Dans la version 1.3 de Spark ou dans les versions antérieures, la bibliothèque d'apprentissage automatique de Spark, MLlib, utilise la bibliothèque gfortran runtime. Vous devez vous assurer que cette bibliothèque est présente dans chaque nœud du cluster Spark utilisé.

Pour plus d'informations concernant MLlib et sa bibliothèque, consultez la documentation correspondante de Spark.

RMSE score

Ces scores peuvent être écrits en sortie dans la console de la vue Run lorsque vous exécutez le Job, une fois ajouté le code suivant dans la vue Log4j de la boîte de dialogue Project Settings.
<!-- DataScience Logger -->
<logger name= "org.talend.datascience.mllib" additivity= "false" >
<level value= "INFO" />
<appender-ref ref= "CONSOLE" />
</logger>

Ces scores sont écrits en sortie avec les autres informations Log4j de niveau INFO. Si vous souhaitez empêcher l'écriture en sortie d'informations non pertinentes, vous pouvez, par exemple, passer le niveau Log4j de ce type d'informations à WARN. Vous devez laisser le niveau de DataScience Logger à INFO.

Si vous utilisez une solution Studio Talend soumise à souscription, l'activité de ce composant peut être journalisée avec la fonctionnalité Log4j. Pour plus d'informations concernant cette fonctionnalité, consultez Activer et configurer Log4j.

Pour plus d'informations concernant les niveaux de logs du log4j, consultez la documentation d'Apache : http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/Level.html (en anglais).

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – faites-le-nous savoir.