Py 机器基础及其实践 4_第1页
Py 机器基础及其实践 4_第2页
Py 机器基础及其实践 4_第3页
Py 机器基础及其实践 4_第4页
Py 机器基础及其实践 4_第5页
已阅读5页,还剩10页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第7章线性回归7.1回归分析概述7.2线性回归7.3本章小结17.1回归分析概述学习基础学习认知能力信息素养高回归分析通过研究一个或多个自变量与因变量的关系,建立自变量与因变量的数学模型,从而利用该模型进行预测。根据自变量与因变量的个数,回归分析可分为一元回归分析、多元回归分析、逻辑回归分析等。根据自变量与因变量的函数表达式可分为线性回归和非线性回归分析。线性回归是回归分析中最基本的分析方法,对于非线性回归,可借助数学手段将其转换为线性回归来解决。线性回归的数学公式可表示为:7.2线性回归7.2.1单变量线性回归假设数据集D={(x1,y1),(x2,y2),(x3,y3),…,(xm,ym)},它的线性模型就是试图通过该数据集学习一个线性方程以进行预测:为了学习到参数W和b,可用最小二乘逼近来拟合,预测函数h(x)与y之间的差值平方和为:7.2线性回归梯度下降法分别对W和b求偏导来求解参数W和b:W和b的迭代求解:7.2单变量线性回归defOptimization(x,y,w,lr,iter):m=len(x)alpha=lrh=0foriinrange(iter):sum0=0.0sum1=0.0forjinrange(m):h=w[0]+w[1]*x[j]sum1+=(h-y[j])*x[j]sum0+=(h-y[j])w[0]-=alpha*sum0/mw[1]-=alpha*sum1/mreturnw7.2线性回归LinearRegression是sklearn.linear_model子类模块下中的回归模型,主要通过调用LinearRegression函数、fit函数和predict函数来训练和预测模型。LinearRegression(copy_X=True,fit_intercept=True,n_jobs=1,normalize=False)fit(X,y[,n_jobs])返回值分为两个部分:coef_和intercept_,其中coef_存储LinearRegression模型的回归系数。intercept_存储LinearRegression模型的回归截距。::predict(X)主要是利用训练模型预测,使用训练得到的估计器或模型对输入的X数据集进行预测,返回结果为预测值。数据集X通常划分为训练集和测试集:7.2线性回归根据表7-1所示的房屋面积和房价之间的对应关系,建立线性回归模型。clf=LinearRegression()x=np.array(x)y=np.array(y)x=x.reshape(len(x),1)y=y.reshape(len(y),1)clf.fit(x,y)pre=clf.predict(x)plt.plot(x,pre)plt.xlabel('面积(平方米)')plt.ylabel('房价(万元)')plt.show()7.2线性回归(1)牛顿法求解线性回归问题的原理假设要求f(x)的解,二阶泰勒展开式为:将非线性优化问题min

f(x)近似为二次函数的最优化求解问题:对公式7-10的求解转化为对函数求导:7.2线性回归牛顿法求解线性回归问题的算法实现7.2线性回归7.3.1多变量回归分析原理对于多变量中的自变量与因变量的关系可表示为:(1)解析法求解利用最小二乘法最小代价函数:对公式(8-19)中的参数求偏导,则有:7.2线性回归梯度下降法迭代公式:在数据量特别大的情况下,一般会使用梯度下降求解法。7.2线性回归【例7-2】根据表7-2所示的运输里程、运输次数与运输总时间的对应关系,利用解析法建立多元线性回归模型。X=xdata[:,:-1]Y=xdata[:,-1]X_one=np.ones(len(X))X0=np.vstack(np.ones((len(X),1)))#10*1X=np.hstack((X0,X))X_T=np.transpose(X)#将X转置X_TX=np.matmul(X_T,X)#计算X_T*XX_TX_inv=np.linalg.inv(X_TX)#计算(X_T*X)^(-1)X_TX_inv_X_T=np.matmul(X_TX_inv,X_T)#计算(X_T*X)^(-1)*X_TW=np.matmul(X_TX_inv_X_T,Y)#计算(X_T*X)^(-1)*X_T*Y,即W7.2线性回归多项式回归是线性回归模型的一种,假设存在一个函数,只有一个自变量,即只有一个特征属性,满足多项式函数如下:其损失函数为:7.2线性回归【例7-4】根据给定的数据集x=[6,9,15,29,35,46,60,66,73,91,95],y=[16,25,61,67,51,38,36,49,68,82,98],拟合出多项式回归曲线。deffit_poly(n):para=np.random.randn(n)w=leastsq(err_func,para,args=(np.array(x),np.array(y)))returnw[0]#返回多项式系数7.3本章小结本章主要介绍了线性回归。回归分析是广泛应用的统计学分析方法,其通

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论