拟合曲线
其中 a, b, c 为曲线的参数,w 为高斯噪声,满足 w ∼ (0, σ2 )。
问题本质就是求解下面的最小二乘问题以估计曲线参数:
拟合结果
参数估计结果,与设置的a=1, b=2, c=1还是比较接近的
直接上代码:
import numpy as np
import matplotlib.pyplot as plt
# 定义真实参数值
ar, br, cr = 1.0, 2.0, 1.0
# 定义估计参数值
ae, be, ce = 2.0, -1.0, 5.0
# 数据点数量
N = 100
# 噪声标准差
w_sigma = 1.0
# 生成数据
rng = np.random.default_rng()
x_data = np.linspace(0, 1, N)
y_da