Introduction
Dans ce laboratoire, nous allons apprendre à effectuer l'extraction de caractéristiques à l'aide de la bibliothèque scikit-learn. L'extraction de caractéristiques est le processus de transformation des données brutes en caractéristiques numériques utilisables par les algorithmes d'apprentissage automatique. Elle consiste à extraire des informations pertinentes à partir de différents types de données telles que le texte et les images.
Conseils sur la machine virtuelle
Une fois le démarrage de la machine virtuelle terminé, cliquez dans le coin supérieur gauche pour basculer vers l'onglet Carnet d'étude pour accéder au carnet Jupyter pour pratiquer.
Parfois, vous devrez peut-être attendre quelques secondes pour que le carnet Jupyter ait fini de charger. La validation des opérations ne peut pas être automatisée en raison des limites du carnet Jupyter.
Si vous rencontrez des problèmes pendant l'apprentissage, n'hésitez pas à demander à Labby. Donnez votre feedback après la session, et nous résoudrons rapidement le problème pour vous.
Chargement de caractéristiques à partir de dictionnaires
Dans cette étape, nous allons apprendre à charger des caractéristiques à partir de dictionnaires à l'aide de la classe DictVectorizer dans scikit-learn.
from sklearn.feature_extraction import DictVectorizer
measurements = [
{'city': 'Dubai', 'temperature': 33.},
{'city': 'London', 'temperature': 12.},
{'city': 'San Francisco', 'temperature': 18.},
]
vec = DictVectorizer()
features = vec.fit_transform(measurements).toarray()
feature_names = vec.get_feature_names_out()
print(features)
print(feature_names)
Hachage des caractéristiques
Dans cette étape, nous allons apprendre à effectuer l'hachage des caractéristiques à l'aide de la classe FeatureHasher dans scikit-learn. L'hachage des caractéristiques est une technique qui projette les caractéristiques sur un vecteur de longueur fixe à l'aide d'une fonction de hachage.
from sklearn.feature_extraction import FeatureHasher
movies = [
{'category': ['thriller', 'drama'], 'year': 2003},
{'category': ['animation', 'family'], 'year': 2011},
{'year': 1974},
]
hasher = FeatureHasher(input_type='string')
hashed_features = hasher.transform(movies).toarray()
print(hashed_features)
Extraction de caractéristiques de texte
Dans cette étape, nous allons apprendre à effectuer l'extraction de caractéristiques de texte à l'aide des classes CountVectorizer et TfidfVectorizer dans scikit-learn. Ces classes peuvent être utilisées pour convertir les données textuelles en caractéristiques numériques.
from sklearn.feature_extraction.text import CountVectorizer
corpus = [
'This is the first document.',
'This is the second second document.',
'And the third one.',
'Is this the first document?',
]
vectorizer = CountVectorizer()
features = vectorizer.fit_transform(corpus).toarray()
feature_names = vectorizer.get_feature_names_out()
print(features)
print(feature_names)
Personnalisation des classes de vectorisation
Dans cette étape, nous allons apprendre à personnaliser le comportement des classes de vectorisation en leur passant des fonctions appelables.
def my_tokenizer(s):
return s.split()
vectorizer = CountVectorizer(tokenizer=my_tokenizer)
features = vectorizer.fit_transform(corpus).toarray()
print(features)
Sommaire
Dans ce laboratoire, nous avons appris à effectuer l'extraction de caractéristiques à l'aide de la bibliothèque scikit-learn. Nous avons exploré diverses techniques telles que le chargement de caractéristiques à partir de dictionnaires, l'hachage des caractéristiques et l'extraction de caractéristiques de texte. Nous avons également appris à personnaliser le comportement des classes de vectorisation pour répondre à nos besoins spécifiques. L'extraction de caractéristiques est une étape importante en apprentissage automatique car elle aide à transformer les données brutes en un format utilisable par les algorithmes pour effectuer des prédictions ou classifier les données.