mooc机器学习第九天-多项式回归

cheflone cheflone     2022-12-05     626

关键词:

Mooc上一篇的房屋和价格回归预测使用的一元线性回归,这次该用多项式看看拟合效果有什么变化。

1.多项式原理简单介绍

(1).基本概念

多项式回归(Polynomial Regression)是研究一个因变量与一个或多个自变量间多项式的回归分析方法。如果自变量只有一个 时,称为一元多项式回归;如果自变量有多个时,称为多元多项式回归。 

        技术图片

 

 

在一元回归分析中,如果依变量y与自变量x的关系为非线性的,但是又找不到适当的函数曲线来拟合,则可以采用一元多项式回归。 

多项式回归的最大优点就是可以通过增加x的高次项对实测点进行逼近,直至满意为止。 

技术图片

 

 

事实上,多项式回归可以处理相当一类非线性问题,它在回归分析 中占有重要的地位,因为任一函数都可以分段用多项式来逼近。

 技术图片

 

 

2.代码

 

import matplotlib.pyplot as plt
import numpy as np
from sklearn.preprocessing import PolynomialFeatures
from sklearn import  linear_model
plt.rcParams[‘font.sans-serif‘]=[‘SimHei‘]

datasets_X=[]
datasets_Y=[]
fr=open(‘./prices.txt‘,
        ‘r‘)
lines=fr.readlines()
for line in lines:
    items = line.strip().split(‘,‘)
    datasets_X.append(int(items[0]))
    datasets_Y.append(int(items[1]))

length=len(datasets_X)
datasets_X=np.array(datasets_X).reshape([length,1])
datasets_Y=np.array(datasets_Y)
# print(datasets_X)

maxX=np.max(datasets_X)
minX=np.min(datasets_X)
X=np.arange(minX,maxX).reshape([-1,1])


#调用算法
poly_reg=PolynomialFeatures(degree=2)
#degree=2表示建立datasets_X的二 次多项式特征X_poly。
#更该数值可以提高曲线向真实点的逼近效果
X_poly=poly_reg.fit_transform(datasets_X)#利用创建好的特称来训练

#创建线性回归器
lin_reg_2=linear_model.LinearRegression()
lin_reg_2.fit(X_poly,datasets_Y)



#图像
plt.scatter(datasets_X,datasets_Y,color=‘r‘)
plt.plot(X,lin_reg_2.predict(poly_reg.fit_transform(X)),color=‘b‘)
plt.xlabel(‘Area‘)
plt.title(‘房屋价格和面积关系非线性拟合‘)
plt.ylabel(‘Price‘)
plt.show()

  

技术图片

 

 图示效果为4次多项式特征

 

参考:https://blog.csdn.net/bxg1065283526/article/details/80043049

#机器学习算法总结-第九天(xgboost)

查看详情

机器学习sklearn监督学习回归算法多项式回归polynomialregression(代码片段)

