2-1 Model Representation
我們的第一個學習演算法是線性回歸演算法,在這節課你會看到這個演算法的概況,更重要的是你將會了解監督學習過程完整的流程,讓我們通過一個例子來開始,這個例子是預測房價的,我們要使用一個數據集,數據包含俄勒岡州波特蘭市的住房價格,在這裡我們根據不同房屋的尺寸所售出的價格,畫出數據集。我們來看這個數據集,比如說有一個朋友正想出售自己的房子,如果朋友的房子是1250平方尺大小,你要告訴他們這房子能賣多少錢,第一步是做一個模型,也許是條直線,從這個數據模型上來看,也許可以告訴朋友,他能以大約220000美元的價格賣出,這就是監督學習演算法的一個例子。
它被稱作監督學習是因為對於每個數據來說我們給出了「正確答案」即告訴我們根據我們的數據,房子實際的價格是多少,而且更具體來說,這是一個回歸問題,回歸問題是指我們根據之前的數據預測出一個準確的輸出值,對於這個例子中就是價格,同時還有另一種更為常見的監督學習方式,叫做分類問題。當我們想要預測離散的輸出值,例如我們正在尋找癌症腫瘤並想要確定腫瘤是良性還是惡性的,就是0/1離散輸出的問題
更進一步來說,在監督學習中我們有一個數據集,這個數據集被稱為訓練集,因此對於房價的例子我們有一個訓練集,包含不同的房屋價格,我們的任務就是從這個數據中學習預測房屋價格。現在我們給出這門課中經常使用的一些符號定義,我們要定義很多符號,不過沒關係。
現在記不住所有的符號也沒關係,隨著課程的進展,我們會發現這些符號很有用,後面將在整個課程中用小寫的m來表示訓練樣本的數目,因此在這個數據集中如果表中有47行,那麼我們就有47組訓練樣本,m就等於47;用小寫字母x表示輸入變數,往往也被稱為特徵量,這就是用x表示輸入的特徵;並且我們用y來表示輸出變數或者目標變數,也就是我們的預測結果,那麼這就是第二列。在這裡用 (x,y) 來表示一個訓練樣本,所以在這個表格中的單獨一行對應於一個訓練樣本,為了表示某個訓練樣本,使用x上標(i)與y上標(i)來表示第i個訓練樣本,表示訓練集里的第i行。例如x(1)表示第一個訓練集里值為2014的輸入值,這個就是第一行里的x,y(1)等於460,表示第一個訓練集樣本的y值。
接下來是問題時間:
有一個監督學習的例子,我們可以看到有我們的訓練集里房屋價格,把它輸入給學習演算法,接下來是學習演算法的工作,然後輸出一個函數,按照慣例通常輸出為小寫h,h表示hypothesis(假設)h表示一個函數。輸入是房屋尺寸大小,就像你朋友想出售的房屋,因此h根據輸入的x值來得出y值,y值對應於房子的價格,因此h是一個從x到y的函數映射。
當設計學習演算法的時候,我們接下來需要去思考的是怎樣得到這個假設h,對於這一點在下面的課程中用h表示輸出,我們將會這麼寫:
hθ(x) = θ0+θ1*x
為了方便有時非書面形式也可以將hθ(x)寫成h(x)這是縮寫方式
所有的一切意味著我們需要預測一個關於x的線性函數y,所以這就是數據集和函數的作用
那麼為什麼是一個線性函數呢?有時候我們有更複雜的函數,也許是非線性函數,我們先從簡單的線性方程的例子入手,當然,最終我們將會建立更加複雜的模型以及更加複雜的學習演算法,這個模型稱為線性回歸(linear regression)模型。另外這實際上是關於單個變數的線性回歸,這個變數就是x,根據x來預測所有的價格函數;同時這個模型也叫作單變數線性回歸,單變數是對一個變數的一種特別的表示方式,總之這就是線性回歸。
接下來我們將會討論如何實現這種模型。
謝謝!
推薦閱讀:
※複習:NN和BP
※2 最簡單的驗證碼生成
※關鍵詞提取Part1(A Quick Review)
※崛起中的機器文明
※基於不平衡樣本的推薦演算法研究
TAG:機器學習 |