iT邦幫忙

2017 iT 邦幫忙鐵人賽
DAY 3
2
Big Data

我的資料科學之路系列 第 3

[Day 03] linear regression--線性代數解

  • 分享至 

  • xImage
  •  

其實我們的linear regression也是有其他解的,這邊就不需要用到機器學習。
我們需要用到的是線性代數

在不同世界做同一件事

這邊的假設跟前篇一樣,是用線性模型配上最小平方法,只不過求解的過程只有用線性代數,而不是gradient descent。

我們來看我們的模型,他還是一如往常的線性模型,只不過有點不一樣的是,一般我們在二元一次方程式當中求解的時候,點是在直線上的,但是在regression問題當中,沒有那麼完美的事情!

所以在線性代數裡面做的事情是投影,有看到綠色向量了嗎,我盡量去找到一個在深藍色線上,距離離綠色向量最近的投影,當然數學上的投影都必須要求是直角。
這樣的方法自然跟我們的最小平方法一致,一樣是找距離最小

推導公式

要用到線性代數免不了要導一下公式拉~~~~甚麼!你說我標題打錯!才沒有哩!
首先,我們先請到我們的線性模型出場

如同各位所看到的,他就是跟前篇一樣的線性模型小姐,只不過我們在最後加上了誤差項,epsilon。

我們先假設我們的資料點帶進來之後長成這個樣子。
接著,講到線性代數就免不了要用一下矩陣拉~~

還記得矩陣長甚麼樣子吧!不記得得趕快回去翻課本或是上網google!

用了矩陣之後就不會那麼的繁雜難看了,他變得非常簡單。

最小平方法

我們把誤差項換到最左邊,其他推到右邊去。
我們要做的事,就是把它平方後,通通加起來。

矩陣的平方和,相當於是兩個向量內積,可以用ε^Tε來表示他,他也可以展開成原本方程式的形式。
然後我們要對他動點手腳,由於我們要求的是最小值,所以在極值發生的地方,微分會是0喔~~

到這邊應該大家都還可以理解吧!
甚麼!你說你不知道矩陣要怎麼微分?沒關係,就把他看成平方就好!

這招別說是我教你的!(躲

微分好之後,會變成這樣,變成這樣應該會解了吧!

消掉-2之後展開,這就是著名的normal equation拉~~
然後只差一步就可以把結果導出來了。

這就是我們要求的係數拉~~~~變成了公式解。
這不只在simple linear regression能用,擴充到多維的multivariate regression也可以用喔!

P.S. 因為這裡只有支援markdown,沒有MathJax或Latex,讓我用powerpoint拉公式拉得非常痛苦,決定貼完公式就好


上一篇
[Day 02] 解構linear regression
下一篇
[Day 04] Gradient descent
系列文
我的資料科學之路34
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
0
WeiYuan
iT邦新手 4 級 ‧ 2016-12-18 18:54:42

公式看起來好大好可怕(誤

杜岳華 iT邦新手 5 級 ‧ 2016-12-18 19:31:33 檢舉

那我來把他調小一點XD

杜岳華 iT邦新手 5 級 ‧ 2016-12-18 19:38:12 檢舉

很好XD
他似乎動不了XD

0
life_odegeo
iT邦新手 5 級 ‧ 2019-02-13 09:29:21

為何看不到公式?

0
Sam Chein
iT邦新手 5 級 ‧ 2021-01-13 09:47:32

看不到圖

我要留言

立即登入留言