在機器學習演算法中的幾個疑難雜症點(2)

2021-09-29 10:27:32 字數 2323 閱讀 3225

本文主要講了一下我對最大似然、最小二乘法、最大後驗、以及誤差度量的準確率和召回率的淺略個人見解。

最小二乘法:

總結:參考文件:

最大似然和最大後驗

準確率和召回率

基於對似然函式l(θ)形式(一般為連乘式且各因式》0)的考慮,求θ的最大似然估計的一般步驟如下:

(1)寫出似然函式

總體x為離散型時:

總體x為連續型時:

(2)對似然函式兩邊取對數有

總體x為離散型時:

總體x為連續型時:

(3)對 求導數並令之為0:

此方程為對數似然方程。解對數似然方程所得,即為未知引數 的最大似然估計值。 [1]

我個人的認知:最大似然估計就是在我們已經知道觀測的資料和相對應的結果時,要找出乙個theta值來使取得這個結果的概率最大。

最大似然的核心是自戀,相信自己看到的命中註定的最接近真相的;

最小二乘法的核心是權衡,在所有的直線中挑選距離最短的。

這段我以後會加上個人了解,這篇文章的解釋相對清晰。

極大似然估計與最大後驗概率估計

我們這有乙個任務,就是根據已知的一堆資料樣本,來推測產生該資料的模型的引數,即已知資料,推測模型和引數。因此根據兩大派別的不同,對於模型的引數估計方法也有兩類:極大似然估計與最大後驗概率估計。

① 極大似然估計(mle)

-她是頻率學派模型引數估計的常用方法。

-顧名思義:似然,可以簡單理解為概率、可能性,也就是說要最大化該事件發生的可能性

-她的含義是根據已知樣本,希望通過調整模型引數來使得模型能夠最大化樣本情況出現的概率。

我們假設7次黑球,3次紅球為事件 a ,乙個理所當然的想法就是既然事件 a已經發生了,那麼事件 a 發生的概率應該最大。所以既然事件 a 的結果已定, 我們就有理由相信這不是乙個偶然發生的事件,這個已發生的事件肯定一定程度上反映了黑球在整體中的比例。所以我們要讓模型產生這個整體事件的概率最大,我們把這十次抽取看成乙個整體事件 a ,很明顯事件 a 發生的概率是每個子事件概率之積。我們把 p(a) 看成乙個關於 p 的函式,求 p(a) 取最大值時的 p ,這就是極大似然估計的思想。具體公式化描述為p(a)=p7*(1-p)3。

接下來就是取對數轉換為累加,然後通過求導令式子為0來求極值,求出p的結果。

② 最大後驗概率估計(map)

-她是貝葉斯派模型引數估計的常用方法。

-顧名思義:就是最大化在給定資料樣本的情況下模型引數的後驗概率

-她依然是根據已知樣本,來通過調整模型引數使得模型能夠產生該資料樣本的概率最大,只不過對於模型引數有了乙個先驗假設,即模型引數可能滿足某種分布,不再一味地依賴資料樣例(萬一資料量少或者資料不靠譜呢)。

-在這裡舉個擲硬幣的例子:拋一枚硬幣10次,有10次正面朝上,0次反面朝上。問正面朝上的概率p。

在頻率學派來看,利用極大似然估計可以得到 p= 10 / 10 = 1.0。顯然當缺乏資料時mle可能會產生嚴重的偏差。

如果我們利用極大後驗概率估計來看這件事,先驗認為大概率下這個硬幣是均勻的 (例如最大值取在0.5處的beta分布),那麼p(p|x),是乙個分布,最大值會介於0.5~1之間,而不是武斷的給出p= 1。

顯然,隨著資料量的增加,引數分布會更傾向於向資料靠攏,先驗假設的影響會越來越小。

講這個之前,我們先來介紹一下真真假假陰陰陽陽的對資料集的**。真的怕搞昏了,所以請跟緊我的思路:

首先明確:我們下面說的所有的真真假假的判斷標準都是基於我們**的情況與真是的情況是否一致,比如說,當我們猜對了的時候,它就是真,猜錯了就是假;至於陰陽,就是我們猜它為陽,它就是陽,猜它為陰,就是陰。最後再將這兩種情況相結合就可以推斷出它的真假陰陽性了。

現在我來解釋一下兩兩結果相組合出的四種結果性:

tp 真陽性:我們猜測它為陽性,並且我們猜對了。實際為陽。

tn 真陰性:我們猜測它為陰性,並且我們猜對了。實際為陰。

fp 假陽性:我們猜測它為陽性,但是我們猜錯了。實際為陰。

fp 假陰性:我們猜測它為陰性,但是我們猜錯了。實際為陽。

準確率(precision): 真陽性 /(真陽性+假陽性)

=真陽性 /(全部我們猜測它為真的)

召回率(recall): 真陽性 / (真陽性+假陰性)

= 真陽性 / (全部真實情況為陽性的)

通常來說,準確率和召回率一般為互斥的,我們一般根據不同的場景來選擇不同的側重方向。

場景1:當我們要從人群資料中找出犯罪分子的資料時,會強調準確率。

場景2:當我們對病人進行疾病的確診時,會側重於召回率。

在機器學習演算法中的幾個疑難雜症點(1)

正則化的兩種形式 個人理解 是指模型過度的完美擬合訓練資料,但是訓練資料中有較多資料與真實資料出入較大,所以導致這個模型泛化能力比較差,在匹配真實資料時誤差較大。1 資料特徵的角度 訓練資料中存在噪音。錯誤地把噪音作為有效資訊,導致過擬合。訓練資料太少。缺乏代表性不能很好地反映整體。2 模型的角度 ...

學習演算法遇到的疑難雜症

1 delete動態陣列 如果delete的時候出現執行時錯誤,可能是之前發生過陣列越界 int main delete a return 0 2 快排 在座標向中靠攏的時候除了比較和當前選中的數的大小外,還要判斷邊界 while i j 3 歸併排序 最後一步合併時,臨時陣列和目標陣列的下標不是同...

mybatis foreach的疑難雜症

背景 今天寫 的時候,寫了一段sql,如下所示 select product name,product type,subscription id,product period,subscription begin,interest begin,interest end,subscription st...