机器学习经典算法之(十九)多项式回归

本文介绍了多项式回归作为解决非线性问题的一种方法,通过添加特征的高次方来提升模型复杂度,以更好地拟合数据。文中通过实例展示了如何使用sklearn库实现多项式回归,并探讨了模型复杂度与过拟合风险的关系。
摘要由CSDN通过智能技术生成

(一)多项式回归简介:

在上一篇的一般线性回归中,使用的假设函数是一次方程,假设数据集呈简单线性关系,但实际上,很多不是非线性的,直线方程无法很好的拟合数据的情况,这个时候可以尝试使用多项式回归方式。

多项式回归中,加入了特征的更高次方,也相当于增加了模型的自由度,用来捕获数据中非线性的变化。添加高阶项的时候,也增加了模型的复杂度。随着模型复杂度的升高,模型的容量以及拟合数据的能力增加,可以进一步降低训练误差,但导致过拟合的风险也随之增加。

(二)多项式回归实现原理:

我们以y=ax2为例。实际上就是将x2作为一个特征值。

__author__ = 'Administrator'

import sys

import numpy as np

import matplotlib.pyplot as plt

x=np.random.uniform(-3,3,size=100)

X=x.reshape(-1,1)

y=2*x**2+3*x+2+np.random.normal(0,1,size=100)

plt.scatter(X,y,c='g')

from sklearn import linear_model

linear_regressor = linear_model.LinearRegression()

linear_regressor.fit(X, y)

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值