如果您的數據來自帶有未知參數$ \ theta $的概率分佈,則$ \ theta $的最大似然估計值就是使您實際觀察到的數據最有可能的估計值。
如果您的數據是來自該概率分佈的獨立樣本,則可能性(對於給定值$ \ theta $)是通過將所有觀察值的概率(對於給定值$ \ theta $)相乘而得出的-整個樣本的聯合概率。並且最大的$ \ theta $的值是最大似然估計。
(如果數據是連續的,則讀取“概率密度”為“概率”。因此,如果以英寸為單位進行測量)密度將以每英寸的概率來衡量。)
如果您的數據來自帶有未知參數$ \ theta $的概率分佈,則$ \ theta $的最大似然估計值就是使您實際觀察到的數據最有可能的估計值。
如果您的數據是來自該概率分佈的獨立樣本,則可能性(對於給定值$ \ theta $)是通過將所有觀察值的概率(對於給定值$ \ theta $)相乘而得出的-整個樣本的聯合概率。並且最大的$ \ theta $的值是最大似然估計。
(如果數據是連續的,則讀取“概率密度”為“概率”。因此,如果以英寸為單位進行測量)密度將以每英寸的概率來衡量。)
有人可以用外行的術語向我詳細解釋最大似然估計(MLE)嗎?在進行數學推導或方程式之前,我想了解基本概念。
說您有一些數據。假設您願意假設數據來自某種分佈-也許是高斯分佈。數據可能來自無數個不同的高斯(對應於無數個均值和高斯分佈可以具有的方差的組合)。 MLE將選擇與您的數據“最一致”的高斯(即均值和方差)( consistent 的確切含義在下面說明)。
您有一個 $ y = \ {-1,3,7 \} $ span>的數據集。可以從中得出數據的最一致的高斯平均數為3,方差為16。可以從其他一些高斯樣本中進行採樣。但是平均值為3且方差為16的一個與數據在以下意義上最一致:獲得特定 $ y $ span>值的概率選擇均值和方差比選擇其他方法要好得多。
向回歸移動:均值不是常數,而是均值的線性函數數據,由回歸方程式指定。因此,假設您有類似 $ x = \ {2,4,10 \} $ span>的數據以及 $ y $ span>。該高斯的均值現在是擬合的回歸模型 $ X'\ hat \ beta $ span>,其中 $ \ hat \ beta = [-1.9,.9] $ span>
移至GLM:用其他一些分佈(來自指數族)替換高斯。現在,平均值是數據的線性函數,由回歸方程式指定,由鏈接函數轉換。因此,它是 $ g(X'\ beta)$ span>,其中 $ g(x)= e ^ x /(1 + e ^ x)$ span>進行logit(包含二項式數據)。
最大似然估計(MLE)是一種找到最可能函數的技術,該函數解釋了觀察到的數據。我認為數學是必要的,但不要讓它在乎您!
讓我們說我們在$ x,y $平面中有一組點,並且我們想知道函數參數$ \ beta $和$ \ sigma $最有可能適合數據(在這種情況下,我們知道該函數是因為我指定了它來創建此示例,但請耐心等待)。
data <- data.frame(x = runif(200,1,10))data $ y <-0 + beta * data $ x + rnorm(200,0,sigma)plot(data $ x, data $ y)
為了進行MLE,我們需要對函數的形式進行假設。在線性模型中,假設這些點遵循正態(Gaussian)概率分佈,均值$ x \ beta $,方差$ \ sigma ^ 2 $:$ y = \ mathcal {N}(x \ beta,\ sigma ^ 2)$。此概率密度函數的公式為:$$ \ frac {1} {\ sqrt {2 \ pi \ sigma ^ 2}} \ exp {\ left(-\ frac {(y_i-x_i \ beta)^ 2} { 2 \ sigma ^ 2} \ right)} $$
我們要查找的是參數最大化所有點的概率$(x_i,y_i)$。這是“可能性”函數,$ \ mathcal {L} $
$$ \ mathcal {L} = \ prod_ {i = 1} ^ n y_i = \ prod_ {i = 1} ^ n \ dfrac {1} {\ sqrt {2 \ pi \ sigma ^ 2}} \ exp \ Big({-\ dfrac {(y_i-x_i \ beta)^ 2} {2 \ sigma ^ 2}} \ Big)$ $由於各種原因,使用似然函數的對數會更容易:$$ \ log(\ mathcal {L})= \ sum_ {i = 1} ^ n- \ frac {n} {2} \ log(2 \ pi)-\ frac {n} {2} \ log(\ sigma ^ 2)-\ frac {1} {2 \ sigma ^ 2}(y_i-x_i \ beta)^ 2 $$
我們可以使用$ \ theta =(\ beta,\ sigma)$將其編碼為R中的函數。
linear.lik <-函數(theta,y,X){n <- nrow(X)k <- ncol(X)beta <- theta [1:k] sigma2 <- theta [k + 1] ^ 2 e <- y-X %beta
logl <--.5 * n * log(2 * pi)-。5 * n * log(sigma2)-(((t(e)%*%e)/(2 * sigma2))return(-logl)}
此函數以$ \ beta $和$ \ sigma $的不同值創建表面。
表面<- list()k <-0for(seq(0,5,0.1)中的beta)for for(seq(0.1,5,0.1)中的sigma){k <- k + 1 logL <-線性。 lik(theta = c(0,beta,sigma),y = data $ y,X = cbind(1,data $ x))表面[[k]] <- data.frame(beta = beta,sigma = sigma, logL = -logL)}}表面<- do.call(rbind,surface)library(lattice)wireframe(logL〜beta * sigma,surface,shade = TRUE)
如您所見,此表面上某處有一個最大點。我們可以使用R的內置優化命令找到指定此點的參數。這相當接近揭示真實參數$ 0,\ beta = 2.7,\ sigma = 1.3 $
linear.MLE <- optim(fn = linear.lik,par = c(1,1,1),下= c(-Inf,-Inf,1e-8),上= c(Inf,Inf,Inf),粗麻布= TRUE,y = data $ y ,X = cbind(1,data $ x),method =“ L-BFGS-B”)linear.MLE $ par ## [1] -0.1303868 2.7286616 1.3446534
普通最小二乘法是線性模型的最大似然,因此 lm
將給我們相同的答案是有意義的。 (請注意,使用$ \ sigma ^ 2 $來確定標準錯誤)。
summary(lm(y〜x,data))## ##調用:## lm(公式= y〜x,數據=數據)## ##殘差:##最小1Q中位數3Q最大值## -3.3616 -0.9898 0.1345 0.9967 3.8364 ## ##係數:##估計標準。誤差t值Pr(> | t |)##(攔截)-0.13038 0.21298 -0.612 0.541 ## x 2.72866 0.03621 75.363 <2e-16 *** ## --- ##符號。編碼:0'***'0.001'**'0.01'*'0.05'。' 0.1''1
## ##殘餘標準誤差:在198個自由度上為1.351 ##多個R平方:0.9663,調整後R平方:0.9661 ## F統計量:在1和198 DF上為5680,p值:< 2.2e- 16
一個參數的最大似然(ML)估計值是該參數的值,在該值下您的實際觀測數據相對於該參數的任何其他可能值。
這個想法是有任何數量的“真實”參數值可能導致您實際觀察到的數據具有非零(儘管可能很小)的概率。但是ML估計值會給出參數值,該參數值會以最高的概率生成您觀察到的數據。實際上已經產生了您的數據!
我喜歡Sober(2008,pp。9-10)關於這一區別的以下文章。在這段中,我們有一些觀測數據表示為$ O $,假設為$ H $。
您需要記住“可能性”是一個技術術語。 H的可能性(Pr(O | H))和H的後驗概率是不同的數量,並且它們可以具有不同的值。 H的可能性是H賦予O的概率,而不是O賦予H的概率。假設您聽到房屋頂樓傳來噪音。您考慮這樣的假設,即保齡球上面有gremlins。這種假設的可能性很高,因為如果閣樓上有小怪獸打保齡球,則可能會有噪音。但可以肯定的是,您不會認為噪音會很可能在保齡球場上出現小怪獸。在此示例中,Pr(O | H)為高,Pr(H | O)為低。 gremlin假設在技術上具有較高的可能性(從技術意義上講),但可能性較低。在這個特殊的漫畫示例中,這顯然是一個錯誤的選擇。但是在許多其他更現實的情況下,ML估計可能是一個非常合理的估計。
參考
Sober,E。(2008)。證據與進化:科學背後的邏輯。劍橋大學出版社。
MLE是相關參數的值,該參數使觀察您觀察到的數據的可能性最大化。換句話說,正是參數值使觀察到的數據最有可能被觀察到。
在不使用(很多)數學的情況下可以說一句話,但是對於最大可能性的實際統計應用,您需要數學。
最大可能性估計與哲學家有關調用最佳解釋推論,或綁架。我們一直在使用它!請注意,我並不是說最大可能性是綁架,這個詞要寬得多,而且某些貝葉斯估計(帶有經驗先驗)的情況也可以看作綁架。摘自 http://plato.stanford.edu/entries/abduction/#Aca的一些示例,另請參見 https://en.wikipedia.org/wiki/Abductive_reasoning(在計算機科學中,“綁架”也用於非概率模型。)
另一個例子:您在幼兒園工作,有一天有孩子開始以一種奇怪的方式行走,並說他摔斷了腿。您檢查並沒有發現任何錯誤。然後,您可以合理地推斷出他的父母之一斷了腿,因為孩子們隨後經常按所述方式動作,因此這是“最佳解釋的推論”和(非正式)最大可能性的實例。 (當然,這種解釋可能是錯誤的,只是可能,不確定。綁架/最大可能性不能給出確定的結論。)
綁架是關於在數據中找到模式,然後搜索可能使這些模式成為可能的理論。然後選擇可能的解釋,使觀察到的模式最大可能,就是最大可能性!
科學中綁架的主要例子是進化。沒有一個觀察結果暗示進化,但是進化使觀察到的模式比其他解釋更有可能。
另一個典型的例子是醫學診斷?哪種可能的醫療狀況最可能觀察到症狀?同樣,這也是最大的可能性! (或者,在這種情況下,也許貝葉斯估計更合適,我們必須考慮各種可能解釋的先驗概率)。但這是一個技術性問題,在這種情況下,我們可以擁有經驗先驗,這些經驗先驗可以被視為統計模型的自然組成部分,也稱為模型,稱為先驗 >是一些任意(*)統計約定。
回到有關MLE的外行術語解釋的原始問題,這是一個簡單的示例:當我的女兒分別是6歲和7歲時,我問了他們這個問題。我們製造了兩個(兩個鞋盒),一個裝了兩個黑球,八個裝了紅色,另一個裝了數字。然後我們混合骨灰盒,隨機抽取一隻骨灰盒。然後,我們從那個中隨機取了一個球。是紅色的。
然後我問:您認為從哪個中抽出了紅色的球?經過大約一秒鐘的思考,他們(在合唱團中)回答:從一個有8個紅球的地方開始!
然後我問:你為什麼這麼認為?又過了大約一秒鐘(再次迴聲):“因為這樣,畫一個紅色的球更容易!”。也就是說,更容易=更可能。那是最大的可能性(編寫概率模型很容易),這是“推斷最佳解釋”,即綁架。
(*)為什麼我說“任意”?為了繼續醫學診斷問題,說患者是一個很難診斷醫生較早前沒有見過的病情的人。然後,例如,在與患者交談時,出現了他不久前去過熱帶非洲的某個地方的情況。那是一條新的數據,但是它在典型模型(用於這種情況,無論是正式的還是非正式的)中的作用將是改變難以解釋的先驗,因為像瘧疾這樣的熱帶疾病現在將越來越高。先驗概率。因此,新的數據會在先前中輸入分析。
讓我們玩一個遊戲:我在一個黑暗的房間裡,沒人能看到我的所作所為,但是你知道,要么(a)我扔一個骰子,然後將'1'的數目計為'成功',或者(b)我扔一個硬幣,我把正面的數目算作“成功”。
正如我所說,您看不到我做哪兩個,但是我只給您一個信息:我告訴您我擲了100次骰子,或者我扔了100枚硬幣次,我有17次成功。
問題是猜測我扔了骰子還是扔了硬幣。
您可能會回答我扔了骰子。
如果您這樣做,那麼您可能已經“通過最大程度地通過可能性進行了猜測”,因為如果我觀察到100次實驗中有17次成功,那麼投擲骰子的可能性就比投擲硬幣的可能性大。
所以您要做的是取“成功概率”的值(骰子為1/6,硬幣為1/2),使其最有可能在100中觀察到17次成功。 “更有可能”是指您在100次擲骰子中獲得17倍“ 1”的機會高於在100次拋擲硬幣中具有17個正面的機會。
統計中的一項任務是使分佈函數適合一組數據點,以概括數據的內在本質。當擬合一個分佈時a)選擇一個合適的分佈b)設置可移動部分(參數),例如均值,方差等。完成所有這些操作時,還需要一個目標,也就是目標函數/誤差函數。這要求定義“最佳”或“最佳意義”的含義。 MLE是將目標函數設置為所選分佈的概率質量/密度函數的最大值的過程。其他技術不同,他們如何選擇此目標函數。例如,普通最小二乘(OLS)佔用最小平方誤差之和。對於高斯情況,OLS和MLE是等效的,因為高斯分佈在密度函數中具有(x-m)^ 2項,這使得OLS和MLE的目標重合。您可以看到它是像OLS一樣的平方差項。
當然,可以選擇任何目標函數。但是,直觀含義並不總是很清楚。 MLE假定我們知道開始的分佈。在其他技術中,此假設是寬鬆的。尤其是在那些情況下,具有自定義目標函數是很常見的。
假設您有一些來自正態分佈的數據$ X $,均值$ \ mu $未知。您想找到$ \ mu $的值是什麼,但是您不知道如何實現。您可以做的一件事是嘗試$ \ mu $的多個值,然後檢查其中哪個是最好的。為此,您需要一種方法來檢查哪個值比其他值“更好”。似然函數$ L $使您可以根據給定的數據檢查$ \ mu $的哪個值最有可能。為此,它使用在給定值$ \ mu $的概率函數$ f $下估算的數據點的概率:
$$ L(\ mu | X)= \ prod ^ N_ {i = 1} f(x_i,\ mu)$$
或對數似然:
$$ \ ln L(\ mu | X)= \ sum ^ N_ { i = 1} \ ln f(x_i,\ mu)$$
您可以使用此函數來檢查$ \ mu $的哪個值使似然性最大化,即,根據您擁有的數據,哪個值最有可能。如您所見,這可以通過概率乘積或對數概率之和(對數似然)來實現。在我們的示例中,$ f $是正態分佈的概率密度函數,但是該方法可以擴展到更複雜的問題中。
在實踐中,您不會插入某些在似然函數中猜測到的\ mu $值,而是使用已知提供最大興趣參數估計值的不同統計方法。有許多這樣的方法是針對特定問題的-一些簡單,一些複雜(有關更多信息,請參見 Wikipedia)。下面我提供一個簡單的示例,說明ML在實踐中如何工作。
示例
首先讓我們生成一些虛假數據:
set.seed(123)x <-rnorm(1000,1.78)
並定義一個我們想最大化的似然函數(不同$ \值的正態分佈的似然給定數據$ X $):
llik <-函數(mu)sum(log(dnorm(x,mu)))
接下來,我們要做的是使用函數檢查$ \ mu $的不同值:
ll <- vapply(seq(-6,6,by = 0.001),llik ,numeric(1))圖(seq(-6,6,by = 0.001),ll,type =“ l”,ylab =“ Log-Likelihood”,xlab = expression(mu))斜度(v =平均值(x ),col =“ red”)
使用優化算法可以更快地達到相同效果,該算法以更巧妙的方式尋找函數的最大值強力。有多個這樣的示例,例如R中最基本的代碼之一是 optimize
:
optimize(llik,interval = c(-6,6),maximum = TRUE)$ maximum
黑線顯示在$ \ mu $的不同值下對數似然函數的估計。繪圖上的紅線標記的$ 1.78 $值與算術平均值(實際上是$ \ mu $的最大似然估計量)完全相同,是對數似然函數估計的最高點通過暴力搜索和 optimize
算法。
此示例說明瞭如何使用多種方法來找到使似然函數最大化的值,從而找到您的“最佳”值參數。
如您所願,我將使用非常幼稚的術語。假設您收集了一些數據$ \ {y_1,y_2,\ ldots,y_n \} $,並有合理的假設,認為它們遵循某種概率分佈。但是您通常不從此類樣本中知道該分佈的參數。參數是您為數據假設的概率分佈的“人口特徵”。假設您的繪圖或先驗知識建議您將數據視為正態分佈。均值和方差是代表正態分佈的兩個參數。令$ \ theta = \ {\ mu,\ sigma ^ 2 \} $為參數集。因此,在給定參數集合$ \ theta = \ {\ mu,\ sigma ^ 2 \} $的情況下,觀察數據$ \ {y_1,y_2,\ ldots,y_n \} $的聯合概率由$ p( y_1,y_2,\ ldots,y_n | \ theta)$。
似然是“觀察數據的概率”,因此等同於聯合pdf(對於離散分佈聯合pmf)。但是它表示為參數或$ L(\ theta | y_1,y_2,\ ldots,y_n)$的函數。這樣,對於該特定數據集,您可以找到$ \ theta $的值,其中$ L(\ theta)$最大。換句話說,您發現$ \ theta $觀察到此特定數據集的概率最大。因此出現了“最大可能性”一詞。現在,您找到$ L $最大化的$ \ {\ mu,\ sigma ^ 2 \} $集合。 $ L {\ theta)$最大的那組$ \ {\ mu,\ sigma ^ 2 \} $被稱為最大似然估計。
假設您有一個硬幣。扔它既可以頭也可以尾。但是你不知道這是否是一個公平的硬幣。所以你扔了1000次。它以頭的形式出現1000次,而從沒有出現。
現在,這很有可能實際上是一枚硬幣,正面/尾部的機會為50/50,但這似乎不太可能,不是嗎?投擲一枚公平硬幣1000次且從未出現過正面的機會是$ 0.5 ^ {2000} $,這確實很小。
MLE試圖幫助您找到最佳解釋在這樣的情況下-當您得到一些結果時,您想弄清楚最有可能產生該結果的參數值是什麼。在這裡,在2000次拋擲中有2000頭-因此,我們將使用MLE找出獲得頭部的概率最能解釋在2000次拋擲中獲得2000頭的情況。
這是最大似然估計器。它估計最有可能產生您當前正在查看的結果的參數(這裡是概率分佈函數)。
以示例結束MLE會返回,最好的解釋從2000次扔掉中得到2000次頭的概率為$ 1 $。
我對MLE的理解是:您只能看到大自然希望您看到的東西。您看到的是事實。這些事實具有產生它的潛在過程。這些過程是隱藏的,未知的,需要被發現。那麼問題是:給定觀察到的事實,進程P1生成它的可能性是多少?進程P2生成它的可能性是多少?依此類推...這些可能性之一將是最大的可能性。 MLE是提取最大似然的函數。
想到拋硬幣;硬幣是有偏見的。沒有人知道偏見的程度。它的範圍可以從o(所有尾部)到1(所有頭部)。普通硬幣將是0.5(頭/尾巴的可能性相同)。當您進行10次拋擲,並且觀察到7個頭時,則MLE是那種偏斜程度,更可能產生觀察到的10次拋擲中7個頭的事實。