深度学习入门篇 | 常用的经典神经网络模型

news2024/9/22 23:16:50

**神经网络,是模拟生物神经网络进行信息处理的一种数学模型。**它以对大脑的生理研究成果为基础,其目的在于模拟大脑的某些机理与机制,实现一些特定的功能。神经网络是目前最火的研究方向深度学习的基础,本文将神经网络分成三个主要类别,并详细介绍了每个类别的主要神经网络模型,读完本文你将能迅速掌握常用的经典神经网络模型,属于深度学习的基础入门篇。

一般来说,**神经网络可以分为三种主要类型:前馈神经网络、反馈神经网络和图神经网络。**下面我们将分别展开介绍。

1.前馈神经网络

前馈神经⽹络(feedforward neural network)是⼀种简单的神经⽹络,也被称为多层感知机(multi-layer perceptron,简称MLP),其中不同的神经元属于不同的层,由输⼊层-隐藏层-输出层构成,信号从输⼊层往输出层单向传递,中间无反馈,其目的是为了拟合某个函数,由⼀个有向无环图表示,如下:
在这里插入图片描述
前馈神经网络结构图

前馈神经⽹络中包含激活函数(sigmoid函数、tanh函数等)、损失函数(均⽅差损失函数、交叉熵损失函数等)、优化算法(BP算法)等。常⽤的模型结构有:感知机、BP神经⽹络、全连接神经⽹络、卷积神经⽹络、RBF神经⽹络等。

感知机

感知器,也可翻译为感知机,是Frank Rosenblatt在1957年就职于Cornell航空实验室(Cornell Aeronautical Laboratory)时所发明的一种人工神经网络。它可以被视为一种最简单形式的前馈式人工神经网络,是一种二元线性分类器。

感知机的主要特点是结构简单,对所能解决的问题存在着收敛算法,并能从数学上严格证明,从而对神经网络研究起了重要的推动作用。

在这里插入图片描述

BP神经网络

BP(back propagation)神经网络是1986年由Rumelhart和McClelland为首的科学家提出的概念,是一种按照误差逆向传播算法训练的多层前馈神经网络,是应用最广泛的神经网络模型之一 。

BP算法的基本思想是:学习过程由信号的正向传播和误差的反向传播两个过程组成。

正向传播时,把样本的特征从输入层进行输入,信号经过各个隐藏层的处理后,最后从输出层传出。对于网络的实际的输出与期望输出之间的误差,把误差信号从最后一层逐层反传,从而获得各个层的误差学习信号,然后再根据误差学习信号来修正各层神经元的权值。
在这里插入图片描述

全连接神经网络

全连接神经网络是一种多层的感知机结构。每一层的每一个节点都与上下层节点全部连接,这就是”全连接“的由来。整个全连接神经网络分为输入层,隐藏层和输出层,其中隐藏层可以更好的分离数据的特征,但是过多的隐藏层会导致过拟合问题。
在这里插入图片描述

卷积神经网络(Convolutional Neural Networks, CNN)是一类包含卷积运算且具有深度结构的前馈神经网络(Feedforward Neural Networks)。

相比早期的BP神经网络,卷积神经网络最重要的特性在于“局部感知”与“参数共享”。

整体架构:输入层——卷积层——池化层——全连接层——输出层
在这里插入图片描述
卷积神经网络结构图

输入层:以图片为例,输入的是一个三维像素矩阵,长和宽表示图像的像素大小,深度表示色彩通道(黑白为1,RGB彩色为3)。

卷积层:卷积层也是一个三维矩阵,它的每个节点(单位节点矩阵)都是上一层的一小块节点(子节点矩阵)加权得来,一小块的尺寸一般取33或55。此层的作用是对每一小快节点进行深入分析,从而提取图片更高的特征。

池化层:池化层不会改变三维矩阵的深度,其作用是缩小矩阵,从而减少网络的参数。

