深度学习及CNN、RNN、GAN等神经网络简介(图文解释 超详细)

简介: 深度学习及CNN、RNN、GAN等神经网络简介(图文解释 超详细)

深度学习概述

理论上来说,参数越多的模型复杂度越高、容量越大,这意味着它能完成更复杂的学习任务。但一般情形下,复杂模型的训练效率低,易陷入过拟合。随着云计算、大数据时代的到来,计算能力的大幅提高可以缓解训练的低效性,训练数据的大幅增加可以降低过拟合风险。因此,以深度学习(Deep Learning,DL)为代表的复杂模型受到了关注


深度学习是机器学习(Machine Learning,ML)领域中一个新的研究方向。它使机器模仿视听和思考等人类的活动,解决了很多复杂的模式识别难题,使得人工智能相关技术取得了很大进步。深度学习是一类模式分析方法的统称,就具体研究内容而言,主要涉及三类方法


(1)基于卷积运算的神经网络系统,即卷积神经网络(Convolutional Neural Network,CNN)

(2)基于多层神经元的自编码神经网络,包括自编码(Auto Encoder)以及近年来受到广泛关注的稀疏编码两类(Sparse Coding)

(3)以多层自编码神经网络的方式进行预训练,进而结合鉴别信息进一步优化神经网络权值的深度置信网络(DBN)


通过多层处理,逐渐将底层的特征表示转化为高层特征表示,用简单模型即可完成复杂的分类等学习任务,由此可将深度学习理解为进行特征学习或表示学习。


以往在机器学习用于现实任务时,描述样本的特征通常需要人类专家设计,称为特征工程,众所周知,特征的好坏对泛化性能有至关重要的影响,人类专家设计出好的特征也并非易事,特征学习则通过机器学习技术自身产生好特征,这使机器学习向全自动数据分享又前进了一步


常用的深度学习算法


常见的深度学习算法主要包括卷积神经网络、循环神经网络和生成对抗神经网络(Generative Adversarial Network,GAN)等。这些算法是深度学习的基础算法,在各种深度学习相关系统中均有不同程度的应用


1. 卷积神经网络

卷积神经网络(Convolutional Neural Network,CNN)是第一个被成功训练的多层神经网络结构,具有较强的容错、自学习及并行处理能力。CNN最初是为识别二维图像形状而设计的多层感知器,局部联结和权值共享网络结构类似于生物神经网络,降低神经网络模型的复杂度,减少权值数量,使网络对于输入具备一定的不变性。经典的LeNet-5卷积神经网络结构图如图9-7所示

经典的LeNet-5卷积神经网络包括了输入层、卷积层、池化层、全连接层和输出层

(1)输入层

输入数据结构可以是多维的

(2)卷积层

卷积层使用卷积核提取特征,在卷积层中需要理解局部感受野和共享权值

(3)池化层

池化层是将卷积得到的特征映射图进行稀疏处理,减少数据量

(4)全连接层

在网络的末端对提取后的特征进行恢复,重新拟合,减少因为特征提取而造成的特征丢失

(5)输出层

输出层用于将最终的结果输出,针对不同的问题,输出层的结构也不相同


2. 循环神经网络


循环神经网络(Recurrent Neural Network, RNN)是一类以序列数据为输入,在序列的演进方向进行递归且所有结点(循环单元)按链式连接的递归神经网络(Recursive Neural Network)。之所以是“循环”,是因为其中隐含层结点的输出不仅取决于当前输入值,还与上一次的输入相关,即结点的输出可以指向自身,进行循环递归运算,在处理时间序列相关的场景时效果明显,在分析语音、视频、天气预报、股票走势预测等方面具有突出优势


3. 生成对抗网络


生成式对抗网络(Generative Adversarial Networks,GAN)是一种深度学习模型,是近年来复杂分布上无监督学习最具前景的方法之一。它解决的问题是从现有样本中学习并创建出新的样本,按照人类对事物的学习过程,逐渐总结规律,而并非使用大量数据训练,所以在新的任务处理中,只需要少量的标记样本就可以训练出高效的分类器


