机器学习期末简答总结
文檔完整電子版
https://download.csdn.net/download/qq_42368540/68205608
1.什么是監督學習和非監督學習,它們之間的區別有哪些?
監督學習,是指訓練集的數據已經分好類別,通過對帶有標簽的數據進行學習,來調整分類器的參數,使其達到所要求性能的過程。當用測試集對模型進行測試時,給出D測={xi }=>{yi}。
常見的監督學習算法:邏輯回歸、K近鄰、樸素貝葉斯、支持向量機
非監督學習,需要將一系列沒有標簽和類別未知的數據,輸入到算法中,需要根據樣本之間的相似性對樣本集進行分類(聚類)試圖使類內差距最小化,類間差距最大化。
常見的非監督學習算法:K-means、LDA
①監督學習必須要有訓練集和測試集,非監督學習沒有訓練集,只有一組數據,在該數據集內尋找規律。
②監督學習要求訓練集必須由帶標簽的樣本組成,非監督學習不要求數據樣本帶有標簽。
③非監督學習是在尋找數據集中的規律性,但這種規律性并不一定要對數據進行分類。
2.解釋分類、聚類、回歸、損失函數
分類:根據一些給定的已知類別標號的樣本,通過訓練得到某種目標函數,使它能夠對未知類別的樣本進行分類。
聚類:指事先并不知道任何樣本的類別標號,希望通過某種算法來把一組未知類別的樣本劃分成若干類別,這在機器學習中被稱作無監督學習。
回歸:用于預測輸入變量和輸出變量之間的關系,特別是當輸入變量的值發生變化時,輸出變量的值隨之發生的變化。
損失函數:用來估量模型的預測值f(x)與真實值Y的不一致程度,它是一個非負實值函數,通常使用L(Y, f(x))來表示,損失函數越小,模型的魯棒性就越好。
3.什么是機器學習,機器學習的步驟是什么
機器學習是一門專門研究計算機怎樣模擬或實現人類的學習行為,以獲取新的知識或技能,重新組織已有的知識結構使之不斷改善自身性能的學科。
1 提出問題
2采集數據、導入數據、查看數據信息
3數據預處理、特征提取、特征選擇
4 模型構建(建立訓練數據集和測試數據集、選擇機器學習算法、創建模型、訓練模型) 5 評估模型 6 方案實施 7 報告撰寫
4.什么是過擬合和欠擬合,產生的原因,以及解決辦法
過擬合:在訓練集上使用了一個非常復雜的模型,以至于這個模型在擬合訓練集時表現非常好,但是在測試集的表現非常差。
過擬合原因:訓練數據集樣本單一、訓練樣本噪音數據干擾過大、模型過于復雜。
過擬合解決辦法:
①在訓練和建立模型的時候,一定要從相對簡單的模型開始,不要一上來就把模型調得非常復雜、特征非常多。
②數據采樣一定要盡可能地覆蓋全部數據種類。
③在模型的訓練過程中,我們也可以利用數學手段預防過擬合現象的發生,例如:可以在算法中添加懲罰函數來預防過擬合。
欠擬合:如果模型過于簡單,對于訓練集的特點都不能完全考慮到的話,那么這樣的模型在訓練集和測試集的表現都會非常的差。
欠擬合原因:模型復雜度過低、特征量過少
欠擬合解決辦法:
①通過增加新特征來增大假設空間。
②添加多項式特征,例如將線性模型通過添加二次項或者三次項使模型泛化能力更強。
③減少正則化參數。
④使用非線性模型,比如決策樹、深度學習等模型。
⑤調整模型的容量,模型的容量是指其擬合各種函數的能力,容量低的模型可能很難擬合訓練集。
5.如何劃分數據集以及評估方法有哪幾種
評估方法就是進行劃分數據集的,應該要求測試集與訓練集之間互斥,用測試集來進行模型預測,來評估模型的分類和性能能力。
留出法:就是將整個數據集 按照某種比例進行劃分成訓練集和測試集,要注意分層對數據采樣,多次重復劃分,測試集最好保持在20-30%的數據量上
交叉驗證法:將全部數據集D分成 k個不相交的子集,進行k次訓練和測試,每次從分好的子集中里面,拿出一個子集作為測試集,其它k-1個子集作為訓練集,計算k次測試結果的平均值,作為該模型的真實結果。留一法:是交叉驗證法的一種,例如D中有m個樣本,令k=m,則每個子集僅包含一個樣本。適合小樣本數據。
自助法:假定D中包含m個樣本,通過對它進行采樣產生數據集D’,每次隨機從D中挑選一個樣本,將其拷貝放入D’中,然后再將該樣本放回D中,這個過程重復m次,則得到了包含m個樣本的數據集D’,可將D’用在訓練集,D\D’用作測試集。
6.最大似然估計(MLE)
在已經得到實驗結果(樣本)的情況下,估計滿足這個樣本分布的參數θ,使這個樣本出現概率最大的參數θ,作為真參數θ估計。即:模型已定,參數未知。要求所有的采樣都是獨立同分布的。
假定X={x1,x2,…xn},θ為模型參數,f為所使用的模型,則
L(θ|X)=f(X|θ)
求解過程:
1由總體分布推導出樣本的聯合概率密度函數(或聯合密度函數);
2通過聯合概率密度函數(或聯合密度函數)得到似然函數L(θ)。
3對似然函數取對數,再求導,令導數為0,得到似然方程,再計算極大值點,若無法求導數時,要用極大似然原則來求解。
7.最大后驗估計(MAP)
最大后驗估計是根據經驗數據,獲得對難以觀察的量的點估計。與最大似然估計不同的是,最大后驗估計融入了模型參數本身的先驗概率分布。估計過程中,需利用先驗概率和貝葉斯定理得到后驗概率,目標函數為后驗概率的似然函數,求得該似然函數最大時的參數值,即MAP的目標結果,求解過程可用梯度下降等方法進行。
假定X={x1,x2,…xn},θ為模型參數,f為所使用的模型,g為參數θ的先驗分布則
L(θ|X)=f(X|θ)g(θ)?
1確定參數的先驗分布以及似然函數
2確定參數的后驗分布函數
3將后驗分布函數轉換為對數函數,再求導,令導數為0,得到似然方程,再計算極大值點
8.MLE與MAP比較
最大后驗估計是根據經驗數據獲得對難以觀察的量的點估計,融入了要估計量的先驗分布在其中。
MLE:取似然函數最大時的參數值為該參數的估計值。MAP:取后驗函數最大時的參數值為該參數的估計值。
MLE只考慮訓練數據擬合程度沒有考慮先驗知識,把錯誤點也加入了模型中,會導致過擬合。
MAP考慮了模型的先驗分布,而MLE假設模型是均勻分布。
兩者都是為了找到參數的某一個取值,這個取值使得得到目前觀察結果的概率最大。
9.貝葉斯分類器(樸素貝葉斯分類器)
其分類原理是通過某對象的先驗概率,利用貝葉斯公式計算出其后驗概率,即該對象屬于某一類的概率,選擇具有最大后驗概率的類作為該對象所屬的類。
類結點C,其中C 的取值來自于分類集合( c1, c2, ... , cm),分類特征集合X = (x1, x2, ... , xn),則樣本D屬于類別ci的概率P(C = ci | X = x) = P(X = x | C = ci) * P(C = ci) /P(X = x)
貝葉斯最優分類器:? 補:R(c|x)=1-P(c|x) 最小化分類錯誤率
所有樸素貝葉斯分類器都假定樣本每個特征與其他特征都不相關,由指定的特征值xi,通過構造分類器f,得到所屬分類yi, 分類特征集合X = (x1, x2, ... , xn),類別集合c=(y1,y2,…,ym)。計算后驗概率:P(yi|x)=P(yi)P(x|yi)/P(x)
樸素貝葉斯分類器:
樸素貝葉斯分類器的優缺點:
若條件獨立性假設成立,則樸素貝葉斯分類器是最佳分類器
樸素貝葉斯模型有穩定的分類效率
對缺失數據不敏感,算法簡單,常用于文本分類,分類準確度高,速度快
但需要先知道先驗概率,因此在某些時候由于假設的先驗模型的原因導致預測的效果不佳
10.分類器分為哪幾種模型
判別式模型:給定x,通過直接建模P(c|x),來預測c。例如:邏輯回歸
生成式模型:先對聯合概率分布P(x|c)建模,然后由此獲得P(c|x)。例如:高斯、樸素貝葉斯
判別式模型較生成式模型方便很多,因為生成式模型需要學習一個X和Y的聯合分布,往往需要很多數據,而判別式模型需要的數據相對較少,不過生成式模型能夠提供更多的信息。若給定無限數據,條件獨立性假設成立,判別式和生成式表現相似,若不成立,則判別式優于生成式。
11.什么是線性回歸和邏輯回歸,并闡述兩者的聯系和區別,以及各自的優缺點
線性回歸:用一條高維一次曲線或曲面,去擬合變量之間的關系。利用線性回歸方程的最小平方函數對一個或多個自變量和因變量之間關系進行建模的一種回歸分析。
線性回歸模型公式:h(x)=ω1x1+ω2x2+??+ωnxn+b
{x}是模型的特征空間,ω是特征向量的權值,b是常量。
邏輯回歸:一個應用非常廣泛的機器學習分類算法,它將數據擬合到一個logit函數中,從而完成對事件發生概率的預測。
區別:
①線性回歸要求變量服從正態分布,邏輯回歸對變量分布沒有要求。
②線性回歸要求因變量是連續性數值變量,而邏輯回歸要求因變量是分類型變量。
③線性回歸要求自變量和因變量呈線性關系,而邏輯回歸不要求自變量和因變量呈線性關系
④邏輯回歸是分析因變量取某個值的概率與自變量的關系,而線性回歸是直接分析因變量與自變量的線性關系
⑤線性回歸優化的目標函數是均方誤差(最小二乘法),而邏輯回歸優化的是似然函數
⑥邏輯回歸處理的是分類問題,線性回歸處理的是回歸問題,這也導致了兩個模型的取值范圍不同:0-1和實數域
聯系:
①兩個都是線性模型,線性回歸是普通線性模型,邏輯回歸是廣義線性模型
②表達形式上,邏輯回歸是線性回歸套上了一個Sigmoid函數
線性回歸優缺點:
優點:
①思想簡單,實現容易,建模迅速,模型容易理解,對于小數據量、簡單的關系很有效。
②是許多強大的非線性模型的基礎。
③能解決回歸問題。
缺點:
①對于非線性數據或者數據特征間具有相關性多項式回歸難以建模.
②難以很好地表達高度復雜的數據,容易欠擬合。
邏輯回歸優缺點:
優點:
①訓練速度快,分類的時候,計算量僅僅只和特征的數目相關
②簡單易理解,模型的可解釋性非常好
③適合二分類問題,不需要縮放輸入特征
缺點:
①不能用LR去解決非線性問題
②對多重共線性數據較為敏感
③很難處理數據不平衡問題
④準確率并不是很高,因為形式非常簡單,很難去擬合數據的真實分布
12.參數模型與非參數模型
參數模型:通常假設總體服從某個分布,這個分布可以由一些參數確定,如正態分布由均值和標準差確定,在此基礎上構建的模型稱為參數模型。
常見的參數機器學習模型有:邏輯回歸、線性回歸、感知機
優點:
1、簡潔:理論容易理解和解釋結果。
2、快速:參數模型學習和訓練的速度都很快。
3、數據更少:通常不需要大量的數據,在對數據的擬合不很好時表現也不錯。
局限性:
1、拘束:以指定的函數形式來指定學習方式。
2、有限的復雜度:通常只能應對簡單的問題。
3、擬合度小:實際中通常無法和潛在的目標函數完全吻合,也就是容易出現欠擬合。
非參數模型:對目標函數形式不做過多的假設,因此算法可以通過對訓練數據進行擬合而學習出某種形式的函數。
常見的非參數機器學習模型有:決策樹、素貝葉斯、持向量機、經網絡
優點:
1、可變性:可以擬合許多不同的函數形式。
2、模型強大:對于目標函數不做假設或者作出很小的假設。
3、表現良好:對于訓練樣本數據具有良好的擬合性。
局限性:
1、需要更多數據:對于擬合目標函數需要更多的訓練數據。
2、速度慢:因為需要訓練跟多的參數,所以訓練過程通常比較慢。
3、過擬合:有較高的風險發生過擬合,對于預測的效果解釋性不高。
11.極大似然估計
已知某個隨機樣本滿足某種概率分布,但是其中具體的參數不清楚,參數估計就是通過若干次試驗,觀察其結果,利用結果推出參數的大概值。
令Dc表示訓練集D中第c類樣本組成的集合,假設這些樣本是獨立同分布的,則參數θc對于數據集Dc似然是P(Dc|θc)=
對數似然LL(θc)=log P(Dc|θc)=
此時θc的極大似然估計=arg max LL(θc)
13.獨立同分布
隨機過程中,任何時刻的取值都為隨機變量,如果這些隨機變量服從同一分布,并且互相獨立,那么這些隨機變量是獨立同分布。如隨機變量X1和X2獨立,是指X1的取值不影響X2的取值,X2的取值也不影響X1的取值且隨機變量X1和X2服從同一分布,這意味著X1和X2具有相同的分布形狀和相同的分布參數。
14.BP算法
BP算法:由學習過程由信號的正向傳播與誤差的反向傳播兩個過程組成。
BP算法的基本思想是:學習過程由信號的正向傳播與誤差的反向傳播兩個過程組成。正向傳播時,輸入樣本從輸入層傳入,經各隱層逐層處理后,傳向輸出層。若輸出層的實際輸出與期望的輸出(教師信號)不符,則轉入誤差的反向傳播階段。誤差反傳是將輸出誤差以某種形式通過隱層向輸入層逐層反傳,并將誤差分攤給各層的所有單元,從而獲得各層單元的誤差信號,此誤差信號即作為修正各單元權值的依據。這種信號正向傳播與誤差反向傳播的各層權值調整過程,是周而復始地進行的。權值不斷調整的過程,也就是網絡的學習訓練過程。此過程一直進行到網絡輸出的誤差減少到可接受的程度,或進行到預先設定的學習次數為止。
BP學習過程:
(1)組成輸入模式由輸入層經過隱含層向輸出層的“模式順傳播”過程。
(2)網絡的期望輸出與實際輸出之差的誤差信號由輸出層經過隱含層逐層休整連接權的“誤差逆傳播”過程。
(3)由“模式順傳播”與“誤差逆傳播”的反復進行的網絡“記憶訓練”過程。
(4)網絡的總體誤差趨向極小值的“學習收斂”過程。
BP算法不足:
(1)訓練時間較長。對于某些特殊的問題,運行時間可能需要幾個小時甚至更長,可以采用自適應的學習率加以改進。
(2)易陷入局部極小值。這主要是因為BP算法所采用的是梯度下降法,不同的起始點可能導致不同的極小值產生,即得到不同的最優解。
(3)訓練過程中,學習新樣本時有遺忘舊樣本的趨勢。
(4)梯度越來越稀疏,從頂層越往下,誤差校正信號越來越小,梯度擴散
(5)通常,算法只能用于有標簽的數據訓練,但大部分數據是沒有標簽的
15.多層神經網絡一般由哪些層組成,每層(節點)什么含義
在神經網絡中,處理單元通常按層次分布于神經網絡的輸入層、隱含層和輸出層
輸入層:接受與處理訓練數據集中的各輸入變量值
隱含層:實現非線性數據的線性變換
輸出層:給出輸出變量的分類或預測結果
16.介紹L2正則化與L1正則化及區別
17.集成學習,Bagging與Boosting方法及兩者區別
集成學習:就是將多個個體學習器用某種策略組合起來成為強學習器,通常個體學習器是由已有的學習算法從訓練數據中學習產生的。有同質集成和異質集成。同質集成,即集成中只包含同種類型的個體學習器,這些個體學習器亦被稱為基學習器,產生這些基學習器的學習算法叫作基學習算法。異質集成,即集成中的個體學習器由不同的學習算法生成。
Bagging:是一種并行集成算法。該算法的思想是分別構造多個基學習器(弱學習器),多個基學習器相互之間是并行的關系,通過自助采樣法進行訓練,最終將多個基學習器結合。對分類問題采用投票方式,對回歸問題采用簡單平均方法對新示例進行判別。
Baggingt特點:
①訓練集是在原始集中有放回選取的,從原始集中選出的各輪訓練集之間是獨立的
②使用均勻取樣,每個樣例的權重相等
③所有預測函數的權重相等。
④各個預測函數可以并行生成
⑤趨于降低方差,使模型更穩定
Boosting:是一種迭代算法。每輪迭代中會在訓練集上產生一個新的分類器,然后使用該分類器對所有樣本進行分類,以評估每個樣本的重要性。Boosting算法要涉及到兩個部分,加法模型和前向分步算法。加法模型就是說強分類器由一系列弱分類器線性相加而成。前向分步就是說在訓練過程中,下一輪迭代產生的分類器是在上一輪的基礎上訓練得來的。
Boosting特點:
①每一輪的訓練集不變,只是訓練集中每個樣例在分類器中的權重發生變化。而權值是根據上一輪的分類結果進行調整。
②根據錯誤率不斷調整樣例的權值,錯誤率越大則權重越大。
③每個弱分類器都有相應的權重,對于分類誤差小的分類器會有更大的權重。
④各個預測函數只能順序生成,因為后一個模型參數需要前一輪模型的結果。
⑤趨于降低偏差,模型準確率更高。
18.支持向量機與感知機,及兩者的區別與聯系
感知機:
二維空間中找到一條直線可以把所有二元類別分離開,三維或多維空間中,找到一個分離超平面把所有二元類別分離開。
f(x)=sign(wx+b) 將f(x)稱為感知機,w,b分別為該感知機的權值和偏置,sign是符號函數,有兩種輸出結果
定義損失函數:??(M為誤分類點集合)
補:多層感知機:除了輸入和輸出層之外,它中間可以有多個隱含層。
支持向量機:
是一種二分類監督學習模型,定義在特征空間上間隔最大的線性模型。
分類決策函數:
區別:
感知機,只需要找到可以將數據正確劃分的超平面即可,而SVM需要找到間隔最大的超平面將數據劃分開,感知機超平面無數個,而SVM只有一個
19.偏差和方差
偏差:學習算法的期望預測與真實結果的偏離程度,刻畫了學習算法本身的擬合能力。,偏差越小,擬合越好,小到一定程度會發生過擬合。
方差:度量了同樣大小的訓練集的變動所導致的學習性能的變化,刻畫了數據擾動所造成的影響。
,方差越大,數據分布越分散。
20.交叉驗證及存在的問題
將數據集隨機劃分成k類,每類作為一個測試集,剩余k-1個類作為訓練集,交替作為測試集,計算k次,求每次的均方誤差。
留一法是一種特殊的交叉驗證方式。如果樣本容量為n,則k=n,進行n折交叉驗證,每次留下一個樣本進行驗證。主要針對小樣本數據。
存在k值確定的問題:
選擇的k值大,誤差估計的偏差很小,但誤差估計的方差很大,計算時間非常大。
選擇的k值小,誤差估計的偏差很大,但計算量小,時間短,誤差估計的方差小。
21.決策樹
決策過程:
決策樹學習的算法通常是一個遞歸地選擇最優特征,并根據該特征對訓練數據進行分割,使得各個子數據集有一個最好的分類的過程。每個內部節點表示一個屬性上的測試,每個分支代表一個測試輸出,每個葉節點代表一種類別。
開始,構建根節點,將所有訓練數據都放在根節點,選擇一個最優特征,按著這一特征將訓練數據集分割成子集,使得各個子集有一個在當前條件下最好的分類。
如果這些子集已經能夠被基本正確分類,那么構建葉節點,并將這些子集分到所對應的葉節點去。
如果還有子集不能夠被正確的分類,那么就對這些子集選擇新的最優特征,繼續對其進行分割,構建相應的節點,如果遞歸進行,直至所有訓練數據子集被基本正確的分類,或者沒有合適的特征為止。
每個子集都被分到葉節點上,即都有了明確的類,這樣就生成了一顆決策樹。
優點:
①決策樹可以完美的對訓練集進行分類,每個實例都有一個完美的葉節點
②能夠同時處理數據型和常規型屬性
③便于理解和解釋,能夠可視化
④對缺失值不敏感
缺點:
①泛化能力差,不能很好的推廣到新的例子
②對連續性字段比較難預測
③當類別過多,錯誤可能就會增加的比較快
簡單化決策樹:
預剪枝:在決策樹生成過程中,對每個結點在劃分前先進行評估,若當前結點的劃分不能帶來決策樹泛化性能提升,則停止劃分并將當前結點標記為葉結點。
后剪枝:先從訓練集生成一棵完整的決策樹,然后自底向上的對非葉結點進行考察,若將該結點對應的子樹替換為葉結點能帶來決策樹泛化性能提升,則將該子樹替換為葉結點。
22.損失函數有哪些,風險函數有哪些,哪些算法用這些函數
23. 怎樣去度量一個算法學習生成的模型是好是壞
采用性能度量來評判一個模型的泛化能力是好是壞。
TP:本來是正樣本,被模型預測為正樣本。
TN:本來是負樣本,被模型預測為負樣本。
FP:本來是負樣本,被模型預測為正樣本。
FN:本來是正樣本,被模型預測為負樣本。
正確率也即準確率:識別對了的正例(TP)與負例(TN)占總識別樣本的比例。A=(TP+ TN)/S
錯誤率:識別錯了的正例(FP)與負例(FN)占總識別樣本的比例。E=( FP+FN)/S
精度:識別對了的正例(TP)占識別出的正例的比例。P=TP/(TP+ FP)
召回率:識別對了的正例(TP)占實際總正例的比例。R=TP/(TP+ FN)
24.線性回歸怎么去進行求解,哪兩種辦法,分別簡述過程及原理,并給出兩種方法之間的聯系與區別
求解使用梯度下降和正規方程法
梯度下降:
梯度下降法是一種迭代算法。選取適當的初值x(0),不斷迭代,在迭代的每一步,以負梯度方向更新x的值,進行目標函數的極小化,直到收斂。
過程:當變量的大小相差很大時,應先預處理,對特征值進行縮放,使得他們的值盡可能在同一范圍,這樣做能收斂的快些。①首先對θ隨機賦初值。②改變θ值,使得J(θ)按梯度下降方向減小。線性回歸的梯度下降僅有一個全局最優,沒有其他局部最優。因為損失函數J(θ)是凸二次函數,這里梯度下降一直收斂直到最小。
正規方程:
梯度下降算法需要經過多次迭代,最后達到收斂。而正規方程法,提供了一種求解最優 θ的解析算法,不需要迭代,而直接一次性求出θ的最優解。
過程:只需要對J(θ)函數對每個θ求偏導,求出每個θ j使得偏導等于0。這些解組合成對應的向量θ就是最優解。
在推導過程中推出一個結果公式:θ=
區別:
梯度下降算法有時需要我們對特征值進行適當的縮放,正規方程不需要特征縮放。
梯度下降算法需要我們自己選擇適當的學習率α ,且需要多次的迭代運算。而正規方程并不需要。
相比梯度下降,當n不是很大時,正規方程得到結果更快一些,梯度下降更適合特征變量很多的情況.
25.KNN
KNN算法的核心思想是,如果一個樣本在特征空間中的K個最相鄰的樣本中,大多數都屬于某一個類別,則該樣本也屬于這個類別,并具有這個類別上樣本的特性。KNN方法在類別決策時,只與極少量的相鄰樣本有關。由于KNN方法主要靠周圍有限的鄰近的樣本,而不是靠判別類域的方法來確定所屬類別的,因此對于類域的交叉或重疊較多的待分類樣本集來說,KNN方法較其他方法更為適合。
①計算測試數據與各個訓練數據之間的距離;
②按照距離的遞增關系進行排序;
③選取距離最小的K個點;
④確定前K個點所在類別的出現頻率;
⑤返回前K個點中出現頻率最高的類別作為測試數據的預測分類。
優點:簡單有效、重新訓練代價低、算法復雜度低、適合類域交叉樣本、適用大樣本自動分類
缺點:惰性學習、類別分類不標準化、輸出可解釋性不強、不均衡性、計算量較大
26.最小二乘法
是一種求解無約束最優化問題的常用方法,并且也可以用于曲線擬合,來解決回歸問題。最小二乘法實質就是最小化“均方誤差”。
f(xi)=wxi+b
(w*,b*)=arg min
27.密度估算有哪幾種,分別講述
在使用核密度估計時,如果帶寬設置過小,會出現過擬合的現象,如果帶寬設置過大,會出現欠擬合的現象,因此需要確定好最佳的帶寬。
補充:
1.超參數
是指模型在開始學習過程之前人為指定的參數,而不是通過訓練得到的參數數據。例如:樹的深度、學習率、深層神經網絡中隱藏層的數量等。
2.線性可分
給定一個數據集T={(xi,yi)},其中,,i=1,2,……,N。如果存在一個超平面S,使得,能夠將數據集的正實例點和負實例點完全正確地劃分到超平面的兩側,即對所有的的實例i,有,對所有的的實例i,有,則稱數據集T為線性可分數據集。
3.感知機(補充)
感知機是二分類的線性模型,其輸入是實例的特征向量,輸出的是事例的類別,分別是+1和-1,屬于判別模型,要求訓練數據集是線性可分的。
4.支持向量機(補充)
線性可分支持向量機:當訓練樣本線性可分時,通過硬間隔最大化,學習一個線性分類器。
線性支持向量機:當訓練數據近似線性可分時,引入松弛變量,通過軟間隔最大化,學習一個線性分類器。
非線性支持向量機:當訓練數據線性不可分時,通過使用核技巧及軟間隔最大化。
5.梯度下降(補充)
目標函數:
參數θ更新公式:
批量梯度下降法:是梯度下降法的基本類型,這種方法使用整個數據集去計算代價函數的梯度。該方法迭代慢,并且很難處理不能載入內存的數據集,每次迭代都是朝梯度下降的方向。
隨機梯度下降法:在每次迭代僅選擇一個訓練樣本去計算代價函數的梯度,然后更新參數。即使是大規模數據集,隨機梯度下降法也會很快收斂。但每次迭代不一定都是朝梯度下降的方向,所以準確性可能不會是最好的,同時,迭代次數較多。
小批量梯度下降法:小批量梯度下降是首選方法,因為它結合了前兩種方法。它只是將訓練數據集拆分成小批量(m個訓練樣本),在每次迭代中僅使用m個訓練樣本去計算代價函數的梯度,并為每個批量執行更新。因此,它平衡了隨機梯度下降的穩健性和批量梯度下降的效率。
6.方差、均方誤差、標準差
方差是各數據偏離平均值差值的平方和的平均數。
均方誤差是各數據偏離真實值差值的平方和的平均數。
標準差是方差的算術平方根,刻畫了數據的離散程度或波動幅度,標準差越大,數據的離散程度越大;標準差越小,數據的離散程度越小。
7.二元分類器
在一類分類任務中,輸出兩個互斥類別中的一個。例如,一個評估郵件信息,輸出垃圾郵件或非垃圾郵件的機器學習模型就是一個二元分類器。輸出結果是0或1。
8.激活函數
在多層神經網絡中,上層節點的輸出和下層節點的輸入之間具有一個函數關系,這個函數稱為激活函數
使用激活函數的作用:
如果不用激活函數,每一層輸出都是上層輸入的線性函數,無論神經網絡有多少層,輸出都是輸入的線性組合。
如果使用的話,激活函數給神經元引入了非線性因素,使得神經網絡可以任意逼近任何非線性函數,這樣神經網絡就可以應用到眾多的非線性模型中。
激活函數需要具備以下幾點性質:
①連續并可導(允許少數點上不可導)的非線性函數。可導的激活函數可以直接利用數值優化的方法來學習網絡參數。
②激活函數及其導函數要盡可能的簡單,有利于提高網絡計算效率。
③激活函數的導函數的值域要在一個合適的區間內,不能太大也不能太小,否則會影響訓練的效率和穩定性。
常用的激活函數:
Sigmoid:
是常用的非線性的激活函數,它的數學形式如下:
特點:
它能夠把輸入的連續實值變換為0和1之間的輸出,特別的,如果是非常大的負數,那么輸出就是0;如果是非常大的正數,輸出就是1.
缺點:
①在深度神經網絡中梯度反向傳遞時導致梯度爆炸和梯度消失,其中梯度爆炸發生的概率非常小,而梯度消失發生的概率比較大。
②Sigmoid 的output 不是0均值。這是不可取的,因為這會導致后一層的神經元將得到上一層輸出的非0均值的信號作為輸入。
③其解析式中含有冪運算,計算機求解時相對來講比較耗時。對于規模比較大的深度網絡,這會較大地增加訓練時間。
tanh函數:
函數解析式:
為雙曲正切曲線,過(0,0)點
優點:
函數輸出以(0,0)為中心
收斂速度相對于Sigmoid更快
缺點:
tanh并沒有解決sigmoid梯度消失的問題
ReLU函數:
f(x)=max(0,x);
優點:
①在輸入為正數的時候,不存在梯度飽和問題。
②計算速度要快很多。ReLU函數只有線性關系,不管是前向傳播還是反向傳播,都比sigmod和tanh要快很多。
缺點:
①當輸入是負數的時候,ReLU是完全不被激活的。這樣在前向傳播過程中,有的區域是敏感的,有的是不敏感的。但是到了反向傳播過程中,輸入負數,梯度就會完全到0。
②我們發現ReLU函數的輸出要么是0,要么是正數,這也就是說,ReLU函數也不是以0為中心的函數。
9. K-means算法
K-means算法的思想:對于給定的樣本集,按照樣本之間的距離大小,將樣本集劃分為K個簇。讓簇內的點盡量緊密的連在一起,而讓簇間的距離盡量的大。
算法執行過程:
選擇常數K,隨機選擇K個樣本點,每個樣本點初始地代表一個類的平均值或簇中心;
對剩余每個數據樣本點,根據其到類中心的距離,被劃分到最近的類;
重新計算每個簇的平均值來更新每個簇中心;
重復這個過程,直到所有樣本都不能再分配為止;
返回K中心。
K-means優點:
①原理簡單,模型的可解釋性較強,適用于常規不相交的簇。
②收斂相對較快。
③聚類效果較優。
K-means缺點
①需要提前指定 K 的值。
②可能會收斂到局部最優點。在實踐中,嘗試不同的初始中心點, 從中挑選最好的結果。
③可能對噪聲數據和異常值敏感。
④對于不是凸的數據集比較難收斂。
⑤如果各隱含類別的數據不平衡,例如:各隱含類別的方差不同,則聚類效果不佳。
K-means和KNN比較
K-means是無監督學習的聚類算法,沒有樣本輸出;而KNN是監督學習的分類算法,有對應的類別輸出。KNN基本不需要訓練,對測試集里面的點,只需要找到在訓練集中最近的k個點,用這最近的k個點的類別來決定測試點的類別。而K-means則有明顯的訓練過程,找到k個類別的最佳質心,從而決定樣本的簇類別。
當然,兩者也有一些相似點,兩個算法都包含一個過程,即找出和某一個點最近的點。兩者都利用了最近鄰的思想。
10.誤差反向傳播算法
?
11.泛化錯誤、訓練錯誤、性能度量
泛化誤差:在新樣本或測試集中產生的誤差
訓練誤差:學習器在訓練集中產生的誤差
性能度量:是衡量模型泛化能力的評價標準,反映了任務需求。
12.貝葉斯文本分類
文本都是由多個詞語所構成的,將文本進行分詞得到多個文本的特征項(詞語)。
設X={a1,a2,……,am}為一個待分類項,X為將文本進行分詞得到的多個文本的特征項集合,每個ai為X的一個特征屬性(詞語)。
設類別集合C={y1,y2,……,yn}
計算P(y1|X),P(y2|X),……,P(yn|X)
根據貝葉斯公式
取max{P(y1|X),P(y2|X),……,P(yn|X)},作為X所屬的類別。
例題:
13.樸素貝葉斯與邏輯回歸的區別
①樸素貝葉斯是一個生成模型,邏輯回歸是一個判別模型(可以再解釋下生成式模型與判別式模型)
②樸素貝葉斯是建立在條件獨立性假設的基礎之上的。因此,樸素貝葉斯可以不使用梯度下降,而直接通過統計每個特征的邏輯發生比來當做權重。邏輯回歸的條件獨立假設并不成立,所以,需要通過梯度下降法,來得到特征之間的耦合信息,從而得到相應的權重。邏輯回歸實際上是用線性回歸模型的預測結果去逼近后驗概率的邏輯發生比。
③樸素貝葉斯:不需要優化參數,先用極大似然估計法估計出先驗概率P(y)和條件概率P(x|y),然后計算出極大后驗概率P(y|x)。邏輯回歸:需要優化參數,先用極大似然估計法得出損失函數,再用梯度下降法等優化參數。
以下為對序號②的解釋:
14.多項式回歸
研究一個因變量與一個或多個自變量間多項式的回歸分析方法,稱為多項式回歸。
如果自變量只有一個時,稱為一元多項式回歸。f(x)=w0+w1x+w2x2+…+wmxm
如果自變量有多個時,稱為多元多項式回歸。f(x)=w0+w1x1+ w2x2+w3x12+ w4x22…
15.高斯分布學習
高斯分布公式:
在后驗估計下高斯分布的均值與方差
16.非線性回歸
非線性回歸算法屬于有監督的回歸學習算法。非線性回歸算法就是將非線性回歸轉化為線性回歸,再按照線性回歸求解。例如:y-a+b*lnx,令v=lnx,u=y,則u=a+b*v。線性回歸通常采用給定的函數值與模型預測值之差的平方和最小為損失函數, 并使用最小二乘法和梯度下降法來計算最終的擬合參數。自變量與因變量之間的函數表達式的非線性體現在至少有一個變量的指數不是1。
邏輯回歸分類算法的核心步驟如下:
①確定變換函數,將非線性回歸轉化為線性回歸;
②構造 predict 函數,采用n維線性函數;
③構造 loss 函數, 給定的函數值與模型預測值之差的平方和最小;
④使用最小二乘法和梯度下降法計算最終的擬合參數;
⑤反復迭代優化最終的擬合參數;
⑥輸出最終的擬合參數
17.模型選擇
在實際機器學習的應用中,我們常常需要反復調試和比較不同的參數設置以提高模型在新數據集上的預測性能,這一調參優化的過程就被稱為模型的選擇。
holdout 方法進行模型選擇:
將數據集劃分為:訓練集、驗證集、測試集
重復地使用驗證集來評估模型的參數,對其性能做出評價。一旦我們對參數值滿意,我們就將使用測試集來評估模型的泛化誤差。holdout 方法的弊端在于性能的評估對訓練集和測試集的分割比例較為敏感。
K交叉驗證(參考前面)
結構風險最小化:
復雜性正則化:
信息標準:AIC:C(f)=#parameters? ? BIC:C(f)=#parameters*logn
最小描述長度:MDL
18.最小二乘法和最大似然估計以及正則化最小二乘法和最大后驗估計
19.ROC曲線
TPR(真正例率):真實值是正例,且預測為正例的比例
FPR(假正例率):真實值為負例,而預測為正例的比例
ROC曲線就是以TPR為Y軸,以FPR為X軸,然后以一個對不同的預測值進行分類.
當取不同閾值時會得到不同的TPR和FPR,對應于ROC曲線上的一個點。
那么ROC曲線就反映了FPR與TPR之間動態關系的情況。
通俗地來說,即在TPR隨著FPR遞增的情況下,誰增長得更快,快多少的問題。
TPR增長得越快,曲線越往上曲,反映了模型的分類性能就越好。
當正負樣本不平衡時,這種模型評價方式比起一般的精確度評價方式的好處尤其顯著。
文檔完整電子版
https://download.csdn.net/download/qq_42368540/68205608
總結
以上是生活随笔為你收集整理的机器学习期末简答总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 比特率 Kbps kbit/s 1K
- 下一篇: 学海无涯之程序员