- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
2.4.1
(p1)同学们大家好,本节课我们来学习2.4节实践任务。
本章实践任务是用pytorch制作简单线性模型,并预测“程序员代码量”与“其编程水平成绩”的关系。
我们将任务划分为5个子任务。
分别是:
任务1认识线性回归
任务2准备数据
任务3设计模型
任务4训练模型
任务5预测数据
(p2)下面我们就来看一下第一个,认识线性回归。
线性回归是利用数理统计中回归分析,来确定两种或两种以上变量间相互依赖的定量关系的
一种统计分析方法,运用十分广泛。
回归分析中,只包括一个自变量和一个因变量,且二者的关系可用一条直线近似表示,这种
回归分析称为一元线性回归分析。如果回归分析中包括两个或两个以上的自变量,且因变量
和自变量之间是线性关系,则称为多元线性回归分析。
(p3)线性回归属于回归算法,表达监督学习的过程。通过属性的线性组合来预测函数,其线性模型基本形式为:
??f(x)=??w1x1+w??2x??2+?+????????wdxd+??b
一般向量形式写成:
f??(x??)=wT??x????+b??
其中w是(w1;w2;…;wd)组成的向量。
而w1;w2;…;wd为模型训练数据中学习到的参数,或赋予每个变量的“权值”。b也是一个学习到的参数。这个线性函数中的常量也称为模型的偏置。
(p4)为了更好地理解前面所讲的概念,本节将引入一个案例:
根据程序员的编程代码量来预测其编程水平测试的成绩。我们将实现一个线性回归模型,并用梯度下降算法求解该模型,从而给出预测直线。
这个实例问题是:假如有历史编程代码量和成绩的数据,我们应如何预测未来某个程序员的编程水平成绩呢?针对这个问题,我们的求解步骤包括:准备数据、设计模型、训练和预测。
(p5)首先,我们编造一批“程序员代码量”的数据。代码量数据就可以为0,1,2,3…,每个数表示以百行为单位,例如3表示300行代码量。
(p6)具体实现方法,我们可以用PyTorch的linspace来构造0~100之间的均匀数字作为代码量的变量x,代码如下所示。
至此,我们已经有数据集x的样本100个,类型为torch下的floatTensor类型。
(p7)然后,我们生成对应的“编程成绩”数据。
假设它就是在x的基础上加上一定的噪声,实现代码如下:
torch.randn(100)这个命令是生成100个满足标准正态分布的随机数,其均值为0,方差为1。
然后乘以10,赋值给rand。
所以,这里的rand是一个随机数,且满足均值为0,方差为10的正态分布。
(p8)这样我们就构造了一个数据集,
x表示代码量,y表示编程水平成绩。
这100个不同的“代码量????”与其每一个“成绩”相????对应,
其中,每个????Xi,Yi??我们称之为一个样本点。
(p9)下面,我们将数据集切分成训练集和测试集两部分。
所谓训练集,是指训练一个模型的所有数据;
所谓测试集,则是指用于检验这个训练好的模型的所有数据。
注意,在训练过程中,
模型不会接触到测试集的数据。
因此,模型在测试集上运行的效果模拟了真实的“编程水平成绩”预测环境。
在下面这段代码中,:-10是指从x变量中取出倒数第10个元素之前的所有元素;
而-10:是指取出x中倒数10个元素。
所以,我们就把第0到第90个的数据当作训练集,
把后10个的数据当作测试集:
(p10)接下来,我们对训练数据点进行可视化:
通过观察散点图2.19,可以看出“编程成绩”y和“编程代码量”x之间,存在一定的“正”相关性,接下来我们可以用线性回归来进行拟合。
(p11)我们希望得到一条尽可能从中间穿越这些数据散点的拟合直线。设这条直线的方程为:
y=ax+b
接下来的问题是,求解参数a、b的数值。
我们可以将每一个数据点????代入这个方程中,计算出一个??“预测值y拨”,
计算公式如下所示。
显然,这个点越靠近????“真实值”,也就是“样本值”y越好。
所以,我们只需要定义一个平均损失函数:计算公式如下所示。
并且让它尽可能地小。
其中??N为所有数据点的个数,也就是100。
由于????Xi和Yi????都是固定的数,
而只有??a和b??是变量,那么??L本质上就是??a和b??的函数。
所以,我们要寻找最优的a和b??组合,让??L最小化。
我们可以利用梯度下降法来反复迭代??a和b????,从而让??
您可能关注的文档
- 深度学习案例教程 教案全套 钱月钟 第1--9章 深度学习简介--语音识别.docx
- 深度学习案例教程 教案1.3 深度学习的发展.docx
- 深度学习案例教程 教案1.1 人工智能与机器学习.docx
- 深度学习案例教程 教案1.6 深度学习的应用领域-自然语言的处理.docx
- 深度学习案例教程 教案1.2 深度学习定义及分类.docx
- 深度学习案例教程 教案1.5 深度学习的应用领域-计算机视觉.docx
- 深度学习案例教程 教案1.4 深度学习的应用领域-语音识别.docx
- 深度学习案例教程 教案1.8 深度学习框架介绍.docx
- 深度学习案例教程 教案1.7 深度学习的特点.docx
- 深度学习案例教程 教案2.2PyTorch安装和Pycharm安装.docx
- 苏教版8年级上册数学全册教学课件(2021年10月修订).pptx
- 比师大版数学4年级下册全册教学课件.pptx
- 冀教版5年级上册数学全册教学课件.pptx
- 办公室普通党员2024年组织生活会个人对照检查发言材料供参考.docx
- 领导班子成员2025年组织生活会“四个带头”对照检查材料范文.docx
- 2024年度专题组织生活会个人“四个带头”对照检查材料范文.docx
- 党支部领导班子2025年民主生活会“四个带头”个人对照检查材料范文.docx
- 2024年抓基层党建工作述职报告参考范文.docx
- 2024年度民主生活会征求意见情况的报告范文2篇.docx
- 普通党员2024年组织生活会个人“四个带头”对照检查发言材料2篇.docx
最近下载
- GB3836-2隔爆型“d”《爆炸性气体环境用电气设备》.doc VIP
- 全过程咨询技术标-监理大纲篇.docx
- 2024年二建《机电》真题及参考答案.doc
- GB_T 3836.28-2021爆炸性环境规范.docx VIP
- 北京市西城区2024_2025学年高一语文下学期期末考试试题含解析.doc VIP
- “以校为本”发展性督导评价研究 _ 以上海市新光中学为个案.pdf
- 基于stm32的仓库环境监测系统的设计与实现.docx
- 07FK01~02防空地下室通风设计示例-防空地下室通风设备安装(合订本).pdf
- 2025届高考语文复习:散文知识点梳理.pdf VIP
- 2025年全国公路养护初级_中级_高级工理论模拟试题及答案.pdf VIP
文档评论(0)