IntermédiaireMachine Learning
20 min de lecture21 vues

Feature Engineering et Méthodes d'Ensemble

Maîtrisez le feature engineering, les méthodes d'ensemble (XGBoost, Random Forest) et découvrez les bases des réseaux de neurones.

Feature Engineering et Ensembles

La qualité de vos données compte plus que la complexité de votre algorithme. "Garbage in, Garbage out".

Nettoyage et Transformation

Les modèles mathématiques ne comprennent que les chiffres.

  • Encodage One-Hot : Transformer "Rouge, Vert, Bleu" en [1,0,0], [0,1,0], [0,0,1].
  • Normalisation : Mettre toutes les valeurs entre 0 et 1 pour qu'un salaire (30000) n'écrase pas un âge (30).

La Puissance du "Boosting" (XGBoost, LightGBM)

Au lieu d'un seul modèle, on en crée des centaines. Chaque nouveau modèle essaie de corriger les erreurs du précédent.

  • Random Forest : Vote majoritaire de plusieurs arbres (Robuste).
  • Gradient Boosting : Correction séquentielle des erreurs (Ultra-performant sur données tabulaires).

🛠️ Micro-Exercice : Pipeline de Compétition

Utilisons XGBoost, l'algorithme qui gagne la plupart des compétitions Kaggle sur données structurées.

# pip install xgboost
import xgboost as xgb
from sklearn.datasets import load_breast_cancer
from sklearn.model_selection import train_test_split

data = load_breast_cancer()
X_train, X_test, y_train, y_test = train_test_split(data.data, data.target)

# Modèle XGBoost
model = xgb.XGBClassifier(n_estimators=100, learning_rate=0.1)
model.fit(X_train, y_train)

print(f"Score XGBoost : {model.score(X_test, y_test):.4f}")

Notez la vitesse d'exécution et la précision souvent supérieure à un arbre de décision simple.

Introduction aux Réseaux de Neurones

Quand les données ne sont pas dans un tableau (Images, Texte, Son), le Deep Learning devient roi.

Le Neurone Artificiel (Perceptron)

C'est une fonction mathématique simple : y = f(Σ(wᵢxᵢ) + b).

  1. On fait une somme pondérée des entrées.
  2. On ajoute un biais.
  3. On passe le tout dans une fonction d'activation (comme ReLU) pour décider si le neurone "s'allume".

Rétropropagation (Backpropagation)

L'algorithme qui permet au réseau d'apprendre. Il calcule l'erreur à la sortie et remonte le réseau en sens inverse pour ajuster les poids (w) de chaque neurone.

🛠️ Micro-Exercice : Votre premier Réseau Neuronal (MLP)

Classification de chiffres manuscrits (MNIST) avec Scikit-learn.

from sklearn.neural_network import MLPClassifier
from sklearn.datasets import load_digits

digits = load_digits()
X, y = digits.data, digits.target

# Réseau avec 2 couches cachées de 64 neurones
mlp = MLPClassifier(hidden_layer_sizes=(64, 64), max_iter=500)
mlp.fit(X, y)

print("Score du réseau :", mlp.score(X, y))

Pour aller plus loin (images complexes), on passera à PyTorch ou TensorFlow, vus au niveau Expert.

Specialiste IA — Master Intelligence Artificielle

Diplome d'un Master en Intelligence Artificielle, je travaille au quotidien sur des projets IA en entreprise. J'ai cree IwanttolearnAI pour rendre l'apprentissage de l'IA accessible a tous, gratuitement.