数学建模——人工神经网络模型

一、人工神经网络简介

1、神经网络起源与应用

   1943年心理学家McCulloch和数学家Pitts提出神经元生物数学模型(M-P模型),后来人工神经网络(Artifical Neural Network,ANN)是在生物神经网络(Biological Neural Network,BNN)基础上发展起来的,是对人脑的某种抽象、简化和模拟,是模拟人的智能的一种途径。

    神经元是神经网络的基本处理单元,一个简化的神经元是多输入、单输出的非线性元件,大量的神经元互联而成的神经网络(非线性元件),在人工智能和机器自学习、自组织、联想以及容错方面具有强大的能力。

2、人工神经元的工作原理

大脑的神经细胞由细胞体(soma)、一些树突(dendrite)和一根可以很长的轴突(Axon)组成,树突由细胞体的各个方向长出,本身可有分支,是用来接受信号的,轴突也有许多分支,通过分支末梢(terminal)和其它细胞的树突接触,形成突触,把产生的信号传送给其它细胞,如图(1)所示。

                                                 图(1) McCulloch-Pitts网络

大脑的神经元细胞只有两种状态:兴奋和压抑。神经细胞把所有从树突上突触进来的信号进行相加,如果全部信号超过某个阈值,就会激发细胞进入兴奋状态,就会有信号通过轴突发送信号给其它细胞。如果信号没有超过阈值,细胞就不会兴奋。

模拟大脑的人工神经网络是采用神经元组成的,神经元是人工神经网络的基本处理单元,它一般是一个多输入/多输出的非线性元件。神经元输出受到输入信号和内部其它因素的影响,所以人工神经元的建模中,常常还有一个额外的输入信号,称为偏差(bais),有时也称为阀值或限值。

人工神经网络模拟生物神经元的一阶特性,人工神经元有n个输入,即输入为X=(x1,x2,…,xn),连接权为W=(w1,w2,…,wn)T,神经元输出为采用向量的形式,即Net=X·W-θ.

3、神经网络结构

三层前馈神经网络的构造由三层排列,分别是输入层、隐含层(中间层)和输出层。每一层的神经元接受来自前一层神经元的输出作为输入,后面层对前面的层没有反馈。感知器网络和BP网络均属前馈网络。

                                                 三层前向神经网络结构

4、神经网络常用激励函数

激励函数,又称激活函数或传递函数,通常有三种

(1)阀值型

这里函数一般用在简单的分类模型中。

(2)线性型

f(x)=x        一般只用在输入神经元和输出神经元。

(3)S型

常用于隐含层,第一个为logsig()函数,第二个为logtan()函数。都是光滑函数,且第一个函数满足

二、常见神经网络理论

1、BP神经网络

BP(Back propagation)神经网络,又称前向反馈神经网络,主要是网络训练中,调整权值和阀值的训练算法时反向传播算法(即BP学习算法),也是神经网络的精华和完美的内容。     BP神经网络是一种有三层或三层以上的神经网络,概括输入层、中间层(隐含层)和输出层,上下层之间全连接,同层之间神经元无连接。

 当一对学习样本提供给输入层神经元后,神经元的激活值(该层神经元的输出值)从输入层经过各隐含层神经元向输出层传播,在输出层获得网络的输入响应,然后按照减少网络输出与实际样本样本之间误差的反向,从输出层反向经过隐含层回到输入层,从而逐步修正连接权值,这种算法称为“误差反向传播算法”,即BP算法。随着这种误差逆向传播修正的反复进行,网络对输入模式相应的正确率不断上升,BP算法的核心是“负梯度下降”理论,即BP神经网络的误差调整总是沿着误差下降最快的方向进行。

为了更好地理解BP神经网络,我们来看一个简单的例子:假设我们要训练一个网络来判断一张图片中的数字是1还是0。

首先,我们将每个像素点作为输入层的一个神经元,并将它们与隐藏层的每个神经元连接起来。隐藏层可以有多个神经元,影响网络的复杂度和表示能力。

然后,我们将隐藏层的每个神经元与输出层的两个神经元(代表数字1和0)相连。

在训练过程中,我们将输入一张图片,网络将对其进行前向传播,即通过网络计算出预测结果。然后,我们将预测结果与实际标签进行比较,并计算出损失函数(通常使用交叉熵损失)来衡量预测的错误程度。

