版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Algorithm第4章
算法2035主讲:王红梅4.14.24.34.4算法那些事算法概述搜索算法机器学习目录CONTENTS4.5神经网络与深度学习扩展:循环神经网络4.6
神经网络(NeuralNetwork,NN)一般也称为人工神经网络(ArtificialNeuralNetwork,ANN),是在生物科学发展到一定程度后,通过借助数学和物理的方法从信息处理的角度对人脑神经网络进行抽象后建立的简化模型。
神经网络的基础是神经元,而神经元是对生物神经元的模拟。4.5.1生物神经元与人工神经元4.5.2神经网络4.5.3神经网络应用——手写数字识别4.5.4深度学习树突:
接收来自其他神经元的信号。细胞体:处理信息。轴突:
传递这个神经元的输出。突触:
与其他神经元的连接点。4.5.1生物神经元与人工神经元-生物神经元是大脑最基本的功能单位生物神经元示意图(一)生物神经元生物神经元连接示意图(1)一个神经元接受输入信号(树突),(2)之后处理这个信息(细胞体)(3)再通连接结构(轴突和突触)将输出信号传递给其他连接的神经元。
输入→处理→输出。4.5.1生物神经元与人工神经元(一)生物神经元当神经元细胞受到足够强度的刺激时,也就是接收到的众多突触输入信号的总和超过一定的数值时(称为阈值),神经元细胞会被激活,这时神经细胞会产生一个电信号,这个信号会沿着轴突向神经元的末端(通常是突触)传播。反之,则不会被激活和传播。4.5.1生物神经元与人工神经元生物神经元激活(一)生物神经元4.5.1生物神经元与人工神经元假设你看到上图的狗狗,大脑接收到的信息被“笑还是不笑”的一组神经元所吸收,这些神经元将帮助你做出是否笑的决定,一开始你可能不会笑,只有你觉得好笑到一定程度,你才会笑。也就是每个神经元只有当其各自达到阈值时才会被激活。生物神经元激活实例(一)生物神经元4.5.1生物神经元与人工神经元
生物神经元是大脑的基本构成单元,而人工神经元则是受生物神经元启发设计出的计算模型,用于模拟大脑的工作方式。(一)生物神经元4.5.1生物神经元与人工神经元1943年,心理学家McCulloch和数学家Pitts合作发表论文,提出了神经元的数学模型,命名为M-P模型,也叫M-P神经元模型。奠定了人工神经网络的发展基础。WarrenMcCulloch(左)和
WalterPitts(右)(二)人工神经元4.5.1生物神经元与人工神经元下图是一个典型的M-P神经元模型:包含有3个输入(X1,X2,X3),1个输出y,以及2个计算功能。x1x2zw1w2w3求和sum非线性函数sgn输入可以类比为神经元的树突,输出可以类比为神经元的轴突,计算则可以类比为细胞体。yx3M-P神经元模型是一个包含输入,输出与计算功能的模型。(二)人工神经元4.5.1生物神经元与人工神经元x1x2x3zw1w2w3求和sum非线性函数sgn输入可以类比为神经元的树突,输出可以类比为神经元的轴突,计算则可以类比为细胞体。sum=x1*w1+x2*w2+x3*w3y=sgn(sum)sgn(z)=1z≥b0z<by这个看似复杂的公式实际上就是先乘法后加法下图是一个典型的M-P神经元模型:包含有3个输入(X1,X2,X3),1个输出y,以及2个计算功能。M-P神经元模型是一个包含输入,输出与计算功能的模型。(二)人工神经元4.5.1生物神经元与人工神经元x1x2x3yw1w2w3sumsgn为了简化流程图,把M-P神经元作为一个单元,将sum函数与sgn函数合并到一个圆圈里,代表神经元的内部计算。y=sgn(x1*w1+x2*w2+x3*w3)sgn(z)=1z≥b0z<b(二)人工神经元4.5.1生物神经元与人工神经元y=sgn(x1*w1+x2*w2+x3*w3)sgn(z)=1z≥b0z<bx1x2x3yw1w2w3sumsgn为了简化流程图,把M-P神经元作为一个单元,将sum函数与sgn函数合并到一个圆圈里,代表神经元的内部计算。(二)人工神经元4.5.1生物神经元与人工神经元x1x2x3w1w2w3sumsgn简化yM-P神经元可以看作一个计算与存储单元。计算是神经元对其的输入进行计算功能。存储是神经元会暂存计算结果,并传递到下一层。(二)人工神经元4.5.1生物神经元与人工神经元A(天气是否晴朗)B(时间是否允许)C(是否有理想的野餐地点)yw1w2w3周末是否外出野餐的应用场景ABCY11110000理想状态表是否野餐然而,现实情况往往复杂多变,条件可能部分满足而部分不满足。例如,即便天气晴朗、个人时间允许,若缺乏合适的野餐地点,我们是否仍会外出野餐呢?(二)人工神经元4.5.1生物神经元与人工神经元A(天气是否晴朗)B(时间是否允许)C(是否有理想的野餐地点)yw1w2w3周末是否外出野餐的应用场景是否野餐实际上,在多数决策中,各条件的重要性并不等同。因此,我们可以为每个条件分配不同的权重,以反映其重要性。例如:天气:权重0.50时间:权重0.30地点:权重0.20A(0.5)B(0.3)C(0.2)Y1111=(1×0.5+1×0.3+1×0.2)0110.5(0×0.5+1×0.3+1×0.2)0.5到底是去还是不去呢?我们可以设置一个阈值,如0.7,若加权总和超过阈值,神经元输出1,可以去野餐;否则,输出0,不去野餐。(二)人工神经元4.5.1生物神经元与人工神经元A(天气是否晴朗)B(时间是否允许)C(是否有理想的野餐地点)yw1w2w3周末是否外出野餐的应用场景是否野餐天气(50%)时间(30%)地点(20%)结果1111.01100.81010.71000.50110.50100.30010.20000.0阈值的高低反映了决策的严格程度。如平时课程60分通过,毕业论文70分才能通过等,这种决策机制在M-P神经元模型中得到了直观的体现。(二)人工神经元4.5.1生物神经元与人工神经元x1x2x3yw1w2w3M-P神经元模型的使用可以这样理解:我们有一样本。样本有四个属性,其中三个属性已知(X1,X2,X3),一个属性未知(y)。我们需要做的就是通过三个已知属性预测未知属性。y=sgn(x1*w1+x2*w2+x3*w3)
已知的属性称之为特征,未知的属性称之为目标。假设特征与目标之间确实是线性关系,并且我们已经得到表示这个关系的权值w1,w2,w3。那么,我们就可以通过神经元模型预测新样本的目标。(二)人工神经元M-P神经元模型模型,一方面奠定了神经网络大厦的地基。另一方面,权重的值都是预先设置的,因此不能学习。这极大地限制了其适应变化环境的能力。为了突破这一局限,科学家们开始探索如何让神经元自动调整权重,从而实现自我学习和优化。x1x2x3yw1w2w34.5.1生物神经元与人工神经元(二)人工神经元1949年心理学家Hebb提出了Hebb学习率,认为人脑神经细胞的突触(也就是连接)上的强度是可以变化的。于是计算科学家们开始考虑用调整权值的方法来让机器学习。尽管M-P神经元模型与Hebb学习律都已诞生,但限于当时的计算机能力,直到接近10年后,第一个真正意义的神经网络才诞生。
Hebb4.5.2神经网络-感知机1958年,计算科学家弗兰克·罗森布拉特提出了由两层神经元组成的神经网络。他给它起了一个名字:“感知机”。感知机是当时首个可以学习的人工神经网络。弗兰克·罗森布拉特现场演示了其学习识别简单图像的过程,在当时的社会引起了轰动。引发神经网络的第一次研究高潮。4.5.2神经网络-感知机4.5.2神经网络-感知机-结构在原来M-P神经元模型的输入位置添加神经元节点,其为“输入单元”,其余不变。x1x2x3yw1w2w3x1x2x3yw1w2w3◯代表输入◯代表输出
M-P神经元模型
感知机(单层神经网络)建议找个类比的例子,否则不好理解4.5.2神经网络-感知机-结构我们把需要计算的层次称之为“计算层”,并把拥有一个计算层的网络称之为“单层神经网络”。x1x2x3yw1w2w3输出层输入层在“感知机”中,有两个层次。分别是输入层和输出层。输入层里的“输入单元”只负责传输数据,不做计算。输出层里的“输出单元”则需要对前面一层的输入进行计算。假如我们要预测的目标不再是一个值,而是多个值。那么可以在输出层再增加一个“输出单元”。x2x3w1w2w3y1上图显示了带有两个输出单元的单层神经网络,其中输出单元的计算公式:y1=g(x1*w1+x2*w2+x3*w3)y2=g(x1*w4+x2*w5+x3*w6)y2x1w4w5w6公式让人不满意的就是:w4,w5,w6是后来加的,很难表现出跟原先的w1,w2,w3的关系。4.5.2神经网络-感知机-结构x2x3w1,1w1,2w1,3y1y2x1w2,1w2,2w2,3因此我们改用二维的下标,用wm,n来表达一个权值。下标中的m代表后一层神经元的序号,而n代表前一层神经元的序号(序号的顺序从上到下)。例如,w1,2代表后一层的第1个神经元与前一层的第2个神经元的连接的权值。y1=g(x1*w1,1+x2*w1,2+x3*w1,3)y2=g(x1*w2,1+x2*w2,2+x3*w2,3)4.5.2神经网络-感知机-结构4.5.2神经网络-感知机-效果与M-P神经元模型不同,感知机中的权值是通过训练得到的。因此,可以做线性分类任务。我们可以用决策分界来形象的表达分类的效果。决策分界就是在二维的数据平面中划出一条直线,当数据的维度是三维的时候,就是划出一个平面,当数据的维度是N维时,就是划出一个N-1维的超平面。单层神经网络(决策分界)后面的猫狗分类例子详解决策分界4.5.2神经网络-案例:基于猫狗识别的神经网络模型的训练过程这里的x,y是抽象的对象的两个输入特征,耳朵向上取正值,尾巴向下取正值。假设我们有一个包含猫和狗图片的数据集,这些图片已经被人工标记为“猫”或“狗”。为了训练感知机,我们需要从每张图片中提取特征。在这个例子中,我们简化特征提取过程,只提取两个特征:(1)耳朵的长度x(耳朵向上取正值)(2)尾巴的长度y(尾巴向下取正值)x=3,y=5x=-4,y=-3+1表示是猫-1表示是狗
算法
?+1-1xy这里的x,y是抽象的对象的两个输入特征,耳朵向上取正值,尾巴向下取正值。
输入
输出(lable)4.5.2神经网络-案例-基于猫狗识别的神经网络模型的训练过程x+y=0+1-1if(x+y)>0取+1猫if(x+y)<=0取-1狗怎么设计公式?简单的方法就是求和,如果需要再添加个阈值。xyx=3,y=5x=-4,y=-3
输入
算法
输出(lable)4.5.2神经网络-案例-基于猫狗识别的神经网络模型的训练过程这里的x,y是抽象的对象的两个输入特征,耳朵向上取正值,尾巴向下取正值。x+y=0猫狗
在二维坐标上表示
x+y=0
+1-1
输入
算法
输出if(x+y)<=0-1狗这个公式还行吗?是否需要重新设计?xyx=3,y=5x=-4,y=-3x=2.5,y=-4这是个啥鬼!泛化不到3个泛化性是用来描述算法是否通用4.5.2神经网络-案例-基于猫狗识别的神经网络模型的训练过程这里的x,y是抽象的对象的两个输入特征,耳朵向上取正值,尾巴向下取正值。调整函数2x-y-2=0x+y=0在二维坐标上表示
猫狗
调整函数2x-y-4=0w1x+w2y+b=0w1,w2和b都成为参数。w1,w2成为权重b成为阈值猫和狗的数量不断添加进来,也需要不断地调整参数,让泛化性更好数据集在二维坐标上表示
建立模型的过程w1x+w2y+b=0你可能没有想到,这个看似简单的建立数学公式的过程就是训练的过程,是人工神经网络的基础。这个调整参数的过程称为学习。通过学习建立函数的过程就是训练模型的过程。4.5.2神经网络-案例-基于猫狗识别的神经网络模型的训练过程基于感知机的单层神经网络是线性分类器,不能解决非线性问题,为了解决非线性问题(各种复杂问题),怎么办呢?需要用到多层神经网络感知机只能处理非常简单的分类问题,真实世界中的问题要复杂的多,为了解决这些复杂的问题,需要构造多层神经网络。多层神经网络的典型结构由输入层、输出层和中间层(也称为隐藏层)构成。4.5.2神经网络-多层神经网络-结构输入层负责从外界获取数据。这一层的个数往往取决于输入数据的特征数量,每个特征均需配备一个专门的神经元以接收信息。如在图像处理场景中,每一个像素点都需要一个独立的神经元来进行处理。4.5.2神经网络-多层神经网络-结构中间层,它位于输入层和输出层之间,是神经网络的核心处理部分。你可以把中间层想象成一个“加工厂”,这一层的主要任务是对输入数据进行变换和特征提取,用来模仿人类的思索过程。4.5.2神经网络-多层神经网络-结构输出层是神经网络的最后一层,负责将网络对输入数据的处理结果输出。输出层的神经元数量通常根据具体问题的需求来确定。如在猫狗分类中,输出层的数量是2个。4.5.2神经网络-多层神经网络-结构4.5.2神经网络-多层神经网络-结构输入层中间层(隐藏层)输出层输入数据
对数据进行加工
输出数据4.5.2神经网络-多层神经网络-训练过程神经网络的训练过程神经网络训练的基本理念在于,首先“猜测”一个结果(预测值),并将其与训练集中的真实结果进行对比,评估两者间的误差(损失函数)。学生老师4.5.2神经网络-多层神经网络-训练过程神经网络的训练过程随后,根据这一误差调整策略(梯度下降),再次进行预测。这一过程将不断迭代,直至预测结果与真实结果几乎无差异,训练方可宣告结束。学生老师神经网络训练过程:(1)前向计算以生成预测;(2)预测结果与真实标签进行比较,获得误差;(3)然后通过反向传播算法,损失函数的梯度被逐层反向传递;(4)根据反向传播计算得到的梯度,使用梯度下降算法更新网络的权重和偏置参数,从而优化模型性能。(5)不断迭代,直到预测结果满意。反向传播后面讲4.5.2神经网络-多层神经网络-训练过程4.5.2神经网络-多层神经网络-反向传播算法1982年:DavidE.Rumelhart、GeoffreyHinton
和RonaldJ.Williams把反向传播(BackPropagation,BP)算法,用于多层感知机的训练。解决训练中的纠错问题(本质上是一种优化算法)。开始反向传播算法在神经网络中的使用。1986年,他们发表论文,系统阐述了BP算法在神经网络中的实现,使本其广为人知。反向传播算法就像一个“纠错小能手”,我们以做题得分为例:第一步:前向传播(做题)神经网络就像个学生,先硬着头皮做题(输入数据→层层计算→输出结果)。比如让网络识别一张猫的图片,它可能自信满满地说“这是狗!”——显然答错了。第二步:算误差(看分数)这时候老师(损失函数)会给它打分,比如“错误率80%”。这个分数就是误差。第三步:反向传话(传小纸条)重点来了!神经网络不是瞎调整,而是从最后一层开始,像传小纸条一样把误差反向传回去。比如最后一层会嘀咕:“都怪我判断错了,我该负70%的责任”,倒数第二层接话:“其实我的计算也歪了,我背30%的锅”……就这样一层层把责任分清楚。试着理解和解释逐层,梯度前向传播(做题)算误差(看分数)反向传话(传小纸条)反向传播算法就像一个“纠错小能手”,我们以做题得分为例:第四步:调参数(改作业)每层拿到自己的“责任比例”后,就开始微调自己的权重。比如负责看耳朵的神经元发现:“哦,原来我把猫耳朵算成了狗耳朵,下次得把耳朵的权重调高!”第五步:循环迭代(刷题)网络会不停重复“做题→算误差→传小纸条→改作业”的过程,每次调整都更聪明一点。就像学生疯狂刷题,错误越犯越少,最后终于能准确认出猫了。前向传播(做题)算误差(看分数)反向传话(传小纸条)调参数(改作业)4.5.2神经网络-多层神经网络-反向传播算法它的主要思想是:通过逐层计算误差的程度(梯度),并向网络的反方向传播这些误差,依据这些值,更新神经网络的权重,以最小化损失函数的值(使得预测试和标准值的差值逐步趋向0)。在设计一个神经网络时,节点数设计输入层的节点数--与特征的维度匹配,中间层的节点数,却是由设计者指定的。一般是根据经验来设置。较好的方法就是预先设定几个可选值,通过切换这几个值来看整个模型的预测效果,选择效果最好的值作为最终选择。输出层的节点数--与目标的维度匹配。4.5.2神经网络-多层神经网络-节点设计思路这个含有两个隐含层的神经网络的参数有多少呢?4.5.3神经网络应用——手写数字识别我们要设计并训练一个三层的神经网络来进行手写数字识别,这个神经网络会以数字图像作为输入,经过神经网络的计算,识别出图像中的数字是几?完成这个任务需要三个步骤:(1)神经网络的设计、(2)训练数据的准备、(3)模型的训练和测试,4.5.3神经网络应用——手写数字识别(1)神经网络的设计28×28像素的灰色通道图像28×28=784个数据点4.5.3神经网络应用——手写数字识别(2)训练数据的准备
直接使用MNIST数据集,MNIST数据集包含数以万计的手写数字扫描图像及其正确的分类信息。这个数据集是由美国国家标准与技术研究所收集的,后来MNIST数据集被开源社区采用,成为机器学习和计算机视觉领域中一个经典的数据集。
第一部分包含60000幅用作训练数据的图像,第二部分是10000幅用作测试数据的图像。4.5.3神经网络应用——手写数字识别(3)模型的训练和测试,运行程序4.5.3神经网络应用——手写数字识别4.5.4深度学习
在传统的机器学习里,特
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年山西省财政税务专科学校单招职业倾向性考试题库及答案详解一套
- 旅游行业销售代表面试题及答案
- 2026年中国架桥机行业深度调研与投资前景评估报告
- 2026年中国甲基丁炔醇行业市场行情动态研究报告
- 新媒体运营面试题及答案详解
- 财务分析师面试题及评分标准参考
- 奶专卖店合同范本
- 福建省龙岩二中2026届高二上数学期末达标检测试题含解析
- 学徒签合同还协议
- 定做口罩合同范本
- 高一语文经典古代诗词赏析
- 协助扣划存款通知书
- 自动控制原理课程设计报告恒温箱
- 江西d照驾驶员理论考试
- 水利水电工程建设参建各方安全生产职责
- GB/T 30340-2013机动车驾驶员培训机构资格条件
- GB/T 19215.1-2003电气安装用电缆槽管系统第1部分:通用要求
- GB/T 13298-2015金属显微组织检验方法
- 滴滴打车用户出行习惯报告
- 核对稿-400单元开车
- 保密管理-保密教育培训签到簿
评论
0/150
提交评论