最小二乘法(又稱最小平方法)是一種數學優化技術。它通過最小化誤差的平方和尋找資料的最佳函式匹配。
c++實現**如下:
[cpp]view plain
copy
#include
#include
#include
using
namespace
std;
//最小二乘擬合相關函式定義
double
sum(vector<
double
> vnum,
intn);
double
mutilsum(vector<
double
> vx, vector<
double
> vy,
intn);
double
relatepow(vector<
double
> vx,
intn,
intex);
double
relatemutixy(vector<
double
> vx, vector<
double
> vy,
intn,
intex);
void
ematrix(vector<
double
> vx, vector<
double
> vy,
intn,
intex,
double
coefficient);
void
calequation(
intexp,
double
coefficient);
double
f(double
c,int
l,int
m);
double
em[6][4];
//主函式,這裡將資料擬合成二次曲線
intmain(
intargc,
char
* argv)
; double
arry2[5]=;
double
coefficient[5];
memset(coefficient,0,sizeof
(double
)*5);
vector
> vx,vy;
for(
inti=0; i<5; i++)
ematrix(vx,vy,5,3,coefficient);
printf("擬合方程為:y = %lf + %lfx + %lfx^2 \n"
,coefficient[1],coefficient[2],coefficient[3]);
return
0;
} //累加
double
sum(vector<
double
> vnum,
intn)
return
dsum;
} //乘積和
double
mutilsum(vector<
double
> vx, vector<
double
> vy,
intn)
return
dmultisum;
} //ex次方和
double
relatepow(vector<
double
> vx,
intn,
intex)
return
resum;
} //x的ex次方與y的乘積的累加
double
relatemutixy(vector<
double
> vx, vector<
double
> vy,
intn,
intex)
return
dremultisum;
} //計算方程組的增廣矩陣
void
ematrix(vector<
double
> vx, vector<
double
> vy,
intn,
intex,
double
coefficient)
em[i][ex+1]=relatemutixy(vx,vy,n,i-1);
} em[1][1]=n;
calequation(ex,coefficient);
} //求解方程
void
calequation(
intexp,
double
coefficient)
} coefficient[exp]=em[exp][exp+1]/em[exp][exp];
for(
intl=exp-1;l>=1;l--)
//回代求解
coefficient[l]=(em[l][exp+1]-f(coefficient,l+1,exp))/em[l][l];
} //供calequation函式呼叫
最小二乘法擬合多項式
最小二乘法擬合多項式 求解 給定資料點 xi yi 用最小二乘法擬合資料的多項式,並求平方誤差。include include include include using namespace std const int maxn 1000 int n,m double b maxn xy doubl...
最小二乘法 多項式
多項式最小二乘法 基於一元二次方程進行推理 方程式是 f x ax 2 bx c 其中點 n x i,y i 表示多個點資訊,擬合乙個二次方程 其中原理為 i 1 n a x i 2 bx i c y i 2 min 對各個係數求導 i 1 n a x i 2 bx i c y i 2 min 對a...
多項式曲線擬合最小二乘法
對給定的試驗資料點 xi,yi i 1,2,n 可以構造m次多項式 資料擬合的最簡單的做法就是使誤差p xi yi的平方和最小 當前任務就是求乙個p x 使得 從幾何意義上講就是尋求給與定點 xi,yi 距離的平方和最小的曲線y p x 函式p x 稱為擬合函式或者是最小二乘解,求擬合函式p x 的...