Als data scientist moet je de juiste technieken begrijpen om het werkingsmechanisme van een model te interpreteren. Interpretatie is een essentieel aspect van data science. Telkens als je een model maakt met nauwkeurige en indrukwekkende resultaten, moet je weten hoe het mechanisme werkt. Veel mensen genereren een model door middel van codering, maar ze hebben geen idee hoe de codes het model creëren en het laten werken.

U bouwt bijvoorbeeld een model dat u zal helpen de aandelenkoersen te voorspellen. U merkt dat de aandelenkoersen ‘s nachts abnormaal stijgen. Dit kan om verschillende redenen gebeuren. Daarom kunt u Maximum Likelihood Estimation gebruiken om de waarschijnlijkheid van het probleem met de grootste waarschijnlijkheid te vinden. Veel professionals uit verschillende vakgebieden gebruiken dit instrument voor satellietbeelden, MRI’s, en vele andere.
In deze gids leert u meer over Maximum Likelihood Estimation en hoe u dit instrument kunt gebruiken voor uw model. Dus laten we aan de slag gaan.

Maximale waarschijnlijkheid schatting

Maximum likelihood estimation is een methode om statistische oplossingen te bieden voor problemen met betrekking tot het machine learning model. Het geeft u de mogelijkheid om parameters in te stellen en de likelihood-schatting te maximaliseren. Met deze techniek kunt u uitgaan van de output van het model op basis van de waargenomen gegevens. De bovenstaande definitie van de maximale likelihood-schatting betekent dat om een model te maken, we
1. Een model opstellen dat uw gegevens omvat. U kunt naar het model verwijzen als een gegevensgenererend proces.
2. 2. De gegevens uit het model kunnen verkrijgen en de likelihoodfunctie kunnen afleiden.
Na het verkrijgen van de likelihood functie, zal je beseffen dat maximum likelihood een eenvoudig optimalisatieprobleem is.

Verband met machinaal leren

De toegepaste machine learning en dichtheidsschattingsproblemen zijn direct met elkaar verbonden. Het is mogelijk problemen in verband met het machine learning model op te vatten als de kansdichtheidsschatting. Bij de keuze van het model en zijn parameters moet men verwijzen naar de modelhypothese h en de problemen om h te vinden, die de gegevens X op een betere manier verklaart.
– P(X; h)
Om de likelihoodfunctie te maximaliseren, moeten we de modelhypothese bepalen.
– maximaliseer L(X; h)
Of, we kunnen het uitbreiden als:
– maximaliseer som i tot n log(P(xi ; h))
Bijgevolg zal de kansdichtheid van de dataset worden geschat. Deze techniek wordt meestal gebruikt in machine-leermodellen zonder toezicht. U kunt Maximum Likelihood Estimation gebruiken voor Clustering Algoritmen.

Maximum Likelihood Schatting en Clustering Algoritmen

U kunt Maximum Likelihood Estimation effectief gebruiken voor gesuperviseerde machine-leermodellen. Wij kunnen deze methode toepassen op gegevens die input- en outputvariabelen bevatten. De outputvariabelen zijn numerieke waarden, en de classificatie en voorspellende regressiemodellering omvatten het klasse-etiket.
Maximum Likelihood Estimate is de voorwaardelijke waarschijnlijkheid geschat op basis van de output (y), terwijl de input (X) is en de modelhypothese (h).
– maximaliseer L(y|X; h)
Of, we kunnen het uitbreiden als:
– maximaliseer som i tot n log(P(yi|xi ; h))
Wanneer je doel is om de y te voorspellen, afhankelijk van de x, kun je de maximum likelihood estimator gebruiken en de voorwaardelijke kans schatten door:
P(y|x ; theta)
De meeste modellen onder supervisie zijn gebaseerd op deze schattingstechniek, waardoor het een veel voorkomende situatie is. Het betekent dat Maximum Likelihood Estimation zal helpen bij het schatten van dichtheden en het vinden van een supervised model en zijn parameters. Daarom werkt deze techniek als de basis van de lineaire modelleertechniek, zoals:
– Logistische regressie, die helpt bij binaire classificatie
– Lineaire regressie, die helpt bij het voorspellen van een numerieke waarde.
Bij logistische regressie scheidt het model de klassen door reeksen coëfficiënten op te nemen, die als een lijn worden gedefinieerd. Dit probleem kan niet analytisch worden opgelost, maar door gebruik te maken van een efficiënt optimalisatie-algoritme. Voorbeelden zijn het BFGS-algoritme of varianten daarvan.
Wanneer we lineaire regressie beschouwen, zal het model reeksen coëfficiënten bevatten die het als een lijn definiëren. U kunt dit probleem oplossen met behulp van analytische oplossingen zoals lineaire algebra.
Een groot voordeel van de maximale waarschijnlijkheidsschatting bij machinaal leren is dat de kwaliteit van het model wordt verbeterd door de dataset groter te maken en de kwaliteit van de schatter te verbeteren.

Hoe maximum likelihood schatting te implementeren in Python

Je kan het proces vereenvoudigen door maximum likelihood estimation te implementeren in je machine learning project. Om dat te bereiken, kunt u gebruik maken van tal van wiskundige technieken en benaderingen. Hieronder vindt u één aanpak om uw model te programmeren voor maximum likelihood schatting

Stap 1: De bibliotheken in het model importeren

Importeer de volgende bibliotheken in het model:
importeer NumPy als np

importeer pandas als PD
importeer matplotlib pyplot als plt
importeer seaborn als sns
importeer minimize uit scipy.optimize
importeer scipy.stats als stats

importeer pymc3 als pm3
importeren numdifftools als ndt
importeer statsmodels.api als sm
Importeer nu GenericLikelihoodModel uit statsmodels.base.model

Stap 2: De gegevens genereren

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[‘constante’] = 1

Stap 3: De grafiek visualiseren

Gebruik de volgende referentiecode om de grafiek te plotten:
sns.regplot(df.x, df.y)

Stap 4: Analyseer de gegevens

U kunt de gegevens analyseren door de volgende gegevens te plotten met OLS-lijn en betrouwbaarheidsintervallen

Stap 5: OLS modelleren met behulp van Statsmodels

Omdat de gemaakte regressie continue gegevens zijn, kunt u de log-waarschijnlijkheid en coëfficiënten berekenen met sm.OLS.
Splits kenmerken en doel
X = df[[‘constant’, ‘x’]]
Pas het model aan en vat samen
sm.OLS(y,X).fit().summary()

Conclusie

Maximum likelihood estimation is een unieke en nuttige techniek om je te helpen de parameters van de dataset of verdeling uit de dataset te schatten. U kunt het hulpmiddel gebruiken voor een beperkte populatiesteekproef of om gemiddelde en variantiewaarden te bepalen. In de bovenstaande gids begrijpen we wat Maximum likelihood estimation is en hoe je deze techniek kunt implementeren op een machine learning model.