由線性回歸來理解深度學(xué)習(xí)的理論基礎(chǔ)
作者:Ajit Jaokar
編譯:DylanY
這會(huì)是一篇比較長的文章,本來應(yīng)該是分幾次來po,但考慮到這個(gè)話題的整體性,因此這里還是整理到一篇文章里,感興趣的同學(xué)可以點(diǎn)個(gè)收藏慢慢看。
以下為作者原文:
在這篇文章中,我將試著從機(jī)器學(xué)習(xí)的簡單算法開始解釋深度學(xué)習(xí)。這種理解深度學(xué)習(xí)的方法將在我的新書當(dāng)中詳細(xì)介紹,您可以在Linkedin上與我(Ajit Jaokar)聯(lián)系以了解有關(guān)該書的更多信息。我在教學(xué)中使用過這種方法,我把它稱之為“例外學(xué)習(xí),即理解一個(gè)概念及其局限性,然后理解后續(xù)概念以及如何克服該局限性。
這篇文章將會(huì)由以下內(nèi)容依次構(gòu)成:
線性回歸(Linear Regression)
多元線性回歸(Multiple Linear Regression)
多項(xiàng)式回歸(Polynomial Regression)
廣義線性模型(Generalised Linear Model)
感知器學(xué)習(xí)(Perceptron Learning)
多層感知器(Multi-Layer Perceptron Learning)
由此我們形成了一個(gè)鏈?zhǔn)剿枷耄簭木€性回歸開始,而后擴(kuò)展到多層感知器(深度學(xué)習(xí))。另外,為簡單起見,我們這里不去討論其他形式的深度學(xué)習(xí),例如CNN和LSTM,在這篇文章種我們所討論的深度學(xué)習(xí)僅限于多層感知器。
為什么從線性回歸開始?因?yàn)榧词乖诟咧须A段,我們也開始接觸到了這個(gè)概念。首先從“學(xué)習(xí)”這個(gè)概念講起,在機(jī)器學(xué)習(xí)(監(jiān)督學(xué)習(xí))中,學(xué)習(xí)的過程即尋找一個(gè)數(shù)學(xué)方程式,從而使得每一個(gè)輸入和輸出都能夠通過這個(gè)方程一一對應(yīng)。

在最簡單的情境下,這個(gè)方程是線性的。
什么是線性關(guān)系?
線性關(guān)系指的是可以用一條直線表示的兩個(gè)變量(x和y)之間的關(guān)系。許多現(xiàn)象都是線性關(guān)系,如雙手拉橡皮所使用的力量和橡皮被拉伸的長度,我們可以用線性方程來表示如上關(guān)系:
在線性關(guān)系中,改變自變量(x)的值會(huì)導(dǎo)致因變量(y)的值發(fā)生改變,因此線性關(guān)系可以用來預(yù)測諸如銷售預(yù)估、用戶行為分析等實(shí)際問題。
線性關(guān)系如下圖所示:

線性回歸問題意在尋找可以描述一個(gè)或多個(gè)特征(自變量)與目標(biāo)值(因變量)之間關(guān)系的方程。如上圖所示的線性回歸問題,我們通常稱之為普通線性回歸,即最簡單的線性回歸。
現(xiàn)在我們來考慮由簡單線性回歸引申出的三個(gè)問題:
多元線性回歸
廣義線性模型
多項(xiàng)式回歸
普通線性回歸的第一個(gè)明顯變體是多元線性回歸。當(dāng)只有一個(gè)特征時(shí),我們有單變量線性回歸,如果有多個(gè)特征,我們有多元線性回歸。對于多元線性回歸,模型可以以一般形式表示為:
模型的訓(xùn)練即尋找最佳參數(shù)θ,以使模型最貼合數(shù)據(jù)。預(yù)測值與目標(biāo)值之間的誤差最小的直線稱為最佳擬合線或回歸線,這些誤差被稱為殘差(Residuals)??梢酝ㄟ^從目標(biāo)值到回歸線的垂直線來可視化殘差,如下圖所示,灰色直線即回歸線,紫色點(diǎn)為目標(biāo)值,黃色垂直距離即殘差。

我們將整個(gè)模型的誤差(即損失函數(shù))定義為殘差平方和,表示如下:
最經(jīng)典的多元線性回歸問題是波士頓房價(jià)問題(Boston Housing Dataset)
在普通線性回歸中,預(yù)測變量(x)的變化會(huì)導(dǎo)致響應(yīng)變量(y)的變化,但是,當(dāng)且僅當(dāng)響應(yīng)變量具有正態(tài)分布時(shí)才成立。在響應(yīng)變量是正態(tài)分布時(shí),有好多問題我們無法處理:1)響應(yīng)變量總是為正且在很大范圍內(nèi)變化;2)預(yù)測變量的變化導(dǎo)致響應(yīng)變量的幾何變換,而不是連續(xù)變化(即兩者間非線性關(guān)系)。
廣義線性回歸是由普通線性回歸延伸出的第二個(gè)模型,它滿足:1)響應(yīng)變量可以不是正態(tài)分布;2)允許響應(yīng)變量不是隨著預(yù)測變量線性變化。
介紹了多元回歸和GLM之后,讓我們現(xiàn)在看一下我們可以從普通線性回歸推斷出的第三個(gè)模型——多項(xiàng)式回歸。在多項(xiàng)式回歸中,自變量x和因變量y之間的關(guān)系被表示為x的n次多項(xiàng)式的形式。多項(xiàng)式回歸已被用于描述非線性現(xiàn)象,如組織的生長速度,湖泊沉積物中碳同位素的分布,以及疾病流行的進(jìn)展。

