版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第4章简单房价预测项目程序设计课程实践课前视频学习任务4.1问题描述与解题思路.mp44.2项目实现.mp4课前实践任务以个人为单位,使用一元线性回归方法求解简单房价预测问题,画出相应的程序流程图,最终实现项目开发;2人一组,结对编程方式,使用多元线性回归方法求解波士顿房价预测问题,画出相应的程序流程图;(第4章项目拓展)课堂测试(5分钟)课堂讨论(35分钟)课堂讨论1、一元线性回归方法的数学推导。线性回归数理统计中回归分析方法一元线性回归分析多元线性回归分析
最小二乘法通过最小二乘法求解J的最小值,过程如下:将代入预测函数,可得到预测房价的值:将的值代入总误差公式J中,得:对J分别求
和
的偏导。偏导等于0时,得到J的最小值,由此求得
和
的值。最小二乘法
最小二乘法
最小二乘法和的值如下:最终求得和的值代入函数将求得的得到一元线性回归模型。简单房价预测问题(1)分析数据关系。一元线性回归方法求解简单房价预测项目代码分析课堂讨论2、多元线性回归方法的数学推导
课堂讨论
课堂讨论为了得到w的最优解,需要取J(w)的最小值。本项目采用对w进行梯度下降(其中α为学习率)的方法获取最优解。整个训练过程就是基于梯度下降的方法去不断缩小预测值与真实值之间差值的过程。表达式如下:
课堂讨论
课堂讨论
课堂讨论
课堂讨论3、使用多元线性回归方法求解波士顿房价预测问题的程序流程设计波士顿房价预测数据集分析波士顿房价数据集(部分)CRIMZNINDUSCHASNOXRMAGEDISRADTAXPTRATIOBLSTATMEDV0.259150.0021.89000.62405.693096.001.78834437.021.20392.1117.1916.200.111320.0027.74000.60905.983083.502.10994711.020.10396.9013.3520.100.050830.005.19000.51506.316038.106.45845224.020.20389.715.6822.200.056020.002.46000.48807.831053.603.19923193.017.80392.634.4550.002.733970.0019.58000.87105.597094.901.52575403.014.70351.8521.4515.400.253560.009.90000.54405.705077.703.94504304.018.40396.4211.5016.200.1621120.006.96000.46406.240016.304.42903223.018.60396.906.5925.20波士顿房价预测数据集分析属性名解释类型CRIM:城镇人均犯罪率连续值ZN住宅用地所占比例连续值INDUS城镇非商业用地的比例连续值CHAS是否临近查尔斯河,边界是河流为1,否则0离散值,1=临近,0=不临近NOX一氧化氮浓度连续值RM住宅平均房间数连续值AGE1940年之前建成的自用房屋比例连续值DIS到波士顿5个中心区域的加权距离连续值RAD距离高速公路的便利指数连续值TAX每10000美元的全值财产税率连续值PTRATIO城镇师生比例连续值B1000(Bk-0.63)^2,其中Bk指代城镇中黑人的比例连续值LSTAT低收入人群的比例连续值MEDV自住房的平均房价连续值波士顿房价预测数据集预处理数据预处理:因为各维度数据的单位都不一致,因此在训练模型前,需要对数据归一化处理。归一化方法:(特征值-特征最小值)/(特征最大值-特征最小值)
注意:如果缺少归一化步骤,不同特征值的取值范围大小不同,可能会导致利用梯度下降法训练的结果异常,可能返回的值都是缺失值。算法步骤步骤1:数据读入步骤2:获取每一维度数据最大和最小值,进行数据归一化处理步骤3:多元线性回归方法进行模型训练(梯度下降法)(数据集拆分,训练集100个,测试集50个)步骤4:房价预测及预测准确度计算。课堂实践答疑解惑谢谢观看多元线性回归林菲杭州电子科技大学
目录CONTENTS1回归定义2算法流程3超参数4解题思路定义1PARTONE回归分析回归分类线性回归回归预测回归分析
回归分析:确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法。也就是根据数据集D,拟合出近似的曲线,所以回归也常称为拟合(Fit)。
回归分析后将得到回归方程,与具体数据结合后可得到对应的预测结果。回归预测回归分类一元回归分析
回归分析因变量和自变量的个数因变量和自变量的函数表达式多元回归分析线性回归分析非线性回归分析线性回归一元线性回归因变量和自变量的个数多元线性回归定义:仅用一个特征进行的线性回归定义:通过n个特征进行的线性回归公式:y=wx+b
例子:学分绩点=(综合成绩-60)/10+1.5
算法流程2数据预处理算法模型模型评估PARTTWO模型预测算法流程算法流程打个形象的比喻:
训练集——学生的课本;学生根据课本里的内容来掌握知识。
验证集——作业,通过作业可以知道不同学生学习情况、进步的速度快慢。
测试集——考试,考的题是平常都没有见过,考察学生举一反三的能力。说明:一般三者切分的比例是6:2:2,验证集并不是必须的。数据预处理
数据预处理(datapreprocessing)是指对所收集数据进行分类或分组前所做的审核、筛选、排序等必要的处理。常用的数据预处理方式有数据归一化、数据增强、缺失值处理、异常点/离群点检测等。最大最小值归一化方法:将不同量纲的数据统一归一化为[0,1]之间的数据。缺点:这种方法有个缺陷就是当有新数据加入时,可能导致max和min的变化,需要重新定义。最大最小值归一化方法:将不同量纲的数据统一归一化为[0,1]之间的数据。模型训练—多元线性回归公式
损失函数
损失函数(lossfunction)又称代价函数(costfunction),是预测结果和实际结果之间的差别,如平方损失函数。模型训练-损失函数
由于该函数为凸函数,只有一个全局最优解,因此使用此函数作为损失函数有利于使用梯度下降法进行模型训练时取得全局最优解。凸函数(下凸)
设f(x)在区间D上连续,如果对D上任意两点a、b恒有:f((a+b)/2)<(f(a)+f(b))/2
则f(x)在D上的图形是(向下)凸的(或凸弧)。
凸函数:只有一个局部最低点。
非凸函数:有多个局部最低点,一个全局最低点。优化器
优化器能指引损失函数的各个参数往正确的方向更新合适的大小,使得更新后的各个参数能让损失函数值不断逼近全局最小。优化器梯度下降法动量优化法自适应学习率优化算法标准梯度下降法(GradientDescent,GD)MomentunAdagrad算法NAGRMSprop算法AdaDleta算法Adam算法批量梯度下降法((BatchGradientDescent,BGD)随机梯度下降法(StochasticGradientDescent)标准梯度下降梯度下降法的计算过程就是沿梯度下降的方向求解极小值的过程(也可以沿梯度上升方向求解极大值),公式如下:
学习率
学习率大学习率小超参数
超参数是在开始学习过程之前设置值的参数,而不是通过训练得到的参数数据。参数与超参数的区别:
模型参数:根据数据自动估算的,由数据来驱动调整,如线性回归中的系数w。
模型超参数:手动设置的,并且在过程中用于帮助估计模型参数,如模型的训练次数、学习率、损失函数。模型训练-梯度下降代入
代入
将(2)式代入(1)式可得:
模型评估性能评估指标回归准确率(Accuracy)错误率(Errorrate)灵敏度(sensitive)特异度(specificity)精确率、精度(Precision)召回率(recall)综合评价指标(F-Measure)平均绝对误差(MeanAbsoluteError,MAE)均方误差(MeanSquaredError,MSE)均方根误差(RootMeanSquareError,RMSE)分类模型评估解题思路4数据预处理模型训练模型评估PARTFOUR数据集划分数据预处理-分析数据集数据预处理-皮尔逊相关系数
皮尔逊相关系数(Pearsoncorrelationcoefficient),又称皮尔逊积矩相关系数(Pearsonproduct-momentcorrelationcoefficient,简称PPMCC或PCCs),是用于度量两个变量X和Y之间的相关性(线性相关),可用于特征挑选。其值介于-1与1之间,两个变量之间的皮尔逊相关系数定义为两个变量之间的协方差和标准差的商,公式如下:
例子:求解平时分预测问题。现有一数据集共有四条数据,记录了课堂回答次数、作业上交次数和平时分。通过多元线性回归方法对该数据集构建一个平时分预测模型,求该数据集课堂回答次数和作业上交次数与平时分的相关系数。1487259501733394
根据数据集可知:数据预处理-皮尔逊相关系数数据预处理-归一化
归一化公式如下:特征值=(特征值-特征最小值)/(特征最大值-特征最小值)
如果缺少归一化步骤,由于不同特征值的不同取值范围,可能会导致利用梯度下降法训练的结果异常,出现缺失值。例子:求解平时分预测问题。现有一数据集共有四条数据,记录了课堂回答次数、作业上交次数和平时分。通过多元线性回归方法对该数据集构建一个平时分预测模型,求问该数据集归一化后的结果。14872595017333941/33/47/112/31100011/221/22归一化数据集划分将数据集D划分成两个互斥集合,常用的是将训练集和测试集比例选取为7:3。1/33/47/112/31100011/221/22模型训练-多元线性回归公式例子:求解平时分预测问题。现有一数据集共有四条数据,记录了课堂回答次数、作业上交次数和平时分。通过多元线性回归方法对该数据集构建一个平时分预测模型,求问该模型的回归方程形式。根据数据集可知,自变量应为课堂回答次数、作业上交次数与偏置,因变量为平时分,因此多元线性回归方程如下:
模型训练-梯度下降例子:求解平时分预测问题。现有一数据集共有四条数据,记录了课堂回答次数、作业上交次数和平时分。通过多元线性回归方法对该数据集构建一个平时分预测模型,优化器使用学习率为0.04的标准梯度下降,求问训练1000次后的系数。系数变化公式:训练结果:10.9434090.9686110.96475420.8905030.9393420.93186430.8410380.9120520.901176···10000.0006950.6788910.547003系数训练次数模型评估例子:求解平时分预测问题。现有一数据集共有四条数据,记录了课堂回答次数、作业上交次数和平时分。通过多元线性回归方法对该数据集构建一个平时分预测模型,优化器使用学习率为0.04的标准梯度下降,求问训练1000次后的RMSE。3485.98087584.01085787.95089282.04084086848882RMSE=0.033775测试集(不同于训练集)i参数模型预测
模型构建完成后可进行预测。因为模型训练时采用的数据集为归一化后的数据集,所以可通过反归一化获得新的系数,产生新的多元线性回归方程,输入数据后可根据该方程获得预测值。
谢谢观看林菲杭州电子科技大学
第5章鸢尾花分类问题程序设计课程实践课前视频学习任务5.1问题描述与解题思路.mp45.2全局变量与代码整体框架.mp45.3数据读入与簇群初始化.mp45.4Kmeans核心算法实现.mp4课前实践任务掌握KMeans算法求解鸢尾花分类问题(无监督学习)调研一种有监督学习方法求解鸢尾花分类预测问题课堂测试(5分钟)课堂讨论(35分钟)课堂讨论1、K-Means聚类算法原理。问题分析鸢尾花的4个参数:花萼长度花萼宽度花瓣长度花瓣宽度注:这个项目中,鸢尾花的种类这一维度的参数没有使用。设计一种鸢尾花快速分类方法样本训练分类算法挖掘内在规律
聚类算法(K-Means)山鸢尾花irisSetosa变色鸢尾花irisVersicolor维吉尼亚鸢尾花irisVirginicaKmeans算法(K均值算法)—图解步骤Kmeans算法—核心思想(1)从样本集中随机选取K个样本作为簇中心,也就是选取K个质心;(2)计算所有样本与这K个质心的距离;(3)依据距离最近原则,将每一个样本划分到与其距离最近的质心所在的簇群中;(4)对于新簇群计算各个簇群的新“簇中心”,也就是新的质心。(5)如果新质心和老质心相同,也就是质心没有发生变化,那么聚类结束;否则就需要回到第(2)步,重新计算点到质心的聚类,确定每个点所属的簇群,再根据新簇群计算新质心。Kmeans算法—计算样本点到质心的距离
Kmeans算法—重新计算质心如果新划分的簇群中有m个向量:
新划分簇群的质心向量的每一个维度计算公式为:
如果计算出的新质心与原质心不同,则表示需要按新质心重新划分簇群;如果质心不再发生变化,簇群划分完毕,算法结束。算法步骤迭代终止条件:所有质心不再发生变化;迭代次数达到上限。Kmeans代码分析3课堂讨论问题2:如何评估K-Means聚类算法的效果(K-Means聚类算法评估指标)。标准:高内聚、低耦合
对于每个点i(已聚类数据中的样本)1、bi为i点到其他簇群所有样本点距离的最小值2、ai为i点到本簇群所有样本点距离的平均值3、最后计算出所有样本点轮廓系数的平均值-1=<SCi<=1SCi
越接近1越好课堂讨论问题3:什么是有监督学习,什么是无监督学习,分析两种学习方法的适用场景。无监督学习:输入数据没有被标记,也没有确定的结果。样本数据类别未知,需要根据样本间的相似性对样本集进行分类(聚类,clustering)试图使类内差距最小化,类间差距最大化。通俗点将就是实际应用中,不少情况下无法预先知道样本的标签,也就是说没有训练样本对应的类别,因而只能从原先没有样本标签的样本集开始学习分类器设计。无监督学习目标不是告诉计算机怎么做,而是让它(计算机)自己去学习怎样做事情。例如:聚类、主成分分析方法PCA课堂讨论有监督学习:从给定的训练数据集中学习出一个函数(模型参数),当新的数据到来时,可以根据这个函数预测结果。监督学习的训练集要求包括输入输出,也可以说是特征和目标。训练集中的目标是由人标注的。监督学习就是最常见的分类(注意和聚类区分)问题,通过已有的训练样本(即已知数据及其对应的输出)去训练得到一个最优模型(这个模型属于某个函数的集合,最优表示某个评价准则下是最佳的),再利用这个模型将所有的输入映射为相应的输出,对输出进行简单的判断从而实现分类的目的。也就具有了对未知数据分类的能力。监督学习的目标往往是让计算机去学习我们已经创建好的分类系统(模型)。例如:KNN(K近邻)、朴素贝叶斯分类、支持向量机课堂讨论问题3:阐述一种有监督学习算法原理;参考:本题自由回答,根据调研阐述不同算法的原理。参考方法——K最邻近分类算法(KNN)K最邻近(KNN,K-NearestNeighbor)分类算法思路在分类决策上只依据最邻近的一个或者几个样本的类别来决定待分样本所属的类别,算法流程如下:(1)数据预处理,例如数据集打乱、种类维度的数据变换。(2)将数据集分训练集和测试集。(3)计算测试样本点即待分类点到训练接中每个样本点的距离。说明:使用前4个维度采用欧式距离计算两个样本点的距离。(4)对每个距离进行排序,选择出与测试样本点距离最小的K(超参,预先设定)个点。(5)排序后对距离最小的K个点所属的类别进行统计,根据少数服从多数的原则,将测试样本点归入在K个点中类比占比最高的那一类。(6)最后计算测试样本被分类的准确度。使用以下公式计算分类的准确度:
准确率=(预测准确的个数/总测试样本数)。参考方法——K最邻近分类算法(KNN)花萼长度(单位:cm)花萼宽度(单位:cm)花瓣长度(单位:cm)花瓣宽度(单位:cm)类别5.13.51.40.2Iris-setosa4.93.01.40.2Iris-setosa6.12.84.01.3Iris-versicolor6.32.54.91.5Iris-versicolor6.33.45.62.4Iris-virginica6.43.15.51.8Iris-virginica参考方法——K最邻近分类算法(KNN)花萼长度(单位:cm)花萼宽度(单位:cm)花瓣长度(单位:cm)花瓣宽度(单位:cm)类别4.93.01.40.206.12.84.01.316.33.45.62.426.32.54.91.516.43.15.51.825.13.51.40.20课堂实践答疑解惑谢谢观看第6章波士顿房价预测项目程序设计课程实践课前视频学习任务6.1.1问题描述与解题思路.mp4(时长3:34)6.1.2三层BP神经网络模型与神经元模型.mp4(时长5:39)6.1.3神经网络前向与反向传播的计算过程.mp4(时长10:55)6.1.4BP神经网络算法流程(时长5:03)6.2.1全局变量与代码整体框架(时长5:41)6.2.2训练数据读入与神经网络初始化(时长4:10)6.2.3神经网络训练与模型评估(时长6:32)课前实践任务使用三层BP神经网络方法求解波士顿房价预测问题,画出相应的程序流程图,最终实现项目开发;对比第4章多元线性回归方法求解该问题的预测准确度。使用一种三层BP神经网络求解鸢尾花分类问题课堂测试(5分钟)重难点讲解(15分钟)问题描述波士顿房价数据集(部分)CRIMZNINDUSCHASNOXRMAGEDISRADTAXPTRATIOBLSTATMEDV0.259150.0021.89000.62405.693096.001.78834437.021.20392.1117.1916.200.111320.0027.74000.60905.983083.502.10994711.020.10396.9013.3520.100.050830.005.19000.51506.316038.106.45845224.020.20389.715.6822.200.056020.002.46000.48807.831053.603.19923193.017.80392.634.4550.002.733970.0019.58000.87105.597094.901.52575403.014.70351.8521.4515.400.253560.009.90000.54405.705077.703.94504304.018.40396.4211.5016.200.1621120.006.96000.46406.240016.304.42903223.018.60396.906.5925.20求解问题:已知波士顿地区506条房价数据。设计一种算法构建波士顿房价预测模型,能根据13个与房价相关的特征预测自住房的平均价格。三层BP神经网络基本原理三层BP神经网络模型训练结束条件:(1)误差小于预设值(2)训练次数达到预设的上限值BP神经元模型神经元接收到的总输入值s:神经元的输出y:典型激活函数前向传播
其中Vj=说明:在本项目中先不考虑阈值影响。反向传播算法的数学推导误差的反向传播:将输出误差通过隐含层向输入层逐层反传,并将误差作为修正各单元连接权值的依据。输出层的期望输出:输出层的实际输出:假设实际输出和期望输出之间的误差是E,则对于单个样本所产生的误差损失为:
反向传播算法的数学推导反向传播算法的数学推导反向传播算法的数学推导算法步骤
步骤7:使用测试集评估模型。输入测试数据,经过训练好的神经网络模型计算,输出预测结果,并依据全局均方根误差公式计算预测精度,并输出。步骤5:计算全局均方误差。步骤6:判断是否达到训练次数或误差达到预设精度。当满足条件时,结束训练进入下一步。若不满足,则返回步骤3,进入下一轮训练。前向传播公式:全局均分误差:全局均分根误差:反向传播调整权值公式:算法执行过程主函数main{读取样本数据ReadData();
初始化BP神经网络InitBPNetwork(){
包括数据的归一,神经元连接权值初始化w[Neuron][In]、v[Out][Neuron]等;}BP神经网络训练TrainNetwork(){do{for(i小于样本容量Data){计算按照第i个样本输入,产生的BP神经网络的输出ComputO(i);
反向调节BP神经网络的各层权值,完成第i个样本的学习BackUpdate(i);
累计误差精度;}
计算全局均方误差;}while(未达到训练次数或者未符合误差精度);}
用测试数据评估训练好的神经网络模型TestNetwork();return0;}项目代码解读(10分钟)课堂讨论(10分钟)课堂讨论1、三层BP网络算法的常用改进方法。参考:(1)自适应调节学习率。使用自适应步长方法,代替固定步长,使权重修改量随着BP网络训练不断变化。(2)增加动量项。该方法是从前一次的权值调整量中取出一部分叠加到本次权值调整量中。动量项反应了以前积累的调整经验,对于t时刻的调整起阻尼
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 环三磷腈磺酸盐的制备工艺优化及其对聚碳酸酯阻燃性能的深度研究
- 某化工品厂生产安全规范
- 某石油厂油罐管理规程
- 2026年社区低保边缘家庭认定试题
- 2026年经济学基础知识习题
- 2026年乡镇干部电商法律法规培训知识试题
- 2026年水库系统版水库金属结构维护知识试题
- 2026年黑土地保护政策知识测试题库
- 2026年陕西省单招旅游管理专业综合题库
- 2026年发电集团招聘笔试申论写作题预测
- 2026云南昆明市禄劝县第一人民医院昆明市延安医院禄劝医院编外人员招聘19人笔试备考试题及答案解析
- 血透室职业暴露应急处理演练脚本
- 2026年人员代理合同(1篇)
- 2025年浙江省综合性评标专家库评标专家考试历年参考题库含答案详解
- 年产3200吨酱香型白酒工厂设计(重点车间:制酒)
- 第六单元第06课时 怎样通知最快 大单元教学课件 人教版五年级数学下册
- GRR标准表格-偏倚
- 珠海长隆海洋王国游记作文(通用5篇)
- GB/T 3457-2013氧化钨
- GB/T 13810-2007外科植入物用钛及钛合金加工材
- 纳米材料的力学性能课件
评论
0/150
提交评论