Table des matières
Étape 1 : Préparer les données
Étape 2 : Définir les entités et les relations
Étape 3 : Créer un ensemble d'entités
Étape 4 : Définir les relations
Étape 5 : Exécutez l'algorithme de synthèse approfondie des fonctionnalités
Étape 6 : Construire le modèle
Résumé :
Maison Périphériques technologiques IA Implémenter l'ingénierie automatique des fonctionnalités à l'aide de Featuretools

Implémenter l'ingénierie automatique des fonctionnalités à l'aide de Featuretools

Jan 22, 2024 pm 03:18 PM
特征工程

Implémenter lingénierie automatique des fonctionnalités à laide de Featuretools

Featuretools est une bibliothèque Python pour l'ingénierie automatisée de fonctionnalités. Il vise à simplifier le processus d’ingénierie des fonctionnalités et à améliorer les performances des modèles d’apprentissage automatique. La bibliothèque peut extraire automatiquement des fonctionnalités utiles à partir de données brutes, aidant ainsi les utilisateurs à gagner du temps et des efforts tout en améliorant la précision du modèle.

Voici les étapes à suivre pour utiliser Featuretools pour automatiser l'ingénierie des fonctionnalités :

Étape 1 : Préparer les données

Avant d'utiliser Featuretools, vous devez préparer l'ensemble de données. L'ensemble de données doit être au format Pandas DataFrame, où chaque ligne représente une observation et chaque colonne représente une fonctionnalité. Pour les problèmes de classification et de régression, l'ensemble de données doit contenir une variable cible, tandis que pour les problèmes de clustering, l'ensemble de données ne nécessite pas de variable cible. Par conséquent, lorsque vous utilisez Featuretools, assurez-vous que l'ensemble de données répond à ces exigences afin que l'ingénierie et la génération de fonctionnalités puissent être effectuées efficacement.

Étape 2 : Définir les entités et les relations

Lorsque vous utilisez Featuretools pour l'ingénierie des fonctionnalités, vous devez d'abord définir les entités et les relations. Une entité est un sous-ensemble d'un ensemble de données qui contient un ensemble de caractéristiques associées. Par exemple, sur un site de commerce électronique, les commandes, les utilisateurs, les produits, les paiements, etc. peuvent être traités comme des entités différentes. Les relations sont des connexions entre des entités. Par exemple, une commande peut être associée à un utilisateur et un utilisateur peut acheter plusieurs produits. En définissant clairement les entités et les relations, la structure de l'ensemble de données peut être mieux comprise, ce qui facilite la génération de fonctionnalités et l'analyse des données.

Étape 3 : Créer un ensemble d'entités

À l'aide de Featuretools, vous pouvez créer un ensemble d'entités en définissant des entités et des relations. Un ensemble d'entités est une collection de plusieurs entités. Dans cette étape, vous devez définir le nom, l'ensemble de données, l'index, le type de variable, l'horodatage, etc. de chaque entité. Par exemple, un ensemble d'entités contenant des entités de commande et d'utilisateur peut être créé à l'aide du code suivant :

import featuretools as ft

# Create entity set
es=ft.EntitySet(id='ecommerce')

# Define entities
orders=ft.Entity(id='orders',dataframe=orders_df,index='order_id',time_index='order_time')
users=ft.Entity(id='users',dataframe=users_df,index='user_id')

# Add entities to entity set
es=es.entity_from_dataframe(entity_id='orders',dataframe=orders_df,index='order_id',time_index='order_time')
es=es.entity_from_dataframe(entity_id='users',dataframe=users_df,index='user_id')
Copier après la connexion

Ici, nous utilisons EntitySet pour créer un ensemble d'entités nommé "ecommerce" et définir deux entités en utilisant Entity, Orders et Users. . Pour l’entité de commande, nous avons spécifié l’ID de commande comme index et l’heure de la commande comme horodatage. Pour l’entité utilisateur, nous avons uniquement spécifié l’ID utilisateur comme index.

Étape 4 : Définir les relations

Dans cette étape, vous devez définir les relations entre les entités. À l'aide de Featuretools, les relations peuvent être définies via des variables partagées, des horodatages, etc. entre les entités. Par exemple, sur un site e-commerce, chaque commande est associée à un utilisateur. La relation entre les commandes et les utilisateurs peut être définie à l'aide du code suivant :

