機器學習基礎LAN

通常,我們會更加關注機器學習算法在未觀測數據上的性能如何,因爲這將決定其在實際應用中的性能。
因此,我們使用 測試集(test set)數據來評估系統性能,將其與訓練機器學習系統的訓練集數據分開。

無監督學習算法:

訓練含有很多特徵的數據集,然後學習出這個數據集上有用的結構性質。在深度學習中,
我們通常要學習生成數據集的整個概率分佈,顯式地,比如密度估計,或是隱式地,比如合成或去噪。
還有一些其他類型的無監督學習任務,例如聚類,將數據集分成相似樣本的集合。

監督學習算法:

訓練含有很多特徵的數據集,不過數據集中的樣本都有一個 標籤(label)或 目標(target)。
例如,Iris 數據集註明瞭每個鳶尾花卉樣本屬於什麼品種。監督學習算法通過研究 Iris 數據集,
學習如何根據測量結果將樣本劃分爲三個不同品種。

在這裏插入圖片描述
示例:線性迴歸
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

仿射函數,即最高次數爲1的多項式函數。常數項爲零的仿射函數稱爲線性函數。
仿射函數即由1階多項式構成的函數,一般形式爲 f (x) = A x + b,這裏,A 是一個 m×k 矩陣,x 是一個 k 向量,b是一個m向量,
實際上反映了一種從 k 維到 m 維的空間映射關係。

在這裏插入圖片描述
泛 化:

 機器學習的主要挑戰是我們的算法必須能夠在先前未觀測的新輸入上表現良好,
而不只是在訓練集上表現良好。在先前未觀測到的輸入上表現良好的能力被稱爲 泛 化

訓練誤差:

通常情況下,當我們訓練機器學習模型時,我們可以使用某個訓練集,
在訓練集上計算一些被稱爲 訓練誤差的度量誤差,目標是降低訓練誤差。

泛化誤差(測試誤差):

機器學習和優化不同的地方在於,我們也希望 泛化誤差很低。
泛化誤差被定義爲新輸入的誤差期望。
通常,我們度量模型在訓練集中分出來的 測試集(test set)樣本上的性能,
來評估機器學習模型的泛化誤差。

在這裏插入圖片描述
數據生成分佈:

通常,我們會做一系列被統稱爲 獨立同分布假設的假設。
該假設是說,每個數據集中的樣本都是彼此 相互獨立的,並且訓練集和測試集是 同分布的,採樣自相同的分佈。
相同的分佈可以用來生成每一個訓練樣本和每一個測試樣本。
我們將這個共享的潛在分佈稱爲 數據生成分佈,記作 pdata。
這個概率框架和獨立同分布假設允許我們從數學上研究訓練誤差和測試誤差之間的關係.

欠擬合:
欠擬合是指模型不能在訓練集上獲得足夠低的誤差.

過擬合:
過擬合是指訓練誤差和和測試誤差之間的差距太大。

模型容量:(學習到的特徵數)
模型的容量是指其擬合各種函數的能力。
容量低的模型可能很難擬合訓練集。
容量高的模型可能會過擬合,因爲記住了不適用於測試集的訓練集性質。
通過調整模型的 容量,我們可以控制模型是否偏向於過擬合或者欠擬合。
線性迴歸算法將關於其輸入的所有線性函數作爲假設空間。
廣義線性迴歸的假設空間包括多項式函數,而非僅有線性函數。這樣做就增加了模型的容量。
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

爲了邏輯地推斷一個規則去描述集合中的元素,我們必須具有集合中每個元素的信息。
在一定程度上,機器學習僅通過概率法則就可以避免這個問題,而無需使用純邏輯推理整個確定性法則。
機器學習保證找到一個在所關注的大多數樣本上可能正確的規則。

正則化:

算法的效果不僅很大程度上受影響於假設空間的函數數量,也取決於這些函數的具體形式。
我們已經討論的學習算法(線性迴歸)具有包含其輸入的線性函數集的假設空間。
對於輸入和輸出確實接近線性相關的問題,這些線性函數是很有用的。
對於完全非線性的問題它們不太有效。例如,我們用線性迴歸,從 x 預測 sin(x),效果不會好。

權重衰減:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
超參數:
在圖 5.2 所示的多項式迴歸示例中,有一個超參數:多項式的次數,作爲容量超參數。
控制權重衰減程度的 λ 是另一個超參數。
超參數不用學習的原因:
1、有時一個選項被設爲學習算法不用學習的超參數,是因爲它太難優化了。
2、更多的情況是,該選項必須是超參數,因爲它不適合在訓練集上學習。

如果在訓練集上學習超參數,這些超參數總是趨向於最大可能的模型容量,導致過擬合。
例如,相比低次多項式和正的權重衰減設定,更高次的多項式和權重衰減參數設定 λ = 0 總能在訓練集上更好地擬合。

驗證集:

