1. 程式人生 > >【原創】算法分享(7)最小二乘法

【原創】算法分享(7)最小二乘法

方法 最小值 幾何 adc 直線方程 dstat 技術分享 ecb image

Ordinary Least Square 最小二乘法

提到最小二乘法要先提到擬合,擬合Fitting是數值分析的基礎工具之一,在二維平面上分為直線擬合和曲線擬合,直線擬合找到一條直線盡可能穿過所有的點,註意這裏是盡可能,因為只要超過2個點,就有可能發生直線不能精確穿過所有點的情況,這時確定直線的原則有很多種,最小二乘法就是其中的一種,當直線不能穿過點時產生誤差(點和直線的距離),最小二乘法就是讓所有點的誤差的平方和最小;

最小二乘法(又稱最小平方法)是一種數學優化技術。它通過最小化誤差的平方和尋找數據的最佳函數匹配。利用最小二乘法可以簡便地求得未知的數據,並使得這些求得的數據與實際數據之間誤差的平方和為最小。

直線擬合(線性回歸)過程如下圖:

技術分享圖片

來看標準定義:

對給定數據點集合 技術分享圖片 ,在取定的函數類 技術分享圖片 中,求 技術分享圖片 ,使誤差的平方和 技術分享圖片 最小, 技術分享圖片 。從幾何意義上講,就是尋求與給定點集技術分享圖片 的距離平方和為最小的曲線y=p(x)。函數p(x)稱為擬合函數或最小二乘解,求擬合函數p(x)的方法稱為曲線擬合的最小二乘法。

假設直線方程為

技術分享圖片

則誤差為

技術分享圖片

其中di表示(xi, yi)點的誤差

所有誤差的平方和為

技術分享圖片

這是一個2次函數,2次函數曲線如圖:

技術分享圖片

2次函數中D的最小值位於導數等於0的點,所以計算D對a和b的兩個偏導數為0即可得到兩個關於a和b的方程,

最終計算得出a和b的計算公式為:

技術分享圖片

技術分享圖片

公式推導過程詳見 https://www.cnblogs.com/paiandlu/p/7843236.html

【原創】算法分享(7)最小二乘法