林軒田_機器學習技法 Machine Learning Techniques
本堂課將著重在揭露具有三種不同「特徵轉換」方式的Models。Kernel Model的「特徵轉換」是將非線性Features擴張到無窮多個;Aggregation Model的「特徵轉換」是產生出有
內容簡介
作者介紹
適合人群
你將會學到什麼
購買須知
-
Lecture 1:Linear SVM
在本課程中機器學習基石課程中所講到的基本工具,將其延伸成複雜實用的模型。
-
Linear Support Vector Machine (SVM) :: Course Introduction
在本課程中機器學習基石課程中所講到的基本工具,將其延伸成複雜實用的模型。主要圍繞特徵轉換的3個方向展開: 1.如果有很多特徵轉換要使用的時候如何應用特徵轉換,更重要的是這麼多的特徵轉換可能會有復雜度的問題,怎麼控制複雜度的問題,這樣的想法刺激了 SVM 的發展。 2.能否找到一些具有預測性的特徵,找出來之後能否將這些特徵混合起來,讓整個模型有更好的表現,這樣的想法刺激了 AdaBoost 算法的發展。 3.如果資料中有隱藏的特徵,那麼機器怎樣將這些特徵學習出來讓機器的想法更好,這樣的想法刺激了早年的類神經網絡的發展,近年來發展成為深度學習。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/201_handout.pdf
-
Large-Margin Separating Hyperplane
回顧之前介紹的 linear classification,對於線性可分的情況,可以使用 PLA/pocket 算法在平面或者超平面上把正負類分開。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/201_handout.pdf
-
Standard Large-Margin Problem
要讓 margin 最大,即讓離分類線最近的點到分類線距離最大,要先來看一下如何計算點到分類線的距離。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/201_handout.pdf
-
Support Vector Machine
線性 SVM 算法可以總結為三步: 1.計算對應的二次規劃參數 Q,p,A,c 2.根據二次規劃庫函數,計算 b,w 3.將 b 和 w 代入 gSVM,得到最佳分類面 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/201_handout.pdf
-
Reasons behind Large-Margin Hyperplane
本節課主要介紹了線性支持向量機(Linear Support Vector Machine)。先從視覺角度出發,希望得到一個比較“胖”的分類面,即滿足所有的點距離分類面都盡可能遠。然後,通過一步步推導和簡化,最終把這個問題轉換為標準的二次規劃(QP)問題。二次規劃問題可以使用 Matlab 等軟件來進行求解,得到要求的 w 和 b,確定分類面。這種方法背後的原理其實就是減少了 dichotomies(二分法)的種類,減少了有效的 VC Dimension 數量,從而讓機器學習的模型具有更好的泛化能力。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/201_handout.pdf
-
-
Lecture 2:Dual Support Vector Machine
本節課將從另一個方面入手,研究對偶支持向量機(Dual Support Vector Machine),嘗試從新的角度計算得出分類線,推廣SVM 的應用範圍。
-
Motivation of Dual SVM
上節課主要介紹了線性支持向量機(Linear Support Vector Machine)。 Linear SVM 的目標是找出最“胖”的分割線進行正負類的分離,方法是使用二次規劃來求出分類線。本節課將從另一個方面入手,研究對偶支持向量機(Dual Support Vector Machine),嘗試從新的角度計算得出分類線,推廣 SVM的應用範圍。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/202_handout.pdf
-
Largange Dual SVM
將SVM問題轉化為與拉格朗日因子αn有關的最大最小值形式 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/202_handout.pdf
-
Solving Dual SVM
已經得到了 dual SVM 的簡化版了,接下來,將繼續對它進行一些優化。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/202_handout.pdf
-
Messages behind Dual SVM
回憶一下,上一節課中,把位於分類線邊界上的點稱為 support vector(candidates)。本節課前面介紹了 αn>0 的點一定落在分類線邊界上,這些點稱之為 support vector(注意沒有candidates)。也就是說分類線上的點不一定都是支持向量,但是滿足 αn>0 的點,一定是支持向量。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/202_handout.pdf
-
-
Lecture 3:Kernel Support Vector Machine
上節課的最後,提到 dual SVM 的計算過程其實跟 d^ 還是有關係的。那麼,能不能完全擺脫對 d^ 的依賴,從而減少 SVM 計算量呢?這就是本節課所要講的主要內容。
-
Kernel Trick
這種引入 kernel function 的 SVM 稱為 kernel SVM,它是基於 dual SVM 推導而來的。 kernel SVM 同樣只用 SV(αn>0)就能得到最佳分類面,而且整個計算過程中擺脫了 d^ 的影響,大大提高了計算速度。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/203_handout.pdf
-
Polynomial Kernel
剛剛通過一個特殊的二次多項式導出了相對應的 kernel,其實二次多項式的 kernel 形式是多種的。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/203_handout.pdf
-
Gaussian Kernel
剛剛介紹的 Q 階多項式 kernel 的階數是有限的,即特徵轉換的 d^ 是有限的。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/203_handout.pdf
-
Comparison of Kernels
本節課主要介紹了 Kernel Support Vector Machine。首先,將特徵轉換和計算內積的操作合併到一起,消除了 d^ 的影響,提高了計算速度。然後,分別推導了 Polynomial Kernel 和 Gaussian Kernel,並列舉了各自的優缺點並做了比較。對於不同的問題,應該選擇合適的核函數進行求解,以達到最佳的分類效果。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/203_handout.pdf
-
-
Lecture 4:Soft-Margin Support Vector Machine
本節課將介紹一種 Soft-Margin SVM,目的是讓分類錯誤的點越少越好,而不是必須將所有點分類正確,也就是允許有 noise 存在。這種做法很大程度上不會使模型過於復雜,不會造成過擬合,而且分類效果是令人滿意的。
-
Motivation and Primal
上節課說明了一點,就是 SVM 同樣可能會造成 overfit。原因有兩個,一個是由於 SVM 模型(即 kernel)過於復雜,轉換的維度太多,過於powerful 了;另外一個是由於堅持要將所有的樣本都分類正確,即不允許錯誤存在,造成模型過於復雜。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/204_handout.pdf
-
Dual Problem
接下來,將推導Soft-Margin SVM的對偶dual形式,從而讓QP計算更加簡單,並便於引入kernel算法。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/204_handout.pdf
-
Messages
推導完Soft-Margin SVM Dual的簡化形式後,就可以利用QP,找到Q,p,A,c對應的值,用軟體開發套件得到αn的值。或者利用核函數的方式,同樣可以簡化計算,優化分類效果。 Soft-Margin SVM Dual計算αn的方法過程與Hard-Margin SVM Dual的過程是相同的。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/204_handout.pdf
-
Model Selection
本節課主要介紹了Soft-Margin SVM。出發點是與Hard-Margin SVM不同,不一定要將所有的樣本點都完全分開,允許有分類錯誤的點,而使margin比較寬。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/204_handout.pdf
-
-
Lecture 5:Kernel Logistic Regression
本節課將把 Soft-Margin SVM 和我們之前介紹的 Logistic Regression 聯繫起來,研究如何使用 kernel 技巧來解決更多的問題。
-
Soft-Margin SVM as Regularized
為了允許有錯誤點的存在(或者 noise),也為了避免模型過於復雜化,造成過擬合,建立了 Soft-Margin Primal 的數學表達式,並引入了新的參數 C作為權衡因子,然後也推導了其 Soft-Margin Dual 形式。因為 Soft-Margin Dual SVM 更加靈活、便於調整參數,所以在實際應用中,使用 Soft-Margin Dual SVM 來解決分類問題的情況更多一些。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/205_handout.pdf
-
SVM versus Logistic Regression
可以看出,求解regularized logistic regression的問題等同於求解soft-margin SVM的問題。反過來,如果我們求解了一個soft-margin SVM的問題,那這個解能否直接為regularized logistic regression所用?來預測結果是正類的機率是多少,就像regularized logistic regression做的一樣。我們下一小節將來解答這個問題。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/205_handout.pdf
-
SVM for Soft Binary
接下來,將探討如何將SVM的結果應用在Soft Binary Classification中,得到是正類的概率值。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/205_handout.pdf
-
Kernel Logistic Regression
本節課主要介紹了 Kernel Logistic Regression。首先把 Soft-Margin SVM 解釋成 Regularized Model,建立二者之間的聯繫,其實 Soft-Margin SVM 就是一個 L2-regularization,對應著 hinge error messure。然後利用它們之間的相似性,討論瞭如何利用 SVM 的解來得到 Soft Binary Classification。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/205_handout.pdf extended reading: 1.Kernel Logistic Regression and the Import Vector Machine (Zhu and Hastie) http://papers.nips.cc/paper/2059-kernel-logistic-regression-and-the-import-vector-machine.pdf 2.A Note on Platt's Probabilistic Outputs for Support Vector Machines (Lin, Weng and Lin) https://www.csie.ntu.edu.tw/~htlin/paper/doc/plattprob.pdf
-
-
Lecture 6:Support Vector Regression
本節課將延伸上節課的內容,討論如何將 SVM 的 kernel 技巧應用到 regression 問題上。
-
Kernel Ridge Regression
首先回顧一下上節課介紹的 Representer Theorem,對於任何包含正則項的 L2-regularized linear model,它的最佳化解 w 都可以寫成是z的線性組合形式,因此,也就能引入 kernel 技巧,將模型 kernelized 化。 影片內容 pdf: https://www.csie.ntu.edu.tw/~htlin/course/mltech17spring/doc/206_handout.pdf
-
Support Vector Regression Primal
在機器學習基石課程中介紹過 linear regression 可以用來做 classification,那麼上一部分介紹的 kernel ridge regression 同樣可以來做 classification。我們把 kernel ridge regression 應用在 classification 上取個新的名字,叫做 least-squares SVM(LSSVM)。 影片內容 pdf: https://www.csie.ntu.edu.tw/~htlin/course/mltech17spring/doc/206_handout.pdf
-
Support Vector Regression Dual
已經得到了 SVR 的 primal 形式,接下來將推導 SVR 的 Dual 形式。 影片內容 pdf: https://www.csie.ntu.edu.tw/~htlin/course/mltech17spring/doc/206_handout.pdf
-
Summary of Kernel Models
本節課主要介紹了 SVR,先通過 representer theorem 理論,將 ridge regression 轉化為 kernel 的形式,即 kernel ridge regression,並推導了 SVR的解法。但是得到的解法是 dense 的,大部分為非零值。所以,定義新的 tube regression,使用 SVM 的推導方法,來最小化 regularized tube errors,轉化為對偶形式,得到了 sparse 的解法。 影片內容 pdf: https://www.csie.ntu.edu.tw/~htlin/course/mltech17spring/doc/206_handout.pdf extended reading: 1.SVM versus Least Squares SVM (Ye and Xiong) http://proceedings.mlr.press/v2/ye07a/ye07a.pdf 2.A Tutorial on Support Vector Regression (Smola and Scholkopf) http://www.svms.org/regression/SmSc98.pdf
-
-
Lecture 7:Blending and Bagging
本節課開始,講介紹 Aggregation Models,即如何將不同的 hypothesis 和 features 結合起來,讓模型更好。本節課將介紹其中的兩個方法,一個是 Blending,一個是 Bagging。
-
Motivation of Aggregation
之前在機器學習基石課程中就介紹過,feature transform 和 regularization 是對立的,還把它們分別比作踩油門和踩剎車。如果進行 feature transform,那麼 regularization 的效果通常很差,反之亦然。也就是說,單一模型通常只能傾向於 feature transform 和 regularization 之一,在兩者之間做個權衡。但是 aggregation 卻能將 feature transform 和 regularization 各自的優勢結合起來,好比把油門和剎車都控制得很好,從而得到不錯的預測模型。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/207_handout.pdf
-
Uniform Blending
對於已經選擇的性能較好的一些矩 gt,如何將它們進行整合、合併,來得到最佳的預測模型呢?這個過程稱為 blending。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/207_handout.pdf
-
Linear and Any Blending
上一部分講的是uniform blending,即每個gt所佔的權重都是1,求平均的思想。下面將介紹linear blending,每個gt賦予的權重αt並不相同,其中αt ≥0。最終得到的預測結果等於所有gt的線性組合。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/207_handout.pdf
-
Bagging (Bootstrap Aggregation)
本節課主要介紹了 blending 和 bagging 的方法,它們都屬於 aggregation,即將不同的 gt 合併起來,利用集體的智慧得到更加優化的 G(t)。 Blending 通常分為三種情況:Uniform Blending,Linear Blending 和 Any Blending。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/207_handout.pdf extended reading: 1.A linear ensemble of individual and blended models for music rating prediction (Chen et al.) https://www.csie.ntu.edu.tw/~htlin/paper/doc/wskdd11cup_one.pdf 2.Bagging predictors (Breiman) http://statistics.berkeley.edu/sites/default/files/tech-reports/421.pdf
-
-
Lecture 8:Adaptive Boosting
在沒有那麼多 gt 的情況下,使用 bootstrap 方式,從已有數據集中得到新的類似的數據集,從而得到不同的 gt。這種做法稱為bagging。本節課將繼續從這些概念出發,介紹一種新的演算法。
-
Motivation of Boosting
先來看一個簡單的識別蘋果的例子,老師展示 20 張圖片,讓 6 歲孩子們通過觀察,判斷其中哪些圖片的內容是蘋果。從判斷的過程中推導如何解決二元分類問題的方法。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/208_handout.pdf
-
Diversity by Re-weighting
在介紹這個演算法之前,先來講一下上節課就介紹過的 bagging。 Bagging 的核心是 bootstrapping,通過對原始數據集 D 不斷進行 bootstrap 的抽樣動作,得到與 D 類似的數據集 D^t,每組 D^t 都能得到相應的 gt,從而進行 aggregation 的操作。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/208_handout.pdf
-
Adaptive Boosting Algorithm
只要每次的 ϵt ≤ϵ<1/2,即所選擇的矩 g 比亂猜的表現好一點點,那麼經過每次疊代之後,矩 g 的表現都會比原來更好一些,逐漸變強,最終得到 Ein=0 且Eout 很小。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/208_handout.pdf
-
Adaptive Boosting in Action
本節課主要介紹了Adaptive Boosting。首先通過講一個老師教小學生識別蘋果的例子,來引入Boosting的思想,即把許多“弱弱”的hypotheses合併起來,變成很強的預測模型。然後重點介紹這種算法如何實現,關鍵在於每次迭代時,給予樣本不同的係數u,宗旨是放大錯誤樣本,縮小正確樣本,得到不同的小矩g。並且在每次迭代時根據錯誤ϵ值的大小,給予不同gt不同的權重。最終由不同的gt進行組合得到整體的預測模型G。實際證明,Adaptive Boosting能夠得到有效的預測模型。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/208_handout.pdf extended reading: A short introduction to boosting (Freund and Schapire) 1.http://cseweb.ucsd.edu/~yfreund/papers/IntroToBoosting.pdf
-
-
Lecture 9:Decision Tree
AdaBoost 演算法的優點是,即使底層的演算法 g 不是特別好(只要比亂選好點),經過多次疊代後算法模型會越來越好,起到了boost 提升的效果。本節課將在此基礎上介紹一種新的 aggregation 算法:決策樹(Decision Tree)。
-
Decision Tree Hypothesis
從第 7 節課開始,就一直在介紹 aggregation model。 aggregation 的核心就是將許多可供選擇使用的比較好的 hypothesis 融合起來,利用集體的智慧組合成 G,使其得到更好的機器學習預測模型。下面,先來看看已經介紹過的 aggregation type 有哪些。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/209_handout.pdf
-
Decision Tree Algorithm
決策樹的基本演算法包含了四個方式: 1.分支個數(number of branches) 2.分支條件(branching criteria) 3.終止條件(termination criteria) 4.基本算法(base hypothesis) 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/209_handout.pdf
-
Decision Tree Heuristics in C&RT
C&RT 算法在處理 binary classification 和 regression 問題時非常簡單實用,而且,處理 muti-class classification 問題也十分容易。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/209_handout.pdf
-
Decision Tree in Action
本節課主要介紹了 Decision Tree。首先將 decision tree hypothesis 對應到不同分支下的矩 gt(x)。然後再介紹決策樹算法是如何通過遞歸的形式建立起來。接著詳細研究了決策樹 C&RT 算法對應的數學模型和算法架構流程。最後通過一個實際的例子來演示決策樹 C&RT 算法是如何一步一步進行分類的。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/209_handout.pdf extended reading: 1.Classification and regression trees (overview of decision tree by Loh) http://www.stat.wisc.edu/~loh/treeprogs/guide/wires11.pdf 2.Classification and regression trees (book of CART by Breiman et al.) https://www.amazon.com/Classification-Regression-Wadsworth-Statistics-Probability/dp/0412048418
-
-
Lecture 10:Random Forest
本節課將介紹隨機森林(Random Forest)算法,它是我們之前介紹的 Bagging 和上節課介紹的 Decision Tree 的結合。
-
Random Forest Algorithm
Bagging 能減小 variance,而 Decision Tree 能增大 variance。如果把兩者結合起來,能否發揮各自的優勢,起到優勢互補的作用呢?這就是接下來將要討論的 aggregation of aggregation,即使用 Bagging 的方式把眾多的 Decision Tree 進行 uniform 結合起來。這種算法就叫做隨機森林(Random Forest),它將完全長成的 C&RT 決策樹通過 bagging 的形式結合起來,最終得到一個龐大的決策模型。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/210_handout.pdf
-
Out-of-bag Estimate
上一部分我們已經介紹了Random Forest算法,而Random Forest算法重要的一點就是Bagging。接下來將繼續探討bagging中的bootstrap機製到底蘊含了哪些可以為我們所用的東西。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/210_handout.pdf
-
Feature Selection
如果樣本資料特徵過多,假如有 10000 個特徵,而只想從中選取 300 個特徵,這時候就需要捨棄部分特徵。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/210_handout.pdfv
-
Random Forest in Action
本節課主要介紹了 Random Forest 算法模型。 RF 將 bagging 與 decision tree 結合起來,通過把眾多的決策樹組進行組合,構成森林的形式,利用投票機制讓 G 表現最佳,分類模型更穩定。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/210_handout.pdf extended reading: 1.Random forest (Breiman) https://link.springer.com/article/10.1023%2FA%3A1010933404324
-
-
Lecture 11:Gradient Boosted Decision Tree
RF 還可以使用 OOB 樣本進行 self-validation,而且可以通過 permutation tes t進行 feature selection。本節課將使用 Adaptive Boosting 的方法來研究 decision tree 的一些算法和模型。
-
AdaBoost Decision Tree
Random Forest 的算法流程上節課有詳細介紹過,就是先通過 bootstrapping「複製」原樣本集 D,得到新的樣本集 D';然後對每個 D'進行訓練得到不同的 decision tree 和對應的 gt;最後再將所有的 gt 通過 uniform 的形式組合起來,即以投票的方式得到 G。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/211_handout.pdf
-
Optimization of AdaBoost
在 AdaBoost 中確定 gt 和 αt 的過程就相當於在 gradient descent 上尋找最快的下降方向和最大的步進長度。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/211_handout.pdf
-
Gradient Boosting
本節課第一部分介紹的 AdaBoost-DTree 是解決 binary classification 問題,而此處介紹的 GBDT 是解決 regression 問題。二者俱有一定的相似性,可以說 GBDT 就是 AdaBoost-DTree 的 regression 版本。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/211_handout.pdf
-
Summary of Aggregation
本節課主要介紹了 Gradient Boosted Decision Tree。首先講如何將 AdaBoost 與 Decision Tree 結合起來,即通過 sampling 和 pruning 的方法得到AdaBoost-D Tree 模型。然後,從 optimization 的角度來看 AdaBoost,找到好的 hypothesis 也就是找到一個好的方向,找到權重 α 也就是找到合適的步進長度。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/211_handout.pdf extended reading: Greedy Function Approximation: A Gradient Boosting Machine (Friedman) 1.http://statweb.stanford.edu/~jhf/ftp/trebst.pdf
-
-
Lecture 12:Neural Network
本節課講介紹一種出現時間較早,但當下又非常火的一種機器算法模型,就是神經網絡(Neural Network)。
-
Neural Network Hypothesis
感知機模型實際上就是在模仿人類的神經元模型(這就是 Neural Network 名稱的由來)。感知機模型每個節點的輸入就對應神經元的樹突 dendrite,感知機每個節點的輸出就對應神經元的軸突 axon。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/212_handout.pdf
-
Motivation
上一部分介紹的這種感知機模型其實就是 Neural Network。輸入部分經過一層一層的運算,相當於一層一層的 transform,最後通過最後一層的權重,得到一個分數 score。即在 OUTPUT 層,輸出的就是一個線性模型。得到 s 後,下一步再進行處理。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/212_handout.pdf
-
Neural Network Learning
如果只有一層隱藏層,就相當於是 aggregation of perceptrons。可以使用上節課介紹的 gradient boosting 算法來一個一個確定隱藏層每個神經元的權重,輸入層到隱藏層的權重可以通過 C&RT 算法計算的到。這不是神經網絡常用的算法。如果隱藏層個數有兩個或者更多,那麼 aggregation of perceptrons 的方法就行不通了。就要考慮使用其它方法。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/212_handout.pdf
-
Optimization and Regularization
本節課主要介紹了 Neural Network 模型。首先,通過使用一層甚至多層的 perceptrons 來獲得更複雜的非線性模型。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech18spring/doc/212_handout.pdf
-
-
Lecture 13:Deep Learning
本節課將繼續對神經網絡進行深入研究,並介紹層數更多、神經元個數更多、模型更複雜的神經網絡模型,即深度學習模型。
-
Autoencoder
總結來說,根據神經網絡模型的層數、神經元個數、模型複雜度不同,大致可分為兩類:Shallow Neural Networks 和 Deep Neural Networks。上節課介紹的神經網絡模型層數較少,屬於 Shallow Neural Networks,而本節課將著重介紹 Deep Neural Networks。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech17spring/doc/213_handout.pdf
-
Deep Neural Network
已經介紹了深度學習的架構,那麼從算法模型上來說,如何進行 pre-training,得到較好的權重初始值呢?首先,來看看,權重是什麼?神經網絡模型中,權重代表了特徵轉換(feature transform)。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech17spring/doc/213_handout.pdf
-
Denoising Autoencoder
上一部分,使用 autoencoder 解決了 deep learning 中 pre-training 的問題。接下來,將討論 deep learning 中有什麼樣的 regularization 方式來控制模型的複雜度。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech17spring/doc/213_handout.pdf
-
Principal Component Analysis
本節課主要介紹了深度學習(deep learning)的數學模型,也是上節課講的神經網絡的延伸。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech17spring/doc/213_handout.pdf
-
-
Lecture 14:Radial Basis Function Network
本節課將介紹 Radial Basis Function Network,把之前介紹的 adial Basis Function 和 Neural Network 聯繫起來。
-
k-Means and RBFNet in Action
之前介紹過,在 SVM 中引入 Gaussian Kernel 就能在無限多維的特徵轉換中得到一條“粗壯”的分界線(或者高維分界平面、分界超平面)。 影片內容 pdf: https://www.csie.ntu.edu.tw/~htlin/course/mltech17spring/doc/214_handout.pdf
-
RBF Network Hypothesis
其中 μm 表示中心點的位置。 μm 的個數 M 是人為決定的,如果將每個樣本點 xm 作為一個中心點,即 M=N,則把這種結構稱為 full RBF Network。 影片內容 pdf: https://www.csie.ntu.edu.tw/~htlin/course/mltech17spring/doc/214_handout.pdf
-
RBF Network Learning
之所以要選擇代表,是因為如果某些樣本點很接近,那麼就可以用一個中心點來代表它們。這就是聚類(cluster)的思想,從所有 N 個樣本點中選擇少數幾個代表作為中心點。 影片內容 pdf: https://www.csie.ntu.edu.tw/~htlin/course/mltech17spring/doc/214_handout.pdf
-
k-Means Algorithm
本節課主要介紹了 Radial Basis Function Network。 RBF Network Hypothesis 就是計算樣本之間 distance similarity 的 Gaussian 函數,這類原型替代了神經網絡中的神經元。 RBF Network 的訓練學習過程,其實就是對所有的原型 Hypotheses 進行 linear aggregation。 影片內容 pdf: https://www.csie.ntu.edu.tw/~htlin/course/mltech17spring/doc/214_handout.pdf
-
-
Lecture 15:Matrix Factorization
本節課主要介紹了 Matrix Factorization。通過電影推薦系統的例子,介紹 Matrix Factorization 其實是一個提取用戶特徵,關於電影的線性模型。
-
Linear Network Hypothesis
回顧一下,在機器學習基石課程的第一節課就提到過,機器學習的目的就是讓機器從數據 data 中學習到某種能力 skill。之前舉過一個典型的推薦系統的例子。就是說,假如手上有許多不同用戶對不同電影的排名 rank,通過機器學習,訓練一個模型,能夠對用戶沒有看過的某部電影進行排名預測。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech17spring/doc/215_handout.pdf
-
Basic Matrix Factorization
剛剛介紹了 linear network 的模型和 hypothesis。其中 Vx 可以看作是對用戶 x 的一種特徵轉換 Φ(x)。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech17spring/doc/215_handout.pdf
-
Stochastic Gradient Descent
剛剛介紹了 alternating least squares algorithm 來解決 Matrix Factorization 的問題。這部分將討論使用 Stochastic Gradient Descent 方法來進行求解。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech17spring/doc/215_handout.pdf
-
Summary of Extraction Models
本節課主要介紹了 Matrix Factorization。從電影推薦系統模型出發,首先,介紹了 Linear Network。它從用戶 ID 編碼後的向量中提取出有用的特徵,這是典型的 feature extraction。然後,介紹了基本的 Matrix Factorization 算法,即 alternating least squares,不斷地在用戶和電影之間交互地做 linear regression 進行優化。為了簡化計算,提高運算速度,也可以使用 SGD 來實現。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech17spring/doc/215_handout.pdf
-
-
Lecture 16:Finale
本節課將對機器學習技法課程介紹過的所有內容做個總結,分成三個部分:Feature Exploitation Techniques,Error Optimization Techniques和Overfitting Elimination Techniques。
-
Feature Exploitation Techniques
在本系列課程中介紹的第一個特徵提取的方法就是 kernel。 Kernel 運算將特徵轉換和計算內積這兩個步驟合二為一,提高了計算效率。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech17spring/doc/216_handout.pdf
-
Error Optimization Techniques
接下來將總結一下本系列課程中介紹過哪些優化技巧。首先,第一個數值優化技巧就是梯度下降(Gradient Descent),即讓變量沿著其梯度反方向變化,不斷接近最優解。例如介紹過的 SGD、Steepest Descent 和 Functional GD 都是利用了梯度下降的技巧。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech17spring/doc/216_handout.pdf
-
Overfitting Elimination Techniques
Feature Exploitation Techniques和Error Optimization Techniques都是為了優化複雜模型,減小Ein。但是Ein太小有很可能會造成過擬合overfitting。因此,機器學習中,Overfitting Elimination尤為重要。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech17spring/doc/216_handout.pdf
-
Machine Learning in Practice
本節課主要從三個方面來對機器學習技法課程做個總結:Feature Exploitation Techniques,Error Optimization Techniques 和 Overfitting Elimination Techniques。最後介紹了由林軒田老師帶領的台大團隊是如何在歷屆 KDDCup 中將很多機器學習算法模型融合起來,並獲得了良好的成績。 影片內容 pdf:https://www.csie.ntu.edu.tw/~htlin/course/mltech17spring/doc/216_handout.pdf
-