importnumpyasnpimportmatplotlib.pyplotaspltfromsklearnimportlinear_modelfromsklearn.preprocessingimportPolynomialFeaturesplt.rcParams['font.sans-serif']='SimHei'plt.rcParams['a 查看详情

机器学习sklearn监督学习回归算法多项式回归polynomialregression(代码片段)

importnumpyasnpimportmatplotlib.pyplotaspltfromsklearnimportlinear_modelfromsklearn.preprocessingimportPolynomialFeaturesplt.rcParams['font.sans-serif']='SimHei'plt.rcParams['a 查看详情

机器学习-多项式回归算法

...默,忍不住分享一下给大家。点击跳转到网站。简介多项式回归(PolynomialRegression)顾名思义是包含多个自变量的回归算法,也叫多元线性回归,多数时候利用一元线性回归(一条直线)不 查看详情

机器学习多项式回归(代码片段)

多项式回归前言1.多项式回归的⼀般形式2.多项式回归的实现2.1直线方程的拟合2.2使用多项式方程3.持续降低训练误差与过拟合前言我们在前面讲的都是⼀般线性回归,即使用的假设函数是⼀元⼀次方程,也就是二维平面... 查看详情

机器学习多项式回归与模型泛化(上)

一、什么是多项式回归直线回归研究的是一个依变量与一个自变量之间的回归问题,但是,在畜禽、水产科学领域的许多实际问题中,影响依变量的自变量往往不止一个,而是多个,比如绵羊的产毛量这一变量同时受到绵羊体重... 查看详情

机器学习100天:009多项式回归理论

机器学习100天,今天讲的是:多项式回归理论!在前两期视频我们讲解了简单线性回归理论,并解决了一个房价预测的问题,建立了一个房价与地区人口的线性关系。然而,如果数据的分布不是简单的线性关系,又该怎么做呢?... 查看详情

机器学习多项式回归原理介绍

【机器学习】多项式回归原理介绍【机器学习】多项式回归python实现【机器学习】多项式回归sklearn实现在上一节中我们介绍了线性回归的原理,然后分别用python和sklearn实现了不同变量个数的线性回归的几个例子。线性回归模型... 查看详情

机器学习100天:010多项式回归python实战(代码片段)

机器学习100天,今天讲的是:多项式线性回归Python实战——房价预测。上一节我们介绍了多项式线性回归理论,即构建一个二次多项式来拟合房价与地区人口的关系。今天我们就来编写一个二次多项式回归程序来构建房价预测的... 查看详情

机器学习多项式回归与模型泛化(下)

...都会较大的影响模型通常原因,使用的模型太复杂如高阶多项式回归。过拟合overfitting偏差和方差有一些算法天生高方差,KNN非参数学习通常都是高方差算法。因 查看详情

[机器学习与scikit-learn-21]:算法-逻辑回归-多项式非线性回归polynomialfeatures与代码实现(代码片段)

...c;抛物线,甚至是圆的情形。不同的曲线,需要的多项式的次数不同。第2章PolynomialFeatures 类参数详 查看详情

机器学习实战基础:创建多项式回归器(代码片段)

...主要的局限性,那就是它只能把输入数据拟合成直线,而多项式回归模型通过拟合多项式方程来克服这类问题,从而提高模型的准确性。准备工作  从图1-6中可以看到,数据点本身的模式中带有自然的曲线,而线性模型是... 查看详情

machinelearning学习目录

...性回归模型---“闭式”解方法、梯度下降(GD)5.多项式回归、学习曲线6.逻辑回归、Softmax回归---鸢尾花分类 查看详情

线性回归

...极小化损失函数)最小二乘OLS梯度下降GD线性回归的推广多项式回归广义线性回归正则化参考资料台湾大学《机器学习基石》视频Ng《机器学习》视频周志华《机器学习》线性回归原理小结Lasso回归算法:坐标轴下降法与最小角回... 查看详情

机器学习100天:010多项式回归python实战(代码片段)

机器学习100天,今天讲的是:多项式线性回归Python实战——房价预测。上一节我们介绍了多项式线性回归理论,即构建一个二次多项式来拟合房价与地区人口的关系。今天我们就来编写一个二次多项式回归程序来构建房价预测的... 查看详情

python机器学习一元和二元多项式回归梯度下降算法(代码片段)

python机器学习一元和二元多项式回归一元多项式一元多项式表达式为:Y=WTX=[w0+w1+⋯+wn]⋅[1+x+⋯+xn−1]TY=W^TX=\\left[w_0+w_1+\\cdots+w_n\\right]\\cdot\\left[1+x+\\cdots& 查看详情

机器学习:逻辑回归(使用多项式特征)(代码片段)

...如下图;因为这些样本点的分布是非线性的;方案:引入多项式项,改变特征,进而更改样本的分布状态;  二、具 查看详情

mooc机器学习第五天-模型分类

1.模型介绍                                &n 查看详情