李航《统计学习方法》多项式函数拟合问题V2

本文针对李航《统计学习方法》中的一项多项式函数拟合问题进行纠正,指出书中推导错误,并提供正确的推导过程。通过Python编程验证,展示了错误公式导致的拟合效果不佳。文章提供了高效的Python代码实现,包括3阶和9阶多项式拟合,对比展示原始数据生成函数与拟合函数的效果。
摘要由CSDN通过智能技术生成

最近在看李航的统计学习方法P11时发现一个多项式函数拟合问题觉得公式的推导有问题,于是看了一些资料发现这里的推倒是有错误的,用python编程验证后发现按书上的求导结果拟合后的函数图像完全不对,下面给出正确的推导结果和对应的python实现与拟合效果。

(第一次写了一版这篇博客,公式自己敲的,但是从别人那里贴的代码,后面感觉那个代码思路没问题,但就是进行了很多次重复计算,数据量大的时候效率低,而且很多地方对python的语言特性利用不足,写的有点类似C语言风格,比较晦涩。于是乎,把代码重写了一次,准备把文章撤下来重新贴自己的代码,这时候发现没有保存,前面用Tex敲的一堆公式就没了,心中顿时万马奔腾。。。。好在今天考试考完,强行克服拖延症把这篇文章重写一遍并附上重写的代码。)

下面开始正文

问题描述

假定给定一个训练数据集:

T={ (x1,y1),(x2,y2),,(xN,yN)}

其中, xiR 是输入 x 的观测值, yiR 是相应的输出y的观测值, i=1,2,,N ,多项式函数拟合的任务是假设给定数据由 M 次多项式函数生成,选择最有可能产生这些数据的 M 次多项式函数,即在 M 次多项式函数中选择一个对已知数据以及未知数据都有很好预测能力的函数。

M 次多项式为

fM(x,w)=w0+w1x+w2x2++wMxM=j=0Mwjxj

式中 x 式单变量输入,

  • 21
    点赞
  • 66
    收藏
    觉得还不错? 一键收藏
  • 16
    评论
拟合功能说明: 对于形如y=a1*x^n+a2*x^(n-1)+...+an*x+a(n+1)的函数,若a1,a2,...,a(n+1)未知,则可以由n+1对不同的(x,y)值求出这些a的值。更进一步的说,给你一条X-Y轴平面里的曲线,或是,已知一系列的(x,y)值,要你用一个近似的一元函数拟合它,该怎么办?这个时候你不知道该一元函数的最高次数是多少,即不知道未知数系数a1,a2,...,a(n+1)的个数。在这里显然要先假设一个n的值,再来算出这些系数值:有n+1个未知数系数要求,就得有n+1对(x,y)的值,这样可以精确算出唯一的解。但是,如果给你的(x,y)值对数多于n+1对该怎么办(因为你碰到的情况几乎都是这样的)?你算出来的近似函数得兼顾所有的(x,y)取样点,使得误差最小。你不能只取所有(x,y)取样点中的n+1对计算,而扔掉了多出来的那些取样点。该程序的拟合功能就是完成这个任务的。它会计算所有的取样点,最后得出一个误差最小的函数。 执行过程如下: 先读取右边两个编辑框内的(x,y)取样点,再弹出一个对话框让你假设一个一元函数,即最高次数n,然后程序会开始计算。注意,若n设的太大,计算过程可能会很久,会造成程序假死现象。得出的结果会直接以函数的形式显示在下面的长条形编辑框内。你可以通过点击“←画图”和“画图→”来进行比较拟合的近似程度。注意,你设置的n值不是越大,就拟合得越好,也不是越小,拟合得越好,原因你细想一下就会明白。程序所用的计算原理是最小二乘法,所用的计算方法是矩阵运算。你可以百度相关知识。 该程序的另外一个“辨识”功能,用到的也是最小二乘法,传递函数等相关知识是大学工科学生会学到的。 其他不懂的问题请联系作者:hastings1986@163.com。
李航的《统计学习方法》是一本经典的统计学习教材,其中涵盖了统计学习的基本理论和方法。该书主要介绍了统计学习的三要素:模型、策略和算法。引用提到,训练集用来训练模型,验证集用来选择模型,测试集用于对学习方法的评估。这些三要素是统计学习方法的基础。引用进一步解释了统计学习的目标,即通过构建概率统计模型对数据进行准确的预测与分析,并提高学习效率。引用提到了一种常用的统计学习方法,即提升(boosting),它通过改变训练样本的权重,学习多个弱分类器,并将它们线性组合成一个强分类器,以提高分类的性能。 总结起来,李航的《统计学习方法》笔记主要围绕统计学习的基本理论和方法展开,介绍了统计学习的三要素、目标和提升等常用方法。这本书对于学习统计学习的人来说是一本非常有价值的参考资料。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [统计学习方法——李航 笔记](https://blog.csdn.net/qq_45383347/article/details/110482540)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [李航统计学习方法学习笔记](https://blog.csdn.net/liuzuoping/article/details/98840923)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值