Aller au contenu

Introduction au Machine Learning

Le Machine Learning (ML) est une branche de l’intelligence artificielle qui permet aux machines d’apprendre à partir de données sans être explicitement programmées.

Le modèle apprend à partir de données étiquetées (entrées + sorties attendues).

Exemples :

  • Classification d’emails (spam/non-spam)
  • Prédiction de prix immobilier
  • Diagnostic médical

Le modèle découvre des patterns dans des données non étiquetées.

Exemples :

  • Segmentation de clients
  • Détection d’anomalies
  • Réduction de dimensions

Le modèle apprend par essai-erreur en interagissant avec un environnement.

Exemples :

  • Jeux (AlphaGo, jeux vidéo)
  • Robotique
  • Trading automatique
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ Collecte │────▶│ Préparation │────▶│ Exploration │
│ des données │ │ des données │ │ (EDA) │
└──────────────┘ └──────────────┘ └──────────────┘
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ Déploiement │◀────│ Évaluation │◀────│ Entraînement │
│ │ │ │ │ du modèle │
└──────────────┘ └──────────────┘ └──────────────┘
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import accuracy_score
# Charger les données
iris = load_iris()
X, y = iris.data, iris.target
# Diviser en train/test
X_train, X_test, y_train, y_test = train_test_split(
X, y, test_size=0.2, random_state=42
)
# Créer et entraîner le modèle
model = RandomForestClassifier(n_estimators=100, random_state=42)
model.fit(X_train, y_train)
# Prédire et évaluer
y_pred = model.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
print(f"Précision : {accuracy:.2%}")
MétriqueDescriptionUtilisation
Accuracy% de prédictions correctesClasses équilibrées
Precision% de vrais positifs parmi les positifs préditsMinimiser faux positifs
Recall% de vrais positifs parmi les vrais positifs réelsMinimiser faux négatifs
F1-ScoreMoyenne harmonique precision/recallÉquilibre
MétriqueDescription
MAEErreur absolue moyenne
MSEErreur quadratique moyenne
RMSERacine de MSE
Coefficient de détermination
# Manipulation de données
import pandas as pd
import numpy as np
# Visualisation
import matplotlib.pyplot as plt
import seaborn as sns
# Machine Learning
from sklearn import ... # ML classique
import xgboost as xgb # Gradient Boosting
import lightgbm as lgb # Gradient Boosting rapide
# Deep Learning
import tensorflow as tf
import torch