全连接层:跟全连接神经网络作用一样。

Softmax层:得到当前样例属于不同种类的概率分布,并完成分类。

卷积神经网络(CNN)具有一些传统技术所没有的优点:

(1)良好的容错能力、并行处理能力和自学习能力,可处理环境信息复杂,背景知识不清楚,推理规则不明确情况下的问题;

(2)它允许样本有较大的缺损、畸变,运行速度快,自适应性能好,具有较高的分辨率;

(3)它是通过结构重组和减少权值将特征抽取功能融合进多层感知器,省略识别前复杂的图像特征抽取过程。

RBF神经网络

径向神经网络(RBF:Radial basis function)是一种以径向基核函数作为激活函数的前馈神经网络。

RBF神经⽹络是一种三层神经网络,其包括输入层、隐层、输出层。从输入空间到隐层空间的变换是非线性的,而从隐层空间到输出层空间变换是线性的。流图如下:
在这里插入图片描述

2.反馈神经网络

反馈神经网络(feedback neural network)的输出不仅与当前输入以及网络权重有关,还和网络之前的输入有关。它是一个有向循环图或是无向图,具有很强的联想记忆能力和优化计算能力。

常⽤的模型结构有:RNN、Hopfield⽹络、受限玻尔兹曼机、LSTM等。

在这里插入图片描述

反馈神经网络结构图

循环神经网络

循环神经网络(recurrent neural network,简称RNN)源自于1982年由Saratha Sathasivam 提出的霍普菲尔德网络,是指在全连接神经网络的基础上增加了前后时序上的关系,可以更好地处理比如机器翻译等的与时序相关的问题。

RNN神经网络的结构如下:

在这里插入图片描述

循环神经网络的结构图

RNN之所以称为循环神经网络,即一个序列当前的输出与前面的输出也有关。具体的表现形式为网络会对前面的信息进行记忆并应用于当前输出的计算中,即隐藏层之间的节点不再无连接而是有连接的,并且隐藏层的输入不仅包括输入层的输出还包括上一时刻隐藏层的输出。

RNN用于解决训练样本输入是连续的序列,且序列的长短不一的问题,比如基于时间序列的问题。基础的神经网络只在层与层之间建立了权连接,RNN最大的不同之处就是在层之间的神经元之间也建立的权连接。

Hopfield⽹络

Hopfield神经网络是一种单层互相全连接的反馈型神经网络。每个神经元既是输入也是输出,网络中的每一个神经元都将自己的输出通过连接权传送给所有其它神经元,同时又都接收所有其它神经元传递过来的信息。即:网络中的神经元在t时刻的输出状态实际上间接地与自己t-1时刻的输出状态有关。神经元之间互连接,所以得到的权重矩阵将是对称矩阵。

在这里插入图片描述

受限玻尔兹曼机

玻尔兹曼机是一大类的神经网络模型,但是在实际应用中使用最多的则是受限玻尔兹曼机(RBM)。

受限玻尔兹曼机(RBM)是一个随机神经网络(即当网络的神经元节点被激活时会有随机行为,随机取值)。它包含一层可视层和一层隐藏层。在同一层的神经元之间是相互独立的,而在不同的网络层之间的神经元是相互连接的(双向连接)。在网络进行训练以及使用时信息会在两个方向上流动,而且两个方向上的权值是相同的。但是偏置值是不同的(偏置值的个数是和神经元的个数相同的),受限玻尔兹曼机的结构如下:
在这里插入图片描述

LSTM

长短期记忆网络 LSTM(long short-term memory)是 RNN 的一种变体,其核心概念在于细胞状态以及“门”结构。细胞状态相当于信息传输的路径,让信息能在序列连中传递下去。你可以将其看作网络的“记忆”。理论上讲,细胞状态能够将序列处理过程中的相关信息一直传递下去。因此,即使是较早时间步长的信息也能携带到较后时间步长的细胞中来,这克服了短时记忆的影响。信息的添加和移除我们通过“门”结构来实现,“门”结构在训练过程中会去学习该保存或遗忘哪些信息。
在这里插入图片描述

