ITSkillsCenter
Intelligence Artificielle

Tutoriel : Les bases du Machine Learning pour débutants

4 min de lecture

Qu’est-ce que le Machine Learning ?

Le Machine Learning (apprentissage automatique) est une branche de l’intelligence artificielle qui permet aux ordinateurs d’apprendre à partir de données, sans être explicitement programmés. Au lieu de coder des règles « si le client a plus de 3 achats, alors c’est un client fidèle », vous donnez au ML des milliers d’exemples de clients fidèles et non fidèles, et il découvre les règles tout seul. Ce tutoriel explique les 3 types fondamentaux de ML avec des exemples concrets et du code Python.

Les 3 types de Machine Learning

1. Apprentissage supervisé

Vous donnez au modèle des données avec les « bonnes réponses » (labels). Il apprend la relation entre les entrées et les sorties. C’est comme un élève qui apprend avec un corrigé.

Exemples d'apprentissage supervisé :

CLASSIFICATION (prédire une catégorie) :
- Email → spam ou pas spam
- Photo → chat ou chien
- Transaction → frauduleuse ou légitime
- CV → embaucher ou ne pas embaucher

RÉGRESSION (prédire un nombre) :
- Surface + quartier + étage → prix d'un appartement à Dakar
- Historique de ventes → ventes du mois prochain
- Profil client → montant probable de la prochaine commande

Code Python — Classification de spam :
from sklearn.naive_bayes import MultinomialNB
from sklearn.feature_extraction.text import CountVectorizer

# Données d'entraînement
emails = [
    "Gagnez 1 million FCFA maintenant", "Réunion demain à 10h",
    "Offre spéciale 90% de réduction", "Le rapport est prêt",
    "Cliquez ici pour votre cadeau gratuit", "Bien reçu, merci",
    "Crédit gratuit sans condition", "Le client a confirmé le rdv"
]
labels = [1, 0, 1, 0, 1, 0, 1, 0]  # 1=spam, 0=pas spam

# Transformer le texte en nombres
vectorizer = CountVectorizer()
X = vectorizer.fit_transform(emails)

# Entraîner le modèle
model = MultinomialNB()
model.fit(X, labels)

# Tester sur un nouvel email
test = vectorizer.transform(["Offre exceptionnelle cliquez vite"])
print(f"Spam : {model.predict(test)[0] == 1}")  # True

2. Apprentissage non supervisé

Le modèle reçoit des données SANS labels. Il doit trouver des patterns et des groupes par lui-même. C’est comme trier un tas de vêtements sans qu’on vous dise les catégories — vous regroupez naturellement par couleur, type ou taille.

Exemples d'apprentissage non supervisé :

CLUSTERING (regroupement) :
- Segmenter vos clients en groupes (fidèles, occasionnels, à risque)
- Regrouper des articles similaires sur votre blog
- Identifier des zones géographiques de livraison optimales

Code Python — Segmentation clients :
from sklearn.cluster import KMeans
import pandas as pd

# Données clients
clients = pd.DataFrame({
    'nb_achats': [1, 2, 15, 20, 3, 18, 1, 25, 2, 12],
    'montant_total': [25000, 45000, 850000, 1200000, 60000, 
                      950000, 15000, 1500000, 35000, 720000],
    'jours_depuis_dernier_achat': [90, 60, 5, 2, 45, 8, 120, 1, 80, 10]
})

# K-Means avec 3 groupes
kmeans = KMeans(n_clusters=3, random_state=42)
clients['segment'] = kmeans.fit_predict(clients)

print(clients.groupby('segment').mean().round(0))
# Segment 0 : Clients fidèles (beaucoup d'achats, montants élevés, récents)
# Segment 1 : Clients occasionnels (peu d'achats, montants moyens)
# Segment 2 : Clients dormants (anciens, peu d'activité)

3. Apprentissage par renforcement

Le modèle apprend par essai-erreur en interagissant avec un environnement. Il reçoit des récompenses pour les bonnes actions et des pénalités pour les mauvaises. C’est comme apprendre à conduire : on apprend de ses erreurs. C’est le type de ML utilisé par les voitures autonomes, les robots et les IA de jeux (AlphaGo).

Le workflow complet d’un projet ML

Les 7 étapes d'un projet Machine Learning :

1. DÉFINIR LE PROBLÈME
   "Je veux prédire quels clients vont annuler leur abonnement"

2. COLLECTER LES DONNÉES
   Exporter les données depuis votre CRM, base de données, Excel
   Plus vous avez de données, meilleur sera le modèle

3. NETTOYER LES DONNÉES (60% du temps !)
   - Supprimer les doublons
   - Gérer les valeurs manquantes
   - Corriger les erreurs de saisie
   - Standardiser les formats

4. EXPLORER LES DONNÉES (EDA)
   Visualiser, calculer des statistiques, comprendre les distributions
   Identifier les corrélations entre les variables

5. ENTRAÎNER LE MODÈLE
   - Séparer données en train (80%) et test (20%)
   - Essayer plusieurs algorithmes
   - Ajuster les hyperparamètres

6. ÉVALUER
   Mesurer la précision sur les données de test
   Si insatisfaisant : retour à l'étape 3, 4 ou 5

7. DÉPLOYER
   Intégrer le modèle dans votre application ou workflow

Choisir le bon algorithme

Pour la classification : commencez par Logistic Regression (simple et rapide), puis essayez Random Forest (meilleur en général) et Gradient Boosting/XGBoost (souvent le meilleur mais plus complexe).

Pour la régression : commencez par Linear Regression, puis essayez Random Forest Regressor et Gradient Boosting Regressor.

Pour le clustering : K-Means est le plus simple et couvre 80% des cas. DBSCAN est meilleur pour les groupes de formes irrégulières.

Règle d’or : commencez toujours par l’algorithme le plus simple. S’il donne des résultats satisfaisants (>85% de précision), inutile de complexifier. La simplicité facilite la maintenance et l’explication des résultats aux non-techniciens.

Besoin d'un site web ?

Confiez-nous la Création de Votre Site Web

Site vitrine, e-commerce ou application web — nous transformons votre vision en réalité digitale. Accompagnement personnalisé de A à Z.

À partir de 350.000 FCFA
Parlons de Votre Projet
Publicité