如果目标函数是
如何在python中编码?我已经编写了正常的代码:
将 numpy 导入为 np 将 scipy 导入为 sp 从 scipy.optimize 导入最小平方 将pylab导入为pl m = 9 #多项式的次数 def real_func(x): 返回 np.sin(2*np.pi*x) #sin(2 pi x) def fake_func(p, x): f = np.poly1d(p) #多项式 返回 f(x) def残差(p,y,x): 返回 y - fake_func(p, x) #随机选择9个点作为x x = np.linspace(0, 1, 9) x_show = np.linspace(0, 1, 1000) y0 = real_func(x) #添加归一化噪声 y1 = [np.random.normal(0, 0.1) + y for y in y0] p0 = np.random.randn(m) plsq = 最小平方(残差,p0,args=(y1,x)) print '拟合参数:', plsq[0] pl.plot(x_show, real_func(x_show), label='real') pl.plot(x_show, fake_func(plsq[0], x_show), label='拟合曲线') pl.plot(x, y1, 'bo', label='有噪音') pl.legend() pl.show()