Chapter1 緒論
基本術語:
監督學習 非監督學習
根據訓練資料是否有標記,學習任務可以大致分為監督學習和非監督學習,分類和回歸是前者,聚類是后者,
▲何為監督學習、非監督學習?:以西瓜集為例,好瓜壞瓜就是訓練集中每一個樣本的標記,訓練演算法程序中通過這個標記不斷矯正演算法的準確性,這就是監督學習(前面8章學的演算法都是監督學習),反之,訓練程序中沒有標記的就是非監督學習,比如聚類(就是最后學的k-分類),
第一章主要是了解一下機器學習大致的東西,了解即可,
學習的種類很多,我們學習監督學習和非監督學習,而二者前者學習的更多,從上面說的章節也可以看出,
監督學習:回歸問題、二分類問題
非監督學習:新聞分組等
▲能判斷一種演算法是監督學習還是非監督學習:
| 監督學習 | 非監督學習 |
|---|---|
| 線性回歸 | 聚類演算法:原型聚類(K均值、學習向量量化、高斯混合聚類)、密度聚類、層次聚類 |
| 對數幾率回歸 | 降維 |
| 決策樹 | 話題分析 |
| 支持向量機 | 圖分析 |
| 貝葉斯法 | / |
| 神經網路 | / |
機器學習框架:
這個圖建議刻畫在腦子🧠里

訓練集:用來訓練演算法的樣本
測驗集:用來測驗演算法的樣本
示例、樣例:比如一個題目,給一堆資料集,讓你訓練一個模型,然后給你一個樣例,讓你預測一下,這個樣例就這個意思
屬性、特征;屬性值
特征向量:每個樣本有很多特征,特征組成一個向量,比如(崔寶,男,18)
訓練的目標:學習得到的模型盡可能地適用于新樣本,這種適應的能力叫做泛化能力
Chapter2 模型評估與選擇
▲怎么評價訓練得到的模型的泛化能力:
錯誤率:分類錯誤的樣本占樣本總數的比例
精度:分類正確的樣本占樣本總數的比例
很明顯,錯誤率+精度=1
誤差:演算法輸出值于真實值的差別
注意:訓練集的所有屬性都是已知的,要預測的屬性的值也是已知的,比如預測房價,很多因素都會影響房價,如:位置、大小、裝修程度等等,想要獲得一個預測房價的模型,我們肯定首先知道部分不同位置、不同大小、不同裝修程度的房子的價錢,然后基于這些資料來訓練模型,預測房價,不清楚的自己找一下ppt看個例子,這個對后面的學習很重要
訓練(經驗)誤差:訓練集上的誤差
泛化誤差:新樣本上的誤差
▲訓練誤差越小越好?
答:不是,如果訓練誤差越來越小,會導致模型過擬合,則模型不具備很好的泛化能力,則這個模型就差,故訓練誤差越小越好是錯的,
▲泛化誤差越小越好
答:是的,我們訓練模型的目的就是為了通過模型進行一定的預測,預測的越準確越好,對應的即是泛化誤差越小越好,
測驗集與訓練集應該互斥,互斥即兩個集合沒有交集,
過擬合:學習到的模型太符合訓練集上的特征了,比如說崔寶很丑,結果這個演算法認為任何一個男生都很丑,這顯然是不合理的,指前半句話
欠擬合:學習到的模型沒有把應該考慮進去的屬性考慮進去,這個不好舉例子,自己體會一下吧
▲減小過擬合的方法:減少特征的數量、資料正則化
▲如果一個模型加入了正則項,這個模型的擬合程度不一定增加,取決于正則化引數入
▲評估模型的方法:掌握交叉驗證法(k折交叉驗證法):選擇一個k,把資料集分成k份(保持資料分布的一致性),k-1份資料進行訓練,剩下一份作測驗,一共進行k次,最終取平均值,
留出法:在訓練集中選出一部分資料作測驗集,注意選擇的時候保持資料分布一致性,測驗集不能太大不能太小(1/5~1/3)
▲查全率、查準率(課本p30):

