- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
第PAGE
第PAGE1页
计算机科学与通信工程学院《人工智能原理实验》报告
实验名称
基于BP神经网络的模式识别实验(一)
实验目的
理解BP神经网络的结构和原理,掌握反向传播学习算法对神经元的训练过程,了解反向传播公式,通过BP神经网络识别实例。
实验思路
首先初始化神经元,其次信息向前传播,完成BP算法的向前传播,接着实现BP算法的误差反向传播,最后训练网络并用实例测试(小麦品种分类)。
主要实验记录(可包括实验源程序、流程图、调试结果及实验结果等)
实验原理
BP算法,在本质上是一个好用的优化函数,它是一个双向算法。正向传播输入信号,输出分类信息,对于有监督学习而言,基本上都可归属于分类算法;反向传播误差信息,调整全网权值,通过微调网络参数,让下一轮的输出更加准确。
BP学习算法是通过反向学习过程使误差最小,其算法过程从输出节点开始,反向地向第一隐含层(即最接近输入层的隐含层)传播由总误差引起的权值修正。BP网络不仅含有输入节点和输出节点,而且含有一层或多层隐(层)节点。输入信号先向前传递到隐节点,经过作用后,再把隐节点的输出信息传递到输出节点,最后给出输出结果。
实验内容
自己建立一个BP神经网络,包括一个输入层,一个隐含层(2个神经元)和输出层(2个神经元)的神经网络。完成正向传播和反向传播的构建,利用训练的数据“异或”真值表,训练的网络,来测试它的正确性。最后用实例进行模式识别。
实验流程图
图SEQ图\*ARABIC1BP神经网络训练流程图
具体实验步骤
1.初始化神经元
定义的网络是只有一个隐含层(2个神经元)和输出层(2个神经元)的神经网络,如图2所示。
图SEQ图\*ARABIC2BP神经网络结构图
2.信息前向传播
信息前向传播,就是把信号通过激活函数的加工,一层一层的向前“蔓延”,直到抵达输出层。在这里,假设神经元内部的激活函数为,以下是它的求导形式,非常简洁而优美。
图SEQ图\*ARABIC3Sigmoid()函数
3.BP算法的前向传播
设计一个前向传播函数forward_propagate(),它把原始数据的每一行作为一个输入,然后计算一次输出,再利用一个数组new_inputs,记录前一层的输出,然后让其作为下一层新的输入。
4.BP算法的误差反向传播
这里的误差是指预期输出(可视为一个常数)和前向传播的实际输出之间的差值。这个差值作为网络权值调控的信号,反向传递给各个隐含层,让其按照预定的规则更新权值。
反向传播过程中要用到传递函数的导数。采用Sigmoid作为激活函数时,它的求导形式是非常简单的,它的求导形式为即:
,
直接把激活函数得到的值带入。
5.训练网络(解决异或问题)
结合前面的分析,开始训练BP算法,这里包括权值更新函数update_weights()。训练的数据就是“异或”真值表,然后我们用这个训练好的网络,来测试它的正确性。
图SEQ图\*ARABIC4真值表
调试结果
实验数据集为异或真值表,实验使用数据集中的样本来训练网络,通过反向传播算法不断更新网络的权重和偏置,直到达到指定的迭代次数20000次,由结果可知,误差为0.001,预估值与实际输出相符,模型成立,如图所示。
图SEQ图\*ARABIC5调试结果
案例测试与实验结果
本次使用的数据集是小麦种子数据。该数据集把小麦种子分为三个品类:Canadian,Kama和Rosa,分别用数字1、2和3表示。评判的依据是小麦种子的7个特征,它们依次是:面积、周长、紧密度、麦粒核的长度、麦粒核的宽度、偏度系数、麦粒槽长度,这个数据集合共有210条数据。
本例中的小麦种子,共有7个特征,所以输入层就设计为7个神经元。因为我们的输出是小麦的三个分类,因此输出层的神经元个数就设定为3。现在主要的工作集中在如何设计合理的隐含层。为简单起见,这里暂时仅设计一个隐含层,该层中的神经元个数为5。这样的设定其实并没有太多的道理可言,更多凭借的是设计者的(调参)经验,它们可被视为一种超参数。
实验结果如图所示:
图SEQ图\*ARABIC6测试实验结果
实验总结与心得体会
BP算法是一种常用的神经网络训练算法,通过反向传播误差来更新神经网络的权值和偏置,从而实现对样本数据的拟合。
一开始我并熟悉BP算法的原理和流程,包括前向传播、误差计算、反向传播等步骤,实现起来比较困难,尤其是反向传播的公式计算很难理解。
之后是实操,编写代码实现BP算法。在编写代码时,矩阵运算、激活函数等实现起来比较困难,需要大量试错。
在小麦数据集模拟的时候,代码实现过程中,由于训练时对训练数据进行了归
您可能关注的文档
- 基于载波相移SPWM技术的电流型有源电力滤波器的研究.pdf
- 基于CCS与MATLAB_Simulink联合仿真平台的构建.pdf
- FPC+Layout规范说明手册.pdf
- 元器件应用中的基于电流反馈放大器在光电流应用中的研究.pdf
- HY27UT088G2AMLC HY27UT088G2A操作说明手册.pdf
- MC33035在直流无刷电机控制系统中的应用.pdf
- ICD-GLONASS-CDMA-L2.-Edition-1.0电子说明文档.pdf
- 理论力学,材料力学教案资源.doc
- USBAttachedSCSI-2-T102229-D英文说明手册.pdf
- STM32CubeIDE+实用技巧之+ld+链接文件.pdf
最近下载
- T-CECS 1049-2022 隧道衬砌拱顶带模注浆材料应用技术规程.docx VIP
- 安全生产法知识培训课件.pptx VIP
- 完整版中小学《文明礼仪主题教育》主题班会课件PPT.pptx VIP
- 广日G·Fre 载货电梯维修手册.pdf
- Brivo CT技术参考手册.pdf VIP
- 心血管药物临床应用指导原则(征求意见稿).pdf VIP
- 中国糖尿病诊疗指南(2025版) .pdf VIP
- 住院精神障碍患者康复指南 __DB14_T 2263-2021.docx VIP
- 2025年辽宁全国导游人员资格考试(全国导游基础知识、地方导游基础知识)历年参考题库含答案详解.docx VIP
- 院长纠错申请书(模板).docx VIP
原创力文档


文档评论(0)