# Define relationships
r_order_user = ft.Relationship(orders['user_id'], users['user_id'])
es = es.add_relationship(r_order_user)
Copier après la connexion

Ici, nous avons défini la relation entre les commandes et les utilisateurs à l'aide de Relation et les avons ajoutées à l'ensemble d'entités à l'aide de add_relationship.

Étape 5 : Exécutez l'algorithme de synthèse approfondie des fonctionnalités

Après avoir terminé les étapes ci-dessus, vous pouvez utiliser l'algorithme de synthèse approfondie des fonctionnalités de Featuretools pour générer automatiquement des fonctionnalités. Cet algorithme crée automatiquement de nouvelles fonctionnalités telles que des agrégations, des transformations et des combinaisons. Vous pouvez utiliser le code suivant pour exécuter l'algorithme de synthèse de fonctionnalités approfondies :

# Run deep feature synthesis algorithm
features, feature_names = ft.dfs(entityset=es, target_entity='orders', max_depth=2)
Copier après la connexion

Ici, nous utilisons la fonction dfs pour exécuter l'algorithme de synthèse de fonctionnalités approfondies, spécifions l'entité cible comme entité de commande et définissons la profondeur maximale sur 2. La fonction renvoie un DataFrame contenant les nouvelles fonctionnalités et une liste de noms de fonctionnalités.

Étape 6 : Construire le modèle

Après avoir obtenu les nouvelles fonctionnalités, vous pouvez les utiliser pour entraîner le modèle d'apprentissage automatique. De nouvelles fonctionnalités peuvent être ajoutées à l'ensemble de données d'origine à l'aide du code suivant :

# Add new features to original dataset
df=pd.merge(orders_df,features,left_on='order_id',right_on='order_id')
Copier après la connexion

Ici, nous utilisons la fonction de fusion pour ajouter de nouvelles fonctionnalités à l'ensemble de données d'origine à des fins de formation et de test. Les nouvelles fonctionnalités peuvent ensuite être utilisées pour entraîner le modèle d'apprentissage automatique, par exemple :

# Split dataset into train and test sets
X_train, X_test, y_train, y_test = train_test_split(df[feature_names], df['target'], test_size=0.2, random_state=42)

# Train machine learning model
model = RandomForestClassifier()
model.fit(X_train, y_train)

# Evaluate model performance
y_pred = model.predict(X_test)
accuracy_score(y_test, y_pred)
Copier après la connexion

Ici, nous utilisons le classificateur de forêt aléatoire comme modèle d'apprentissage automatique et utilisons l'ensemble d'entraînement pour entraîner le modèle. Nous utilisons ensuite l'ensemble de tests pour évaluer les performances du modèle, en utilisant la précision comme mesure d'évaluation.

Résumé :

Les étapes à suivre pour utiliser Featuretools pour automatiser l'ingénierie des fonctionnalités comprennent la préparation des données, la définition des entités et des relations, la création d'ensembles d'entités, la définition des relations, l'exécution d'algorithmes de synthèse de fonctionnalités approfondies et la création de modèles. Featuretools peut extraire automatiquement des fonctionnalités utiles à partir de données brutes, aidant ainsi les utilisateurs à économiser beaucoup de temps et d'efforts et à améliorer les performances des modèles d'apprentissage automatique.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Implémenter l'ingénierie automatique des fonctionnalités à l'aide de Featuretools Implémenter l'ingénierie automatique des fonctionnalités à l'aide de Featuretools Jan 22, 2024 pm 03:18 PM

Featuretools est une bibliothèque Python pour l'ingénierie automatisée des fonctionnalités. Il vise à simplifier le processus d’ingénierie des fonctionnalités et à améliorer les performances des modèles d’apprentissage automatique. La bibliothèque peut extraire automatiquement des fonctionnalités utiles à partir de données brutes, aidant ainsi les utilisateurs à économiser du temps et des efforts tout en améliorant la précision du modèle. Voici les étapes à suivre pour utiliser Featuretools pour automatiser l'ingénierie des fonctionnalités : Étape 1 : préparer les données Avant d'utiliser Featuretools, vous devez préparer l'ensemble de données. L'ensemble de données doit être au format PandasDataFrame, où chaque ligne représente une observation et chaque colonne représente une entité. Pour les problèmes de classification et de régression, l'ensemble de données doit contenir une variable cible, tandis que pour les problèmes de clustering, l'ensemble de données n'a pas besoin de contenir une variable cible.

