Tweet Share

Senast uppdaterad den 5 November 2019

densitet estimering är problemet med att uppskatta sannolikhetsfördelningen för ett urval av observationer från en problemdomän.

det finns många tekniker för att lösa densitetsuppskattning, även om en gemensam ram som används inom maskininlärning är maximal sannolikhetsuppskattning., Maximum likelihood estimation innebär att man definierar en sannolikhetsfunktion för att beräkna den villkorliga sannolikheten att observera dataprovet som ges en sannolikhetsfördelning och distributionsparametrar. Detta tillvägagångssätt kan användas för att söka ett utrymme med möjliga fördelningar och parametrar.,

denna flexibla probabilistiska ram ger också grunden för många maskininlärningsalgoritmer, inklusive viktiga metoder som linjär regression och logistisk regression för att förutsäga numeriska värden respektive klassetiketter, men också mer generellt för djupt lärande artificiella neurala nätverk.

i det här inlägget kommer du att upptäcka en mild introduktion till maximal sannolikhetsuppskattning.

Efter att ha läst det här inlägget kommer du att veta:

  • maximal Sannolikhetsuppskattning är en probabilistisk ram för att lösa problemet med densitetsuppskattning.,
  • Det innebär att maximera en sannolikhetsfunktion för att hitta sannolikhetsfördelningen och parametrar som bäst förklarar de observerade uppgifterna.
  • Det ger en ram för prediktiv modellering i maskininlärning där Hitta modellparametrar kan inramas som ett optimeringsproblem.

Starta ditt projekt med min nya bok Sannolikhet för maskininlärning, inklusive steg-för-steg-handledning och Python källkodsfiler för alla exempel.

låt oss komma igång.,

en mild introduktion till maximal sannolikhet uppskattning för maskininlärning
foto av Guilhem Vellut, vissa rättigheter reserverade.

översikt

denna handledning är uppdelad i tre delar; de är:

  1. problem med Sannolikhetsdensitetsuppskattning
  2. maximal Sannolikhetsuppskattning
  3. förhållande till maskininlärning

problem med Sannolikhetsdensitetsuppskattning

ett vanligt modelleringsproblem innebär Hur man beräknar en gemensam sannolikhetsfördelning för en datauppsättning.,

till exempel ges ett urval av observation (X) från en domän (x1, x2, x3,…, xn), där varje observation dras oberoende av domänen med samma sannolikhetsfördelning (så kallad oberoende och identiskt distribuerad, i.I.d., eller nära den).

Densitetsuppskattning innebär att man väljer en sannolikhetsfördelningsfunktion och parametrarna för den fördelningen som bäst förklarar den gemensamma sannolikhetsfördelningen för de observerade uppgifterna (X).

  • hur väljer du sannolikhetsfördelningsfunktionen?,
  • hur väljer du parametrarna för sannolikhetsfördelningsfunktionen?

detta problem görs mer utmanande eftersom prov (X) som dras från befolkningen är liten och har buller, vilket innebär att någon utvärdering av en beräknad sannolikhetsdensitetsfunktion och dess parametrar kommer att ha något fel.

det finns många tekniker för att lösa detta problem, även om två vanliga tillvägagångssätt är:

  • Maximum a Posteriori (Karta), En bayesisk metod.
  • Maximum Likelihood-Skattning (MLE), frekventistiska metod.,

huvudskillnaden är att MLE förutsätter att alla lösningar är lika sannolika i förväg, medan MAP tillåter tidigare information om lösningens form att utnyttjas.

i det här inlägget kommer vi att titta närmare på MLE-metoden och dess förhållande till tillämpad maskininlärning.

vill lära sig sannolikheten för maskininlärning

Ta min gratis 7-dagars e-postkraschkurs nu (med provkod).

Klicka för att registrera dig och även få en gratis PDF ebook version av kursen.,

ladda ner din gratis minikurs

maximal Sannolikhetsuppskattning

en lösning på sannolikhetsdensitetsuppskattning kallas maximal Sannolikhetsuppskattning eller MLE för kort.

maximal Sannolikhetsuppskattning innebär att problemet behandlas som ett optimerings-eller sökproblem, där vi söker en uppsättning parametrar som resulterar i bästa passform för den gemensamma sannolikheten för dataprovet (X).,

För det första handlar det om att definiera en parameter som kallas theta som definierar både valet av sannolikhetsdensitetsfunktionen och parametrarna för den fördelningen. Det kan vara en vektor av numeriska värden vars värden förändras smidigt och mappa till olika sannolikhetsfördelningar och deras parametrar.,

