阿里云人工智能ACA认证(5)—深度学习基础
发布时间:2025-05
浏览量:17
本文字数:2605
读完约 9 分钟
一、深度学习概述
Deep Learning
机器学习的分支
是一种人工神经网络为架构
对资料进行特征学习的算法:允许计算机学习使用特征的同时,也学习如何提取特征(学习如何学习)
优点:
学习能力强
覆盖范围广、适应性好
数据驱动、上限高
可移植性好
缺点:
计算量大、便携性差
硬件需求高
模型设计复杂
容易存在偏见
深度学习框架
一种界面、库或工具
能够让开发人员利用预先构建和优化好的组间集合定义模型
更容易、更快速地构建深度学习模型
一个良好的深度学习框架应具备以下5个关键特征:针对性能进行优化、易于理解与编码、强大的社区生态、并行化进程加快运算、自动计算渐变
常用深度学习框架包括TensorFlow、Torch、Caffe等
TensorFlow
一个利用数据流图进行数值计算的开源软件库
可以在众多异构的系统上方便地移植
Torch
包含大量的机器学习、计算机视觉、信号处理、并行计算、图像、视频、音频的库
和Caffe类似,拥有大量的训练好的深度学习模型
Caffe
一个清晰而高效的深度学习框架
基于C++/CUDA 的架构,支持命令行、Python和Matlab接口
可以在CPU和GPU直接无缝切换,并支持多GPU
深度学习框架的选择需要考虑多方面的因素,如学习门槛、上手难度、开发速度、易用性等
神经网络
人工神经网络(Artificial Neural Network, ANN),简称神经网络 NN
在计算机领域中,是一种模仿生物神经网络的结构和功能的数学或计算模型
目的是模拟大脑的某些机理与机制,实现某个方面的功能,例如图像识别、语音识别
神经网络组成
神经元
负责计算和处理输入信号
网络连接
负责将不同神经元连接起来,形成神经网络
连接两端各位一个神经元
一个神经元的输出位另一个神经元的输入,例如信号 a
网络连接有加权参数w,经过加权计算后,信号变成 a*w
二、多层感知机
定义:
人工智能最早的模型
一种有监督的学习算法
本质上是一个二分类问题
是神经网络和支持向量机的基础
缺点:
感知机只能解决单纯的线性问题
层级结构
主要包含输入层、隐藏层、输出层,可以用于拟合非线性函数
激活函数
是一种在人工智能神经网络的神经单元上运行的函数,旨在帮助网络学习数据中的复杂模式,负责将神经元节点的输入映射到输出端
常见激活函数:Sigmoid、Tanh、ReLu等
sigmoid
用于隐藏层神经元输出,取值范围 [0, 1],可用于二分类
输出不是0均值
存在梯度消失的情况
Tanh
解决了sigmoid函数的不是0均值化输出问题,在特征相差明显时的效果更好,在循环过程中会不断扩大特征效果
存在梯度消失问题
ReLu
最常用的激活函数,它解决了梯度消失的问题,计算速度非常快,收敛速度远快于 sigmoid 和 tanh
BP神经网络算法
BP(Back Propagation)神经网络是一种按误差逆传播算法训练的多层神经网络
正向传播求损失,反向传播回传误差
根据误差信号修正每层的权重
三、卷积神经网络
CNN:Convolutional Neural Network
一种带有卷积结构的深度神经网络,通过特征提取和分类识别完成对输入数据的判别
在1989年提出,早期被成功用于手写字符图像识别
2012年更深层次的AlexNet网络取得成功,此后卷积神经网络被广泛用语各个领域
层级结构
输入层
接收数据的输入,可以处理多维数据,也能对输入特征进行标准化处理,有利于提升卷积神经网络的学习效率和表现
卷积层
提取一个局部区域的特征,不同的卷积核相当于不同的特征提取器
主要应用在图像处理上,而图像为二维结构,因此为了更充分地利用图像的局部信息
通常将神经元组织为三维结构的神经层,其大小为高度 M x 宽度N x 深度D,由 D 个 M x N 大小的特征映射构成
卷积计算实例
现有 4x4x1 的输入矩阵,卷积核为3x3,滑动步长为 1
池化层
包含预订的池化函数
将特征图中单个点的结果替换为其相邻区域的特征图统计量
对数据进行降维,减少数据特征,减少网络参数和运算次数,避免过拟合,常用方法有最大值池化和均值池化
全连接层
神经元排成一列,这些神经元与前一层神经元通过权值互连,呈全连接结构
等价于传统前馈神经网络中的隐含层,通常位于卷积神经网络的最后部分,并只向其它全连接层传递信号
输出层
通常是全连接层,因此其结构和工作原理与传统前馈神经网络中的输出层相同
假设对于10分类问题,输出层如下:
经典卷积神经网络
LeNet-5
上世纪90年代提出,第一个卷积神经网络,是一个非常成功的神经网络模型
共包含7层网络结构,分别为2个卷积层、2个池化层、2个全连接层和1个输出层
卷积核大小全部为 5*5
基于LeNet-5的手写数字识别系统在20世纪90年代被美国很多银行使用,用来识别支票上面的手写数字
AlexNet
在2012年的ImageNet ILSVRC竞赛中以Top5错误率16.4%夺得冠军
共包含8层网络结构,分别为5层卷积层和3层全连接层
卷积核大小分别为11*11、5*5和3*3
AlexNet是第一个现代深度卷积网络模型,其首次使用了很多现代深度卷积网络的技术方法,比如使用GPU进行并行训练,采用ReLU作为非线性激活函数,使用Dropout防止过拟合,使用数据增强来提高模型准确率等
ResNet
残差网络(Residual Network)是ILSVRC2015的胜利者
共包含152层网络结构,分别为151层卷积层和1层全连接层
它使用了跳跃链接,并大量使用了批量归一化
ResNet通过使用残差单元成功训练出了152层的神经网络。残差网络的特点是容易优化,并且能够通过增加相当的深度来提高准确率。其内部的残差块使用了跳跃连接,缓解了在深度神经网络中增加深度带来的梯度消失问题
卷积神经网络应用
一维卷积:序列模型、自然语言处理模型
二维卷积:图像处理、计算机视觉领域
三维卷积:医学领域、视频处理领域
四、循环神经网络
Recurrent Neural Network RNN,是一类以序列数据为输入,在序列的演进方向进行递归且所有节点(循环单元)按链式连接的递归神经网络
结构
一个典型的RNN网络包含一个输入 x,一个输出 h 和一个神经网络单元 A
与普通的神经网络不同的是,RNN网络的神经网络单元 A 不仅仅与输入和输出存在联系,其与自身也存在一个回路
这种网络结构就揭示了RNN的实质:上一个时刻的网络状态信息将会作用于下一个时刻的网络状态
拓展
将RNN的自循环结构展开,像是将同一个网络复制并连成一条线的结构,将自身提取的信息传递给下一个继承者
这种链式的结构揭示了RNN与序列和列表类型的数据密切相关
神经元结构