驗證集是用來 ‘‘訓練’’ 超參數的。
早先我們討論過和訓練數據相同分佈的樣本組成的測試集,它可以用來估計學習過程完成之後的學習器的泛化誤差。
其重點在於測試樣本不能以任何形式參與到模型的選擇中,包括設定超參數。
基於這個原因,測試集中的樣本不能用於驗證集。
因此,我們總是從訓練數據中構建驗證集。
特別地,我們將訓練數據分成兩個不相交的子集。
其中一個用於學習參數。另一個作爲驗證集,用於估計訓練中或訓練後的泛化誤差,更新超參數。
通常,80% 的訓練數據用於訓練,20% 用於驗證。
儘管驗證集的誤差通常會比訓練集誤差小,驗證集會低估泛化誤差。
所有超參數優化完成之後,泛化誤差可能會通過測試集來估計。

k-折交叉驗證:
在這裏插入圖片描述
在這裏插入圖片描述
一般情況將K折交叉驗證用於模型調優,找到使得模型泛化性能最優的超參值。
找到後,在全部訓練集上重新訓練模型,並使用獨立測試集對模型性能做出最終評價。
K折交叉驗證使用了無重複抽樣技術的好處:
每次迭代過程中每個樣本點只有一次被劃入訓練集或測試集的機會。
在這裏插入圖片描述
如果訓練數據集相對較小,則增大k值。

增大k值,在每次迭代過程中將會有更多的數據用於模型訓練,能夠得到最小偏差,同時算法時間延長。
且訓練塊間高度相似,導致評價結果方差較高。

如果訓練集相對較大,則減小k值。

減小k值,降低模型在不同的數據塊上進行重複擬合的性能評估的計算成本,在平均性能的基礎上獲得模型的準確評估。

K折交叉驗證的一個特例:

(LOO)交叉驗證法:
將數據子集劃分的數量等於樣本數(k=n),每次只有一個樣本用於測試,數據集非常小時,建議用此方法。

K折交叉驗證改進成的 分層K折交叉驗證:

獲得偏差和方差都低的評估結果,特別是類別比例相差較大時。

點估計:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
偏差:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
方差和標準差:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
權衡偏差和方差以最小化均方誤差:
在這裏插入圖片描述
在這裏插入圖片描述
一致性:
在這裏插入圖片描述
在這裏插入圖片描述
貝葉斯決策:
在這裏插入圖片描述
在這裏插入圖片描述
最大似然估計:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

舉個別人博客中的例子,假如有一個罐子,裏面有黑白兩種顏色的球,數目多少不知,兩種顏色的比例也不知。我
們想知道罐中白球和黑球的比例,但我們不能把罐中的球全部拿出來數。現在我們可以每次任意從已經搖勻的罐中拿一個球出來,記錄球的顏色,然後把拿出來的球
再放回罐中。這個過程可以重複,我們可以用記錄的球的顏色來估計罐中黑白球的比例。假如在前面的一百次重複記錄中,有七十次是白球,請問罐中白球所佔的比例最有可能是多少?很多人馬上就有答案了:70%。而其後的理論支撐是什麼呢?

