求乙個函式的引數,例如下面這個方程,我們一般都會用梯度下降法去求。
還會不會有其他方法求引數呢?答案是有的,可以用正規方程(normal equation)去求引數。
那麼問題來了,什麼是正規方程呢?這個方程長什麼樣子,就讓我們來見識一下。
其中 x 是乙個矩陣,這個矩陣的每一行都是一組特徵值,y 是資料集結果的向量。
舉個例子,還是求房價,現在有 4 組訓練集,如下表:
?0 就代表常數項。在這個例子中,矩陣 x 為:
可以看出,矩陣 x 的每一行都代表一組資料集的特徵值。向量 y 為:
這樣通過正規方程就可以很容易地求出引數 θ(一定要注意,這裡的引數 θ 是乙個向量)。
既然求引數 θ 有兩種方法,乙個為梯度下降法,乙個為正規方程,那麼他倆之間一定會有優缺點,下表就是這兩種方法的優缺點的對比:
當特徵值 n 非常大時,正規方程工作效率低的原因是要求乙個非常大的矩陣的逆矩陣。
提到逆矩陣,就會出現矩陣的不可逆性,如果我們遇到了矩陣不可逆該怎麼辦呢?
正規方程有兩種情況會出現不可逆性,也就是這個矩陣無法得出。
第一種情況:出現了兩個相似的特徵,這個兩個特徵可以用乙個線性關係進行表示。例如,公尺和英呎,這兩個都是用來描述長度的單位,且他們之間可以進行相互轉化,如果特徵值同時出現他們兩個,就會出現矩陣不可逆的情況。
解決方法:去掉任意乙個即可。
第二種情況:特徵值的數量特別多,但是資料集的數量特別少。
解決方法:增加資料集或減少特徵值。
機器學習 正規方程
梯度下降法計算引數最優解,過程是對代價函式的每個引數求偏導,通過迭代演算法一步步更新,直到收斂到全域性最小值,從而得到最優引數。正規方程是一次性求得最優解。思想 對於乙個簡單函式,對引數求導,將其值置為0,就得到引數的值。像下面這樣 現實例子有很多引數,我們要對這些引數都求偏導數,得到各個引數的最優...
機器學習 正規方程,正則化
對於某些線性回歸問題,正規方程方法很好解決 fracj theta j 0 假設我們的訓練集特徵矩陣為 x 包含了 x0 並且我們的訓練集結果為向量 y,則利用正規方程解出向量 theta x tx x ty 注意 x tx 如果特徵數量n較大,運算代價就很大,一般小於10000即可 只適用於線性模...
機器學習 線性回歸,梯度下降演算法與正規方程
個人對這方面的理解,文字純手打,來自於coursera的課件 1.線性回歸的定義 給出若干的訓練集 訓練集中x j i 表示樣本j中第i個項 然後擬合為一條直線,使得cost最小 不妨先看乙個例子,拿課程中的例子,賣房 現在已經知道了若干的房子的大小以及賣出去的 現在跟著這些資訊,來推斷一些房子的 ...