Algorithme SIFT (Scale Invariant Features) Algorithme SIFT (Scale Invariant Features) Jan 22, 2024 pm 05:09 PM

L'algorithme SIFT (Scale Invariant Feature Transform) est un algorithme d'extraction de caractéristiques utilisé dans les domaines du traitement d'images et de la vision par ordinateur. Cet algorithme a été proposé en 1999 pour améliorer les performances de reconnaissance et de correspondance d'objets dans les systèmes de vision par ordinateur. L'algorithme SIFT est robuste et précis et est largement utilisé dans la reconnaissance d'images, la reconstruction tridimensionnelle, la détection de cibles, le suivi vidéo et d'autres domaines. Il obtient l'invariance d'échelle en détectant les points clés dans plusieurs espaces d'échelle et en extrayant des descripteurs de caractéristiques locales autour des points clés. Les principales étapes de l'algorithme SIFT comprennent la construction d'un espace d'échelle, la détection des points clés, le positionnement des points clés, l'attribution de directions et la génération de descripteurs de caractéristiques. Grâce à ces étapes, l’algorithme SIFT peut extraire des fonctionnalités robustes et uniques, permettant ainsi un traitement d’image efficace.

Technologie d'IA appliquée à la comparaison de documents Technologie d'IA appliquée à la comparaison de documents Jan 22, 2024 pm 09:24 PM

L’avantage de la comparaison de documents via l’IA réside dans sa capacité à détecter automatiquement et à comparer rapidement les modifications et les différences entre les documents, ce qui permet d’économiser du temps et du travail et de réduire le risque d’erreur humaine. De plus, l'IA peut traiter de grandes quantités de données textuelles, améliorer l'efficacité et la précision du traitement et comparer différentes versions de documents pour aider les utilisateurs à trouver rapidement la dernière version et le contenu modifié. La comparaison de documents IA comprend généralement deux étapes principales : le prétraitement du texte et la comparaison de texte. Premièrement, le texte doit être prétraité pour le convertir en une forme exploitable par ordinateur. Ensuite, les différences entre les textes sont déterminées en comparant leur similarité. Ce qui suit prendra la comparaison de deux fichiers texte comme exemple pour présenter ce processus en détail. Prétraitement du texte Tout d'abord, nous devons prétraiter le texte. Cela inclut les points

Algorithme RFE de la méthode d'élimination de caractéristiques récursive Algorithme RFE de la méthode d'élimination de caractéristiques récursive Jan 22, 2024 pm 03:21 PM

L'élimination récursive de caractéristiques (RFE) est une technique de sélection de caractéristiques couramment utilisée qui peut réduire efficacement la dimensionnalité de l'ensemble de données et améliorer la précision et l'efficacité du modèle. Dans l'apprentissage automatique, la sélection des fonctionnalités est une étape clé, qui peut nous aider à éliminer les fonctionnalités non pertinentes ou redondantes, améliorant ainsi la capacité de généralisation et l'interprétabilité du modèle. Grâce à des itérations pas à pas, l'algorithme RFE fonctionne en entraînant le modèle et en éliminant les fonctionnalités les moins importantes, puis en entraînant à nouveau le modèle jusqu'à ce qu'un nombre spécifié de fonctionnalités soit atteint ou qu'une certaine mesure de performance soit atteinte. Cette méthode de sélection automatisée des fonctionnalités peut non seulement améliorer les performances du modèle, mais également réduire la consommation de temps de formation et de ressources informatiques. Dans l'ensemble, RFE est un outil puissant qui peut nous aider dans le processus de sélection des fonctionnalités. RFE est une méthode itérative pour la formation des modèles.

Exemple de code pour le transfert de style d'image à l'aide de réseaux de neurones convolutifs Exemple de code pour le transfert de style d'image à l'aide de réseaux de neurones convolutifs Jan 22, 2024 pm 01:30 PM