▲查全率查準率的含義:
查準率:預測為正的樣本中真正為正的比例
查全率:實際為正的樣本中被預測為正的樣本的比例
相互矛盾的兩個指標
▲均方誤差:m個樣本求得m個(預測值-真實值)2,相加然后除以m
▲偏差:(預測值-真實值)2,度量了演算法預測和真實值的偏離程度,刻畫了演算法本身的擬合能力
▲方差:度量了同樣大小的訓練集的變動導致演算法性能的變化,刻畫了資料擾動帶來的影響
偏差和方差度量了和刻畫了老師強調了多次,該怎么辦不用多說了吧
Chapter3 線性模型
線性模型試圖學的一個通過屬性的線性組合來進行預測的函式
線性回歸
模型的形式f(x) = w1x1+w2x2+…+wdxd+b
向量的形式f(x)=Wx+b
均方誤差E(w,b)=(真實值-預測值) 求和
均方誤差后面用的很頻繁
優化求解的方法:最小二乘法、梯度下降法
書上給的最小二乘法:通過求導,求極值
▲梯度下降法:
- 三要素:
假設:先假設一個函式形式,比如f(x)=wx+b
目標函式:即通過E函式計算損失
優化演算法;給定訓練集,如何找到最優引數,使得損失函式最小
▲學習率α對梯度下降的影響:
α如果太小的話,梯度下降演算法則會收斂的很慢
α如果太大的話,梯度下降演算法則不會收斂,發散或者震蕩
對數幾率回歸
對數幾率回歸模型:單位躍遷函式數學性質不好,使用對數幾率函式替代
解決二分類問題
▲掌握模型的含義:y=P(y=1|x)給出x,估計y=1的可能性
多分類學習:
拆分成若干個二分類求解
拆分策略:
一對多:n個類別,為每一類訓練一個羅基分類器,該類作正例,剩下的作為負例,訓練分類器的個數n
一對一:n個類別,每次取出兩個來訓練一個模型,訓練分類器的個數n(n-1)/2
多對多:/
Chapter4 決策樹
決策樹部分不涉及計算題,因為計算程序中牽涉log
劃分選擇
學習程序:通過對訓練樣本的分析來確認劃分屬性,
預測程序:將測驗示例從根節點開始,沿著劃分屬性所構成的”判定測驗序列“下行,直到葉結點
▲選擇最優劃分屬性:
資訊增益:考察這一個增益率基尼指數
▲資訊熵:資訊熵的值越小,資料集的純度越高
剪枝處理
剪枝是決策樹對付過擬合的主要手段
基本策略:
- 預剪枝:在決策樹生成程序中,對每個節點在劃分前先進行估計,若當前節點的劃分不能帶來決策樹性能的提升,則停止劃分,并將當前節點標記為葉節點
- 后剪枝:先從訓練集中生成一顆完整的決策樹,然后自底向上對非葉子節點進行考察,若將該節點對應的子樹替換為葉子節點能帶來決策樹泛化性能提升,則將該子樹替換為葉節點
預剪枝:提前終止某些分支的生長
后剪枝:生成一顆完全樹,再”回頭“剪枝
掌握上面的概念
連續的一些概念
連續屬性離散化:大于某個數值的作為一類,小于某個數值的作為另外一類
常用二分法
理解連續屬性離散化
Chapter5 神經網路
神經元模型
神經網路的概念:很多神經元相連,權重,閾值(偏差)、激活函式
神經網路的學習程序:利用事先提供的訓練資料來調整神經元之間的連接權以及每個功能神經元的閾值,
每個神經元都有一個閾值,每條邊都有一個權重
感知機與多層網路
感知機
感知機是由兩層神經元組成的,輸入層和輸出層,輸入層接受外界信號,輸出層輸出結果,感知機能夠容易地實作或、與、非,
當然,感知機也只能有限的實作這些簡單的功能,這些與、或、與、非都是線性問題
感知機要注意了,因為只有輸入層輸出層,比較簡單,會出題,期中測驗的時候有一道是感知機的題,通過一些輸入輸出,讓你判斷實作了什么功能(與、或、非)
上面這個題老師好像改了,當時激活函式給的好像是sigmoid函式,這里按照sigmoid函式來計算,

怎么實作非線性問題呢? →多層神經網路
我們學習的都是比較簡單的,一般都是三層,即:第一層:輸入層、第二層:隱藏層、第三層:輸出層
給定一個模型,要會計算有多少個引數
多層神經網路功能比較強大,但是如何得到一個這樣的網路呢?→誤差逆向傳播演算法
誤差逆向傳播演算法
即BP演算法,基于梯度下降策略,BP演算法是一個迭代學習演算法,在迭代的每一輪中采用廣義的感知機學習規則對引數進行更新估計
不要求掌握公示的推導,不用再愁眉苦臉了,
▲主要掌握BP演算法的求解程序,以單隱藏層為例:
1、已知一組資料集(訓練集),給定學習率η
2、把所有通過輸入層輸入獲得預測值
3、對于每一個隱藏層到輸出層的權重 w i w_i wi?,誤差E(x)對權重求導,可以得到該權重對誤差的影響
4、計算出誤差E(x)對所有引數的影響之后,通過更新公式 w 1 w_1 w1? <— w 1 w_1 w1? - η( ? L {\partial L} ?L/ ? {\partial } ? w 1 w_1 w1?)對所有的引數同時更新
5、迭代3、4,直到滿足一定的條件:誤差小到一定的程度、達到迭代次數
Tips:更新引數的時候,我記得當時講的是必須要同時更新,否則如果先更新一部分后,對另外一部分會產生影響,
可以參考另外一篇博客從零訓練一個神經網路幫助理解,個人覺得例子比干巴巴的講理論更加容易理解
BP演算法學新能力較強,容易產生過擬合,解決過擬合的辦法是:
早停:
- 訓練誤差連續a輪變化小于b,則停止訓練
- 使用驗證集,若訓練誤差降低,經驗誤差升高,則停止訓練
正則化:在誤差目標函式中添加一項描述網路復雜度
Chapter6 支持向量機
間隔與支持向量的概念
什么是支持向量?:能夠決定最大間隔超平面的點,看ppt或者書上的圖可以知道,這些點應該是在正例負例資料的邊緣部分,能夠決定超平面的選取,后面老師反復講的那道題給的三個向量就是支持向量,記住就好了, 應付期末考試沒問題
什么是間隔?:(正例、負例)支持向量所在的平行面之間的距離就是間隔,γ=2/ ||w|| γ是間隔
上面那個間隔公式怎么來的呢?
有點到平面的距離公式可以得知,正例支持向量到超平面的距離應該是1 / ||w||,負例支持向量應該是|-1| / ||w|| ,兩個相加就得到了間隔,即γ=2/ ||w||
掌握點到平面的距離公式:r = |wTx+b| / ||w|| (/是除以,markdown分式確實不好寫)