我們假設罐中白球的比例是p,那麼黑球的比例就是1-p。因爲每抽一個球出來,在記錄顏色之後,
我們把抽出的球放回了罐中並搖勻,所以每次抽出來的球的顏 色服從同一獨立分佈。
這裏我們把一次抽出來球的顏色稱爲一次抽樣。題目中在一百次抽樣中,
七十次是白球的概率是P(Data | M),這裏Data是所有的數據,M是所給出的模型,
表示每次抽出來的球是白色的概率爲p。如果第一抽樣的結果記爲x1,
第二抽樣的結果記爲x2... 那麼Data = (x1,x2,,x100)。這樣,

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
K-L散度(相對熵)
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
使用K-L散度優化模型:
p的值域在 [0, 1] 之間,我們要選擇一個p值,建立二項式分佈,目的是最小化近似誤差,即K-L散度。那麼0.57是最優的嗎?
下圖是原始數據分佈和二項式分佈的K-L散度變化隨二項式分佈參數p變化情況:
在這裏插入圖片描述
通過上面的曲線圖可以看出,K-L散度值在圓點處最小,即p=0.57。所以我們之前的二項式分佈模型已經是最優的二項式模型了。
在這裏插入圖片描述
在這裏插入圖片描述
當p=0.47時,K-L值取最小值0.338。
在這裏插入圖片描述
基於最大似然估計的模式分類實例:

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
條件對數似然和均方誤差:
在這裏插入圖片描述
在這裏插入圖片描述
最大似然估計解決線性迴歸:
在這裏插入圖片描述
在這裏插入圖片描述
從最終結果可以看出最大似然估計與最小二乘法解決線性迴歸問題殊途同歸,可以將最小二乘看成是最大似然估計的一個特殊情況。
最大似然的性質:
在這裏插入圖片描述
在這裏插入圖片描述
Beta分佈:
用一句話來說,beta分佈可以看作一個概率的概率分佈,當你不知道一個東西的具體概率是多少時,它可以給出了所有概率出現的可能性大小。
舉一個簡單的例子,熟悉棒球運動的都知道有一個指標就是棒球擊球率,就是用一個運動員擊中的球數除以擊球的總數,我們一般認爲0.266是正常水平的擊球率,而如果擊球率高達0.3就被認爲是非常優秀的。
現在有一個棒球運動員,我們希望能夠預測他在這一賽季中的棒球擊球率是多少。你可能就會直接計算棒球擊球率,用擊中的數除以擊球數,但是如果這個棒球運動員只打了一次,而且還命中了,那麼他就擊球率就是100%了,這顯然是不合理的,因爲根據棒球的歷史信息,我們知道這個擊球率應該是0.215到0.36之間纔對啊。
對於這個問題,我們可以用一個二項分佈表示(一系列成功或失敗),一個最好的方法來表示這些經驗(在統計中稱爲先驗信息)就是用beta分佈,這表示在我們沒有看到這個運動員打球之前,我們就有了一個大概的範圍。
beta分佈的定義域是(0,1)這就跟概率的範圍是一樣的。接下來我們將這些先驗信息轉換爲beta分佈的參數,我們知道一個擊球率應該是平均0.27左右,而他的範圍是0.21到0.35,那麼根據這個信息,我們可以取α=81,β=219
在這裏插入圖片描述
在這個例子裏,我們的x軸就表示各個擊球率的取值,x對應的y值就是這個擊球率所對應的概率。也就是說beta分佈可以看作一個概率的概率分佈。
那麼有了先驗信息後,現在我們考慮一個運動員只打一次球,那麼他現在的數據就是”1中;1擊”。這時候我們就可以更新我們的分佈了,讓這個曲線做一些移動去適應我們的新信息。beta分佈在數學上就給我們提供了這一性質,他與二項分佈是共軛先驗的。所謂共軛先驗就是先驗分佈是beta分佈,而後驗分佈同樣是beta分佈。結果很簡單:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在貝葉斯統計中,如果先驗和後驗屬於同類分佈,則它們稱作共軛分佈,而先驗稱作是似然函數(本例中是二項分佈)的共軛先驗。
在這裏插入圖片描述
貝葉斯統計:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
最大後驗 (MAP) 估計:
在這裏插入圖片描述
在這裏插入圖片描述
概率監督學習:
在這裏插入圖片描述
在這裏插入圖片描述
支持向量機:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
其他簡單的監督學習算法:
決策樹:
在這裏插入圖片描述
在這裏插入圖片描述
無監督學習算法:
主成分分析PCA:
PCA即主成分分析算法,是機器學習種應用得最廣泛的數據降維算法。PCA的思想是將原始n維的數據映射到k維上(k<n),這k維是全新的正交特徵,也叫主成分。PCA的工作就是在原始的數據空間中順序的找一組相互正交的座標軸,新的座標軸和數據本身是密切相關的。其中第一個座標軸是原始數據中方差最大的方向,第二個座標軸是和第一個座標軸相交的座標軸中最大的,以此類推,k個座標軸是完全正交的。研究發現,大部分方差都包含在k個座標中,後面的座標軸所含的方差幾乎爲0。所以可忽略不計,以實現對數據的降維處理。
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
代碼實現:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
k-均值聚類:
K-Means算法的特點是類別的個數是人爲給定的
K-Means的一個重要的假設是:數據之間的相似度可以使用歐氏距離度量,如果不能使用歐氏距離度量,要先把數據轉換到能用歐氏距離度量,這一點很重要。
注:可以使用歐氏距離度量的意思就是歐氏距離越小,兩個數據相似度越高)
在這裏插入圖片描述

有四個牧師去郊區佈道,一開始牧師們隨意選了幾個佈道點,並且把這幾個佈道點的情況公告給了郊區所有的居民,於是每個居民到離自己家最近的佈道點去聽課。
聽課之後,大家覺得距離太遠了,於是每個牧師統計了一下自己的課上所有的居民的地址,搬到了所有地址的中心地帶,並且在海報上更新了自己的佈道點的位置。
牧師每一次移動不可能離所有人都更近,有的人發現A牧師移動以後自己還不如去B牧師處聽課更近,於是每個居民又去了離自己最近的佈道點……
就這樣,牧師每個禮拜更新自己的位置,居民根據自己的情況選擇佈道點,最終穩定了下來。

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
DataScienceNote/TryKMeans.m at master · TsingJyujing/DataScienceNote · GitHub
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
隨機梯度下降:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
構建機器學習算法:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
促使深度學習發展的挑戰:
在這裏插入圖片描述
在這裏插入圖片描述
維數災難:
在這裏插入圖片描述
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章