吳恩達Coursera機器學習Week1
1. Introduction
- What is Machine Learning
機器學習:一個程序被認為能從經驗E中學習,解決任務T,達到性能度量值P,當且僅當,有了經驗值E後,經過P評判,程序在處理T的性能有所提升。
學習演算法:監督學習(人教學)和無監督學習(自學)。
- Supervised Learning
監督式學習就是指,首先需要提供一些數據集,對於數據集中的每個數據,都有相應的正確答案,(訓練集)演算法就是基於這些正確的答案來做出預測。又分為回歸問題和分類問題。
1.回歸問題:通過回歸來預測一個連續的輸出值。
2.分類問題:通過分類來預測一個離散值的輸出。
- Unsupervised Learning
無監督式學習的輸入數據沒有標籤,其目的式對原始材料進行分類,以便了解資料的內部結構。又分為聚類演算法和非聚類演算法。
聚類演算法:可以用來組織大型的計算機集群;可以用來社交網路的分析;可以用於市場分割;可以用於天文數據分析。
非聚類演算法:雞尾酒宴的問題。
2. Model and Cost Function
- Model Representation
簡單的介紹了一下數據集的表示方法,並且提出來h(hypothesis),即通過訓練得出來的一個假設函數,通過輸入x,得出來預測的結果y。並在最後介紹了線性回歸方程。
- Cost Function
代價函數是用來測量實際值和預測值精確度的一個函數模型,對於一個線性函數,其中計算公式如下,其中還可以稱其為平方誤差函數
首先需要搞清楚假設函數和代價函數的區別。當假設函數為線性時,即線性回歸方程,其由兩個參數組成:theta0和theta1
,我們要做的就是選取兩個參數的值,使其代價函數的值達到最小化。注意理解下圖中兩個坐標的意義。
對於多源參數的假設函數而言,為了描述代價函數隨著參數的變化情況,通常採用輪廓圖來表示。輪廓圖是由一系列的輪廓線組成的,每條輪廓線上的代價值都是一樣的。
對於線性回歸方程,總結如下:
3. Parameter Learning
- Gradient Descent
梯度下降函數是用來預測假設函數的參數,以使代價函數最小化的一種演算法,它不僅可以用在線性回歸上面,還被廣泛用在其他領域。其中梯度下降演算法的定義如下,反覆計算參數的值,直到收斂,達到局部最優。
中α為學習速率,它控制了計算時步數的大小。另一部分是微分項。當計算中需要更新參數的時候,需要同時更新函數中的參數,其中更新方法如下所示:
對於梯度下降函數,為了便於理解,將起參數設置為一個,則其微分項就可以理解為代價函數在特定點的斜率。當斜率為正的時候,參數的值向左更新;當斜率為負的時候,參數的值向右更新。對於多維參數,梯度下降函數中的微分項是一樣的道理。
同時需要注意,對於α學習速率,其值不能太大也不能太小,太大的話會導致梯度下降函數計算的值發散;太小的話會導致計算次數增多。在逐漸更新參數值的過程中,沒必要減小α的值,因為每進行一次更新,其微分項的值就會比上一次的值減少一些(曲線的斜率會變的小),所以說越接近局部最優點,更新的步數就越小。
對於梯度下降演算法的總結:
4. Linear Algebra Review
- Matrices and Vector
矩陣想必大家都比較熟悉,而向量可以說是一種特殊的矩陣,是指有多行而只有一列的矩陣。注意矩陣和向量的表示方法。
需要掌握矩陣的加法,標量乘法,矩陣和向量的乘法,矩陣和矩陣的乘法等基本的操作。
矩陣的一些性質:
- Inverse and Transpose
方陣:如果矩陣的維度是m行m列,那麼這個矩陣就成為方陣,只有方陣才有逆矩陣。
要掌握矩陣的逆和矩陣的轉置運算。
推薦閱讀:
TAG:機器學習 | 吳恩達AndrewNg | Coursera |