<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # 9 -- Linear Regression 上節課,我們主要介紹了在有noise的情況下,VC Bound理論仍然是成立的。同時,介紹了不同的error measure方法。本節課介紹機器學習最常見的一種算法:Linear Regression. ### **一、線性回歸問題** 在之前的Linear Classification課程中,講了信用卡發放的例子,利用機器學習來決定是否給用戶發放信用卡。本節課仍然引入信用卡的例子,來解決給用戶發放信用卡額度的問題,這就是一個線性回歸(Linear Regression)問題。 ![這里寫圖片描述](https://img.kancloud.cn/a4/f4/a4f4fe8d0818bb8b913b1b57769260d7_566x377.jpg) 令用戶特征集為d維的![](https://img.kancloud.cn/05/c5/05c53b7e8ec04c22aa581501549a824c_14x11.jpg),加上常數項,維度為![](https://img.kancloud.cn/b8/42/b8427d405a92c9f2fd09a9a705bb1e9d_36x13.jpg),與權重![](https://img.kancloud.cn/c3/69/c3697655be98f4c46ee8e02049693c68_12x7.jpg)的線性組合即為Hypothesis,記為![](https://img.kancloud.cn/3e/1f/3e1fe67064780b06b8af5384d211f3d0_29x18.jpg)。線性回歸的預測函數取值在整個實數空間,這跟線性分類不同。 ![這里寫圖片描述](https://img.kancloud.cn/8e/67/8e670d6be087030c82e33a3442207bd5_566x334.jpg) 根據上圖,在一維或者多維空間里,線性回歸的目標是找到一條直線(對應一維)、一個平面(對應二維)或者更高維的超平面,使樣本集中的點更接近它,也就是殘留誤差Residuals最小化。 一般最常用的錯誤測量方式是基于最小二乘法,其目標是計算誤差的最小平方和對應的權重w,即上節課介紹的squared error: ![這里寫圖片描述](https://img.kancloud.cn/8c/b4/8cb41476536b337e31ce02c1ba8ef684_566x206.jpg) 這里提一點,最小二乘法可以解決線性問題和非線性問題。線性最小二乘法的解是closed-form,即![](https://img.kancloud.cn/05/c5/05c53b7e8ec04c22aa581501549a824c_14x11.jpg),而非線性最小二乘法沒有closed-form,通常用迭代法求解。本節課的解就是closed-form的。關于最小二乘法的一些介紹,請參見我的另一篇博文: [最小二乘法和梯度下降法的一些總結](http://blog.csdn.net/red_stone1/article/details/70306403) ### **二、線性回歸算法** 樣本數據誤差![](https://img.kancloud.cn/5b/cf/5bcf9eebe555c8380ea4c84aea710839_23x14.jpg)是權重![](https://img.kancloud.cn/c3/69/c3697655be98f4c46ee8e02049693c68_12x7.jpg)的函數,因為![](https://img.kancloud.cn/05/c5/05c53b7e8ec04c22aa581501549a824c_14x11.jpg)和![](https://img.kancloud.cn/21/1a/211adedd94ce850a677f7dcdfd9b94c8_8x10.jpg)都是已知的。我們的目標就是找出合適的![](https://img.kancloud.cn/c3/69/c3697655be98f4c46ee8e02049693c68_12x7.jpg),使![](https://img.kancloud.cn/5b/cf/5bcf9eebe555c8380ea4c84aea710839_23x14.jpg)能夠最小。那么如何計算呢? 首先,運用矩陣轉換的思想,將![](https://img.kancloud.cn/5b/cf/5bcf9eebe555c8380ea4c84aea710839_23x14.jpg)計算轉換為矩陣的形式。 ![這里寫圖片描述](https://img.kancloud.cn/51/c4/51c42ea1f2b779178fadc22ace042d0f_566x445.jpg) 然后,對于此類線性回歸問題,![](https://img.kancloud.cn/5b/cf/5bcf9eebe555c8380ea4c84aea710839_23x14.jpg)一般是個凸函數。凸函數的話,我們只要找到一階導數等于零的位置,就找到了最優解。那么,我們將![](https://img.kancloud.cn/e1/d5/e1d5e447ab35dd34d5bdce968ab1d9af_21x14.jpg)對每個![](https://img.kancloud.cn/c3/69/c3697655be98f4c46ee8e02049693c68_12x7.jpg)求偏導,偏導為零的![](https://img.kancloud.cn/c3/69/c3697655be98f4c46ee8e02049693c68_12x7.jpg),即為最優化的權重值分布。 ![這里寫圖片描述](https://img.kancloud.cn/00/91/009104e47cd0dda3d0155d98e018e414_566x365.jpg) 根據梯度的思想,對![](https://img.kancloud.cn/e1/d5/e1d5e447ab35dd34d5bdce968ab1d9af_21x14.jpg)進行矩陣話求偏導處理: ![這里寫圖片描述](https://img.kancloud.cn/62/e1/62e12c5ff7c21860674000926be1b7cc_566x369.jpg) 令偏導為零,最終可以計算出權重向量![](https://img.kancloud.cn/c3/69/c3697655be98f4c46ee8e02049693c68_12x7.jpg)為: ![這里寫圖片描述](https://img.kancloud.cn/f6/02/f602f41c7d5533d43df71685b02978af_566x401.jpg) 最終,我們推導得到了權重向量![](https://img.kancloud.cn/c3/69/c3697655be98f4c46ee8e02049693c68_12x7.jpg),這是上文提到的closed-form解。其中,![](https://img.kancloud.cn/dd/88/dd88d1574e8471a94ca8f531baf28d05_90x18.jpg)又稱為偽逆矩陣pseudo-inverse,記為![](https://img.kancloud.cn/05/c5/05c53b7e8ec04c22aa581501549a824c_14x11.jpg),維度是(d+1)xN。 但是,我們注意到,偽逆矩陣中有逆矩陣的計算,逆矩陣![](https://img.kancloud.cn/5d/ad/5dadb72cfffac75568e2b0aa86305749_64x18.jpg)是否一定存在?一般情況下,只要滿足樣本數量N遠大于樣本特征維度d+1,就能保證矩陣的逆是存在的,稱之為非奇異矩陣。但是如果是奇異矩陣,不可逆怎么辦呢?其實,大部分的計算逆矩陣的軟件程序,都可以處理這個問題,也會計算出一個逆矩陣。所以,一般偽逆矩陣是可解的。 ### **三、泛化問題** 現在,可能有這樣一個疑問,就是這種求解權重向量的方法是機器學習嗎?或者說這種方法滿足我們之前推導VC Bound,即是否泛化能力強![](https://img.kancloud.cn/5b/cf/5bcf9eebe555c8380ea4c84aea710839_23x14.jpg)? ![這里寫圖片描述](https://img.kancloud.cn/65/ee/65eee31fcec894cfc9d9264d3bb1cb57_566x357.jpg) 有兩種觀點:1、這不屬于機器學習范疇。因為這種closed-form解的形式跟一般的機器學習算法不一樣,而且在計算最小化誤差的過程中沒有用到迭代。2、這屬于機器學習范疇。因為從結果上看,![](https://img.kancloud.cn/5b/cf/5bcf9eebe555c8380ea4c84aea710839_23x14.jpg)和![](https://img.kancloud.cn/dd/0f/dd0f9962b91f91dfa644b8d9c6d853d2_29x14.jpg)都實現了最小化,而且實際上在計算逆矩陣的過程中,也用到了迭代。 其實,只從結果來看,這種方法的確實現了機器學習的目的。下面通過介紹一種更簡單的方法,證明linear regression問題是可以通過線下最小二乘法方法計算得到好的![](https://img.kancloud.cn/5b/cf/5bcf9eebe555c8380ea4c84aea710839_23x14.jpg)和![](https://img.kancloud.cn/dd/0f/dd0f9962b91f91dfa644b8d9c6d853d2_29x14.jpg)的。 ![這里寫圖片描述](https://img.kancloud.cn/fd/17/fd174b6b093e4c1e49b27939e045ae4a_566x367.jpg) 首先,我們根據平均誤差的思想,把![](https://img.kancloud.cn/5b/cf/5bcf9eebe555c8380ea4c84aea710839_23x14.jpg)寫成如圖的形式,經過變換得到: 我們稱![](https://img.kancloud.cn/05/c5/05c53b7e8ec04c22aa581501549a824c_14x11.jpg)為帽子矩陣,用H表示。 下面從幾何圖形的角度來介紹帽子矩陣H的物理意義。 ![這里寫圖片描述](https://img.kancloud.cn/65/fd/65fdf7fde7475ef1858789ff35ce518f_566x373.jpg) 圖中,y是N維空間的一個向量,粉色區域表示輸入矩陣X乘以不同權值向量w所構成的空間,根據所有w的取值,預測輸出都被限定在粉色的空間中。向量![](https://img.kancloud.cn/19/1d/191dcf08e23bf9e6e36b2cd4884c8f5f_8x16.jpg)就是粉色空間中的一個向量,代表預測的一種。y是實際樣本數據輸出值。 機器學習的目的是在粉色空間中找到一個![](https://img.kancloud.cn/19/1d/191dcf08e23bf9e6e36b2cd4884c8f5f_8x16.jpg),使它最接近真實的y,那么我們只要將y在粉色空間上作垂直投影即可,投影得到的![](https://img.kancloud.cn/19/1d/191dcf08e23bf9e6e36b2cd4884c8f5f_8x16.jpg)即為在粉色空間內最接近y的向量。這樣即使平均誤差![](https://img.kancloud.cn/89/83/898369365a215ddf664a31e964593012_14x14.jpg)最小。 從圖中可以看出,![](https://img.kancloud.cn/19/1d/191dcf08e23bf9e6e36b2cd4884c8f5f_8x16.jpg)是y的投影,已知![](https://img.kancloud.cn/19/1d/191dcf08e23bf9e6e36b2cd4884c8f5f_8x16.jpg),那么H表示的就是將y投影到![](https://img.kancloud.cn/19/1d/191dcf08e23bf9e6e36b2cd4884c8f5f_8x16.jpg)的一種操作。圖中綠色的箭頭![](https://img.kancloud.cn/21/1a/211adedd94ce850a677f7dcdfd9b94c8_8x10.jpg)是向量y與![](https://img.kancloud.cn/19/1d/191dcf08e23bf9e6e36b2cd4884c8f5f_8x16.jpg)相減,![](https://img.kancloud.cn/21/1a/211adedd94ce850a677f7dcdfd9b94c8_8x10.jpg)垂直于粉色區域。已知![](https://img.kancloud.cn/01/29/0129f990377c944be8cf74ed174b9fcf_122x18.jpg)那么I-H表示的就是將y投影到![](https://img.kancloud.cn/21/1a/211adedd94ce850a677f7dcdfd9b94c8_8x10.jpg)即垂直于粉色區域的一種操作。這樣的話,我們就賦予了H和I-H不同但又有聯系的物理意義。 這里trace(I-H)稱為I-H的跡,值為N-(d+1)。這條性質很重要,一個矩陣的 trace等于該矩陣的所有特征值(Eigenvalues)之和。下面給出簡單證明: ![](https://img.kancloud.cn/1a/71/1a71c14762d82a5792829c7ae519a5cf_256x18.jpg) ![](https://img.kancloud.cn/c4/08/c408eec8859151d256cdc5d647dcd080_347x18.jpg) ![](https://img.kancloud.cn/93/d8/93d8b1276832dbc89be0d1766d8350a7_336x18.jpg) ![](https://img.kancloud.cn/15/2e/152ebcd81d6da11dc4b08441428c2fab_100x18.jpg) 介紹下該I-H這種轉換的物理意義:原來有一個有N個自由度的向量y,投影到一個有d+1維的空間x(代表一列的自由度,即單一輸入樣本的參數,如圖中粉色區域),而余數剩余的自由度最大只有N-(d+1)種。 在存在noise的情況下,上圖變為: ![這里寫圖片描述](https://img.kancloud.cn/24/2d/242d2cd3e8ae6720cde2e0171c5d74ca_566x400.jpg) 圖中,粉色空間的紅色箭頭是目標函數f(x),虛線箭頭是noise,可見,真實樣本輸出y由f(x)和noise相加得到。由上面推導,已知向量y經過I-H轉換為![](https://img.kancloud.cn/21/1a/211adedd94ce850a677f7dcdfd9b94c8_8x10.jpg),而noise與y是線性變換關系,那么根據線性函數知識,我們推導出noise經過I-H也能轉換為![](https://img.kancloud.cn/21/1a/211adedd94ce850a677f7dcdfd9b94c8_8x10.jpg)。則對于樣本平均誤差,有下列推導成立: 即 同樣,對![](https://img.kancloud.cn/dd/0f/dd0f9962b91f91dfa644b8d9c6d853d2_29x14.jpg)有如下結論: 這個證明有點復雜,但是我們可以這樣理解:![](https://img.kancloud.cn/89/83/898369365a215ddf664a31e964593012_14x14.jpg)與![](https://img.kancloud.cn/89/83/898369365a215ddf664a31e964593012_14x14.jpg)形式上只差了![](https://img.kancloud.cn/d3/86/d386a73b5b452e2d3f8db445368f8b02_50x36.jpg)項,從哲學上來說,![](https://img.kancloud.cn/89/83/898369365a215ddf664a31e964593012_14x14.jpg)是我們看得到的樣本的平均誤差,如果有noise,我們把預測往noise那邊偏一點,讓![](https://img.kancloud.cn/89/83/898369365a215ddf664a31e964593012_14x14.jpg)好看一點點,所以減去![](https://img.kancloud.cn/d3/86/d386a73b5b452e2d3f8db445368f8b02_50x36.jpg)項。那么同時,新的樣本![](https://img.kancloud.cn/89/83/898369365a215ddf664a31e964593012_14x14.jpg)是我們看不到的,如果noise在反方向,那么![](https://img.kancloud.cn/89/83/898369365a215ddf664a31e964593012_14x14.jpg)就應該加上![](https://img.kancloud.cn/d3/86/d386a73b5b452e2d3f8db445368f8b02_50x36.jpg)項。 我們把![](https://img.kancloud.cn/89/83/898369365a215ddf664a31e964593012_14x14.jpg)與![](https://img.kancloud.cn/89/83/898369365a215ddf664a31e964593012_14x14.jpg)畫出來,得到學習曲線: ![這里寫圖片描述](https://img.kancloud.cn/2d/49/2d490e0b98bc482b37ac5cc509e46c22_566x411.jpg) 當N足夠大時,![](https://img.kancloud.cn/89/83/898369365a215ddf664a31e964593012_14x14.jpg)與![](https://img.kancloud.cn/89/83/898369365a215ddf664a31e964593012_14x14.jpg)逐漸接近,滿足![](https://img.kancloud.cn/89/83/898369365a215ddf664a31e964593012_14x14.jpg),且數值保持在noise level。這就類似VC理論,證明了當N足夠大的時候,這種線性最小二乘法是可以進行機器學習的,算法有效! ### **四、Linear Regression方法解決Linear Classification問題** 之前介紹的Linear Classification問題使用的Error Measure方法用的是0/1 error,那么Linear Regression的squared error是否能夠應用到Linear Classification問題? ![這里寫圖片描述](https://img.kancloud.cn/93/87/9387f8290ab30124dfe309d50aa96bc7_566x394.jpg) 下圖展示了兩種錯誤的關系,一般情況下,squared error曲線在0/1 error曲線之上。即![](https://img.kancloud.cn/1d/38/1d38212eed6550173d1f6dd3417c0a4e_103x17.jpg). ![這里寫圖片描述](https://img.kancloud.cn/0f/57/0f571db9598c314f31655a77f62f6b7f_566x362.jpg) 根據之前的VC理論,![](https://img.kancloud.cn/dd/0f/dd0f9962b91f91dfa644b8d9c6d853d2_29x14.jpg)的上界滿足: ![這里寫圖片描述](https://img.kancloud.cn/c7/bf/c7bf1a42f3080b810e68eb4b2f79e506_566x342.jpg) 從圖中可以看出,用![](https://img.kancloud.cn/1f/81/1f8117cc3d8c76beedd54958667d0472_39x12.jpg)代替![](https://img.kancloud.cn/e0/44/e044308c73d4b4eac418bac8fd3a5a82_39x13.jpg),![](https://img.kancloud.cn/dd/0f/dd0f9962b91f91dfa644b8d9c6d853d2_29x14.jpg)仍然有上界,只不過是上界變得寬松了。也就是說用線性回歸方法仍然可以解決線性分類問題,效果不會太差。二元分類問題得到了一個更寬松的上界,但是也是一種更有效率的求解方式。 ### **五、總結** 本節課,我們主要介紹了Linear Regression。首先,我們從問題出發,想要找到一條直線擬合實際數據值;然后,我們利用最小二乘法,用解析形式推導了權重w的closed-form解;接著,用圖形的形式得到![](https://img.kancloud.cn/dd/0f/dd0f9962b91f91dfa644b8d9c6d853d2_29x14.jpg),證明了linear regression是可以進行機器學習的,;最后,我們證明linear regressin這種方法可以用在binary classification上,雖然上界變寬松了,但是仍然能得到不錯的學習方法。 **_注明:_** 文章中所有的圖片均來自臺灣大學林軒田《機器學習基石》課程
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看