3.图神经网络

图(graph)是⼀种在拓扑空间内按图结构组织来关系推理的函数集合,包括社交⽹络、知识图谱、分⼦图神经⽹络等。

在这里插入图片描述

图结构示例

图神经网络就是将图数据和神经网络进行结合,在图数据上面进行端对端的计算。图神经网络直接在图上进行计算,整个计算的过程,沿着图的结构进行,这样处理的好处是能够很好的保留图的结构信息。

图神经网络通常有以下几种网络模型:图卷积网络、图自编码器、图生成网络、图时空网络、图注意力网络。

图卷积网络(Graph Convolutional Networks, GCN)

由传统的卷积神经网络引申出的图卷积网络,图卷积方法可分为两种,基于频谱的方法和基于空间的方法。基于频谱的方法,从图信号处理的角度,引入滤波器来定义图卷积,因此基于频谱的图卷积可理解为从图信号中去除噪声。

基于空间的图卷积方法,通过汇集邻居节点的信息来构建图卷积。当图卷积在节点级运作时,可以将图池化模块和图卷积进行交错叠加,从而将图粗化为高级的子图。

在这里插入图片描述

图卷积的卷积操作有三步:

1、每个节点将自身的特征信息传递给邻居节点

2、每个节点将邻居节点及自身的特征信息进行汇集,对局部结构进行进行融合

3、与传统的深度学习中的激活函数类似,在图卷积我们同样要加入激活函数,对节点的信息做非线性变换,增强模型的表达能力

图卷积网络的关键是学习到一个函数,将当前节点的特征信息与其邻居节点的特征信息进行汇集。

图自编码器

基于自编码器的 GNN 被称为图自编码器(Graph Auto-encoder,GAE),GAE是无监督学习框架,它将节点/图编码到潜在向量空间并从编码信息中重建图数据。 GAE 用于学习网络嵌入和图形生成分布。对于网络嵌入,GAE 通过重构图结构信息(例如图邻接矩阵)来学习潜在节点表示。对于图的生成,一些方法逐步生成图的节点和边,而另一些方法一次全部输出图。

在这里插入图片描述

图生成网络

图 生 成 网 络 ( Graph Generative Network,GGN)是一类用来生成图数据的 GNN,其使用一定的规则对节点和边进行重新组合,最终生成具有特定属性和要求的目标图。

图生成网络的目标是基于一组可观察图来生成图。其中的很多方法都是领域特定的。例如,在分子图生成方面,一些研究将分子图的表征建模为字符串。在自然语言处理中,生成语义图或知识图通常需要一个给定的句子。最近,研究人员又提出了一些通用方法,主要有两个方向:其一是将生成过程看成节点或边的形成,而另一些则使用生成对抗训练。该领域的方法主要使用图卷积神经网络作为构造块。

图时空网络

时空网络图有区别于其他种类的图数据,在该图数据中,图不仅由V、E、A组成,增加了一个X属性,表示的是图在时间维度上的属性变化。

目标是从时空图中学习到不可见的一些模式,这在交通预测、人类的活动预测中变得越来越重要。比如,在道路交通网络就是一种时空图,图的数据在时间维度上是连续的,用图时空网络构建道路交通预测模型,我们就可以更加准确地预测出交通网络中的交通状态。

图时空网络的关键在于考虑同一时间下的空间与事物的关联关系。许多现在的方法使用GCN结合CNN或者RNN对这种依赖关系进行建模。

图注意力网络

注意力机制可以让一个神经网络只关注任务学习所需要的信息,它能够选择特定的输入。在 GNN 中引入注意力机制可以让神经网络关注对任务更加相关的节点和边,提升训练的有效性和测试的精度,由此形成图注意力网络(Graph Attention Network,GAT)。

