Propriétés du tLinearRegressionModel dans des Jobs Spark Batch - 6.3

Composants Talend Guide de référence

EnrichVersion
6.3
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 / Regression

 

Basic settings

Schema et Edit schema

Un schéma est une description de lignes, il définit le nombre de champs (colonnes) qui sont traités et passés au composant suivant. Le schéma est soit local (Built-In), soit distant dans le Repository.

Cliquez sur Edit schema pour modifier le schéma. Si le schéma est en mode Repository, trois options sont disponibles :

  • View schema : sélectionnez cette option afin de voir le schéma.

  • Change to Built-In property : sélectionnez cette option pour passer le schéma en mode Built-In et effectuer des modifications locales.

  • Update repository connection : sélectionnez cette option afin de modifier le schéma stocké dans le référentiel et décider de propager ou non les modifications à tous les Jobs. Si vous souhaitez propager les modifications uniquement au Job courant, cliquez sur No et sélectionnez à nouveau la métadonnée du schéma dans la fenêtre [Repository Content].

 

Label column

Sélectionnez la colonne d'entrée utilisée pour fournir des libellés de type Double (valeurs des variables dépendantes en termes de régression linéaire). Les enregistrements de cette colonne sont utilisés en tant que situations potentielles (la variation des variables dépendantes en termes de régression linéaire) dans lesquelles peut tomber un élément donné.

 

Feature column

Sélectionnez la colonne d'entrée utilisée pour fournir des caractéristiques de type Vector (valeurs des variables indépendantes ou explicatives en termes de régression linéaire). Très souvent, cette colonne est la sortie des calculs de pré-traitement des caractéristiques effectués par le tModelEncoder.

 

Save the model on file system

Cochez cette case pour stocker le modèle dans un système de fichiers donné. Sinon, le modèle est stocké dans la mémoire. Le bouton pour parcourir votre système ne fonctionne pas en mode Local de Spark. Si vous utilisez le mode Yarn ou Standalone de Spark, assurez-vous d'avoir correctement configuré la connexion dans un composant de configuration au sein du même Job, comme le tHDFSConfiguration.

 

ElasticNet mixing parameter

Saisissez le coefficient ElasticNet (valeur numérique) utilisé pour le calcul de régularisation, afin de contrôler le dilemme biais/variance dans la sélection de caractéristiques. ElasticNet est la combinaison des régularisations L1 et L2.

La valeur à configurer varie entre 0.0 et 1.0, ce qui indique les poids des régularisations L1 et L2 dans la combinaison ElasticNet. Lorsque la valeur est 0.0, la régularisation est équivalente à la régularisation L2. Lorsque la valeur est 1.0, elle est égale à la régularisation L1.

Pour plus d'informations concernant l'implémentation d'ElasticNet dans Spark, consultez ML linear methods (en anglais). La formule associée montre comment la valeur saisie (α dans cette formule) est utilisée pour calculer la régularisation ElasticNet.

Pour plus d'informations concernant ElasticNet, consultez Regularization and variable selection via the elastic net (en anglais).

Fit an intercept term

Cochez cette case pour permettre au tLinearRegressionModel de calculer automatiquement les ordonnées à l'origine et les inclure dans les calculs de régression.

De manière générale, les ordonnées à l'origine doivent être présentes afin de garantir que les résidus de votre modèle ont une moyenne de zéro.

 

Standardize features before fitting model

Cochez cette case pour mettre à l'échelle les caractéristiques, afin de les distribuer normalement.

 

Maximum number of iterations

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

 

Regularization

Saisissez le coefficient de régularisation (valeur numérique) à utiliser avec ElasticNet pour le calcul de régularisation.

Pour plus d'informations concernant l'implémentation de ce paramètre dans Spark, consultez ML linear methods (en anglais). La formule associée montre comment la valeur saisie (λ dans cette formule) est utilisée pour calculer une éventuelle régularisation.

 

Convergence tolerance

Saisissez le score de convergence attendu par les itérations.

En général, une valeur plus faible permet une plus grande précision de prédiction mais demande plus d'itérations.

Dans certains cas, votre modèle peut ne pas pouvoir atteindre la convergence configurée, malgré le nombre d'itérations que vous souhaitez que le Job effectue. L'échec de convergence peut indiquer que le score de convergence que vous avez utilisé n'est pas réaliste par rapport aux caractéristiques que vous traitez et donc, vous devez traiter ces caractéristiques à un degré supérieur.

 

Solver algorithm

Sélectionnez l'algorithme utilisé pour l'optimisation.

  • Normal : cet algorithme utilise des équations normales.

  • L-BFGS : cet algorithme effectue une approximation de l'algorithme BFGS à l'aide de ressources limitées de mémoire.

  • Auto : le composant sélectionne l'un des algorithmes mentionnés ci-dessus.

Utilisation dans des Jobs Spark Batch

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

Vous pouvez accélérer le processus d'apprentissage en ajustant les conditions d'arrêt, par exemple le nombre maximal d'itérations ou la tolérance de convergence. Cependant, notez que si l'apprentissage s'arrête trop tôt, cela peut avoir un impact sur ses performances.

Évaluation du modèle

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 pas de valeur optimale applicable à tous les ensembles de données.

Vous devez effectuer un apprentissage pour le modèle de relation que vous générez avec différents jeux de valeurs de paramètres, jusqu'à ce que vous obteniez le meilleur résultat d'évaluation. Cependant, vous devez écrire vous-même le code d'évaluation, afin de noter votre modèle avec des scores.

Pour des informations générales relatives à la validation d'un modèle de relation basé sur une régression, consultez https://en.wikipedia.org/wiki/Regression_validation (en anglais).

Connexion à Spark

Vous devez utiliser l'onglet Spark Configuration de la vue Run afin de définir la connexion à un cluster Spark donné pour le Job complet. De plus, puisque le Job attend ses fichiers .jar dépendants pour l'exécution, un (et un seul) composant relatif à un système de fichiers de la famille Storage est requis au sein du même Job, afin que Spark puisse utiliser ce composant pour se connecter au système de fichiers auquel les fichiers .jar dépendants du Job sont transférés :

Cette connexion fonctionne uniquement pour le Job dans lequel vous l'avez définie.

Log4j

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).