PRML之多项式曲线拟合

本文介绍了PRML中的多项式曲线拟合,通过Python实现数据生成,并探讨了不同阶数多项式对拟合效果的影响。在N=10的数据点上,从欠拟合到过拟合的问题,揭示了模型复杂度与泛化能力的平衡。通过测试集的RMS误差评估,定量分析了模型选择的重要性。
摘要由CSDN通过智能技术生成

给定⼀个训练集。这个训练集由x的N次观测组成,写作x≡ (x1,…,xN)T,伴随这对应的t的观测值,记作t≡ (t1,…,tN)T。图1展⽰了由N = 10个数据点组成的图像。图中的输⼊数据集合x通过选择xn(n= 1,...,N)的值来⽣成。这些xn均匀分布在区间[0,1],⽬标数据集t的获得⽅式是:⾸先计算函数sin(2πx)的对应的值,然后给每个点增加⼀个⼩的符合⾼斯分布的随机噪声,从⽽得到对应的tn的值。通过使⽤这种⽅式产⽣数据。


需要导入的模块如下

import numpy as np

import matplotlib.pyplot as plt

%matplotlib inline

 

#分别在prmlfeatureslinear文件夹下,需要自行下载,我会在文末给出github地址

#特征生成

fromprml.featuresimport PolynomialFeatures

fromprml.linearimport (

   LinearRegressor,

    RidgeRegressor,

   BayesianRegressor

)

 

np.random.seed(1234)

PolynomialCurve Fitting

def func, sample_size, std):
= np(1= func(x)  nprandomnormalscalestd, size.)return 
def (x
     npsin(
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值