后續的求最大間隔就是求這個γ的值,讓其最大,,,
大家應該都知道:求1/n的最大值就是求n的最小值吧??不知道的話我現在告訴你了,記住就行了,,,,
那求上述的γ的最大值,對應就是求1/γ最小值,這個記好,下面要用

對偶問題
對偶問題必出一道計算題,而且相對較難,建議直接背誦步驟,然后考試直接套上,最下面給出一道例題
求1/γ的最小問題,即arg min
1
2
\frac {1}{2}
21?{||w||2}
這里面的公式太多了,我就不手擼了,跟火星文一樣太難寫了而且理解起來相對較難,我只挑期末考試要用到的說,公式想推導自己可以推導一下,
原問題:arg min
1
2
\frac {1}{2}
21?||w||2
原問題的約束條件是:

▲拉格朗日函式有一下幾部分:
- 原函式:即arg min 1 2 \frac {1}{2} 21?{||w||2}
- 約束條件的函式:上面那個約束條件,要轉化成一個函式≤0的形式,即1- y i y_i yi?(wT x i x_i xi?+b)<0的形式
- 拉格朗日乘子: α i α_i αi?,這個很重要,后面就是求這個進而求得w和b的,乘子是非負的,所以接出來的乘子小于零要舍棄,并從區間的端點出取值
拉格朗日函式即:L(w,b,α) =
1
2
\frac {1}{2}
21?||w||2+
∑
i
=
1
m
\sum_{i=1}^m
∑i=1m? 1-
y
i
y_i
yi?(wT
x
i
x_i
xi?+b)
根據拉格朗日對偶性,原問題的對偶問題就是極大極小問題:
max min L(w,b,α) 其中max是對α,min是對w,b
從內到外求,即先求w,b的極小值,再求α的極大值(其實都是求導,導函式等于0,求得極值)
用L(w,b,α)分別對w,b求導,求出來之后等于0,可以得到
w=
∑
i
=
1
m
\sum_{i=1}^m
∑i=1m?
α
i
y
i
X
i
α_iy_iX_i
αi?yi?Xi?
0=
∑
i
=
1
m
\sum_{i=1}^m
∑i=1m?
α
i
y
i
α_iy_i
αi?yi?
上面這兩個式子也要記住
得到上面這兩個式子之后帶入原來的 L(w,b,α)函式得到:
L(w,b,α)=
∑
i
=
1
m
α
i
\sum_{i=1}^mα_i
∑i=1m?αi?-
1
2
∑
i
=
1
m
∑
j
=
1
m
α
i
α
j
y
i
y
j
x
i
T
x
j
\frac {1}{2}\sum_{i=1}^m\sum_{j=1}^mα_iα_jy_iy_jx_i^Tx_j
21?∑i=1m?∑j=1m?αi?αj?yi?yj?xiT?xj?
得到這個函式之后,就把給的資料都帶進去,然后再求導求出來α,(這里的α是個向量)
▲▲▲上面描述了這么多,其實我覺得沒有做兩道題來的更清楚,下面就基于上述做一下例題:



核函式:用于線性不可分的問題,將樣本從原始空間映射到更高維的特征空間,使得樣本在這個特征空間內線性可分
正則化

▲清楚 L p L_p Lp?范數的含義
L
p
L_p
Lp?范數是常用的正則化項,其中
L
2
L_2
L2?范數
∣
∣
w
∣
∣
2
||w||_2
∣∣w∣∣2?傾向于w的分量取值盡量均衡,即非零個數盡量稠密
而
L
0
L_0
L0?范數
∣
∣
w
∣
∣
0
||w||_0
∣∣w∣∣0?和
L
1
L_1
L1?范數
∣
∣
w
∣
∣
1
||w||_1
∣∣w∣∣1?則更傾向于w的分量盡量稀疏,即非零分量個數盡量少
- L 0 L_0 L0?范數是指向量中非0的元素的個數
- L 1 L_1 L1?范數是指向量中各元素絕對值 之和
- L 2 L_2 L2?范數是指向量各元素的平方和然后求平方根
Chapter7 貝葉斯分類器
Chapter8 集成學習
Chapter9 聚類
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/245311.html
標籤:AI
