Propriétés du tRandomForestModel pour Apache Spark Batch - 6.5

Machine Learning

author
Talend Documentation Team
EnrichVersion
6.5
EnrichProdName
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Real-Time Big Data Platform
task
Création et développement > Systèmes tiers > Composants Machine Learning
Gouvernance de données > Systèmes tiers > Composants Machine Learning
Qualité et préparation de données > Systèmes tiers > Composants Machine Learning
EnrichPlatform
Studio Talend

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

Le composant tRandomForestModel Spark Batch appartient à la famille Machine Learning.

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

Basic settings

Label column

Sélectionnez la colonne d'entrée utilisée pour fournir les libellés de classification. Les enregistrements de cette colonne sont utilisés comme noms de classe (cible, en termes de classification) des éléments à classifier.

Feature column

Sélectionnez la colonne d'entrée utilisée pour fournir les caractéristiques. 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.

Number of trees in the forest

Saisissez le nombre d'arbres de décision que vous souhaitez que le tRandomForestModel construise.

Chaque arbre de décision est construit indépendamment à l'aide d'un échantillon aléatoire de caractéristiques.

L'incrémentation de ce nombre peut améliorer la précision en diminuant les variations des prédictions, mais augmente le temps d'apprentissage.

Maximum depth of each tree in the forest

Saisissez la profondeur de l'arbre de décision à laquelle la construction doit arrêter d'ajouter des nœuds. Les nouveaux nœuds représentent des tests plus avancés sur les caractéristiques des nœuds internes et des possibles libellés de classes contenus par les nœuds des feuilles.

Pour un arbre de profondeur n, le nombre de noeuds internes est 2n - 1. Par exemple, une profondeur (depth) de 1 signifie 1 nœud interne plus 2 nœuds de feuilles.

De manière générale, un arbre de décision plus profond est plus expressif et potentiellement plus précis dans ses prédictions, mais consomme également plus de ressources et est plus prompt au surapprentissage.

Advanced settings

Subsampling rate

Saisissez la valeur numérique pour indiquer la fraction du jeu de données d'entrée utilisée pour l'apprentissage de chaque arbre de la forêt. La valeur par défaut 1.0 est recommandée, ce qui signifie que l'ensemble de données complet est utilisé à des fins de test.

Subset strategy

Sélectionnez la stratégie concernant le nombre de caractéristiques devant être considérées sur chaque nœud interne pour diviser de manière appropriée ce nœud interne (l'ensemble d'apprentissage ou le sous-ensemble d'une caractéristique de ce nœud) en de plus petits sous-ensembles. Ces sous-ensembles sont utilisés pour construire des nœuds enfants.

Chaque stratégie prend en compte un nombre différent de caractéristiques pour trouver le point optimal parmi ces caractéristiques pour la division. Ce point, peut être, par exemple, l'âge 35 de la caractéristique catégorique age.

  • auto : cette stratégie se base sur le nombre d'arbres défini dans le champ Number of trees in the forest de la vue Basic settings. Cette stratégie est celle par défaut.

    Si le nombre d'arbre est 1, la stratégie est all. Si ce nombre est supérieur à 1, la stratégie est sqrt.

  • all : le nombre total de caractéristiques est considéré pour la division.

  • sqrt : le nombre de caractéristiques à considérer est la racine carrée du nombre total de caractéristiques.

  • log2 : le nombre de caractéristiques à considérer est le résultat de log2(M), dans lequel M est le nombre total de caractéristiques.

Max bins

Saisissez la valeur numérique indiquant le nombre maximal de bins utilisés pour diviser les caractéristiques.

Les caractéristiques continues sont automatiquement transformées pour trier les caractéristiques discrètes.

Min info gain

Saisissez le nombre minimum de gain d'information à attendre d'un nœud père vers ses nœuds fils. Lorsque le nombre de gain d'information est inférieur au nombre minimum, la division des nœuds est arrêtée.

La valeur minimum par défaut du gain d'information est 0.0, ce qui signifie qu'aucune information supplémentaire n'est obtenue en divisant un nœud donné. Par conséquent, la division peut être arrêtée.

Pour plus d'informations concernant le calcul du gain d'information, consultez Impurity and Information gain dans la documentation Spark (en anglais).

Min instances per node

Saisissez le nombre minimal d'instances d'apprentissage qu'un nœud doit avoir pour qu'il soit valide pour une division ultérieure.

La valeur par défaut est 1, ce qui signifie que, lorsqu'un nœud contient seulement 1 ligne de données d'apprentissage, sa division s'arrête.

Impurity

Sélectionnez la mesure utilisée pour obtenir la meilleure division de chaque ensemble de divisions.

  • gini : fréquence à laquelle un élément peut être nommé de manière incorrecte dans une division.

  • entropy : combien peuvent être imprévisibles les informations dans chaque division.

Pour plus d'informations concernant le calcul de chaque mesure, consultez Impurity measures, dans la documentation Spark (en anglais).

Set a random seed

Saisissez le numéro de graine aléatoire à utiliser pour le bootstrapping et choisissez les sous-ensembles de caractéristiques.

Utilisation

Règle d'utilisation

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, comme la profondeur maximale de chaque arbre de décision, le nombre maximal de bins de division ou le nombre minimum de gain d'informations, mais 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 apprendre le modèle de classification que vous générez avec différents ensembles de valeurs de paramètres jusqu'à ce que vous obteniez la meilleure matrice de confusion. Cependant, vous devez écrire vous-même le code d’évaluation, afin de noter votre modèle avec des scores.

Vous devez sélectionner les scores à utiliser selon l'algorithme à utiliser pour apprendre votre modèle de classification. Cela vous permet de construire la matrice de confusion la plus pertinente.

Pour des exemples concernant comment utiliser une matrice de confusion dans un Job Talend à des fins de classification, consultez Création d'un modèle de classification pour filtrer les spams.

Pour des explications générales relatives aux matrices de confusion, consultez les articles de Wikipédia suivants : https://fr.wikipedia.org/wiki/Matrice_de_confusion pour une version française et https://en.wikipedia.org/wiki/Confusion_matrix pour une version anglaise plus détaillée.

Connexion à Spark

Vous devez utiliser l'onglet Spark Configuration dans la vue Run afin de définir la connexion à un cluster Spark donné pour le Job entier. De plus, puisque le Job attend ses fichiers .jar dépendants pour l'exécution, vous devez spécifier le répertoire du système de fichiers dans lequel ces fichiers .jar sont transférés afin que Spark puisse accéder à ces fichiers :
  • Yarn mode : lorsque vous utilisez Google Dataproc, spécifiez un bucket dans le champ Google Storage staging bucket de l'onglet Spark configuration. Lorsque vous utilisez d'autres distributions, utilisez un composant tHDFSConfiguration afin de spécifier le répertoire.

  • Standalone mode : vous devez choisir le composant de configuration selon le système de fichiers que vous utilisez, comme tHDFSConfiguration ou tS3Configuration.

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