Vid maximal Sannolikhetsuppskattning vill vi maximera sannolikheten för att observera data från den gemensamma sannolikhetsfördelningen med tanke på en specifik sannolikhetsfördelning och dess parametrar, som formellt anges som:

  • P(X | theta)

denna villkorliga Sannolikhet anges ofta med semikolon (;) notation istället för barnotationen (|) eftersom theta inte är en slumpmässig variabel, utan istället en okänd parameter., Till exempel:

  • p(X ; theta)

eller

  • P(x1, x2, x3, …, xn ; theta)

denna resulterande villkorliga Sannolikhet kallas sannolikheten för att observera data som ges modellparametrarna och skrivs med notationen L() för att beteckna sannolikhetsfunktionen. Till exempel:

  • L(X ; theta)

målet med maximal Sannolikhetsuppskattning är att hitta uppsättningen parametrar (theta) som maximerar sannolikhetsfunktionen, t.ex. resulterar i det största sannolikhetsvärdet.,

  • maximera L(X ; theta)

Vi kan packa upp den villkorliga sannolikheten beräknad av sannolikhetsfunktionen.

Med tanke på att provet består av n-exempel kan vi rama in detta som den gemensamma sannolikheten för de observerade dataproverna x1, x2, x3,…, xn i X med tanke på sannolikhetsfördelningsparametrarna (theta).

  • l(x1, x2, x3, …, xn ; theta)

den gemensamma sannolikhetsfördelningen kan återställas som multiplikationen av den villkorliga sannolikheten för att observera varje exempel med tanke på distributionsparametrarna.,

  • produkt i till n p(xi ; theta)

att multiplicera många små sannolikheter tillsammans kan vara numeriskt instabila i praktiken, därför är det vanligt att upprepa detta problem som summan av loggen villkorliga sannolikheter för att observera varje exempel med tanke på modellparametrarna.

  • sum I till n log(p(xi ; theta))

där log med base-e kallas den naturliga logaritmen används ofta.

denna produkt över många sannolikheter kan vara obekvämt att den är benägen att numeriskt underflöde., För att få ett bekvämare men likvärdigt optimeringsproblem observerar vi att logaritmen av sannolikheten inte ändrar sin arg max men enkelt omvandlar en produkt till en summa

— sida 132, Deep Learning, 2016.

med tanke på den frekventa användningen av log in the likelihood-funktionen kallas den vanligtvis för en log-likelihood-funktion.

det är vanligt i optimeringsproblem att föredra att minimera kostnadsfunktionen, snarare än att maximera den., Därför används det negativa av log-likelihood-funktionen, som i allmänhet kallas en negativ Log-Likelihood (NLL) – funktion.

  • minimera-sum I till n log(p(xi ; theta))

i programvaran frasar vi ofta både som att minimera en kostnadsfunktion. Maximal sannolikhet blir således minimering av den negativa log-sannolikheten (NLL) …

— sidan 133, Deep Learning, 2016.

förhållande till maskininlärning

detta problem med densitet uppskattning är direkt relaterad till tillämpad maskininlärning.,

Vi kan rama problemet med att montera en maskininlärningsmodell som problemet med sannolikhetsdensitetsuppskattning. Specifikt kallas valet av modell-och modellparametrar som en modelleringshypotes h, och problemet innebär att hitta h som bäst förklarar data X.

  • P(X ; h)

Vi kan därför hitta modelleringshypotesen som maximerar sannolikhetsfunktionen.,

  • maximera L(X ; h)

eller, mer fullständigt:

  • maximera sum I till n log(p(xi ; h))

detta ger grunden för att uppskatta sannolikhetsdensiteten hos en dataset, som vanligtvis används i oövervakade maskininlärningsalgoritmer; till exempel:

  • Klusterningsalgoritmer.

att använda den förväntade gemensamma sannolikheten för loggen som en nyckelkvantitet för att lära sig i en sannolikhetsmodell med dolda variabler är bättre känd inom ramen för den berömda ”förväntan maximering” eller EM-algoritmen.,

— sidan 365, Data Mining: praktiska verktyg och tekniker för maskininlärning, 4: e upplagan, 2016.

den maximala Sannolikhetsberäkningsramen är också ett användbart verktyg för övervakad maskininlärning.

detta gäller data där vi har in-och utdatavariabler, där utdatavariationen kan vara ett numeriskt värde eller en klassetikett vid regression och klassificering prediktiv modellering retroaktivt.

