假設我們有m個樣本。特徵向量的維度為n。因此,可知樣本為,其中對於每乙個樣本中的x
(i),都有x
(i)=。令 h(θ)=θ
0 + θ1x
1+θ2x
2 +... + θnx
n,則有
這個很好示意,但是維度標記錯誤了。x 是 m*(n+1) 維, θ 包含θ
0為(n+1) * 1 維。
若希望h(θ)=y,則有
x · θ = y
我們先來回憶一下兩個概念:單位矩陣 和 矩陣的逆,看看它們有什麼性質。
(1)單位矩陣e
ae=ea=a
(2)矩陣的逆a-1
要求:a必須為方陣
性質:aa-1=a-1a=e
再來看看式子 x · θ = y
若想求出θ,那麼我們需要做一些轉換:
step1:先把θ左邊的矩陣變成乙個方陣。通過乘以xt可以實現,則有
xtx · θ = xt
ystep2:把θ左邊的部分變成乙個單位矩陣,這樣就可以讓它消失於無形了……
(xtx)-1
(xtx) · θ = (xtx)-1xty
step3:由於(xtx)-1
(xtx) = e,因此式子變為
eθ = (xtx)-1xty
e可以去掉,因此得到
θ = (xtx)-1xty
這就是我們所說的normal equation了。
通過cost function 來計算引數的值:
損失函式迭代推導目標函式:
目標函式推導過程:
同樣得到也是
θ = (xtx)
-1xty
normal equation vs gradient descent
normal equation 跟 gradient descent(梯度下降)一樣,可以用來求權重向量θ。但它與gradient descent相比,既有優勢也有劣勢。
優勢:normal equation
可以不在意x特徵的scale。比如,有特徵向量x=, 其中x1的range為1~2000,而x2的range為1~4,可以看到它們的範圍相差了500倍。如果使用gradient descent
方法的話,會導致橢圓變得很窄很長,而出現梯度下降困難,甚至無法下降梯度(因為導數乘上步長後可能會衝出橢圓的外面)。但是,如果用normal equation
方法的話,就不用擔心這個問題了。因為它是純粹的矩陣演算法。
劣勢:相比於gradient descent
,normal equation
需要大量的矩陣運算,特別是求矩陣的逆。在矩陣很大的情況下,會大大增加計算複雜性以及對計算機記憶體容量的要求。
元資料的由來與定義
存在很多關於元資料與 xml之間的關係的似是而非的認識,這裡談談我的看法。自然數集合是公理性認識,數總是與運算相聯絡的,即所謂的數與運算的不可分性。所謂運算的完美性,就是數學的純粹性,即數學研究當中可以不計較其應用特徵,而僅僅追求數學的內在的規律性。運算的完美性,擴大了數的範疇。如加法運算的逆運算,...
物流的由來
distribution 一詞最早出現出美國。1921年阿奇.蕭在 市場流通中的若干問題 some problem in market distribution 一書中提出 物流是與創造需要不同的乙個問題 並提到 物資經過時間或空間的轉移,會產生附加價值 這裡,market distribution...
貨幣的由來
天天和錢打交道,但總是弄不清楚為什麼世上要有錢。中學課本上說過,老師也說過,都沒弄明白,還是自己有空的時候,睡在床上,大致給想明白了,也不知對否,姑且寫下來吧。原始社會,人們茹毛飲血,生活艱苦,終日面對大自然的威脅。但令現代人羨慕的是,他們不用為錢操勞,也不用痛苦地思考,只是一味地勞動,為溫飽拼搏。...