咱們第一個學習算法是線性迴歸算法,在這節中,你會看到這個算法的概況,更重要的是你會了解整個監督學習過程。算法
下面咱們來舉一個例子,咱們要根據不一樣房屋尺寸所售出的價格,畫出個人數據集。函數
比方說,若是你朋友的房子是1250平方尺大小,你要告訴他這房子能賣多少錢。那麼,你能夠作的一件事就是構建一個模型,也許是條直線,從這個數據模型上來看,也許你能夠告訴你的朋友,他能以大約220000(美圓)左右的價格賣掉這個房子。學習
這顯然是一個監督學習算法的例子。由於每個例子都有一個「正確的答案」。也就是說,咱們知道了數據集中賣出的房子實際的大小以及價格。並且,它仍是一個迴歸問題的例子。迴歸指的是咱們預測一個具體的數值輸出(在這個例子中也就是價格)。spa
注意:另外一種最多見的監督學習問題被稱爲分類問題。咱們用它來預測離散值的輸出。好比咱們觀察腫瘤並試圖判斷它是良性仍是惡性,這是隻有0和1的離散輸出。設計
更正式一點說,在監督學習裏,咱們有一個數據集,它被稱爲一個訓練集。blog
以住房價格爲例,咱們有一個房價的訓練集,咱們的工做是從這個數據中學習如何預測房價。索引
讓咱們來定義一些課程中會用到的符號。變量
接下來咱們看一下監督學習算法是怎麼樣工做的。im
首先,咱們向學習算法提供訓練集。好比咱們的房價訓練集。d3
學習算法的任務是輸出一個函數,一般是用小寫h表示。h表明假設函數。h是一個引導從x獲得y的函數。在這個例子中,假設函數的做用就是把房子大小做爲輸入變量x,它會試着輸出相應房子的價格預測值y。
當咱們設計一個學習算法時,下一個須要作的事是決定怎麼表示這個假設函數h,因此接下來幾節咱們將學習最初的假設函數。
怎麼表達h?一種表達方式爲hθ(x)=θ0+θ1x。
這種模型被稱爲線性迴歸。這個例子是一個一元線性迴歸。又叫單變量線性迴歸。