接下来,反向传播算法将根据损失函数的梯度来调整每个连接的权重,以减小损失函数的值。这个过程会逐渐优化网络的预测能力,使得网络能够更准确地判断输入图片中的数字是1还是0。

通过不断迭代上述步骤,网络学习到的权重参数将使其在对新的图片进行数字分类时具有较好的准确性。

2、径向基网络 

 RBF(Radical Basis Function)神经网络。生物学中,中枢神经元的感受视野是指能影响某一神经元反应的视网膜或视野的区域。视网膜上的感受器(杆体细胞和锥体细胞)通过接受光并将它转换为神经输出信号,从而不同程度地激活众多神经节细胞、外膝状体细胞以及视觉皮层中的神经细胞。RBF神经网络是模拟视网膜的感受功能而产生的,其基本特征是:

(1)距离感受视野中心的越近,视神经元越兴奋,距离感受中心越远,视神经元响应越消极; (2)视神经元的激活区域呈现径向对称。

 综上所述,隐含层的视神经元的刺激函数常用高斯函数,即(i为隐含层第i神经元)

而输入和输出则采用线性激励函数。其中,x为输入样本,ci为感受视野中心,σ为宽度,exp( )为隐含层输出。

 RBF学习方法

  • 聚类方法  :  首选k聚类,即先用k—means方法确定网络数据的中心,然后根据各数据与中心的距离,确定隐含层神经元函数的宽度。
  • 梯度训练法  :根据能量函数使用负梯度训练原理自行调节各神经元的数据中心、宽度、权值。
  • 正交最小二乘(OLS)训练方法:依据能量的贡献,使各隐含层神经元的基函数之间趋于正交,从而使基函数之间没有信息冗余和性能相互嵌套。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/159287.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SystemC入门学习-第8章 测试平台的编写

之前的章节,一直把重点放在用SystemC来描述硬件电路上,即如何编写SystemC 的RTL。本章的注意力集中在验证和编写测试平台上。 重点包括: 如何生成时钟信号和激励波形如何编写有响应能力的测试平台如何记录仿真结果 8.1 编写测试平台 测试平…

IO流:java中解码和编码出现乱码说明及代码实现

IO流:java中解码和编码的代码实现 一、UTF-8和GBK编码方式二、idea和eclipse的默认编码方式三、解码和编码方法四、代码实现编码解码 五、额外知识扩展 一、UTF-8和GBK编码方式 如果采用的是UTF-8的编码方式,那么1个英文字母 占 1个字节,1个…

使用Swift开发Framework遇到的问题及解决方法

文章目录 一、Swift 旧版本Xcode 打出来的framework 新版本不兼容问题 一、Swift 旧版本Xcode 打出来的framework 新版本不兼容问题 Cannot load module xxx built with SDK ihphoneos16.4 when using SDK iphoneos17.0:XXX/xxx.framework/Modules/xxx.swiftmodule/arm64-appl…

java swing实现点击按钮切换图片(简单实现)

本文教程,主要提供一个简单的例子,使用java swing完成点击按钮能够切换图片。 目录 一、程序预览 二、程序代码 一、程序预览 二、程序代码 package learnProject.csdn;import java.awt.BorderLayout; import java.awt.FlowLayout; import java.awt.ev…

webpack 解决:Cannot use import statement outside a module 的问题

1、问题描述: 其一、报错为: Uncaught SyntaxError: Cannot use import statement outside a module; 中文为: 未捕获的语法错误:无法在模块外部使用 import 语句; 其二、问题描述为: 在项目打包的时候 npm run …

【Vue面试题二十一】、Vue中的过滤器了解吗?过滤器的应用场景有哪些?

文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享? 踩过的坑没必要让别人在再踩,自己复盘也能加深记忆。利己利人、所谓双赢。 面试官:Vue中的过滤器了解吗&am…

Android组件通信——PendingIntent(二十八)

1. PendingIntent 1.1 知识点 (1)了解PendingIntent与Intent的区别; (2)可以完成Notification功能的开发; (3)可以使用PendingIntent进行短信的发送; 1.2 具体内容 …

asp.net老年大学信息VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio计算机毕业设计

一、源码特点 asp.net老年大学信息管理系统是一套完善的web设计管理系统,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为vs2010,数据库为sqlserver2008,使用c# 语言开发 asp.net老年大学信息管理系统…

