En tant que scientifique des données, vous devez comprendre les techniques appropriées pour interpréter le mécanisme de fonctionnement d’un modèle. L’interprétation est un aspect essentiel de la science des données. Chaque fois que vous créez un modèle avec des résultats précis et impressionnants, vous devez savoir comment le mécanisme fonctionne. De nombreuses personnes génèrent un modèle par codage, mais elles n’ont aucune idée de la manière dont les codes créent le modèle et le font fonctionner.

Par exemple, vous construisez un modèle qui vous aidera à prédire le cours des actions. Vous remarquez que les prix des actions augmentent anormalement du jour au lendemain. Cela peut se produire pour de multiples raisons. Vous pouvez donc utiliser l’estimation du maximum de vraisemblance pour trouver la probabilité la plus élevée du problème. De nombreux professionnels de différents domaines utilisent cet outil pour l’imagerie satellite, les IRM, et bien d’autres encore.
Dans ce guide, vous découvrirez en détail l’estimation du maximum de vraisemblance et comment vous pouvez mettre en œuvre cet outil pour votre modèle. Alors, allons-y.

Estimation du maximum de vraisemblance

L’estimation du maximum de vraisemblance est une méthode permettant de fournir des solutions statistiques aux problèmes liés au modèle d’apprentissage automatique. Elle vous donne la possibilité de définir des paramètres et de maximiser l’estimation de la vraisemblance. Grâce à cette technique, vous pouvez supposer la sortie du modèle à partir des données observées. La définition ci-dessus de l’estimation du maximum de vraisemblance signifie que pour créer un modèle, nous devons :
1. Préparer un modèle qui comprend vos données. Vous pouvez vous référer au modèle comme à un processus de génération de données.
2. Avoir la capacité d’obtenir les données du modèle et de dériver la fonction de vraisemblance.
Après avoir obtenu la fonction de vraisemblance, vous réaliserez que le maximum de vraisemblance est un problème d’optimisation simple.

Relation avec l’apprentissage automatique

Les problèmes appliqués de l’apprentissage automatique et de l’estimation de la densité sont directement liés les uns aux autres. Il est possible de formuler les problèmes liés au modèle d’apprentissage automatique comme l’estimation de la densité de probabilité. Lors du choix du modèle et de ses paramètres, vous devez vous référer à l’hypothèse de modélisation h et aux problèmes pour trouver h, qui explique mieux les données X.
– P(X ; h)
Maintenant, pour maximiser la fonction de vraisemblance, nous devons identifier l’hypothèse de modélisation.
– maximiser L(X ; h)
Ou, nous pouvons l’étendre comme suit
– maximiser la somme i à n log(P(xi ; h))
Par conséquent, cela permettra d’estimer la densité de probabilité de l’ensemble des données. Cette technique est principalement utilisée dans les modèles d’apprentissage automatique non supervisés. Vous pouvez utiliser l’estimation du maximum de vraisemblance pour les algorithmes de clustering.

Estimation du maximum de vraisemblance et algorithmes de clustering

Vous pouvez utiliser efficacement l’estimation du maximum de vraisemblance pour les modèles d’apprentissage automatique supervisés. Nous pouvons appliquer cette méthode pour les données qui comprennent des variables d’entrée et de sortie. Les variables de sortie sont des valeurs numériques, et la modélisation de la classification et de la régression prédictive inclut l’étiquette de classe.
L’estimation du maximum de vraisemblance est la probabilité conditionnelle estimée à partir de la sortie (y), alors que l’entrée est (X) et l’hypothèse de modélisation est (h).
– maximiser L(y|X ; h)
Ou, nous pouvons l’étendre comme suit
– maximiser la somme i à n log(P(yi|xi ; h))
Lorsque votre objectif est de prédire le y, en fonction du x, vous pouvez utiliser l’estimateur du maximum de vraisemblance et estimer la probabilité conditionnelle par :
P(y|x ; thêta)
La plupart des modèles supervisés sont basés sur cette technique d’estimation, ce qui en fait une situation courante. Cela signifie que l’estimation du maximum de vraisemblance aidera à estimer la densité et à trouver un modèle supervisé et ses paramètres. Par conséquent, cette technique fonctionne comme la base de la technique de modélisation linéaire, telle que :
– La régression logistique, qui aide à la classification binaire.
– la régression linéaire, qui permet de prédire une valeur numérique.
Dans la régression logistique, le modèle va séparer les classes en incluant des ensembles de coefficients, en les définissant comme une ligne. Vous ne pouvez pas résoudre ce problème de manière analytique mais en utilisant un algorithme d’optimisation efficace. Les exemples incluent l’algorithme BFGS ou ses variantes.
Lorsque nous considérons la régression linéaire, le modèle comprendra des ensembles de coefficients le définissant comme une ligne. Vous pouvez résoudre ce problème à l’aide de solutions analytiques telles que l’utilisation de l’algèbre linéaire.
L’un des principaux avantages de l’estimation par maximum de vraisemblance en apprentissage automatique est qu’elle améliore la qualité du modèle en augmentant la taille de l’ensemble de données et la qualité de l’estimateur.

Comment mettre en œuvre l’estimation du maximum de vraisemblance en Python ?

Vous pouvez simplifier le processus en implémentant l’estimation du maximum de vraisemblance dans votre projet d’apprentissage automatique. Pour ce faire, vous pouvez utiliser de nombreuses techniques et approches mathématiques. Vous trouverez ci-dessous une approche permettant de programmer votre modèle pour l’estimation par maximum de vraisemblance.

Étape 1 : Importation des bibliothèques dans le modèle

Importez toutes les bibliothèques suivantes dans le modèle :
import NumPy as np

import pandas as PD
import matplotlib pyplot as plt
import seaborn as sns
from scipy.optimize import minimize
import scipy.stats as stats

import pymc3 as pm3
import numdifftools as ndt
import statsmodels.api as sm
Importez maintenant GenericLikelihoodModel de statsmodels.base.model.

Étape 2 : Générer les données

N = 1000
x = np.linspace(0,200,N)
e = np.random.normal(loc = 0.0, scale = 5.0, size = N)
y = 3*x + e

df = pd.DataFrame({‘y’:y, ‘x’:x})
df[‘constant’] = 1

Étape 3 : Visualisation du tracé

Utilisez le code de référence suivant pour tracer le graphique :
sns.regplot(df.x, df.y)

Étape 4 : Analyser les données

Vous pouvez analyser les données en suivant le tracé des données avec la ligne des MCO et les intervalles de confiance.

Étape 5 : Modélisation des MCO en utilisant Statsmodels

Comme la régression créée est une donnée continue, vous pouvez calculer la Log-vraisemblance et les coefficients en utilisant sm.OLS.
Divisez les caractéristiques et la cible
X = df[[‘constant’, ‘x’]]
Ajustez le modèle et résumez
sm.OLS(y,X).fit().summary()

Conclusion

L’estimation du maximum de vraisemblance est une technique unique et utile pour vous aider à estimer les paramètres de l’ensemble de données ou de la distribution à partir de l’ensemble de données. Vous pouvez utiliser cet outil pour un échantillon de population limité ou identifier les valeurs de moyenne et de variance. Dans le guide ci-dessus, nous avons compris ce qu’est l’estimation par maximum de vraisemblance et comment vous pouvez mettre en œuvre cette technique sur un modèle d’apprentissage automatique.