人工神经网络及其应用
提示
【教学目标】
1.了解生物神经元结构、神经元数学模型、神经网络的结构与工作方式。
2.掌握基本的神经网络及其学习算法。
3.遵守法律法规,坚守职业道德底线
【教学内容】
1.神经元与神经网络
2.BP神经网络及其学习算法
3.BP神经网络的应用
【重点难点】
1.重点:神经元数学模型、神经网络的结构与工作方式。
2.难点:神经网络及其学习算法。
人工神经网络及其应用
课程基础
教材:王万良《人工智能导论》(第5版),高等教育出版社,2020
核心:人工神经网络是对人脑神经网络的抽象与模拟,是机器学习的核心技术之一,凭借并行处理、自适应学习、容错性强的特点,已广泛应用于模式识别、联想记忆、自动控制、数据挖掘、组合优化等领域。本章节围绕经典的BP神经网络、Hopfield神经网络展开,同时介绍卷积神经网络、生成对抗网络等深度学习核心模型及应用。
目录
- 神经元与神经网络
- BP神经网络及其学习算法
- BP神经网络在模式识别中的应用
- Hopfield神经网络及其改进
- Hopfield神经网络的应用
- 卷积神经网络与深度学习
- 生成对抗网络及其应用
一、神经元与神经网络
前言
人工神经网络(ANN)的核心是模拟人脑生物神经元的结构和工作原理,由大量简单的人工神经元通过广泛连接构成,是一种隐式的知识表示方法(知识存储在神经元之间的连接权值中,而非显式的规则/公式)。
1.1 生物神经元的结构
人脑由约$10^{14}$个神经细胞(神经元)组成,大脑皮层约140亿个、小脑皮层约1000亿个,每个神经元与100010000个其他神经元相连,形成复杂的网状结构。
生物神经元的核心组成(输入→处理→输出)
- 树突:神经元的输入端,接收其他神经元传递的信号;
- 细胞体:神经元的处理中心,对树突接收的信号进行整合计算;
- 轴突:神经元的输出端,将细胞体处理后的信号传递给其他神经元;
- 突触:神经元之间的连接节点,是信号传递的关键,突触的传递作用可增强/减弱(对应学习与遗忘)。
生物神经元的工作状态
神经元通过细胞膜电位判断是否传递信号,核心是阈值判断:
- 兴奋状态:细胞膜电位 > 动作电位阈值 → 产生神经冲动,向其他神经元传递信号;
- 抑制状态:细胞膜电位 < 动作电位阈值 → 不产生神经冲动,抑制信号传递。
学习与遗忘的本质
神经元的结构具有可塑性,突触的信号传递能力可随使用频率增强/减弱:常用的突触连接会变“强”(学习),长期不用的连接会变“弱”(遗忘)——这是人工神经网络权值调整的生物依据。
1.2 神经元数学模型
1943年麦克洛奇和皮兹提出M-P模型,是第一个人工神经元数学模型,核心是将生物神经元的“输入-整合-输出-阈值”过程抽象为数学公式。
人工神经元的核心要素
对应生物神经元的结构,人工神经元包含4个核心要素,实现输入信号加权和→阈值判断→非线性变换→输出的过程:
- 输入:,对应生物神经元的树突接收的信号;
- 权值:,对应突触的传递强度,权值越大,对应输入的影响越强;
- 阈值:,对应生物神经元的动作电位阈值;
- 激励函数:,又称传输/激活函数,对加权和结果进行非线性变换,模拟生物神经元的“兴奋/抑制”。
人工神经元的数学表达式
- 加权和计算:对输入信号进行加权求和,再减去阈值,得到净输入
- 非线性输出:将净输入传入激励函数,得到神经元输出
常用非线性激励函数
激励函数是人工神经元的核心,解决线性模型无法拟合复杂非线性问题的缺陷,常用4种类型,各有适用场景:
| 激励函数类型 | 特点 | 适用场景 |
|---|---|---|
| 硬极限函数(阶跃函数) | 输入≥0输出1,输入<0输出0,模拟“兴奋/抑制”的二值状态 | 离散型神经网络(如离散Hopfield) |
| 对称硬极限函数 | 输入≥0输出1,输入<0输出-1,二值对称输出 | 离散型神经网络 |
| S形函数(Sigmoid) | 输出在(0,1)之间,连续平滑,可微 | 连续型神经网络(如BP网络) |
| 双曲正切S形函数 | 输出在(-1,1)之间,对称连续平滑,可微 | 连续型神经网络,拟合效果更优 |
人工神经元的工作过程
- 从各输入端接收输入信号;
- 根据连接权值计算所有输入的加权和,并减去阈值得到净输入;
- 将净输入传入非线性激励函数,得到最终输出。
通俗例子:把人工神经元看作一个“判断器”——比如判断“是否要出门散步”,输入是“天气好坏()、是否有空()”,权值是“天气的重要性()、时间的重要性()”,阈值。
- 若天气好()、有空(),则,经S形函数输出(倾向于出门);
- 若天气差()、有空(),则,输出(倾向于不出门)。
1.3 神经网络的结构与工作方式
人工神经网络的性能由三大要素决定:神经元的特性、神经元之间的拓扑结构、学习规则。其中拓扑结构是基础,主要分为前馈型和反馈型两类。
1. 神经网络的核心拓扑结构
(1)前馈型(前向型)神经网络
- 结构特点:神经元按层排列,分为输入层、隐层(隐藏层)、输出层,信号单向传播——从输入层到隐层,再到输出层,层间无反馈,层内无连接;
- 核心特点:结构简单,易于训练,是最常用的神经网络结构;
- 典型代表:BP神经网络、卷积神经网络。
(2)反馈型神经网络
- 结构特点:神经元之间存在双向连接,信号可正向传播,也可反向反馈,部分神经元的输出会作为自身或其他神经元的输入;
- 核心特点:具有记忆性,能收敛到稳定状态,适合联想记忆、优化问题;
- 典型代表:Hopfield神经网络。
2. 神经网络的工作方式
根据神经元状态调整的同步性,分为两种工作方式:
- 同步(并行)方式:同一时刻,网络中所有神经元同时调整状态,并行处理信息,效率高;
- 异步(串行)方式:同一时刻,只有一个神经元调整状态,其余神经元状态保持不变,稳定性强。
1.4 神经网络的学习
神经网络的学习本质是调整神经元之间的连接权值,使网络能拟合输入与输出的映射关系,实现对未知数据的预测/分类。
核心学习规则:Hebb学习规则(1944年)
最经典的学习规则,源于生物神经元的“协同兴奋”,核心思想:当某一突触两端的神经元同时处于兴奋状态时,该突触的连接权值应该增强。
- 通俗理解:“一起激活的神经元,连接会变得更紧密”——比如学习时,“苹果”的图像和“苹果”的文字同时刺激大脑,二者对应的神经元连接会增强,下次看到图像就能联想到文字。
- 数学本质:权值的调整量与两个神经元的输出成正比,即(为突触两端神经元的输出)。
神经网络学习的核心逻辑
所有神经网络的学习规则都是Hebb规则的扩展,核心都是根据“实际输出与期望输出的误差”,反向调整连接权值,使误差不断减小,直到网络达到稳定状态。
二、BP神经网络及其学习算法
BP(Back Propagation,反向传播)神经网络是应用最广泛的前馈型神经网络,1986年由鲁梅尔哈特等人提出,核心是误差反向传播算法——通过正向传播计算输出误差,再通过反向传播将误差从输出层向输入层传递,逐层调整权值,最小化误差。
2.1 BP神经网络的结构
BP网络是多层前馈型神经网络,至少包含输入层、输出层,可包含一层或多层隐层,层内神经元无连接,层间神经元全连接。
核心结构特点
- 层结构:输入层负责接收数据,隐层负责提取特征,输出层负责输出结果;隐层越多,网络的特征提取能力越强,但训练难度越大;
- 神经元激励函数:隐层和输出层均采用可微的S形函数(Sigmoid/双曲正切),保证误差反向传播时能计算权值的梯度;
- 权值调整:通过Delta学习算法调整权值,即权值调整量与误差梯度成正比。
BP网络的工作过程
分为训练阶段和工作阶段,训练是核心,工作是训练后的应用:
- 训练阶段:将N组输入输出样本传入网络,正向传播计算输出误差,反向传播逐层调整权值,反复迭代,直到误差达到预设要求;
- 工作阶段:将实际数据输入训练好的网络,网络在误差范围内自动计算输出结果,实现预测/分类。
BP定理(逼近定理)
BP网络的理论基础:给定任意小的误差ε,对于任意的连续函数,存在一个三层前向神经网络,它可以在任意ε平方误差精度内逼近该连续函数。
- 通俗理解:一个包含输入层+单隐层+输出层的BP网络,只要隐层神经元数量足够,就能拟合任意复杂的非线性关系——这也是BP网络应用广泛的根本原因。
2.2 BP学习算法
BP学习算法是误差反向传播算法的简称,解决两个核心问题:一是证明三层BP网络能逼近任意连续函数;二是给出具体的权值调整方法,使网络输出逼近期望输出。
核心思想
- 正向传播:输入信息从输入层传至隐层,再传至输出层,计算实际输出与期望输出的误差;
- 反向传播:将误差从输出层向隐层、输入层逐层传递,计算每层神经元的误差信号,根据梯度下降法调整各层之间的连接权值,使误差不断减小。
误差函数与权值调整
- 目标误差函数:采用均方误差,衡量实际输出与期望输出的差距,目标是最小化:
- 权值调整公式:根据梯度下降法,权值调整量与误差函数对权值的负梯度成正比,即:
其中为学习率(0<η<1),控制权值调整的步长,η越大,训练越快,但易震荡;η越小,训练越稳定,但收敛越慢。
正向传播与反向传播的核心步骤
(1)正向传播(输入→输出,计算误差)
- 输入层神经元输出 = 输入数据;
- 隐层神经元净输入:,输出:;
- 输出层神经元净输入:,输出:;
- 计算输出层误差:。
(2)反向传播(误差→输入,调整权值)
- 输出层权值调整:计算输出层神经元的误差信号,调整输出层与隐层的权值:;
- 隐层权值调整:计算隐层神经元的误差信号,调整隐层与输入层的权值:;
- 重复正向传播和反向传播,直到误差小于预设阈值。
通俗理解:BP算法的训练过程像“学生做练习题”——正向传播是“学生做题给出答案”,反向传播是“老师批改作业,指出错误,并告诉学生哪里错了、怎么改”,反复练习(迭代),直到学生做题的正确率达到要求。
2.3 BP算法的实现
BP算法的实现分为设计阶段和计算机实现阶段,目前已有成熟的框架(如Python-TensorFlow/PyTorch)实现,开发者只需关注核心参数设计。
1. BP算法的核心设计要点
(1)隐层数及隐层神经元数的确定
目前无统一的理论指导,主要依靠经验和实验,核心原则:在满足精度要求的前提下,尽量选择较少的隐层和神经元数(避免过拟合)。
- 隐层数:一般选择1~2层,足够拟合大多数非线性问题;
- 隐层神经元数:参考经验公式(为输入层神经元数,为输出层神经元数,为0~10的整数),再通过实验调整。
(2)初始权值的设置
一般将初始权值设置为均值为0的小随机数(如[-0.5,0.5]之间),避免权值过大导致神经元输出饱和(S形函数两端梯度为0,无法调整权值)。
(3)训练数据预处理
对输入数据进行线性特征比例变换,将所有特征映射到[0,1]或[-1,1]区间,且使每个特征的均值为0、方差相同——目的是消除特征量纲的影响,加快训练收敛速度。
(4)输出后处理
若用于分类问题,将输出值编码为类别标号(如二分类输出0/1,多分类输出One-Hot向量);若用于回归问题,直接输出连续值即可。
2. BP算法的计算机实现流程(可视化步骤)
- 初始化:对所有连接权值和阈值赋以[-0.5,0.5]之间的随机小值,设置学习率和误差阈值;
- 输入样本:从N组训练样本中取一组,将输入传入输入层,期望输出备用;
- 正向传播:逐层计算隐层和输出层的神经元输出,得到实际输出;
- 计算误差:计算均方误差,若,训练结束;否则继续;
- 反向传播:从输出层到隐层,再到输入层,逐层计算误差信号,调整所有连接权值;
- 迭代训练:取下一组样本,重复步骤2~5,直到所有样本的误差均小于。
2.4 BP网络的优缺点
BP网络是应用最广泛的神经网络,但其本身存在固有缺陷,实际应用中需通过改进(如动量法、自适应学习率)弥补。
优点
- 强逼近能力:三层BP网络能逼近任意连续函数,可拟合复杂的非线性关系;
- 强泛化能力:训练好的网络能对未见过的未知数据进行准确预测/分类;
- 好的容错性:输入数据存在少量噪声时,网络仍能输出正确结果,抗干扰能力强;
- 结构简单:多层前馈结构,易于实现和训练,适合工程应用。
缺点
- 收敛速度慢:梯度下降法的固有缺陷,训练往往需要数千甚至数万次迭代;
- 易陷入局部极值:误差函数是复杂的非线性函数,梯度下降法容易收敛到局部最小值,而非全局最小值;
- 隐层参数难以确定:隐层数和神经元数无理论指导,只能依靠经验和实验,耗时费力;
- 学习率难以选择:学习率过大易导致训练震荡,过小则收敛过慢,无统一的选择标准。
三、BP神经网络在模式识别中的应用
模式识别是让计算机模拟人类的感知能力,对图像、文字、语音、信号等模式信息进行识别和分类,是BP神经网络最经典的应用场景之一。
模式识别的核心痛点
传统的模式识别方法依赖人工提取特征,对复杂模式(如手写数字、模糊图像)的识别效果差;而BP神经网络能自动提取特征,无需人工干预,且具有容错性强、自适应学习的特点,适合处理复杂的模式识别问题。
BP神经网络在数字识别中的应用实例(例8.1)
问题描述
设计三层BP网络,对手写数字0~9进行分类,即使数字存在少量噪声(像素丢失),仍能正确识别。
实现步骤
- 数字特征提取:将每个数字用9×7的网格表示,黑色像素为1,灰色像素为0,将网格转换为63维的向量(9×7=63),作为BP网络的输入;
- BP网络结构设计:采用63-6-10的三层结构——输入层63个神经元(对应63维向量),隐层6个神经元,输出层10个神经元(对应数字0~9,One-Hot编码);
- 训练参数设置:学习率,训练600个周期,输出值>0.9记为1(对应数字),<0.1记为0;
- 测试:用存在像素丢失的数字图像进行测试,检验网络的容错性。
测试结果
- 除数字8外,其余数字均能100%正确识别;
- 数字8因像素丢失,网络输出第6个节点(数字6)值为0.53,第8个节点(数字8)值为0.41——表明网络能识别出模糊性,未给出错误判断,容错性强。
BP神经网络模式识别的核心优势
- 自动特征提取:无需人工设计特征提取规则,网络能从原始数据中自动提取有效特征;
- 强容错性:输入数据存在少量噪声/缺失时,仍能正确识别,适合实际场景;
- 自适应学习:可通过不断训练更新权值,适应新的模式数据;
- 并行处理:神经元并行计算,识别速度快,适合工程化应用。
四、Hopfield神经网络及其改进
Hopfield神经网络是最经典的反馈型神经网络,1982年由Hopfield提出,分为离散型(DHNN)和连续型(CHNN)两类,核心特点是具有记忆性,能收敛到稳定状态,适合联想记忆和组合优化问题。
4.1 离散型Hopfield神经网络(DHNN)
离散型Hopfield网络是二值神经网络,神经元的输出只有两种状态(1和-1,或0和1),属于反馈型全连接网络——每个神经元的输出都作为其他神经元的输入,无层结构。
1. 离散Hopfield网络的模型
(1)网络结构
由个神经元组成的全连接网络,无输入层和输出层之分,每个神经元既接收其他神经元的信号,也向其他神经元发送信号,权值矩阵满足对称性(),且自连接权值为0(,神经元不向自身传递信号)。
(2)输入输出关系
神经元的净输入为所有神经元输出的加权和,减去阈值,输出为对称硬极限函数(二值输出):
其中为符号函数,模拟神经元的“兴奋/抑制”二值状态。
(3)工作方式
支持异步和同步两种工作方式,异步方式更稳定(保证网络能收敛到稳定状态):
- 异步方式:每次只更新一个神经元的状态,其余神经元状态保持不变;
- 同步方式:所有神经元同时更新状态。
2. 网络的稳定性(核心特性)
Hopfield网络的核心价值是能收敛到稳定状态,稳定状态又称吸引子——从任意初始状态开始,网络经过有限次状态更新后,神经元的状态不再改变,此时的状态即为吸引子。
稳定性定理
- 串行(异步)稳定性:若权值矩阵为对称矩阵,则离散Hopfield网络在异步工作方式下一定能收敛到稳定状态;
- 并行(同步)稳定性:若权值矩阵为非负定对称矩阵,则离散Hopfield网络在同步工作方式下一定能收敛到稳定状态。
稳定状态的意义
Hopfield网络的稳定状态对应记忆的样本——将需要记忆的样本作为网络的吸引子,当输入样本的部分信息/模糊信息时,网络会通过状态更新收敛到对应的稳定状态,实现联想记忆(由部分信息联想到完整样本)。
4.2 连续型Hopfield神经网络(CHNN)
连续型Hopfield网络是离散型的扩展,神经元的输出为连续值(在[0,1]或[-1,1]之间),用微分方程描述网络的动态变化,更贴近生物神经元的连续工作状态。
核心特点
- 神经元输出:采用S形函数,输出为连续值,可微;
- 动态特性:用电容、电阻模拟神经元的充放电过程,网络状态随时间连续变化;
- 稳定性:引入能量函数,网络的动态变化过程是能量函数不断减小的过程,最终收敛到能量函数的最小值(稳定状态);
- 硬件实现:可通过VLSI(超大规模集成电路)硬件实现,适合实时应用。
能量函数与稳定性
连续型Hopfield网络的能量函数是李雅普诺夫函数,核心定理:
- 若权值矩阵对称(),电容,激励函数为单调递增的连续函数,则网络的能量函数随时间单调不增;
- 当且仅当神经元的状态变化率为0时,能量函数达到最小值,网络收敛到稳定状态。
4.3 随机神经网络
Hopfield网络的神经元状态更新是确定性的(输入确定则输出确定),而随机神经网络引入随机噪声,神经元的状态更新是概率性的,能有效避免陷入局部极值,适合复杂的优化问题。
典型代表:Boltzmann机(玻尔兹曼机)
1985年由欣顿等人提出,是离散Hopfield网络的变型,核心是引入统计物理学的玻尔兹曼分布,使神经元的输出按概率分布取值。
核心特点
- 神经元输出为0或1,输出概率由玻尔兹曼分布决定,温度控制随机性(越大,随机性越强,越容易跳出局部极值);
- 引入模拟退火算法:训练时先将温度设置为较大值,逐步降低,使网络先全局搜索,再局部搜索,最终收敛到全局最小值;
- 适合处理无监督学习和组合优化问题,但训练复杂度高,收敛速度慢。
其他随机神经网络
- 高斯机:引入高斯随机噪声(白噪声),神经元输出的随机误差服从高斯分布;
- 柯西机:引入柯西随机噪声(有色噪声),适合处理具有厚尾分布的数据。
五、Hopfield神经网络的应用
Hopfield神经网络的核心应用场景分为两类:联想记忆(离散型为主)和组合优化(连续型为主),利用其能收敛到稳定状态的特性,实现“由部分信息联想完整信息”和“求解优化问题的最优解”。
5.1 Hopfield神经网络在联想记忆中的应用
联想记忆是人类的基本智能——由部分信息、模糊信息或残缺信息,联想到完整的、清晰的信息(如看到熟悉的背影联想到整个人)。Hopfield网络的联想记忆本质是:将记忆的样本作为网络的吸引子,输入样本的部分信息作为初始状态,网络收敛到对应的吸引子,即实现联想记忆。
联想记忆的实现步骤(通用)
- 设计网络结构:根据记忆样本的维度,确定神经元的数量(样本为维向量,则网络有个神经元);
- 确定权值矩阵:根据记忆样本,采用Hebb学习规则计算权值矩阵,使样本成为网络的吸引子;
- 联想记忆测试:将样本的部分/模糊/残缺信息作为网络的初始状态,按异步方式更新神经元状态,直到网络收敛到稳定状态,稳定状态即为联想的结果。
联想记忆应用实例(例8.2)
问题描述
设计3神经元的离散Hopfield网络,实现对“水果特征”的联想记忆——水果特征为[外形,质地,重量],其中:
- 外形:圆形=1,椭圆形=-1;
- 质地:光滑=1,粗糙=-1;
- 重量:<1磅=1,>1磅=-1;
- 记忆样本:苹果[1,1,1](圆形、光滑、轻),香蕉[-1,1,-1](椭圆形、光滑、重)。
实现步骤
- 网络结构:3个神经元,全连接,权值矩阵,自连接权值为0;
- 计算权值矩阵:根据Hebb学习规则(为第个记忆样本),计算得对称权值矩阵;
- 测试:输入残缺样本[1,1,1](苹果的完整特征),网络收敛到稳定状态[1,1,1];输入模糊样本[1,1,-1],网络收敛到最近的吸引子[1,1,1](苹果),实现联想记忆。
Hopfield网络联想记忆的特点
- 容错性强:输入样本存在噪声、残缺、模糊时,仍能正确联想;
- 具有记忆容量:一个神经元的Hopfield网络,最多能记忆个样本,样本过多会导致吸引子重叠,联想失败;
- 实现简单:无需复杂的训练过程,权值矩阵可通过Hebb规则直接计算。
5.2 Hopfield神经网络在组合优化中的应用
1985年Hopfield和塔克首次将连续型Hopfield神经网络应用于旅行商问题(TSP)并获得成功,开创了神经网络求解组合优化问题的新方向。组合优化问题的核心是在众多可行解中寻找最优解(如TSP的最短路径),Hopfield网络的本质是将优化问题的最优解映射为网络的能量函数最小值,通过网络收敛到稳定状态,得到最优解。
神经网络求解组合优化问题的基本思路
- 问题映射:将优化问题的可行解映射为Hopfield网络的神经元状态(可行解为维向量,则网络有个神经元);
- 构造能量函数:构造网络的能量函数,使能量函数的最小值对应优化问题的最优解,且满足问题的约束条件;
- 确定网络参数:将能量函数与Hopfield网络的标准能量函数对比,确定权值矩阵和阈值;
- 网络演化:给定网络的初始状态,让网络按动态方程演化,直到收敛到稳定状态,稳定状态对应的神经元状态即为优化问题的解。
经典应用:求解旅行商问题(TSP)
旅行商问题描述
有个城市,城市间的距离已知,求一条经过所有城市一次且仅一次的路径,使总路径长度最短——TSP是典型的NP难问题,传统方法难以求解大规模问题。
Hopfield网络求解TSP的步骤
- 问题映射:采用的神经元矩阵表示解,神经元表示“第个城市在第个位置访问”,表示是,表示否;
- 构造能量函数:能量函数包含目标项(总路径长度)和约束项(每个城市访问一次、每个位置只有一个城市),目标是最小化能量函数;
- 确定权值和阈值:将构造的能量函数与连续Hopfield网络的能量函数对比,确定权值矩阵和阈值;
- 网络演化:设置初始状态和网络参数(如学习率、温度),让网络演化,收敛到稳定状态后,神经元矩阵即为TSP的近似最优解。
神经网络求解优化问题的优缺点
优点
- 求解速度快:神经元并行处理,适合求解大规模组合优化问题;
- 能得到近似最优解:对于NP难问题,能在可接受的时间内得到近似最优解,满足工程需求;
- 实现简单:无需复杂的算法设计,只需构造能量函数即可。
缺点
- 解的不稳定性:初始状态和网络参数的微小变化,可能导致解的巨大差异;
- 参数难以确定:能量函数的参数(如惩罚因子)无统一的设计标准,需通过实验调整;
- 易陷入局部最优:能量函数存在大量局部极小值,网络可能收敛到局部最优解,而非全局最优解。
六、卷积神经网络与深度学习
卷积神经网络(CNN,Convolutional Neural Networks)是专门为处理网格结构数据(如图像、语音)设计的前馈型神经网络,源于对猫视觉皮层的研究,核心是局部连接、权值共享、多卷积核、池化,能有效提取图像的局部特征,且大幅减少权值数量,避免过拟合。CNN是深度学习的核心模型,广泛应用于计算机视觉、语音识别等领域。
6.1 CNN的发展背景
- 感受野概念(1962年):Hubel和Wiesel通过猫视觉皮层实验发现,视觉皮层的神经元只对局部区域的刺激响应(感受野),而非对全局图像响应;
- 神经认知机(1984年):日本学者Fukushima基于感受野概念提出,是CNN的雏形;
- LeNet-5(1998年):LeCun提出,第一个实用的CNN模型,用于手写数字识别,开启了CNN的应用时代;
- 深度学习时代(2012年):AlexNet在ImageNet图像分类比赛中夺冠,CNN成为计算机视觉的核心模型,此后出现VGG、ResNet、GoogLeNet等经典模型。
6.2 卷积神经网络的核心结构
CNN是多层前馈型神经网络,核心层包括卷积层(C层)、池化层(S层)、全连接层(FC层),典型结构为:输入层→卷积层→池化层→卷积层→池化层→...→全连接层→输出层。
核心层的功能
- 卷积层(Convolution Layer):特征提取的核心,通过卷积核与输入图像进行卷积运算,提取图像的局部特征(如边缘、纹理、形状);
- 池化层(Pooling Layer):又称下采样层,对卷积层提取的特征进行降维,保留关键特征,减少计算量,避免过拟合;
- 全连接层(Fully Connected Layer):将池化层输出的特征映射为一维向量,通过全连接实现分类/预测。
6.3 CNN的核心关键技术
CNN的优势源于四大核心技术,既保证了特征提取能力,又大幅减少了权值数量,解决了传统BP网络处理图像时权值过多、过拟合、计算量大的问题。
1. 局部连接
CNN的神经元只与输入图像的局部区域连接(对应感受野),而非全连接——比如处理1000×1000的图像,若感受野为10×10,则每个神经元只与100个输入像素连接,而非100万个。
- 核心作用:大幅减少权值数量,降低计算量,同时符合人类视觉的局部感知特性。
2. 权值共享
同一卷积核的所有神经元共享相同的权值和阈值——一个卷积核对应一种特征(如边缘检测),用该卷积核扫描整个图像时,所有位置的特征提取都使用相同的权值。
- 核心作用:进一步减少权值数量,避免过拟合,同时保证同一特征在图像的不同位置具有相同的提取方式。
3. 多卷积核
CNN使用多个不同的卷积核提取图像的多种特征——每个卷积核对应一种特征(如边缘、纹理、角点),多个卷积核可提取图像的多维度特征,特征越丰富,识别效果越好。
- 核心作用:提升网络的特征提取能力,能拟合复杂的图像模式。
4. 池化(下采样)
对卷积层输出的特征图进行降维处理,常用最大池化和平均池化两种方式:
- 最大池化:取特征图局部区域的最大值作为输出,保留图像的纹理、边缘等关键特征;
- 平均池化:取特征图局部区域的平均值作为输出,保留图像的整体亮度特征。
- 核心作用:减少特征图的维度,降低计算量;避免过拟合;提升网络的平移不变性(图像轻微平移,特征不变)。
6.4 CNN的经典应用:LeNet-5
LeNet-5是由LeCun于1998年提出的经典手写数字识别CNN模型,曾被美国各大银行用于支票上的手写数字识别,达到商用精度,是CNN的入门经典模型。
LeNet-5的结构(7层,无输入层)
- 输入:32×32的灰度手写数字图像;
- C1层(卷积层):6个5×5的卷积核,步长1,输出6个28×28的特征图;
- S2层(池化层):2×2的最大池化,步长2,输出6个14×14的特征图;
- C3层(卷积层):16个5×5的卷积核,步长1,输出16个10×10的特征图;
- S4层(池化层):2×2的最大池化,步长2,输出16个5×5的特征图;
- C5层(卷积层/全连接层):120个5×5的卷积核,输出120个1×1的特征图,等效于全连接层;
- F6层(全连接层):84个神经元,与C5层全连接;
- 输出层:10个神经元,对应数字0~9,采用Softmax激活函数,输出分类概率。
LeNet-5的核心特点
- 结构简单:仅包含2层卷积和2层池化,易于实现和训练;
- 识别精度高:对手写数字的识别准确率达99%以上,容错性强;
- 计算量小:通过局部连接和权值共享,大幅减少权值数量,适合硬件实现。
6.5 胶囊网络(Capsule Networks)
胶囊网络是2017年由Hinton提出的新型神经网络结构,针对CNN的缺陷(训练数据需求大、环境适应能力弱、可解释性差、信息丢失)设计,核心是用“胶囊”替代传统的神经元,胶囊是一组神经元,以向量形式表示特征的多种属性(如位置、大小、角度)。
胶囊网络的核心特点
- 向量输出:胶囊的输出是向量,而非标量,向量的长度表示特征存在的概率,方向表示特征的属性;
- 动态路由协议:胶囊之间通过动态路由传递信息,自动学习特征之间的层级关系(如“眼睛”属于“脸”);
- 训练数据需求小:只需少量训练数据,即可达到与CNN相当的精度;
- 抗干扰能力强:对图像的平移、旋转、缩放等变换具有强鲁棒性,解决了CNN的视角变化问题;
- 可解释性强:胶囊的输出向量对应具体的特征属性,网络的决策过程可解释。
胶囊网络的基本结构
- Conv1层:传统卷积层,提取图像的基础局部特征;
- PrimaryCaps层:卷积胶囊层,将基础特征转换为胶囊向量,提取简单的组合特征;
- DigitCaps层:全连接胶囊层,学习特征的层级关系,输出最终的分类胶囊向量。
胶囊网络与CNN的对比
胶囊网络的工作机理更接近人脑的视觉感知过程,在图像分割、目标检测、小样本学习等场景具有显著优势,但目前训练复杂度高,尚未完全替代CNN,二者常结合使用。
七、生成对抗网络及其应用
生成对抗网络(GAN,Generative Adversarial Network)是2014年由Goodfellow提出的新型生成式深度学习模型,核心是通过两个神经网络的对抗训练,实现对真实数据分布的拟合,能生成与真实数据高度相似的合成数据(如图像、语音、文字)。GAN是目前生成效果最好的生成式模型,广泛应用于图像处理、语言生成、视频生成等领域。
7.1 GAN的基本原理
生成式模型与判别式模型
深度学习模型分为两类,二者功能互补:
- 判别式模型:学习输入到输出的映射关系,用于分类、预测(如CNN、BP网络)——回答“这个数据属于哪一类?”;
- 生成式模型:学习真实数据的概率分布,用于生成与真实数据相似的合成数据——回答“这个类别的数据长什么样?”。
GAN是生成式模型的代表,通过对抗训练让生成式模型拟合真实数据的分布,解决了传统生成式模型生成效果差、计算量大的问题。
GAN的核心思想:对抗训练
GAN包含两个相互对抗、相互优化的神经网络——生成器(G)和判别器(D),训练过程像**“假币制造者”与“警察”的博弈**:
- 生成器(Generator,G):类似“假币制造者”,输入随机噪声,生成与真实数据相似的假数据,目标是尽可能让判别器无法区分假数据和真实数据;
- 判别器(Discriminator,D):类似“警察”,输入真实数据和生成器生成的假数据,输出数据为“真实”的概率(0~1),目标是尽可能准确地区分假数据和真实数据。
训练的最终平衡:生成器生成的假数据与真实数据高度相似,判别器无法区分,输出概率恒为0.5——此时生成器已完全拟合真实数据的分布,能生成以假乱真的合成数据。
7.2 GAN的结构与训练
GAN的基本结构
GAN由生成器G和判别器D组成,二者均为深度学习模型(如CNN、全连接网络),结构根据生成任务设计(如图像生成用CNN,文字生成用RNN/Transformer)。
- 生成器G:输入为随机噪声(如高斯噪声),通过多层神经网络映射为合成数据(如图像、文字);
- 判别器D:输入为真实数据或合成数据(为随机噪声),输出为判别概率(越接近1,越可能是真实数据)。
GAN的目标函数
GAN的训练目标是极小极大博弈,生成器最小化判别器的判别准确率,判别器最大化判别准确率,目标函数为:
其中:
- 为真实数据的分布,为随机噪声的分布;
- 为期望,为判别器对真实数据的判别概率,为判别器对合成数据的误判概率。
GAN的训练过程
GAN的训练是交替训练过程,固定一个网络,训练另一个网络,反复迭代,直到达到平衡:
- 固定生成器G,训练判别器D:将真实数据和合成数据传入D,调整D的权值,使D对真实数据输出高概率,对合成数据输出低概率,最大化目标函数;
- 固定判别器D,训练生成器G:输入随机噪声,生成合成数据,调整G的权值,使D对合成数据的判别概率尽可能接近1,最小化目标函数;
- 重复步骤1和2,直到判别器D对合成数据的判别概率接近0.5,训练结束。
GAN训练的常见问题
GAN的训练具有强烈的不稳定性,是目前的研究难点,常见问题:
- 训练难以收敛:生成器和判别器的能力失衡(如一方过强,一方过弱),导致训练震荡,无法达到平衡;
- 模式崩溃(Model Collapse):生成器只能生成少量类型的合成数据,缺乏多样性(如生成的人脸都长得一样);
- 生成无意义数据:训练收敛后,生成器生成的数椐不符合现实规律(如生成的人脸缺少眼睛、嘴巴)。
7.3 GAN的典型应用
GAN凭借生成效果好、多样性强的特点,已成为图像处理、语言生成、视频生成的核心技术,典型应用场景如下:
1. 图像处理(最经典应用)
GAN在图像处理领域的应用最成熟,能实现图像修复、风格迁移、图像翻译等功能:
- 图像修复:对图像的缺失/损坏区域进行补全(如修复老照片、去除图像水印);
- 图像风格迁移:将一张图像的内容与另一张图像的风格融合(如将照片转换为梵高油画风格);
- 图像翻译:将一种类型的图像转换为另一种类型(如地图→航拍图像、轮廓图→真实照片、白天图像→夜景图像)。
2. 艺术创作
GAN能学习艺术家的创作风格,生成具有艺术价值的作品:
- 绘画生成:学习知名画家的作品风格,生成新的绘画作品(如Deep Dream的画作、机器人作画);
- 音乐生成:学习音乐的旋律、节奏,生成新的音乐作品。
3. 语言处理
GAN能学习自然语言的分布,实现文字生成、诗歌写作等功能:
- 从文字描述生成图片:输入文字描述(如“一朵粉色的玫瑰,有黄色的花蕊”),生成对应的图像;
- 诗歌/小说写作:学习经典诗歌、小说的风格,生成新的诗歌、小说(如清华孙茂松团队的古诗生成系统)。
4. 视频生成
GAN能学习视频的时空分布,实现视频生成、AI换脸、合成主播等功能:
- AI换脸:将一个人的脸部特征替换到另一个人的视频中,生成逼真的换脸视频;
- AI合成主播:学习主播的面部特征、语音、表情,生成能实时播报新闻的AI合成主播(如新华社的AI合成主播);
- 视频内容生成:生成与真实视频高度相似的合成视频(如生成虚拟场景的视频)。
5. 其他应用
- 数据增强:生成与真实训练数据相似的合成数据,扩充训练集,提升模型的泛化能力;
- 虚拟样本生成:生成现实中难以获取的样本(如医学影像、极端天气数据),用于模型训练;
- 超分辨率重建:将低分辨率图像转换为高分辨率图像,提升图像质量。
课程总结
- 人工神经网络是对人脑神经网络的抽象与模拟,核心要素为神经元、连接权值、拓扑结构、学习规则,分为前馈型和反馈型两类,是隐式的知识表示方法;
- BP神经网络是应用最广泛的前馈型网络,核心是误差反向传播算法,能逼近任意连续函数,适合模式识别、预测、回归等场景,但存在收敛慢、易陷入局部极值的缺陷;
- Hopfield神经网络是经典的反馈型网络,分为离散型和连续型,核心特性是能收敛到稳定状态,适合联想记忆(离散型)和组合优化(连续型)问题,如TSP求解;
- 卷积神经网络(CNN)是深度学习的核心模型,专为网格结构数据设计,通过局部连接、权值共享、多卷积核、池化提取特征,是计算机视觉的主流模型,LeNet-5是经典的入门模型,胶囊网络是其重要改进;
- 生成对抗网络(GAN)是新型生成式模型,通过生成器与判别器的对抗训练拟合真实数据分布,能生成以假乱真的合成数据,广泛应用于图像处理、艺术创作、语言生成、视频生成等领域;
- 人工神经网络是机器学习的核心技术,从经典的BP、Hopfield网络,到深度学习的CNN、GAN,模型不断升级,应用场景不断拓展,是人工智能的重要发展方向。
