AIC和BIC都是評估因估計參數數量而受到懲罰的模型擬合的方法。據我了解,與AIC相比,BIC對免費參數的懲罰更多。除了基於標準嚴格性的偏愛之外,是否還有其他原因更喜歡AIC而不是BIC?
AIC和BIC都是評估因估計參數數量而受到懲罰的模型擬合的方法。據我了解,與AIC相比,BIC對免費參數的懲罰更多。除了基於標準嚴格性的偏愛之外,是否還有其他原因更喜歡AIC而不是BIC?
您的問題意味著AIC和BIC試圖回答同一問題,這是不正確的。 AIC試圖選擇最能充分描述未知的高維現實的模型。這意味著現實永遠不會在所考慮的候選模型集中。相反,BIC試圖在一組候選者中找到TRUE模型。我發現在研究人員沿途建立的模型之一中實例化了現實這一假設很奇怪。對於BIC來說,這是一個現實問題。這些模擬包括從模型A和B生成數據,然後用這兩個模型擬合兩個數據集。當錯誤的模型比生成的數據更適合數據時,就會發生過度擬合。這些模擬的重點是查看AIC和BIC對這些過擬合的校正程度。通常,結果表明AIC過於寬鬆,相對於更簡單,真實的模型,它仍然經常偏愛更複雜,錯誤的模型。乍一看,這些模擬似乎確實是一個很好的論據,但它們的問題在於它們對AIC沒有意義。正如我之前說過的,AIC並不認為正在測試的任何候選模型都是真實的。根據AIC的說法,所有模型都是逼近現實的,現實不應該具有較低的維數。至少低於某些候選模型。
我的建議是同時使用AIC和BIC。在大多數情況下,他們會就首選模型達成共識,否則,只需報告即可。
如果您對AIC和BIC都不滿意並且有空閒時間進行投資,請查找最小描述長度(MDL),這是一種完全不同的方法,可以克服AIC和BIC的局限性。來自MDL的度量有多個,例如歸一化最大似然或Fisher信息近似。 MDL的問題在於它的數學要求和/或計算量很大。
不過,如果您要堅持使用簡單的解決方案,那麼評估模型靈活性(尤其是在參數數量相等時,使AIC和BIC無效的一種很好的方法)就是執行參數引導程序,這很容易實施。 這是到紙上的鏈接。
這裡有些人主張使用交叉驗證。我個人曾經使用過它,對此沒有任何反對意見,但是問題在於,在樣本削減規則(留一法,K折等)中進行選擇是一種無原則的做法。
儘管AIC和BIC都是最大似然估計的驅動因素,並且為了打擊過度擬合而對自由參數進行了懲罰,但它們以導致明顯不同行為的方式進行。讓我們看一下一種常用的方法(結果形式規定了正態分佈的誤差和其他行為良好的假設):
和
其中:
在兩種情況下,組中最好的模型是使這些得分最小的模型。顯然,AIC並不直接取決於樣本量。而且,一般來講,AIC僅僅由於它們如何懲罰自由參數(AIC中的2 * k; BIC中的ln(N)* k)就提出了可能過度擬合的危險,而BIC提出了可能過度擬合的危險。隨著時間的流逝,隨著數據的引入和分數的重新計算,相對較低的N(小於等於7),BIC對自由參數的容忍度要高於AIC,但對於較高的N,則較不容忍(因為N的自然對數超過2)。 p>
此外,AIC的目的是為未知數據生成過程找到最佳的近似模型(通過最小化預期的 KL散度)。因此,它無法收斂到真實模型的概率(假設在評估的組中存在一個),而BIC確實會收斂,因為N趨於無窮大。
因此,在許多方法論問題中,首選的選擇取決於您要嘗試做的事情,可用的其他方法以及所概述的任何功能(收斂,對自由參數的相對公差,最小化預期的KL差異)是否符合您的目標。 >
根據我的經驗,當目標是最大程度地提高預測性歧視時,BIC會導致嚴重不合身的情況,而AIC通常表現良好。
布萊恩·里普利(Brian Ripley)提供的AIC和BIC的信息豐富且易於訪問的“派生”可以在以下位置找到: http://www.stats.ox.ac.uk/~ripley/Nelder80.pdf
Ripley對數學結果背後的假設提供了一些說明。與其他答案所表明的相反,Ripley強調AIC是基於假設模型為真的。如果模型不正確,則一般計算將顯示“參數數量”必須替換為更複雜的數量。 Ripleys幻燈片中提供了一些參考。但是請注意,對於線性回歸(嚴格來說,具有已知方差),通常更複雜的數量簡化為等於參數的數量。
實際上,唯一的區別是BIC是AIC擴展,以考慮對象(樣本)的數量。我要說的是,儘管兩者都很薄弱(與例如交叉驗證相比),但使用AIC更好,而不是更多的人熟悉該縮寫-的確,我從未見過BIC會在其中發表論文或程序的人被使用(我仍然承認我偏向於此類標準根本不起作用的問題)。
編輯:AIC和BIC等效於交叉驗證,提供了兩個重要的假設-定義,因此當模型是最大似然模型時,並且僅對訓練數據的模型性能感興趣時。如果將某些數據壓縮為某種共識,則完全可以。
如果為某些實際問題製造預測機,則第一個是錯誤的,因為您的訓練集僅代表有關該問題的信息的一部分您正在處理,因此您無法優化模型;第二個是錯誤的,因為您希望模型將處理新數據,而您甚至無法期望訓練集將具有代表性。為此,發明了簡歷。在面對獨立數據時模擬模型的行為。在選擇模型的情況下,CV不僅可以為您提供質量近似值,還可以為您提供質量近似值分佈,因此它具有很大的優勢,可以說“我不知道,無論新數據來了,它們中的任何一個都可以更好。”
正如您所提到的,AIC和BIC是對具有更多回歸變量的模型進行懲罰的方法。在這些方法中使用懲罰函數,該函數是模型中參數數量的函數。
應用AIC時,懲罰函數為 z(p) = 2 p 。
應用BIC時,懲罰函數為 z(p) = p ln( n ),其依據是將懲罰解釋為先驗信息(因此命名為貝葉斯信息準則)。
當 n 很大時,兩個模型將產生完全不同的結果。然後,BIC對複雜模型施加更大的懲罰,因此將導致比AIC更簡單的模型。但是,如 BIC上的維基百科中所述:
應注意的是,在許多應用中,BIC只是減少了最大似然選擇,因為參數數量等於感興趣的模型。
據我所知,AIC和BIC之間沒有太大區別。為了有效地比較模型,它們在數學上都是方便的逼近。如果它們為您提供了不同的“最佳”模型,則可能意味著您具有很高的模型不確定性,這比您應該使用AIC還是BIC更為重要。我個人更喜歡BIC,因為它會詢問更多(更少)模型是否具有滿足其參數的更多(更少)數據-就像老師在學生擁有更多(更少)的情況下要求更高(更低)的性能標準一樣)時間來學習該主題。對我來說,這似乎是直覺的事情。但是,我可以肯定的是,鑑於AIC的簡單形式,它同樣也存在著直觀而引人注目的論點。對於AIC肯定可以看到這一點,其中存在許多“調整”(AICc)來說明使原始近似值變差的某些條件。對於BIC來說,這也是存在的,因為存在各種其他更精確(但仍然有效)的方法,例如對Zellner g先驗混合的完全拉普拉斯近似(BIC是對積分的拉普拉斯近似方法的近似)。
當您對任何給定模型中的參數有足夠的先驗信息時,它們都是廢話。與需要從數據中估計參數的模型相比,AIC和BIC不必要地懲罰了部分已知參數的模型。
我認為需要注意的一件事是BIC並不假設a)存在“真實”模型,或者b)包含在模型集中。 BIC只是積分似然$ P(D | M,A)$的近似值(D =數據,M =模型,A =假設)。只有乘以先驗概率然後進行歸一化,您才能得到$ P(M | D,A)$。 BIC僅表示如果符號$ M $所暗示的命題為真,則數據的可能性為多少。因此,從邏輯角度看,任何可能導致近似BIC的命題都得到數據的同等支持。因此,如果我聲明$ M $和$ A $為命題
$$ \ begin {array} {l | l} M_ {i}:\ text {第i個模型是對數據} \\ A:\ text {正在考慮的K個模型中,其中一個是最好的} \ end {array} $$
,然後繼續分配相同的概率模型(相同的參數,相同的數據,相同的近似值等),我將獲得相同的BIC值集。只有在邏輯字母“ M”上加上某種獨特的含義,人們才會被捲入與“真實模型”(“真實宗教”的迴聲)無關的問題。 “定義” M的唯一一件事是在計算中使用它的數學方程式-幾乎從來沒有一個和一個定義可以被選出來。我可以同樣地提出關於M的預測命題(“第ith個模型將提供最佳預測”)。我個人不知道這將如何改變任何可能性,以及因此而產生的BIC的好壞(對於該問題,AIC也是如此-儘管AIC基於不同的推導)
,語句出了什麼問題?如果我正在考慮的是真實模型,那麼它就是模型B 的可能性為57%。對我來說似乎足夠合理,或者您可以使用更“軟”的版本在所考慮的集合中,模型B的最佳可能性為57%
最後一條評論:我想您會發現對AIC / BIC的意見和了解的人一樣多。
AIC應該很少使用,因為它實際上只是漸近有效的。最好總是使用AICc(對於有限的樣本量, c b>矯正的AIC)。 AIC趨於過於參數化:AICc大大減輕了這一問題。使用AICc的主要例外是,當基礎分佈嚴重瘦弱時。有關更多信息,請參閱Burnham & Anderson撰寫的《模型選擇》一書。
AIC和BIC是用於比較模型的信息標準。每種方法都試圖平衡模型的擬合度和簡約性,並且每種方法對參數數量的懲罰不同。
AIC是Akaike信息準則,公式是$$ \ text {AIC} = 2k-2 \ ln(L)$$其中$ k $是參數數量,$ L $是最大似然;用這個公式,越小越好。 (我記得有些程序輸出相反的$ 2 \ ln(L)-2k $,但我不記得詳細信息了。)
BIC是貝葉斯信息準則,公式是$$ \ text {BIC } = k \ ln(n)-2 \ ln(L)$$,它比AIC更支持簡約模型
我從沒聽說過KIC。
非常簡短:
請注意,在L0罰分GLM的上下文中(您可以基於lambda *非零係數的nr來懲罰模型的對數似然,即模型係數的L0範數),您可以優化AIC或BIC目標直接為AIC,而 $ lambda = 2 $ span>,而 $ lambda = log(n)$ span> BIC,這是在 l0ara R程序包中完成的。對我來說,這比他們例如在 glmnet中進行LASSO或彈性淨回歸的情況下,需要先優化一個目標(LASSO或彈性淨回歸),然後再基於其他一些目標調整正則化參數(例如,最小化交叉驗證預測誤差(AIC或BIC)。
Syed(2011)第10頁指出:“我們還可以通過注意AIC最小化近似模型與真實模型之間的Kullback-Leibler差異,來嘗試直觀地了解漸近等價Kullback-Leibler散度不是分佈之間的距離度量,而是使用近似模型對地面現實進行建模時實際上是信息損失的度量,留一法交叉驗證使用的數據量最大,可以進行訓練為一個觀測值做出預測,即 $ n -1 $ span>觀測值是相對於代表“真實性”的單個觀測值的近似模型的替代。可以認為這是從估計損失中可以從數據中獲取的最大信息量。給定獨立且分佈均勻的觀察結果,可以在 $ n $ span>上執行此操作驗證集導致漸近地有偏見的估計。”
請注意,LOOCV誤差也可以根據帽子矩陣的殘差和對角線進行分析計算,而無需實際進行任何交叉驗證。作為LOOCV誤差的漸近近似值,這將始終是AIC的替代方法。
References
Stone M.(1977)通過交叉驗證和Akaike準則選擇模型的漸進等效性。皇家統計學會雜誌叢刊B. 39,44–7。
Shao J.(1997)線性模型選擇的漸近理論。統計學雜誌,221-242。
參考文獻: