Propriétés du tALSModel dans des Jobs Spark Batch - 6.1

Composants Talend Guide de référence

EnrichVersion
6.1
EnrichProdName
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for Data Quality
Talend Open Studio for ESB
Talend Open Studio for MDM
Talend Real-Time Big Data Platform
task
Création et développement
Gouvernance de données
Qualité et préparation de données
EnrichPlatform
Studio Talend

Famille du composant

Machine Learning / Recommendation

 

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 ou S3.

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

Notez que le composant de configuration à utiliser doit se trouver dans le même Job. Par exemple, si vous avez ajouté un 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 utilisée.

    Les colonnes sélectionnées doivent contenir les ID des utilisateurs, 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 tASLModel 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. Les autres données dont utilisées pour tester le modèle.

 

Number of latent factors

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

 

Number of iterations

Saisissez le nombre d'itérations que vous souhaitez que le Job effectue pour l'apprentissage du 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 le Guide utilisateur du Studio Talend.

 

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 permettre au tALSModel de gérer les ensembles de données implicites.

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

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

Pour plus d'informations concernant comment le modèle ALS gère les ensembles de données implicites, 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 utilisateurs 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.

 

Parquet model name

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

Utilisation dans des Jobs Spark Batch

Dans un Job Talend Spark Batch, ce composant est utilisé en tant que composant de fin et requiert un lien d'entrée. Les autres composants utilisés avec lui doivent également être des composants Spark Batch. Ils génèrent nativement du code Spark pouvant être directement exécuté dans un cluster Spark.

Notez que les paramètres que vous devez définir sont des paramètres libres. Leurs valeurs peuvent donc être fournies par des essais, des suppositions empiriques ou autres. Ils n'ont aucune valeur optimale applicable pour les ensembles 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 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.

Log4j

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 Talend soumise à souscription, l'activité de ce composant peut être journalisée avec la fonctionnalité log4j. Pour plus d'informations sur cette fonctionnalité, consultez le Guide utilisateur du Studio Talend.

Pour plus d'informations sur 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).