Vi kan ange detta som den villkorliga sannolikheten för utmatningen (y) med tanke på inmatningen (X) med tanke på modelleringshypotesen (h).,

  • maximera l(y|X ; h)

eller, mer fullständigt:

  • maximera summan i till n log(p(yi|xi ; h))

den maximala sannolikheten estimator kan lätt generaliseras till det fall där vårt mål är att uppskatta en villkorlig sannolikhet P(y | x ; theta) för att förutsäga y-sannolikheten för givet x. detta är faktiskt den vanligaste situationen eftersom det utgör grunden för mest övervakade lärande.

— Sidan 133, Djup Inlärning, 2016.,

detta innebär att samma ram för maximal Sannolikhetsuppskattning som vanligtvis används för beräkning av densitet kan användas för att hitta en övervakad inlärningsmodell och parametrar.

detta utgör grunden för grundläggande linjära modelleringstekniker, såsom:

  • linjär Regression, för att förutsäga ett numeriskt värde.
  • logistisk Regression, för binär klassificering.

vid linjär regression begränsas modellen till en linje och innebär att man hittar en uppsättning koefficienter för linjen som bäst passar de observerade uppgifterna., Lyckligtvis kan detta problem lösas analytiskt (t.ex. direkt med linjär algebra).

När det gäller logistisk regression definierar modellen en linje och innebär att man hittar en uppsättning koefficienter för linjen som bäst skiljer klasserna. Detta kan inte lösas analytiskt och löses ofta genom att söka utrymme för möjliga koefficientvärden med hjälp av en effektiv optimeringsalgoritm som BFGS-algoritmen eller varianterna.

båda metoderna kan också lösas mindre effektivt med hjälp av en mer allmän optimeringsalgoritm som stokastisk gradient descent.,

faktum är att de flesta maskininlärningsmodeller kan ramas in under ramen för maximal sannolikhetsuppskattning, vilket ger ett användbart och konsekvent sätt att närma sig prediktiv modellering som ett optimeringsproblem.

en viktig fördel med maximera sannolikheten estimator i maskininlärning är att när storleken på datauppsättningen ökar, kvaliteten på estimatorn fortsätter att förbättras.

Ytterligare läsning

det här avsnittet innehåller mer resurser om ämnet om du vill gå djupare.

böcker

  • Kapitel 5 grundläggande maskininlärning, djupinlärning, 2016.,
  • Kapitel 2 sannolikhetsfördelningar, mönsterigenkänning och maskininlärning, 2006.
  • Kapitel 8 Modell inferens och medelvärde, elementen i statistiskt lärande, 2016.
  • Kapitel 9 probabilistiska metoder, Data Mining: praktiska verktyg för maskininlärning och tekniker, 4: e upplagan, 2016.
  • Kapitel 22 maximal sannolikhet och klustring, informationsteori, inferens och inlärningsalgoritmer, 2003.
  • Kapitel 8 Lärande distributioner, Bayesian Resonemang och maskininlärning, 2011.

artiklar

  • maximal sannolikhet uppskattning, Wikipedia.,
  • maximal sannolikhet, Wolfram MathWorld.
  • Sannolikhet funktion, Wikipedia.
  • vissa problem att förstå definitionen av en funktion i en maximal sannolikhet metod, CrossValidated.

sammanfattning

i det här inlägget upptäckte du en mild introduktion till maximal sannolikhetsuppskattning.

specifikt lärde du dig:

  • maximal Sannolikhetsuppskattning är en probabilistisk ram för att lösa problemet med densitetsuppskattning.,
  • Det innebär att maximera en sannolikhetsfunktion för att hitta sannolikhetsfördelningen och parametrar som bäst förklarar de observerade uppgifterna.
  • Det ger en ram för prediktiv modellering i maskininlärning där Hitta modellparametrar kan inramas som ett optimeringsproblem.

har du några frågor?
Ställ dina frågor i kommentarerna nedan och jag kommer att göra mitt bästa för att svara.

få ett handtag på sannolikheten för maskininlärning!,

utveckla din förståelse för Sannolikhet

…med bara några rader av python-kod

Upptäck hur i min nya Ebook:
Sannolikhet för maskininlärning

det ger självstudier tutorials och end-to-end-projekt på:
Bayes teorem, Bayesian optimering, distributioner, maximal sannolikhet, Cross-entropi, kalibrera modeller
och mycket mer…

slutligen utnyttja osäkerhet i dina projekt

hoppa över akademiker. Bara Resultat.Se vad som finns inuti

Tweet Share

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *