其實我們的linear regression也是有其他解的,這邊就不需要用到機器學習。
我們需要用到的是線性代數。
這邊的假設跟前篇一樣,是用線性模型配上最小平方法,只不過求解的過程只有用線性代數,而不是gradient descent。
我們來看我們的模型,他還是一如往常的線性模型,只不過有點不一樣的是,一般我們在二元一次方程式當中求解的時候,點是在直線上的,但是在regression問題當中,沒有那麼完美的事情!
所以在線性代數裡面做的事情是投影,有看到綠色向量了嗎,我盡量去找到一個在深藍色線上,距離離綠色向量最近的投影,當然數學上的投影都必須要求是直角。
這樣的方法自然跟我們的最小平方法一致,一樣是找距離最小。
要用到線性代數免不了要導一下公式拉~~~~甚麼!你說我標題打錯!才沒有哩!
首先,我們先請到我們的線性模型出場
如同各位所看到的,他就是跟前篇一樣的線性模型小姐,只不過我們在最後加上了誤差項,epsilon。
我們先假設我們的資料點帶進來之後長成這個樣子。
接著,講到線性代數就免不了要用一下矩陣拉~~
還記得矩陣長甚麼樣子吧!不記得得趕快回去翻課本或是上網google!
用了矩陣之後就不會那麼的繁雜難看了,他變得非常簡單。
我們把誤差項換到最左邊,其他推到右邊去。
我們要做的事,就是把它平方後,通通加起來。
矩陣的平方和,相當於是兩個向量內積,可以用ε^Tε
來表示他,他也可以展開成原本方程式的形式。
然後我們要對他動點手腳,由於我們要求的是最小值,所以在極值發生的地方,微分會是0喔~~
到這邊應該大家都還可以理解吧!
甚麼!你說你不知道矩陣要怎麼微分?沒關係,就把他看成平方就好!
這招別說是我教你的!(躲
微分好之後,會變成這樣,變成這樣應該會解了吧!
消掉-2之後展開,這就是著名的normal equation拉~~
然後只差一步就可以把結果導出來了。
這就是我們要求的係數拉~~~~變成了公式解。
這不只在simple linear regression能用,擴充到多維的multivariate regression也可以用喔!
P.S. 因為這裡只有支援markdown,沒有MathJax或Latex,讓我用powerpoint拉公式拉得非常痛苦,決定貼完公式就好