1.課程回顧
例1:房價和面積—預(yù)測
給定一組房價和房屋面積的數(shù)據(jù)集碍扔,通過機器學(xué)習(xí)算法(監(jiān)督學(xué)習(xí))來擬合畫出一條線量九,根據(jù)這條線來對未知的數(shù)據(jù)進行判斷仿耽。假設(shè)機器通過這些房價數(shù)據(jù)學(xué)習(xí)得到一條房價—面積關(guān)系線获搏,如上圖中紅線怖喻,那么如果你朋友的750英尺的房子,就可以通過這條紅線來估算出房價充蓝,可以看出隧枫,大約是在150K美金左右。
這是一個典型的回歸問題(Regression)棺克,因為結(jié)果(房價)可以是任意實數(shù)悠垛,且數(shù)據(jù)是可以連續(xù)的线定。
更進一步娜谊,由于變量1個—房屋尺寸,且預(yù)測結(jié)果(房價)和變量間的表達式可以用線性方程描述y = k*x + b斤讥。所有纱皆,此問題在機器學(xué)習(xí)中的術(shù)語叫做:單變量線性回歸 Linear Regression with One Variable
例2:乳腺癌良性/惡性和尺寸關(guān)系
給定一組數(shù)據(jù):乳腺癌腫瘤尺寸大小 和 癌癥惡性/良性關(guān)系,通過機器學(xué)習(xí)芭商,來預(yù)測一個給定腫瘤尺寸大小的患者派草,疾病是惡性還是良性的概率。這個問題和之前的房價問題有些區(qū)別铛楣,雖然同樣的近迁,變量只有一個,即x軸上的尺寸大小簸州,但是y軸的結(jié)果卻只有兩種:0和1鉴竭,0表示腫瘤分類為良性;1表示分類為惡性岸浑。
所以搏存,這是一個典型的分類問題(Classification)由于這里結(jié)果只有兩種,所以此分類問題為二元分類問題
2.分類Classification
這兩個例子都比較通俗易懂矢洲,新接觸到的名詞雖然有點多但也無需過度理解璧眠,兩個例子中涉及到了監(jiān)督學(xué)習(xí)中的分類問題、回歸問題。分類問題很好理解责静,機器預(yù)測值只有固定的幾個類別,課程中為兩種:0良性腫瘤 1 惡性腫瘤袁滥,所以稱為二分類,除了二分類以外灾螃,其他的統(tǒng)稱多分類呻拌。
3.回歸Regression
與分類問題相對,回歸問題的預(yù)測值范圍比較自由睦焕,可以是連續(xù)的藐握,且可取任意實數(shù)
4.監(jiān)督學(xué)習(xí)Supervised Learning
課程中的兩個問題:房價-房屋面積、腫瘤良惡—腫瘤尺寸都是屬于監(jiān)督學(xué)習(xí)垃喊』眨可以先簡單理解,監(jiān)督學(xué)習(xí)就是給定了數(shù)據(jù)集本谜,且數(shù)據(jù)是規(guī)則明確的初家,有標簽的∥谥可以理解為結(jié)構(gòu)化的溜在、存儲在數(shù)據(jù)庫中的數(shù)據(jù),喂給機器學(xué)習(xí)的情況他托,就叫做監(jiān)督學(xué)習(xí)掖肋。
5.無監(jiān)督學(xué)習(xí)Unsupervised Learning
與監(jiān)督學(xué)習(xí)相對,如果給出的數(shù)據(jù)集赏参、沒有明確標簽或者是非結(jié)構(gòu)化的志笼,那么這類數(shù)據(jù)的機器學(xué)習(xí),就叫做無監(jiān)督學(xué)習(xí)把篓。除了監(jiān)督學(xué)習(xí)纫溃、無監(jiān)督學(xué)習(xí)、還有半監(jiān)督學(xué)習(xí)的概念韧掩。具體可以看看知乎:https://www.zhihu.com/question/23194489/answer/25028661
6.假設(shè)hypothesis
我們以例1為例說明hypothesis(假設(shè))紊浩,這也涉及到后面的代價函數(shù)。
?—hypothesis(假設(shè))疗锐,代表學(xué)習(xí)算法的解決方案或函數(shù)坊谁。
?表示一個函數(shù),實際上即模型的預(yù)測函數(shù)窒悔,在例1中呜袁,輸入是房屋尺寸大小,就像你朋友想出售的房屋简珠,因此 ? 根據(jù)輸入的房屋面積值x 來得到此防房屋估價y阶界,因此虹钮,?是一個從x 到 y的映射,由于是單變量線性回歸膘融,映射關(guān)系可以簡單表示為:等價于
舉個栗子
很明顯芙粱,在此例中,通過假設(shè)函數(shù)氧映,我們可以對數(shù)據(jù)集以外的樣本做預(yù)測春畔,如果假設(shè)函數(shù)是: 那么如果你的朋友有一套面積為500(英尺)的房子,那么你就可以告訴他岛都,你的房價預(yù)估在125K(12.5萬)美金
誤差
你那個朋友過來找到你了律姨,說你的假設(shè)有誤啊,我那套500英尺的房子臼疫,明明就是100K而已择份,你的數(shù)據(jù)集的數(shù)據(jù)還記錄了我的房子呢......你這有誤差啊烫堤?荣赶!
預(yù)測值125和真實值之間差距為25K,這里25K就被稱為建模誤差鸽斟。
7.損失函數(shù)Cost Function
代價函數(shù)/損失函數(shù)拔创,就是用于評估誤差水平的函數(shù),常見的損失函數(shù)有平方損失函數(shù)富蓄、交叉熵損失函數(shù)剩燥,其中前者多用于回歸問題,后者多用于分類問題格粪。理論上躏吊,給定一批房屋面積—價格數(shù)據(jù)點氛改,我可以根據(jù)這批數(shù)據(jù)畫出無數(shù)條假設(shè)函數(shù)直線用于模擬房價和面積之間的關(guān)系帐萎,那么怎么找到最優(yōu)的那條線?這時胜卤,我們就會用到代價函數(shù)疆导,好的代價函數(shù)必然使得數(shù)據(jù)集總體的誤差最小。
舉個例子葛躏,此時我有三個樣本點 (1澈段,1),(2舰攒,2)败富,(3,3),我怎么確定一個假設(shè)函數(shù)h摩窃,使得這條線能最優(yōu)化地擬合所有數(shù)據(jù)兽叮,能更精確地預(yù)測下一個位置樣本點的數(shù)據(jù)芬骄,譬如x = 5時 y的值?這里人眼很明顯一看就能確定 即可鹦聪,不過對于機器账阻,怎么去確定這個方程?
此時就需要用到代價函數(shù)泽本,這里我們可以用回歸問題通用的平方損失函數(shù)/平方代價函數(shù)淘太,評估假設(shè)函數(shù)的誤差水平。這里规丽,例1的代價函數(shù)如下:
損失函數(shù)的意義就在于雄嚣,通過求損失函數(shù)的值晒屎,我們可以評估預(yù)測函數(shù)的準確性,損失越小缓升,則模型的預(yù)測越精準鼓鲁。所以,訓(xùn)練模型很多時候就是降低損失港谊,找到損失函數(shù)的最小值骇吭,通過其最小值來產(chǎn)出最優(yōu)的假設(shè)函數(shù)。
8.二元函數(shù)梯度下降Gradient Descent
圖解
概述
目標
找到損失函數(shù)的最小值歧寺,即最小的點燥狰,所以我們利用梯度下降算法(而不是梯度上升)
為了找到損失函數(shù)的最小值,我們采用梯度下降算法斜筐,圖中為二元函數(shù)梯度下降圖解龙致,如果參數(shù)為更多元,則無法繪制出相應(yīng)的梯度下降圖顷链,不過這幅圖恰巧能生動地解釋梯度下降的含義目代。
這里x、y軸分別為參數(shù)所在維度嗤练,z軸代表代價函數(shù)J的大小榛了,所有的參數(shù)點和損失函數(shù)值構(gòu)成了五彩的三維曲面,最終目標:即通過梯度下降算法煞抬,找到最小的點霜大。
肉眼可見右邊紅色箭頭所指的點,為局部梯度最低點革答,即局部最小值點战坤;左邊紅色箭頭所指的點為整個三維曲面上的最小值點遮婶,即全局最低點。
公式
這里湖笨,批量梯度下降(batch gradient descent)算法的公式為:
for( j = 0 and j = 1)
參數(shù)解釋
1.公式中為什么是旗扑,因為用于表示梯度下降,即逐漸降低慈省,故用負號表示
2.公式中用的是:=符號臀防,此含義表示,等式中的參數(shù)需要同時更新边败。如此處有兩個參數(shù)正確的更新方式是:
第一步:
第二步:
其中第一步完成后才能進行第二步袱衷,且在每一步執(zhí)行時,內(nèi)部求temp1笑窜、temp2時也是并行的關(guān)系
學(xué)習(xí)率
批量梯度下降公式中致燥,為學(xué)習(xí)率(learning rate)它決定了我們沿著能讓代價函數(shù)下降程度最大的方向向下邁出的步子有多大,在批量梯度下降中排截,我們每一次都同時讓所有的參數(shù)減去學(xué)習(xí)速率乘以代價函數(shù)的導(dǎo)數(shù)
學(xué)習(xí)率過小
如果太小了嫌蚤,即我的學(xué)習(xí)速率太小,結(jié)果就是只能這樣像小寶寶一樣一點點地挪動断傲,去努力接近最低點脱吱,這樣就需要很多步才能到達最低點。所以认罩,如果太小的話可能會很慢箱蝠,因為它會一點點挪動,它會需要很多步才能到達全局最低點垦垂。
學(xué)習(xí)率過大
如果太大宦搬,那么梯度下降法可能會越過最低點,甚至可能無法收斂劫拗,下一次迭代又移動了一大步间校,越過一次,又越過一次杨幼,一次次越過最低點撇簿,直到你發(fā)現(xiàn)實際上離最低點越來越遠。所以差购,如果太大,它會導(dǎo)致無法收斂汉嗽,甚至發(fā)散
9.梯度下降的線性回歸
線性回歸模型 梯度下降算法
? (for j = 0 and j = 1)
對損失函數(shù)/代價函數(shù)運用梯度下降方法欲逃,求導(dǎo):
Tips:
j = 0時即對求導(dǎo),
j = 1時即對求導(dǎo)