傅里葉:
接下來我們看看感知器是如何與線性回歸模型產(chǎn)生聯(lián)系的。????????
感知器(Perceptrons)是用于二元分類問題的監(jiān)督學(xué)習(xí)算法,二元分類器是二類問題的線性分類器。Mark I 感知器是感知器算法的第一個(gè)實(shí)現(xiàn),感知器算法由Frank Rosenblatt于1957年在康奈爾航空實(shí)驗(yàn)室發(fā)明,感知器旨在成為一臺(tái)機(jī)器,而不是一個(gè)程序,這臺(tái)機(jī)器專為圖像識(shí)別而設(shè)計(jì):它有一個(gè)由400個(gè)光電池組成的陣列,隨機(jī)連接到“神經(jīng)元”,權(quán)重由電位器編碼,并且在學(xué)習(xí)期間通過機(jī)器執(zhí)行權(quán)重更新。在美國海軍組織的1958年新聞發(fā)布會(huì)上,Rosenblatt發(fā)表了關(guān)于感知者的聲明,這一聲明引起了人工智能社區(qū)的激烈爭論。根據(jù)羅森布拉特的聲明,感知器是“電子計(jì)算機(jī)的胚胎,走路,說話,看,寫,復(fù)制自己,并感受到它的存在?!?/p>
單層感知器僅能夠?qū)W習(xí)線性可分離的模式。1969年,一本名為Perceptrons的書表明,感知器網(wǎng)絡(luò)不可能學(xué)習(xí)XOR功能。但是,如果我們使用非線性激活函數(shù)(而不是梯度函數(shù)),則可突破此限制。事實(shí)上,通過使用非線性激活函數(shù),我們可以構(gòu)建比XOR更復(fù)雜的函數(shù)(即使只有單層),如果我們添加更多隱藏層,則可以拓展處更復(fù)雜的功能,即我們接下來要介紹的多層感知器(深度學(xué)習(xí))。
我們回顧一下:
1)感知器是生物神經(jīng)元的簡化模型。
2)感知器是用于學(xué)習(xí)二元分類器的算法:將其輸入映射到輸出值的函數(shù)。
3)在神經(jīng)網(wǎng)絡(luò)的背景下,感知器是使用Heaviside階躍函數(shù)作為激活函數(shù)的人工神經(jīng)元,感知器算法也稱為單層感知器,以區(qū)別于多層感知器。
4)Perceptron算法具有歷史意義,但它為我們提供了一種拉近線性回歸和深度學(xué)習(xí)之間差別的方法。
5)單層感知器的學(xué)習(xí)過程如下所示,每加入一個(gè)數(shù)據(jù)點(diǎn),感知器便會(huì)更新一次線性邊界,類似于線性回歸中的回歸線。

下圖為感知器的示意圖,f為階躍函數(shù),輸出為二進(jìn)制(0或1),i1-in為輸入,Wi為各個(gè)輸入的權(quán)重:

現(xiàn)在我們來介紹多層感知器(MLP)。通過添加非線性的激活函數(shù)以及使用多層網(wǎng)絡(luò)的結(jié)構(gòu),多層感知器延展了單層感知器的功能。在訓(xùn)練中,我們需要用到反向傳播和梯度下降的方式來更新權(quán)重。多層感知器的構(gòu)造如圖所示:

多層感知器的“多層”結(jié)構(gòu)可以從數(shù)據(jù)當(dāng)中提取層次性的結(jié)構(gòu)(每一層都可以從上一層當(dāng)中提取一次特征),從而找到更好地模擬數(shù)據(jù)規(guī)律的方式。
因此,具有單層無激活功能(或階躍激活功能)的神經(jīng)網(wǎng)絡(luò)(即多層感知器)等同于線性回歸。此外,線性回歸可以使用封閉形式解決方案來解決。然而,隨著MLP的結(jié)構(gòu)更加復(fù)雜,封閉形式的解決方案不再管用,因此必須使用迭代解決方案,即通過逐步改進(jìn)的方法來改善結(jié)果。這樣的算法不一定會(huì)收斂,梯度下降就是一個(gè)經(jīng)典的例子。
MLP(深度學(xué)習(xí))是一個(gè)高度參數(shù)化的模型。對于等式y(tǒng) = mx + c,m和c被稱為參數(shù),我們從數(shù)據(jù)和中推導(dǎo)出參數(shù)的值。方程的參數(shù)可以看作自由度,線性回歸具有相對較少的參數(shù),即具有較小的自由度。然而,更復(fù)雜的MLP具有更多的參數(shù),也具有更大的自由度。雖然兩者都是參數(shù)化模型,但MLP的優(yōu)化策略(反向傳播+梯度下降)比線性回歸的優(yōu)化策略(最小二乘法)復(fù)雜得多。從這個(gè)方面講,神經(jīng)網(wǎng)絡(luò)可以看作是線性回歸的復(fù)雜衍生物,多層感知器的高度參數(shù)化允許我們構(gòu)建功能更加復(fù)雜的模型。