神经网络模型优化

深度学习模型优化用于各种场景,包括视频分析和计算机视觉。由于大多数这些计算密集型分析都是实时完成的,因此以下目标至关重要:

1.更快的性能

2.减少计算要求

3.优化空间使用**

例如,OpenVINO 借助以下工具提供神经网络的无缝优化:

模型优化器——将模型从多个框架转换为中间表示(IR);然后可以使用 OpenVINO Runtime 完成这些操作。OpenVINO 运行时插件是软件组件,包含在 CPU、GPU 和 VPU 等硬件上进行推理的完整实现。

训练后优化工具包 (POT) – 通过 DefaultQuantization 和 AccuracyAwareQuantization 算法应用训练后自动模型量化,加快 IR 模型的推理速度。

神经网络压缩框架 (NNCF) – 与 PyTorch 和 TensorFlow 集成,通过剪枝来量化和压缩模型。常用的压缩算法有8位量化、滤波器剪枝、稀疏、混合精度量化和二值化。

神经网络是所有 AI 算法的核心,目前神经网络在模式识别、自动控制、信号处理、辅助决策、人工智能等众多研究领域都取得了广泛的应用,未来的发展空间还将更加广阔。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Java面试】谈一谈你对ThreadLocal的理解

文章目录ThreadLocal原理大致设计底层理解【Java面试】说说你对ThreadLocal内存泄漏问题的理解hash冲突的解决get/set/remove方法的一些细节在多线程情况下,对于一个共享变量或者资源对象进行读或者写操作时,就必须考虑线程安全问题。而ThreadLocal采用的…

Three.js实例详解___旋转的精灵女孩(附完整代码和资源)(三)

