Critères d'information AIC et BIC
Les critères d’information AIC (Akaike Information Criterion) et BIC (Bayesian Information Criterion) sont des mesures statistiques utilisées pour comparer la qualité de différents modèles statistiques tout en pénalisant la complexité du modèle. Ces critères aident à éviter le surapprentissage (overfitting) tout en cherchant à obtenir une bonne précision de prédiction.
1. Akaike Information Criterion (AIC)
L’AIC est un critère basé sur l’entropie qui évalue la qualité d’un modèle statistique. Plus l’AIC est faible, meilleur est le modèle en termes de compromis entre la qualité de l’ajustement et la complexité du modèle.
Formule de l’AIC :
Où :
-
: le nombre de paramètres estimés dans le modèle (incluant les coefficients).
-
: la vraisemblance maximale du modèle (probabilité d’obtenir les données observées en fonction du modèle).
Interprétation de l’AIC :
-
Un AIC plus faible indique un meilleur modèle, c’est-à-dire un modèle qui équilibre mieux la qualité de l’ajustement et la complexité.
-
Un AIC plus élevé indique un modèle plus complexe qui ne justifie pas son ajustement aux données.
2. Bayesian Information Criterion (BIC)
Le BIC, également appelé Schwarz Criterion, est similaire à l’AIC, mais il inclut une pénalisation plus forte de la complexité du modèle (le nombre de paramètres). Cela fait du BIC une option préférée lorsque l’on souhaite privilégier des modèles plus simples.
Formule du BIC :
Où :
-
: le nombre d’observations dans le jeu de données.
-
: le nombre de paramètres estimés dans le modèle.
-
: la vraisemblance maximale du modèle.
Interprétation du BIC :
-
Comme l’AIC, un BIC plus faible indique un meilleur modèle.
-
Le BIC pénalise plus fortement les modèles avec un grand nombre de paramètres. Par conséquent, il tend à favoriser des modèles plus simples par rapport à l’AIC, surtout lorsqu’il y a un grand nombre d’observations.
3. Comparaison entre AIC et BIC
-
Pénalisation de la complexité : L’AIC et le BIC pénalisent la complexité d’un modèle (le nombre de paramètres). Cependant, le BIC applique une pénalisation plus forte que l’AIC, surtout quand le nombre d’observations (
) est élevé.
-
Utilisation : L’AIC est souvent préféré lorsque l’on cherche à minimiser l’erreur de prédiction, tandis que le BIC est plus utile pour favoriser des modèles plus simples, en particulier quand le nombre d’observations est important.
Fonctions :
-
Utilisation de l'AIC et du BIC en Python
Les deux critères sont facilement calculables à l'aide de bibliothèques comme statsmodels en Python, en particulier pour les modèles de régression.
Importation :
import statsmodels.api as sm import numpy as np
Attributs :
Nom Type Description aic float Critère d'information d'Akaike (AIC) du modèle ajusté. Un AIC plus bas est préférable. bic float Critère d'information bayésien (BIC) du modèle ajusté. Un BIC plus bas est préférable. Exemple de code :
import statsmodels.api as sm import numpy as np # Exemple de données X = np.array([1, 2, 3, 4, 5]) # Variable indépendante y = np.array([1, 2, 3, 4, 5]) # Variable dépendante # Ajouter une constante à X pour l'ordonnée à l'origine (intercept) X = sm.add_constant(X) # Créer et ajuster le modèle de régression model = sm.OLS(y, X) results = model.fit() # Obtenir l'AIC et le BIC print(f"AIC: {results.aic}") print(f"BIC: {results.bic}")
Explication du code :
Le code ci-dessus utilise la bibliothèque statsmodels pour ajuster un modèle de régression linéaire et calculer les critères d'information AIC (Akaike Information Criterion) et BIC (Bayesian Information Criterion).
1. Création des données :
Les variables X et y sont créées comme des tableaux numpy représentant respectivement la variable indépendante et la variable dépendante. Dans cet exemple, les deux sont simplement des séquences de nombres allant de 1 à 5.
2. Ajout de l'ordonnée à l'origine (intercept) :
La fonction sm.add_constant(X) ajoute une constante (intercept) à la variable X pour permettre à la régression d'inclure l'ordonnée à l'origine. Cela permet de modéliser une relation linéaire de la forme y = b0 + b1 * X, où b0 est l'ordonnée à l'origine.
3. Ajustement du modèle de régression :
Le modèle de régression linéaire est créé avec la fonction sm.OLS(y, X), où y est la variable dépendante et X est la variable indépendante avec l'ordonnée à l'origine ajoutée. Le modèle est ensuite ajusté à l'aide de la méthode fit().
4. Calcul des critères AIC et BIC :
Une fois le modèle ajusté, les critères d'information AIC (Akaike Information Criterion) et BIC (Bayesian Information Criterion) sont obtenus à partir des résultats du modèle. Ces critères servent à évaluer la qualité du modèle en tenant compte du nombre de paramètres ajustés. Un modèle avec un AIC et un BIC plus faibles est préféré.
Les valeurs de l'AIC et du BIC sont ensuite affichées.