[论文笔记]SimCSE

引言 今天带来一篇当时引起轰动的论文SimCSE笔记,论文题目是 语句嵌入的简单对比学习。 SimCSE是一个简单的对比学习框架,它可以通过无监督和有监督的方式来训练。 对于无监督方式,输入一个句子然后在一个对比目标中预测它自己,仅需要标准的Dropout作为噪声。这种简单的…

“Python+”集成技术高光谱遥感数据处理与机器学习深度应用

涵盖高光谱遥感数据处理的基础、python开发基础、机器学习和应用实践。重点解释高光谱数据处理所涉及的基本概念和理论,旨在帮助学员深入理解科学原理。结合Python编程工具,专注于解决高光谱数据读取、数据预处理、高光谱数据机器学习等技术难题&#xf…

springboot中如何在测试环境下进行web环境模拟测试

web环境模拟测试 模拟端口 SpringBootTest(webEnvironment SpringBootTest.WebEnvironment.RANDOM_PORT) public class WebTest {Testvoid testRandomPort () {} }

docker 搭建本地Chat GPT

要在CentOS7上安装Docker,您可以按照以下步骤进行操作: 1、更新系统包列表 sudo yum update2、安装Docker存储库的必要软件包 sudo yum install -y yum-utils device-mapper-persistent-data lvm23、添加Docker存储库 sudo yum-config-manager --add…

MySQL MVCC详细介绍

MVCC概念 MVCC(Multi-Version Concurrency Control) 多版本并发控制,是一种并发控制机制,用于处理数据库中的并发读写操作,它通过在每个事务中创建数据的快照,实现了读写操作的隔离性,从而避免了读写冲突和数据不一致的问题。 M…

GaN器件的工作原理

目录 AlGaN/GaNHEMT 器件工作原理(常开-耗尽型器件)常关 AlGaN/GaN 功率晶体管(增强型器件)HD-GIT与SP-HEMT AlGaN/GaNHEMT 器件工作原理(常开-耗尽型器件) 来源:毫米波GaN基功率器件及MMIC电路…

百度SEO优化的特点(方式及排名诀窍详解)

百度SEO优化的特点介绍: 百度SEO优化是指对网站进行优化,使其在百度搜索引擎中获得更好的排名,进而获取更多的流量和用户。百度SEO优化的特点是综合性强、效果持久、成本低廉、投资回报高。百度的搜索算法不断更新,所以长期稳定的…

宝塔面板服务器内存使用率高的三招解决方法

卸载多余PHP版本。假若安装了多个PHP版本,甚至把 php 5.3、5.4、7.0、7.3 全都安装上了,就会严重增加系统负载和内存使用率。 安装memcached 缓存组件,建议在宝塔面板后台直接安装。 卸载不常用软件。如:宝塔运维、宝塔一键安装…

不止硬件,苹果的软件也是频出问题!iOS 17.0.3使iPhone在一夜之间随机开关机

就在我们以为iPhone的问题已经解决了一段时间的时候,一个新的问题似乎突然出现了。在Reddit和其他网站上,人们报告说,他们的iPhone在一夜之间莫名其妙地断电,有时会导致错过警报。 目前尚不清楚是什么原因导致了这个问题&#xf…

基于海洋捕食者优化的BP神经网络(分类应用) - 附代码

基于海洋捕食者优化的BP神经网络(分类应用) - 附代码 文章目录 基于海洋捕食者优化的BP神经网络(分类应用) - 附代码1.鸢尾花iris数据介绍2.数据集整理3.海洋捕食者优化BP神经网络3.1 BP神经网络参数设置3.2 海洋捕食者算法应用 4…

好用的跨平台同步笔记工具,手机和电脑可同步的笔记工具

在这个快节奏的工作环境中,每个人都在寻找一种方便又高效的方式来记录工作笔记。记录工作笔记可以帮助大家统计工作进展,了解工作进程,而如果工作中常在一个地方办公,直接选择电脑或者手机中笔记工具来记录即可,但是对…

spring boot Rabbit高级教程

消息可靠性 生产者重试机制 首先第一种情况,就是生产者发送消息时,出现了网络故障,导致与MQ的连接中断。 为了解决这个问题,SpringAMQP提供的消息发送时的重试机制。即:当RabbitTemplate与MQ连接超时后,…