GAN网络模型通过生成模型(Generative Model)和判别模型(Discriminative Model)的互相博弈学习产生相当好的输出。生成模型是给定某种隐含信息,随机产生观测数据,判别模型的主要任务是对样本进行区分,首先训练区分网络,从而提高模型的真假辨识能力,然后训练生成网络,提高其欺骗能力,生成接近于真实的训练样本,两种网络之间形成对抗关系,都极力优化自己的性能,直到达到一种动态平衡状态


总结


神经网络是由具有适应性的简单单元组成的广泛并行互连的网络,它的组织能模拟生物神经系统会真实世界物体所作出的交互反应 。在机器学习中谈论神经网络时一般指的是“神经网络学习

感知机感知器的概念类似于大脑基本处理单元神经元的工作原理。感知器具有许多输入(通常称为特征),这些输入被馈送到产生一个二元输出的线性单元中。因此,感知器可用于解决二元分类问题,其中样本将被识别为属于预定义的两个类之一

BP算法基于梯度下降策略,以目标的负梯度方向对网络参数进行调整。现实任务中使用神经网络时,大多是使用BP算法进行训练。BP算法不仅可以用于多层前馈神经网络,还可以用于其他类型的神经网络。通常所说的BP网络指利用BP算法训练的多层前馈神经网络

深度学习的概念源于人工神经网络的研究,含多个隐藏层的多层感知器就是一种深度学习结构。深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。研究深度学习的动机在于建立模拟人脑进行分析学习的神经网络,它模仿人脑的机制来解释数据,例如图像,声音和文本等

卷积神经网络是针对二维数据设计的一种模拟“局部感受野”的局部连接的神经网络结构。它引入卷积运算实现局部连接和权值共享的特征提取,引入池化操作实现低功耗计算和高级特征提取。网络构造通过多次卷积和池化过程形成深度网络,网络的训练含有“权共享”和“稀疏”的特点,学习过程类似于BP算法

创作不易 觉得有帮助请点赞关注收藏~~~

相关文章
|
28天前
|
机器学习/深度学习 存储 自然语言处理
卷积神经元网络CNN基础
卷积神经元网络CNN基础
34 1
|
29天前
|
机器学习/深度学习
大模型开发:解释卷积神经网络(CNN)是如何在图像识别任务中工作的。
**CNN图像识别摘要:** CNN通过卷积层提取图像局部特征,池化层减小尺寸并保持关键信息,全连接层整合特征,最后用Softmax等分类器进行识别。自动学习与空间处理能力使其在图像识别中表现出色。
24 2
|
1月前
|
机器学习/深度学习 人工智能 TensorFlow
人工智能与图像识别:基于深度学习的卷积神经网络
人工智能与图像识别:基于深度学习的卷积神经网络
34 0
|
11天前
|
机器学习/深度学习 算法 PyTorch
【动手学深度学习】深入浅出深度学习之线性神经网络
【动手学深度学习】深入浅出深度学习之线性神经网络
54 9
|
5天前
|
机器学习/深度学习 数据可视化 测试技术
深度学习:Keras使用神经网络进行简单文本分类分析新闻组数据
深度学习:Keras使用神经网络进行简单文本分类分析新闻组数据
11 0
|
5天前
|
机器学习/深度学习 API 算法框架/工具
R语言深度学习:用keras神经网络回归模型预测时间序列数据
R语言深度学习:用keras神经网络回归模型预测时间序列数据
16 0
|
5天前
|
机器学习/深度学习 数据采集 TensorFlow
R语言KERAS深度学习CNN卷积神经网络分类识别手写数字图像数据(MNIST)
R语言KERAS深度学习CNN卷积神经网络分类识别手写数字图像数据(MNIST)
23 0
|
5天前
|
机器学习/深度学习
HAR-RV-J与递归神经网络(RNN)混合模型预测和交易大型股票指数的高频波动率
HAR-RV-J与递归神经网络(RNN)混合模型预测和交易大型股票指数的高频波动率
13 0
|
12天前
|
机器学习/深度学习 自然语言处理 算法
|
28天前
|
机器学习/深度学习 自然语言处理 PyTorch
【PyTorch实战演练】基于全连接网络构建RNN并生成人名
【PyTorch实战演练】基于全连接网络构建RNN并生成人名
23 0