Three.js实例详解___旋转的精灵女孩(附完整代码和资源)(三) 本篇目录: 六、完整构建整个[旋转的精灵女孩]实例 (1)、新建、启动webGL工程空间 (2)、构建项目的目录层次结构 (2.1…

EVE-NG安装问题记录 重置root密码

目录EVE-NG安装问题记录 重置root密码一、下载iso安装虚拟机二、碰巧没安装成功EVE-NG组件,开启EVE-NG机后 root/eve默认密码不对。进不去系统。1、进入单用户模式重置root密码三、重新安装eve-ng组件EVE-NG安装问题记录 重置root密码 一、下载iso安装虚拟机 从官…

ssm+mysql实现进销存系统|仓库计算机专业毕业论文java毕业设计开题报告

💖💖更多项目资源,最下方联系我们✨✨✨✨✨✨ 目录 Java项目介绍 资料获取 Java项目介绍 《ssmmysql实现进销存系统》该项目采用技术:jsp springmvcspringmybatis cssjs等相关技术,项目含有源码、文档、配套开发软…

嵌入式软件开发知识点总结(二)中断Linux内核

【好文推荐】 路由选择协议——RIP协议 轻松学会linux下查看内存频率,内核函数,cpu频率 纯干货,linux内存管理——内存管理架构(建议收藏) 概述Linux内核驱动之GPIO子系统API接口 一篇长文叙述Linux内核虚拟地址空间的基本概括 中断 硬中断 …

应用开发这样做更节约成本!

现在app已逐渐取代网页端,成为一众手机用户的心头好。要想轻松拿下更多目标用户,开发一个属于自己的app显得尤为重要。那么,在应用开发方面,我们有什么妙招可以降低开发成本呢? 1、明确开发需求 做好我们的app定位&am…

【NumPy 数组索引、裁切,数据类型】

🤵‍♂️ 个人主页老虎也淘气 个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞👍🏻 收藏…

6年测开经验,从功能测试到测试开发,我的每一步都经过了深思熟虑...

蓦然回首,软件测试风风雨雨的这几年,起初每天的工作只是鼠标点点点,我还真不知道怎么办,闲的时候真的怀疑自己的存在价值,每天拿着7000的工资,飘荡在繁华的深圳,吃不饱也饿不死,未来…

阿里 p8 私藏 MyBatis 笔记,从入门到精通,纵享源码细节

前言 越来越多的企业已经将 MyBatis 使用到了正式的生产环境,我认为流行的原因就在于绝大部分项目都是面向表结构编程的,把 Java 对象仅当成数据容器,查询和模型变更都设计在一张表上,所谓业务逻辑就是一堆增删改查的 sql 集合&a…

Cadence Allegro PCB设计88问解析(二十一) 之 Allegro中更新器件封装(Footprint)

一个学习信号完整性仿真的layout工程师 今天和大家简单介绍Allegro中如何更新PCB封装,在我们导入原理图网表,PCB的封装是必不可少的,但是可能有些为了前期布局评审,有的封装是临时的,那么就需要后续更新正确的封装。下…

02 Java起步

目录 第一章:注释 1.1 概述 1.2 Java 中的注释 第二章:关键字 2.1 概述 2.2 Java 中的关键字 第三章:标识符 3.1 概述 3.2 标识符的命名规则(必须遵守) 3.3 标识符的命名规范 第四章:数据类型以…

第十四届蓝桥杯集训——JavaC组首篇——环境搭建(win10)

还有9天就截止报名了,我们也算正式开始培训了,今年希望能取得更好的成绩。 今年的蓝桥杯从环境开始——本博客为win10电脑的Java_JDK环境搭建: 学生机环境-Java编程环境(第十四届大赛) 链接: https://pan.baidu.com…

软件测试行业真的饱和了吗?一线大厂年薪100W的测开岗位还很缺人!

在一线大厂,没有测试这个岗位,只有测开这个岗位。这几年,各互联网大厂技术高速更新迭代,软件测试行业也正处于转型期。传统的功能测试技术逐步淘汰,各种新的测试技术层出不穷,测试人员的薪资也水涨船高。与…

【Docker】基础

文章目录Docker什么是Docker虚拟机和容器Docker 底层原理Docker 优点关键技术Docker 推荐视频课程配套食用:https://www.bilibili.com/video/BV1gr4y1U7CY/?vd_source6d95a05fa9867baaa8ea7c5c52faf4e6 什么是Docker Docker,容器虚拟化技术&#xff…

从浪潮登顶NuScenes榜首解读自动驾驶AI感知技术的发展

导读: “自动驾驶是集感知、决策、交互于一体的技术 环境感知能力作为自动驾驶的第一个环节,是车辆与环境交互的纽带 通过“摄像头、毫米波雷达、超声波雷达、激光雷达”等各类传感器设备,感知环境的手段日趋多元化 同时,在平…

STM32 EXT for GPIO

EXT 描述: EXTI(中断/事件控制器)包括20个相互独立的边沿检测电路并且能够向处理器内核产生中断 请求或唤醒事件。EXTI有三种触发类型:上升沿触发、下降沿触发和任意沿触发。EXTI中的每 一个边沿检测电路都可以独立配置和屏蔽 E…

java-文件上传-excel存入数据库全代码及流程(附前端代码)

今天给大家带来的是文件上传中比较常用的,上传excel文件,将表格中的数据存入数据库中的一个转化的工具类;大致的流程是:前端点击上传按钮-->选择需要上传的excel表格-->确认上传--> 文件传到后台-->后台处理file文…

[附源码]计算机毕业设计酒店在线预约咨询小程序Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

解决穿山甲Gromore广告在Oppo上报广告病毒Android.Virus.AdCheat.AdCut.A

描述 在上架Oppo的时候审核打回了发现了病毒。提示如下: 自动化检测“安全”项未通过,病毒名称:Android.Virus.AdCheat.AdCut.A,病毒描述:该病毒安装启动后,会展示非官方广告,造成盗源消耗和信息泄露,请卸…

[附源码]Python计算机毕业设计Django行程规划app

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…