深层神经网络预训练的改进初始化方法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Abstract: Second derivative of activat ion funct ion is used to optimize weight initialization in deep neural network pre training phase within speech recognition tasks. By using the non linear region of activation function and independent variables Gaussian distribution, a method of finding the best variance is proposed in order to speed the training up. Comparison of convergence rates in different weight initialization at the same learning rate shows that this method can accelerate the speed of the pre training phase and enhance the efficiency of neural network training. Key words: speech recognition; deep neural network; pre training; init ialization; activation function
3 参数初始化方法
预训练使得 BP 算法省去了参数初始化的步骤, 与此前根据经验确定初始值的方式相比, 有了更多的 理论支撑, 效果也更好。但在初始化预训练参数时, 目前的研究仍处在依靠经验或者尝试的阶段[ 5] 。
本文认 为, 神 经网 络 之所 以能 在表 现上 超过 GMM HMM 模型, 主要原因在于它能综合利用数据间 的线性和非线性关系, 其中前者依靠权值矩阵及阈值 实现, 后者则通过非线性的激励函数来实现。非线性
图 2 为 Netj 值的 sigmoid 二阶导数及高斯分布 函数图。
值计算出的二阶导数值期望最大, 即
D max= arg max E[ f D( Netj )
( N etj ) ]
( 10)
由于参数值的初始化对精度的要求并不高, 因
而此问题 可以通 过蒙 特卡罗 ( Monte Carlo ) 方 法解 决。本文得出的该值近似在 D = 1. 392 左右。
机( Restricted Boltzmann Machine, RBM) 的观点。设输
入层的数据为向量 I, 输出层的数据为向量 O。如
果此 RBM 位于神经网络的最底层, 也即 I 是语音特
征向量, 则其被称作高斯受限玻尔兹曼机( Gaussian
RBM, GRBM) 。
对于一个普通的 RBM, 其输入和输出向量 I 和
O 均为二进制向量, 每个分量只能随机地取 0 或 1。
通过定义能量函数和联合概率分布, 可以计算得出
这两个向量对彼此的条件分布为
P( O= 1| I) = f ( IT W+ )
( 2)
P ( I = 1| O) = f ( OT WT + )
( 3)
式中, W 为权值矩阵, f 为逻辑斯谛函数, 和 分
利用原有数据和重建结果, 就可以对此 RBM 的 权值和阈值进行梯度下降法的更新。设最大化的目
标函数为 L , 则权值、阈值的更新公式如下:
-
L Wij
=
E ( IiOj ) -
E ( ^I iO^ j )
( 4)
- L = E ( I i ) - E (^Ii )
( 5)
i
- L = E ( Oj ) - E( O^ j )
2 神经网络声学模型
2. 1 模型结构 利用神 经网络实现的 声学模型结构 如图 1 所
示, 输入层的每个节点对应从训练数据中提取出的
收稿日期: 2013- 04- 18; 修回日期: 2013- 05- 10 Received date: 2013- 04- 18; Revised dat e: 2013- 05- 10 基金项目: 国家自然科学基金资助项目( 61075020)
预训练( Pre training) 的引入在一定程度上缓解 了该问题带来的影响, 以无监督方式最大化训练数 据的似然值, 可以使训练的 参数对 象值更接 近 BP 算法寻找的全局最优区域[ 2] , 其实际的效果也令人
满意。在进行 BP 算法 之前加入预训练的 过程, 能 够将系统识别率进一步提升[ 3] 。
2. 2 预训练
随着数据量的增加, 所使用的神经网络层数也 不断上升, 从起初的只包含输入输出层发展到目前 在语音识别领域最常使用的附加 4~ 6 个隐层。网 络规模的扩大使识别能力随之提高, 但参数的不断 增多也使 BP 算法容易陷入局部极值的缺点显得愈 发突出。
为了解决这一问题, 文献[ 1] 提出了将神经网络 的每相邻两层及其权值矩阵看作一个受限玻尔兹曼
1引言
近年来, 利用深层神经网络进行语音识别中的声 学模型建模成为了热点问题, 其准确率已经超越了传 统的混合高 斯模型加 隐含马 尔科夫 模型( Gaussian Mixture Model Hidden Markov Model, GMM HMM) 的建 模方式[ 1] 。层数的增加能够提升网络的识别能力, 使 之容纳更多的信息, 但同时也使 BP 算法( Back Propa gation Algorithm) 更容易陷入局部极小值中, 这是利用 神经网络进行模型训练以来一直存在的问题。
般的做法, 初始时的阈值可以设为 0, 因而 RBM 的
输出层第 j 个节点的总输入值为
N
! N etj = WijIi
( 8)
i
接下来, Netj 将成为逻辑斯谛函数的自变量。而根
据上述假设, I 服从标准正态分布, 且 I 中各节点之 间相互独立, 考虑到权值矩阵的各值均来自同一分
布因而方差相等, 则有
f (x)=
1 1+ e- x
( 1)
在模型训练的过程中, 输入层提供每一个语音
帧的特征向量, 同时在输出层提供该帧对应的类别
标注向量, 利用 BP 算法从后向前传递误差值, 对参
数进行逐层的更新。文献[ 4] 描述了经典的 BP 算 法流程, 这里不再赘述。
图 1 利用神经网络实现的声学模型示意图 Fig. 1 Schematic diagram of acoustic model based on DNN
N
N
! ! D ( N etj ) =
D ( WijI i ) =
D( Wij ) D( I i ) = ND( Wij )
i
i
( 9)
因而, 若权值矩阵初始化为服从高斯分布的数据, 则
逻辑斯谛函数自变量也服从零均值的高斯分布, 且
方差为上述方差的 N 倍。反之, 如果确定了 Netj 的 方差, 则权值的方差也随之确定。
据之间的误差平方和。随着训练的进行, 该误差会
逐渐下降直至稳定在一个较小的范围内。误差值随
数据量的下降曲线则反映了训练的速度, 在之后的 实验部分, 就是利用了这一曲线的形状来比较收敛 的快慢。
引用文献[ 2] 的说法, 预训练的过程实际是最大 化了数据的似然值, 从而期望模型参数向着数据分 布的方向靠拢, 从而使 BP 算法在已知数据分布的 情况下, 最大化标注的后验概率时相对更容易。而 根据文献[ 3] 的结果, 预训练可以将深层神经网络的 识别准确率提高几个百分点。
Improved Initialization of Pre Training in Deep Neural Network
ZHOU Jia jun, OU Zhi jian
( Department of Electronic Engineering, Tsinghua University, Beijing 100084, China)
( 清 华大学 电子工程系, 北京 100084)
摘 要: 在基于神经网络的语音识别任务中, 提出根据激励函数二阶导数优化网络预训练阶段中权 值初始化的方法。利用激励函数的非线性区域和自变量呈高斯分布的特性, 寻找权值分布的较优方 差以提升训练速度。通过比较同一学习速率下不同初始化数值对收敛速度的影响, 发现此种方法可 以加快预训练阶段的速度, 提升神经网络训练的效率。 关键词: 语音识别; 深层神经网络; 预训练; 初始化; 激励函数 中图分类号: TN912. 3 文献标志码: A 文章编号: 1001- 893X( 2013) 07- 0895- 04
预训练给 BP 算法提供了一种参数初始化的方 式, 但在预训练开始之前, 神经网络中权值矩阵和阈 值的初始化仍然依靠经验和尝试。本文通过分析神 经网络中激励函数的特性, 提出参数的初始化应该 参考该函数非线性区间的方法。在相同的学习速率 下, 实验验证该改进初始化方法能够有效提高预训 练的收敛速度。
因而, 在预训练的过程中, 将 RBM 做如下的参
Foundation Item:The Nat ional Nat ural Science Foundation of China( No. 61075020) 通讯作者: zhoujiajun06@ gmail . com Corresponding author: zhouj iajun06@ gmail. com
也是本文引用的所有文献都采用的传递方式。这里
有一个非常重要的前提条件, 目前语音识别领域使
用神经网络对声学模型进行构建时, 输入的数据会
在每一维上归一化到标准正态分布。因此输入层的
每个节点都是一个服从 N ( 0, 1) 分布的数据, 即式 ( 7) 中的 Ii 服从该分布。
由于阈值的作用与权值矩阵有所重叠, 按照一
895
www. teleonline. cn
电讯技术
2013 年
语音特征的每一维, 经过若干隐层的传递后, 在输出
层得到与音素个数相同的类别输出。其中权值矩阵
W0 和 W1 以及每一层的阈值, 是本文要进 行初始
化研究的对象。通常情况下, 网络每个节点的激励
函数采用逻辑斯谛( logistic) 函数, 即
第 53 卷 第 7 期 2013 年 7 月
电讯技术 Telecommunication Engineering
doi: 10. 3969/ j. issn. 1001- 893x. 2013. 07. 014
Байду номын сангаас
Vol. 53 No. 7 Jul. 2013
深层神经网络预训练的改进初始化方法
周佳俊 , 欧智坚
( 6)
i
式中, E 表示求期望, L 实际为训练数据在此网络下 的似然值。
最后, 使用数据的重建误差描述训练的正确性
与进度, 该误差定义为
N
! E rec =
( Ii - ^I i ) 2
( 7)
i
其中, Ii 表示第 i 个输入节点的值, N 为输入节点的
个数。式( 7) 的值也就是输入数据和其本身重建数
别为输入层和输出层的阈值向量。由 于 I 和 O 各
自的内部分量都是相互独立的, 因而根据式( 2) 可以
求出已知向量 I 的情况下 O 中每个分量等于 1 的
概率, 由式( 3) 可知反之亦然。
896
在预训练的过程中, 根据式( 2) , 可以先将已有 的输入向量进行一次前向传递, 即得到已知 I 时 O 的后验概率, 接下来利用此概率对其进行一次采样, 得到二进制的采样结果 O; 之后利用式( 3) , 将 O 作 为输入数据反向传递, 得到已知 O 时 I 的后验概率 并采样, 得到结果向量 ^I ; 再将 ^I 作为输入数据重复 第一步的前向传递过程, 得到采样结果 O^ 。以上过 程被称作对 I 和 O 的一次重建。
第 53 卷
周佳 俊, 欧智坚: 深层神经网络预训练的改进初始化方法
第7期
关系的引入, 决定神经网络能够将数据间的关系刻画
的更深刻, 文献[ 6] 中也提到了相同的观点。
因而, 通过初始化参数, 让神经网络的激励函数
更好地工作在非线性区间, 就可能加速网络对数据
的适应过程, 从而提高训练的收敛速度。式( 1) 表示 的逻辑斯谛函数是神经网络中最常用的激励函数,
3 参数初始化方法
预训练使得 BP 算法省去了参数初始化的步骤, 与此前根据经验确定初始值的方式相比, 有了更多的 理论支撑, 效果也更好。但在初始化预训练参数时, 目前的研究仍处在依靠经验或者尝试的阶段[ 5] 。
本文认 为, 神 经网 络 之所 以能 在表 现上 超过 GMM HMM 模型, 主要原因在于它能综合利用数据间 的线性和非线性关系, 其中前者依靠权值矩阵及阈值 实现, 后者则通过非线性的激励函数来实现。非线性
图 2 为 Netj 值的 sigmoid 二阶导数及高斯分布 函数图。
值计算出的二阶导数值期望最大, 即
D max= arg max E[ f D( Netj )
( N etj ) ]
( 10)
由于参数值的初始化对精度的要求并不高, 因
而此问题 可以通 过蒙 特卡罗 ( Monte Carlo ) 方 法解 决。本文得出的该值近似在 D = 1. 392 左右。
机( Restricted Boltzmann Machine, RBM) 的观点。设输
入层的数据为向量 I, 输出层的数据为向量 O。如
果此 RBM 位于神经网络的最底层, 也即 I 是语音特
征向量, 则其被称作高斯受限玻尔兹曼机( Gaussian
RBM, GRBM) 。
对于一个普通的 RBM, 其输入和输出向量 I 和
O 均为二进制向量, 每个分量只能随机地取 0 或 1。
通过定义能量函数和联合概率分布, 可以计算得出
这两个向量对彼此的条件分布为
P( O= 1| I) = f ( IT W+ )
( 2)
P ( I = 1| O) = f ( OT WT + )
( 3)
式中, W 为权值矩阵, f 为逻辑斯谛函数, 和 分
利用原有数据和重建结果, 就可以对此 RBM 的 权值和阈值进行梯度下降法的更新。设最大化的目
标函数为 L , 则权值、阈值的更新公式如下:
-
L Wij
=
E ( IiOj ) -
E ( ^I iO^ j )
( 4)
- L = E ( I i ) - E (^Ii )
( 5)
i
- L = E ( Oj ) - E( O^ j )
2 神经网络声学模型
2. 1 模型结构 利用神 经网络实现的 声学模型结构 如图 1 所
示, 输入层的每个节点对应从训练数据中提取出的
收稿日期: 2013- 04- 18; 修回日期: 2013- 05- 10 Received date: 2013- 04- 18; Revised dat e: 2013- 05- 10 基金项目: 国家自然科学基金资助项目( 61075020)
预训练( Pre training) 的引入在一定程度上缓解 了该问题带来的影响, 以无监督方式最大化训练数 据的似然值, 可以使训练的 参数对 象值更接 近 BP 算法寻找的全局最优区域[ 2] , 其实际的效果也令人
满意。在进行 BP 算法 之前加入预训练的 过程, 能 够将系统识别率进一步提升[ 3] 。
2. 2 预训练
随着数据量的增加, 所使用的神经网络层数也 不断上升, 从起初的只包含输入输出层发展到目前 在语音识别领域最常使用的附加 4~ 6 个隐层。网 络规模的扩大使识别能力随之提高, 但参数的不断 增多也使 BP 算法容易陷入局部极值的缺点显得愈 发突出。
为了解决这一问题, 文献[ 1] 提出了将神经网络 的每相邻两层及其权值矩阵看作一个受限玻尔兹曼
1引言
近年来, 利用深层神经网络进行语音识别中的声 学模型建模成为了热点问题, 其准确率已经超越了传 统的混合高 斯模型加 隐含马 尔科夫 模型( Gaussian Mixture Model Hidden Markov Model, GMM HMM) 的建 模方式[ 1] 。层数的增加能够提升网络的识别能力, 使 之容纳更多的信息, 但同时也使 BP 算法( Back Propa gation Algorithm) 更容易陷入局部极小值中, 这是利用 神经网络进行模型训练以来一直存在的问题。
般的做法, 初始时的阈值可以设为 0, 因而 RBM 的
输出层第 j 个节点的总输入值为
N
! N etj = WijIi
( 8)
i
接下来, Netj 将成为逻辑斯谛函数的自变量。而根
据上述假设, I 服从标准正态分布, 且 I 中各节点之 间相互独立, 考虑到权值矩阵的各值均来自同一分
布因而方差相等, 则有
f (x)=
1 1+ e- x
( 1)
在模型训练的过程中, 输入层提供每一个语音
帧的特征向量, 同时在输出层提供该帧对应的类别
标注向量, 利用 BP 算法从后向前传递误差值, 对参
数进行逐层的更新。文献[ 4] 描述了经典的 BP 算 法流程, 这里不再赘述。
图 1 利用神经网络实现的声学模型示意图 Fig. 1 Schematic diagram of acoustic model based on DNN
N
N
! ! D ( N etj ) =
D ( WijI i ) =
D( Wij ) D( I i ) = ND( Wij )
i
i
( 9)
因而, 若权值矩阵初始化为服从高斯分布的数据, 则
逻辑斯谛函数自变量也服从零均值的高斯分布, 且
方差为上述方差的 N 倍。反之, 如果确定了 Netj 的 方差, 则权值的方差也随之确定。
据之间的误差平方和。随着训练的进行, 该误差会
逐渐下降直至稳定在一个较小的范围内。误差值随
数据量的下降曲线则反映了训练的速度, 在之后的 实验部分, 就是利用了这一曲线的形状来比较收敛 的快慢。
引用文献[ 2] 的说法, 预训练的过程实际是最大 化了数据的似然值, 从而期望模型参数向着数据分 布的方向靠拢, 从而使 BP 算法在已知数据分布的 情况下, 最大化标注的后验概率时相对更容易。而 根据文献[ 3] 的结果, 预训练可以将深层神经网络的 识别准确率提高几个百分点。
Improved Initialization of Pre Training in Deep Neural Network
ZHOU Jia jun, OU Zhi jian
( Department of Electronic Engineering, Tsinghua University, Beijing 100084, China)
( 清 华大学 电子工程系, 北京 100084)
摘 要: 在基于神经网络的语音识别任务中, 提出根据激励函数二阶导数优化网络预训练阶段中权 值初始化的方法。利用激励函数的非线性区域和自变量呈高斯分布的特性, 寻找权值分布的较优方 差以提升训练速度。通过比较同一学习速率下不同初始化数值对收敛速度的影响, 发现此种方法可 以加快预训练阶段的速度, 提升神经网络训练的效率。 关键词: 语音识别; 深层神经网络; 预训练; 初始化; 激励函数 中图分类号: TN912. 3 文献标志码: A 文章编号: 1001- 893X( 2013) 07- 0895- 04
预训练给 BP 算法提供了一种参数初始化的方 式, 但在预训练开始之前, 神经网络中权值矩阵和阈 值的初始化仍然依靠经验和尝试。本文通过分析神 经网络中激励函数的特性, 提出参数的初始化应该 参考该函数非线性区间的方法。在相同的学习速率 下, 实验验证该改进初始化方法能够有效提高预训 练的收敛速度。
因而, 在预训练的过程中, 将 RBM 做如下的参
Foundation Item:The Nat ional Nat ural Science Foundation of China( No. 61075020) 通讯作者: zhoujiajun06@ gmail . com Corresponding author: zhouj iajun06@ gmail. com
也是本文引用的所有文献都采用的传递方式。这里
有一个非常重要的前提条件, 目前语音识别领域使
用神经网络对声学模型进行构建时, 输入的数据会
在每一维上归一化到标准正态分布。因此输入层的
每个节点都是一个服从 N ( 0, 1) 分布的数据, 即式 ( 7) 中的 Ii 服从该分布。
由于阈值的作用与权值矩阵有所重叠, 按照一
895
www. teleonline. cn
电讯技术
2013 年
语音特征的每一维, 经过若干隐层的传递后, 在输出
层得到与音素个数相同的类别输出。其中权值矩阵
W0 和 W1 以及每一层的阈值, 是本文要进 行初始
化研究的对象。通常情况下, 网络每个节点的激励
函数采用逻辑斯谛( logistic) 函数, 即
第 53 卷 第 7 期 2013 年 7 月
电讯技术 Telecommunication Engineering
doi: 10. 3969/ j. issn. 1001- 893x. 2013. 07. 014
Байду номын сангаас
Vol. 53 No. 7 Jul. 2013
深层神经网络预训练的改进初始化方法
周佳俊 , 欧智坚
( 6)
i
式中, E 表示求期望, L 实际为训练数据在此网络下 的似然值。
最后, 使用数据的重建误差描述训练的正确性
与进度, 该误差定义为
N
! E rec =
( Ii - ^I i ) 2
( 7)
i
其中, Ii 表示第 i 个输入节点的值, N 为输入节点的
个数。式( 7) 的值也就是输入数据和其本身重建数
别为输入层和输出层的阈值向量。由 于 I 和 O 各
自的内部分量都是相互独立的, 因而根据式( 2) 可以
求出已知向量 I 的情况下 O 中每个分量等于 1 的
概率, 由式( 3) 可知反之亦然。
896
在预训练的过程中, 根据式( 2) , 可以先将已有 的输入向量进行一次前向传递, 即得到已知 I 时 O 的后验概率, 接下来利用此概率对其进行一次采样, 得到二进制的采样结果 O; 之后利用式( 3) , 将 O 作 为输入数据反向传递, 得到已知 O 时 I 的后验概率 并采样, 得到结果向量 ^I ; 再将 ^I 作为输入数据重复 第一步的前向传递过程, 得到采样结果 O^ 。以上过 程被称作对 I 和 O 的一次重建。
第 53 卷
周佳 俊, 欧智坚: 深层神经网络预训练的改进初始化方法
第7期
关系的引入, 决定神经网络能够将数据间的关系刻画
的更深刻, 文献[ 6] 中也提到了相同的观点。
因而, 通过初始化参数, 让神经网络的激励函数
更好地工作在非线性区间, 就可能加速网络对数据
的适应过程, 从而提高训练的收敛速度。式( 1) 表示 的逻辑斯谛函数是神经网络中最常用的激励函数,