Créer un modèle de classification pour filtrer les spams
-
tModelEncoder : plusieurs composants tModelEncoder sont utilisés pour transformer des messages texte (SMS) en ensemble de caractéristiques.
-
tRandomForestModel : il analyse les caractéristiques entrantes depuis le tModelEncoder afin de construire un modèle de classification comprenant à quoi ressemblent un message indésirable et un message normal.
-
tPredict : dans un nouveau Job, il applique ce modèle de classification afin de traiter un nouvel ensemble de SMS pour classer les messages indésirables et les messages normaux. Dans ce scénario, les résultats de cette classification sont utilisés pour évaluer la précision du modèle, puisque la classification des messages traités par le tPredict est déjà connue et explicitement marquée.
-
tHDFSConfiguration : ce composant est utilisé par Spark pour se connecter au système HDFS dans lequel les fichiers Jar dépendant du Job sont transférés.
Ce scénario s'applique uniquement aux produits Talend Platform avec Big Data nécessitant souscription et à Talend Data Fabric.
Avant de commencer
-
Dans l'onglet Spark Configuration de la vue Run, définissez 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, 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 (Yarn Client ou Yarn Cluster) :
-
Lorsque vous utilisez Google Dataproc, spécifiez un bucket dans le champ Google Storage staging bucket de l'onglet Spark configuration.
-
Lorsque vous utilisez HDInsight, spécifiez le blob à utiliser pour le déploiement du Job, dans la zone Windows Azure Storage configuration de l'onglet Spark configuration.
- Lorsque vous utilisez Altus, spécifiez le bucket S3 ou le stockage Azure Data Lake Storage (aperçu technique) pour le déploiement du Job, dans l'onglet Spark configuration.
-
Lorsque vous utilisez des distributions sur site (on-premises), utilisez le composant de configuration correspondant au système de fichiers utilisé par votre cluster. Généralement, ce système est HDFS et vous devez utiliser le tHDFSConfiguration.
-
-
Standalone mode : utilisez le composant de configuration correspondant au système de fichiers que votre cluster utilise, comme le tHDFSConfiguration Apache Spark Batch ou le tS3Configuration Apache Spark Batch.
Si vous utilisez Databricks sans composant de configuration dans votre Job, vos données métier sont écrites directement dans DBFS (Databricks Filesystem).
-
- Téléchargez les ensembles de messages texte SMS :
- l'ensemble utilisé pour l'apprentissage des modèles de classification : trainingSet.zip,
- l'ensemble utilisé pour évaluer les modèles créés : testSet.zip.
Talend a créé ces deux jeux de données à partir du jeu de données téléchargeable depuis https://archive.ics.uci.edu/ml/datasets/SMS+Spam+Collection, en utilisant le Job de préparation de jeu de données (dataset_preparation.zip) pour ajouter trois colonnes de caractéristiques (nombre de symboles monétaires, nombre de valeurs numériques et nombre de points d'exclamation) au jeu de données brutes et diviser proportionnellement le jeu de données.
Un exemple de message indésirable se présente comme suit :Free entry in 2 a wkly comp to win FA Cup final tkts 21st May 2005. Text FA to 87121 to receive entry question(std txt rate)T&C's apply 08452810075over18's
Un exemple de message normal se présente comme suit :Ahhh. Work. I vaguely remember that! What does it feel like? Lol
Note InformationsRemarque : Les nouvelles caractéristiques ajoutées au jeu de données brutes sont le résultat de l'observation des messages indésirables utilisés spécifiquement dans ce scénario (ces messages indésirables contiennent souvent des prix et/ou des points d'exclamation) et ne peuvent être généralisés pour les messages indésirables que vous souhaitez analyser. De plus, le jeude données a été divisé aléatoirement en deux jeux de données et utilisé tel quel. Cependant, dans un cas d'utilisation réelle, vous pouvez continuer à pré-traiter ces données de différentes méthodes, comme en équilibrant les jeux de données afin de mieux apprendre votre modèle de classification. - Les deux jeux doivent être stockés sur la machine où le Job sera exécuté, par exemple dans le système HDFS de votre cluster YARN si vous utilisez le mode Yarn client de Spark pour exécuter des Jobs Spark Talend et que vous avez les droits et autorisations approprié·es, pour lire des données dans ce système et y écrire des données.
Dans ce scénario, le client Spark Yarn client est utilisé et les jeux de données sont stockés dans la système HDFS associé.
- Le cluster Spark à utiliser doit avoir été configuré correctement et être en cours d'exécution.