python 最小二乘法_多项式最小二乘法拟合的python代码实现

这篇博客介绍了如何使用Python实现最小二乘法进行多项式拟合,通过实例展示了不同阶数(m=1, 3, 9)的多项式拟合,并提供了相应的代码实现。博主在学习《统计学习方法》时,对最小二乘法进行了实践,探讨了过拟合问题。" 125003135,14122204,JAVA中的多路复用与Reactor模式解析,"['Java开发', '网络编程', '并发处理']
摘要由CSDN通过智能技术生成

最近学习李航《统计学习方法》,在github上找到了这本书对应的源码,决定自己跟着敲一敲代码,也感谢代码的贡献者,链接如下:

https://github.com/fengdu78/lihang-code​github.com

第一章有一个关于使用最小二乘法演示过拟合的示列,但最小二乘法的实现直接使用了scipy库中的leastsq,于是自己网上找了关于最小二乘法的矩阵求解,据此进行了简单的代码实现。关于多项式系数的最小二乘法推导如下(线代杀我 ):

7c5936b48bf80eece5aa415369edf5dd.png

实现代码如下:

def leastsq_mutifunc(x, y, m):
    """
    多项式最小二乘法实现
    :param x:输入
    :param y:目标输出
    :param m:多项式阶数
    :return:多项式系数
    """
    x = np.array(x)
    y = np.array(y)

    assert m <= x.shape[0], f"the number of m({m}) need less than x's size({x.shape[0]})"
    assert x.shape[0] == y.shape[0], f"the size of x({x.shape[0]}) must equal to 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值