Le transfert de style d'image basé sur des réseaux de neurones convolutifs est une technologie qui combine le contenu et le style d'une image pour générer une nouvelle image. Il utilise un modèle de réseau neuronal convolutif (CNN) pour convertir les images en vecteurs de caractéristiques de style. Cet article abordera cette technologie sous les trois aspects suivants : 1. Principes techniques La mise en œuvre du transfert de style d'image basé sur des réseaux de neurones convolutifs repose sur deux concepts clés : la représentation de contenu et la représentation de style. La représentation du contenu fait référence à la représentation abstraite d'objets et d'objets dans une image, tandis que la représentation de style fait référence à la représentation abstraite des textures et des couleurs dans une image. Dans un réseau de neurones convolutifs, nous générons une nouvelle image en combinant représentation de contenu et représentation de style pour préserver le contenu de l'image originale et avoir le style de la nouvelle image. Pour y parvenir, nous pouvons utiliser une méthode appelée

Un guide pour l'application des machines Boltzmann dans l'extraction de caractéristiques Un guide pour l'application des machines Boltzmann dans l'extraction de caractéristiques Jan 22, 2024 pm 10:06 PM

Boltzmann Machine (BM) est un réseau neuronal basé sur les probabilités composé de plusieurs neurones avec des relations de connexion aléatoires entre les neurones. La tâche principale de BM est d'extraire des caractéristiques en apprenant la distribution de probabilité des données. Cet article présentera comment appliquer BM à l'extraction de fonctionnalités et fournira quelques exemples d'application pratiques. 1. La structure de base de BM BM se compose de couches visibles et de couches cachées. La couche visible reçoit des données brutes et la couche cachée obtient une expression de fonctionnalités de haut niveau grâce à l'apprentissage. En BM, chaque neurone a deux états, 0 et 1. Le processus d’apprentissage de BM peut être divisé en phase de formation et phase de test. Lors de la phase de formation, BM apprend la distribution de probabilité des données pour générer de nouveaux échantillons de données lors de la phase de test.

Le principe, la fonction et l'application de l'extracteur de caractéristiques peu profondes Le principe, la fonction et l'application de l'extracteur de caractéristiques peu profondes Jan 22, 2024 pm 05:12 PM

L'extracteur de fonctionnalités superficiel est un extracteur de fonctionnalités situé dans une couche moins profonde du réseau neuronal d'apprentissage profond. Sa fonction principale est de convertir les données d'entrée en représentation de caractéristiques de grande dimension pour les couches de modèle suivantes afin d'effectuer des tâches telles que la classification et la régression. Les extracteurs de fonctionnalités peu profonds utilisent des opérations de convolution et de regroupement dans des réseaux de neurones convolutifs (CNN) pour réaliser l'extraction de fonctionnalités. Grâce aux opérations de convolution, les extracteurs de fonctionnalités superficiels peuvent capturer les fonctionnalités locales des données d'entrée, tandis que les opérations de regroupement peuvent réduire la dimensionnalité des fonctionnalités et conserver des informations importantes sur les fonctionnalités. De cette manière, les extracteurs de caractéristiques superficiels peuvent transformer les données brutes en représentations de caractéristiques plus significatives, améliorant ainsi les performances des tâches ultérieures. L'opération de convolution est l'une des opérations principales des réseaux de neurones convolutifs (CNN). Il effectue une opération de convolution sur les données d'entrée avec un ensemble de noyaux de convolution, de

Comment les fonctionnalités influencent-elles le choix du type de modèle ? Comment les fonctionnalités influencent-elles le choix du type de modèle ? Jan 24, 2024 am 11:03 AM

Les fonctionnalités jouent un rôle important dans l’apprentissage automatique. Lors de la création d’un modèle, nous devons choisir avec soin les fonctionnalités à former. La sélection des fonctionnalités affectera directement les performances et le type du modèle. Cet article explore la manière dont les fonctionnalités affectent le type de modèle. 1. Nombre de fonctionnalités Le nombre de fonctionnalités est l'un des facteurs importants affectant le type de modèle. Lorsque le nombre de fonctionnalités est faible, des algorithmes d'apprentissage automatique traditionnels tels que la régression linéaire, les arbres de décision, etc. sont généralement utilisés. Ces algorithmes sont adaptés au traitement d’un petit nombre de caractéristiques et la vitesse de calcul est relativement rapide. Cependant, lorsque le nombre de fonctionnalités devient très important, les performances de ces algorithmes se dégradent généralement car ils ont des difficultés à traiter des données de grande dimension. Par conséquent, dans ce cas, nous devons utiliser des algorithmes plus avancés tels que des machines à vecteurs de support, des réseaux de neurones, etc. Ces algorithmes sont capables de gérer des

See all articles