PCA与ICA相结合的语音信号盲分离
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
# # # # # #
xi 是 n 维列向量, 语音信号长度为 n 个点 (一
般 n 远远大于 m ) 。 (1) 对混合语音信号做均值化处理: 均值 向量 !
E{ X } 1 n
n j 1
xj , 将 X 进行均值化有
现 WA I ( I 是 n n 维的单位矩阵) ,则有
S (t )
#
x j & ! ,均值化后的混合语音信号矩阵记作 X! ( x1 & ! , x2 & ! , , xn & ! ) 。
王玉静 等: PCA 与 ICA 相结合的语音信号盲分离
2
法。目前对 ICA 的研究工作大概分为两类: 其一是特定条件下的有效算法,如最大熵 ICA 算法[2]、互信息极小 ICA 算法[3]等。其 二是改进现有的算法 [4],提高算法的分离精 度和实时性。 ICA 用于语音信号盲分离时的核心任务 是求分离矩阵,这是一个纯数学矩阵的变换 过程,由于计算的数据量过大和迭代的次数 过多会引起收敛速度慢的问题。对此,本文 采用一种主成分分析( Principle Component Analysis,PCA)和 ICA 相结合的语音信号盲 分离算法 PCA-ICA。 PCA 是统计分析中常用 的方法,常用于对信号做解相关处理[5] ,其 原理是通过变换后产生的新分量正交或不 相关,使变换后的矢量更趋于确定,能量更 集中等[6]。PCA-ICA 算法是先用 PCA 对混 合语音信号进行白化处理,消除原始各道数 据间的二阶相关性,使得进一步分析可集中 在高阶统计量上,然后采用最大熵为目标函 数, 自然梯度算法为优化算法的 ICA 来分离 出各个独立的成分。仿真实验表明, PCA-ICA 算法与 ICA 算法相比,在保证几 乎相同分离精确度的情况下,迭代次数缩短 了 10 倍,分离时间缩短了 70% ,提高了算 法的实时性。 2 PCA-ICA 算法理论分析 2.1 盲信号分离数学模型
1维
(7)
王玉静 等: PCA 与 ICA 相结合的语音信号盲分离
3
Z 是白化后的数据阵,已消除了原始各 路数据间的二阶相关性,使得下一步的分析 可集中在高阶统计量上。
线性函数, k 为迭代的次数。 3 PCA-ICA 算法的实现步骤 设选定的混合语音信号有 m 路,记作
X ( x1 , x2 , , xm ) , 其中第 i 路混合语音信号
网络出版时间:2011-7-25 16:32 网络出版地址:http://www.cnki.net/kcms/detail/11.2127.tp.20110725.1632.091.html
2011-3-2
PCA 与 ICA 相结合的语音信号盲分离 王玉静 1, 于凤芹 2
Wang Yu-jing1, YU Feng-qin2
L(W ) 为
# #
(2)PCA 白化过程: 先由式(3) 对 X ! 求得 协方差矩阵 C 和由特征值组成的对角阵
# diag [
1 2
M
] ,然后由式(4) 求的主分
量矩阵 P , 再由式(6) 得出白化后的混合语音 信号矩阵 Z ,白化后 Z 中各道数据间的二阶 相关性已被消除。 (3)ICA 求分离矩阵过程: 令非线性函数
1 引言 盲源分离(Blind Source Separation,BSS) 是指在不知道任何先验知识或者知其少量 先验知识的情况下,由多通道系统的输出数 据来判断其输入数据和传递函数的过程 [1]。 混合语音信号的盲分离是盲源分离问题研 究的初衷,并在解决典型的“鸡尾酒会问
题” 、构建远程会议、改善移动电话通话质 量等方面得到广泛的应用。常用的语音信号 盲分离算法有神经网络算法、联合对角化算 法、独立分量分析(Independent Component Analysis,ICA)等。 ICA 是将多道观测信号 基于高阶统计独立的原则,通过优化算法分 解为若干独立成分,从而实现信号分解的方
的源信号列矢量,X (t )
!x1 (t ), x2 (t ), x m (t )∀
#
为 m 1 维的混合信号矢量。 盲源分离的目的 就是计算出分离矩阵 W ,使其输出 S (t ) 为原 始信号矢量 S (t ) 的一个有效估计, S (t ) 可表 示为:
S (t ) WX (t )
# #
(3)
#
王玉静 等: PCA 与 ICA 相结合的语音信号盲分离
4
求出 m 路单独的语音信号并进行算法性能 的分析。 4 仿真实验分析与结论 为了验证算法的有效性, 利用信号的相 似系数来定量评价分离效果,计算公式
n
ri, j
r ( si , s j )
i, j 1 n i 1
si (t ) s j (t ) s2 j (t ) j 1 1 (在
g (t ) te
& t2 2
, 取任意满足 W (0)
0 的初始矢
L(W )
− ∗ ∋ p( X (t )) log + W lg . p( si (t ))( (8) i 1 , )
n #
量 W (k ) , 设定迭代次数 k 的值, 按式(9) 将 Z 作 为 处 理 对 象 , 对 W (k ) 进 行 迭 代 , 当
国家自然科学基金 ( the National Natural Science Foundation of China under Grant No. 61075008). 作者简介: 王玉静(1986-),女,硕士,主要研究领域为语音信号处理; 于凤芹(1962-),女,博士,教授,主要研究领域 为语音信号处理.
n
(11)
听 3 路分离后的语音和源语音,凭主观的感 觉对其相似度进行打分,各实验者之间互不 影响。以满分 100 为标准(分离后的语音与 源语音完全相同为 100 分) ,60 个人给出的 相似度的平均分为 98.72,97.01,98.43 。实验 结果表明, PCA-ICA 算法对混合语音信号的 分离是比较成功的,人耳对分离后的语音与 源语音的相似度是满意的。
2.3 ICA 算法原理 ICA 算法的基本思路是设置一个 n n 维的反混合矩阵 W , 由 2.1 节知识可知, X (t ) 经过 W 变换后得到 n 维输出列向量
S (t ) [ s1 , s2 , , sn ] , S (t ) 可 表 示 为 S (t ) WX (t ) WAS (t ) , 如果通过学习得以实
e &99 。若在 k 次迭
中
!k
为
常
数
,
( S (t ))
# ∗ # − '' '' g ( s ) g ( s 1 n )( +& , ,& , g (t ) 为非 # # ( + ' ' g ( s ) g ( s ) + ( 1 n ) ,
代内某个独立分量不收敛,则相应增大迭代 的次数,直至各个分量全部收敛。 (4) 求出各个独立的分量:由 S (t ) WZ
Blind Separation for Speech Signal based on PCA and ICA
Abstract :In order to solve the slow convergence problem of ICA based algorithm and high computational cost due to excessive amount data,an blind separation algorithm based on PCA-ICA for speech signal is proposed.PCA is used to remove the second-order correlations among different dimensions of feature from original data.Using similarity coefficient matrix as the separation effect standard,the simulation experiment results show that the proposed method can reduce 90% of iterations and is 3 times faster compared with ICA with the same separation accuracy.Thus the ICA-PCA algorithm effectively solves the slow convergence problem of original ICA method. Key words :blind source separation;independent component analysis;principle component analysis 摘 要:针对 ICA 用于语音信号盲分离时,由于数据量过大、迭代次数过多引起的收敛速度慢的问题,采用 一种 PCA 和 ICA 相结合的盲分离算法 PCA-ICA。通过 PCA 对混合语音信号进行白化处理,消除了原始各道数 据间的二阶相关性。在仿真实验中,采用相似系数矩阵作为评价混合语音信号分离效果的标准,结果表明 PCA-ICA 算法与 ICA 算法相比,在达到几乎相同的相似系数矩阵的情况下,迭代次数减少了 90%,从而分离速 度提高了 3 倍,有效地解决了 ICA 分离算法收敛速度慢的问题。 关键词:盲源分离;独立分量分析;主成分分析 文献标识码: A 中图分类号:TN912
T T XT M
UM
M
T M #M MUM M
(4)
其中 #
diag [
i
1 2
] 是对角阵,
i
为C
的特征根且
% 0 , i 1,2, , M 。U 为特征
值相对应的特征向量组成的正交矩阵,它的 各列 u1 , u2 , u M 称为特征矢量,结合数据阵
X 可得 PM
T T UM M
n 个信号源 s1 , s 2 , , sn 所发出的信号
S (t ) ,从而实现了盲分离的目的。
ICA 是一种自组织的学习, 首先要建立 一个以 W 为变量的目标函数 L(W ) ,如果某 个 W 能使 L(W ) 达到极大或极小值,则该 W 即为所求的分离矩阵。然后根据 L(W ) 的定 义选择最优的学习算法。本文采用文献 [1] 中提出的最大熵和自然梯度算法分别作为 目标函数和求解的优化算法。目标函数
1. 江南大学 物联网工程学院, 江苏 无锡 2. 江南大学 物联网工程学院, 江苏 无锡 214122 214122
1. School of Internet of Things Engineering, Jiangnan University, Wuxi 214122, China 2. School of Internet of Things Engineering, Jiangnan University, Wuxi 214122, China
被 m 个传 感 器接 收 到 后得 到 输 出
x1 , x2 , , xm , 在不考虑噪声的情况下, 第i 个
XM
T
(5)
传感器的输出为
xi
n
称 P 的各行为 X 的主分量,p1 称为第一主分 量, p 2 称为第二主分量,以此类推。将白化 矩阵变换算子 Q
#
1 & 1 2U T
j 1
aij s j (t )
2.2 PCA 原理 设原始数据有 M 路,构成一个 M T 的 数据阵 X ( T 是每道数据的长度) 。 X 必可分 解为 X
M T M M M TT T
U
∃ V T ,其中 U 、 V 为左右
1 2 M], i
奇异阵,∃ 令 XX T
C
Diag[
为奇异值。
C ,称 C 为 X 的协方差阵,则 XM
i 1,2,, m
(1)
左乘到数据阵 X
其中 aij 为混合系数,用矢量和矩阵表示为
X (t ) AS (t )
上,可得将 X 白化后的矩阵为
Z QX
&
(2)
# 2U T X
1 2P
&
(6)
其中 A 为 m n 维的混合矩阵,一般假设
m n , S (t )
比较(5) (6)两式可得
Z #
!s1 (t ), s2 (t ), , sn (t )∀T 是 n
L (W ( k / 1)) & L (W ( k )) 0
其中 p( X (t )) 为联合概率密度函数,自 然梯度优化算法的分离矩阵调节公式为
W (k / 1) W (k ) / ! k [W
&T
( k ) & ( S (t )) X (t ) ]
#
时停止迭代,将此
T
(9) 其
#
时的 W (k / 1)Hale Waihona Puke Baidu作为分离矩阵 W 输出, 为接 近 0 的数值,本文中令
xi 是 n 维列向量, 语音信号长度为 n 个点 (一
般 n 远远大于 m ) 。 (1) 对混合语音信号做均值化处理: 均值 向量 !
E{ X } 1 n
n j 1
xj , 将 X 进行均值化有
现 WA I ( I 是 n n 维的单位矩阵) ,则有
S (t )
#
x j & ! ,均值化后的混合语音信号矩阵记作 X! ( x1 & ! , x2 & ! , , xn & ! ) 。
王玉静 等: PCA 与 ICA 相结合的语音信号盲分离
2
法。目前对 ICA 的研究工作大概分为两类: 其一是特定条件下的有效算法,如最大熵 ICA 算法[2]、互信息极小 ICA 算法[3]等。其 二是改进现有的算法 [4],提高算法的分离精 度和实时性。 ICA 用于语音信号盲分离时的核心任务 是求分离矩阵,这是一个纯数学矩阵的变换 过程,由于计算的数据量过大和迭代的次数 过多会引起收敛速度慢的问题。对此,本文 采用一种主成分分析( Principle Component Analysis,PCA)和 ICA 相结合的语音信号盲 分离算法 PCA-ICA。 PCA 是统计分析中常用 的方法,常用于对信号做解相关处理[5] ,其 原理是通过变换后产生的新分量正交或不 相关,使变换后的矢量更趋于确定,能量更 集中等[6]。PCA-ICA 算法是先用 PCA 对混 合语音信号进行白化处理,消除原始各道数 据间的二阶相关性,使得进一步分析可集中 在高阶统计量上,然后采用最大熵为目标函 数, 自然梯度算法为优化算法的 ICA 来分离 出各个独立的成分。仿真实验表明, PCA-ICA 算法与 ICA 算法相比,在保证几 乎相同分离精确度的情况下,迭代次数缩短 了 10 倍,分离时间缩短了 70% ,提高了算 法的实时性。 2 PCA-ICA 算法理论分析 2.1 盲信号分离数学模型
1维
(7)
王玉静 等: PCA 与 ICA 相结合的语音信号盲分离
3
Z 是白化后的数据阵,已消除了原始各 路数据间的二阶相关性,使得下一步的分析 可集中在高阶统计量上。
线性函数, k 为迭代的次数。 3 PCA-ICA 算法的实现步骤 设选定的混合语音信号有 m 路,记作
X ( x1 , x2 , , xm ) , 其中第 i 路混合语音信号
网络出版时间:2011-7-25 16:32 网络出版地址:http://www.cnki.net/kcms/detail/11.2127.tp.20110725.1632.091.html
2011-3-2
PCA 与 ICA 相结合的语音信号盲分离 王玉静 1, 于凤芹 2
Wang Yu-jing1, YU Feng-qin2
L(W ) 为
# #
(2)PCA 白化过程: 先由式(3) 对 X ! 求得 协方差矩阵 C 和由特征值组成的对角阵
# diag [
1 2
M
] ,然后由式(4) 求的主分
量矩阵 P , 再由式(6) 得出白化后的混合语音 信号矩阵 Z ,白化后 Z 中各道数据间的二阶 相关性已被消除。 (3)ICA 求分离矩阵过程: 令非线性函数
1 引言 盲源分离(Blind Source Separation,BSS) 是指在不知道任何先验知识或者知其少量 先验知识的情况下,由多通道系统的输出数 据来判断其输入数据和传递函数的过程 [1]。 混合语音信号的盲分离是盲源分离问题研 究的初衷,并在解决典型的“鸡尾酒会问
题” 、构建远程会议、改善移动电话通话质 量等方面得到广泛的应用。常用的语音信号 盲分离算法有神经网络算法、联合对角化算 法、独立分量分析(Independent Component Analysis,ICA)等。 ICA 是将多道观测信号 基于高阶统计独立的原则,通过优化算法分 解为若干独立成分,从而实现信号分解的方
的源信号列矢量,X (t )
!x1 (t ), x2 (t ), x m (t )∀
#
为 m 1 维的混合信号矢量。 盲源分离的目的 就是计算出分离矩阵 W ,使其输出 S (t ) 为原 始信号矢量 S (t ) 的一个有效估计, S (t ) 可表 示为:
S (t ) WX (t )
# #
(3)
#
王玉静 等: PCA 与 ICA 相结合的语音信号盲分离
4
求出 m 路单独的语音信号并进行算法性能 的分析。 4 仿真实验分析与结论 为了验证算法的有效性, 利用信号的相 似系数来定量评价分离效果,计算公式
n
ri, j
r ( si , s j )
i, j 1 n i 1
si (t ) s j (t ) s2 j (t ) j 1 1 (在
g (t ) te
& t2 2
, 取任意满足 W (0)
0 的初始矢
L(W )
− ∗ ∋ p( X (t )) log + W lg . p( si (t ))( (8) i 1 , )
n #
量 W (k ) , 设定迭代次数 k 的值, 按式(9) 将 Z 作 为 处 理 对 象 , 对 W (k ) 进 行 迭 代 , 当
国家自然科学基金 ( the National Natural Science Foundation of China under Grant No. 61075008). 作者简介: 王玉静(1986-),女,硕士,主要研究领域为语音信号处理; 于凤芹(1962-),女,博士,教授,主要研究领域 为语音信号处理.
n
(11)
听 3 路分离后的语音和源语音,凭主观的感 觉对其相似度进行打分,各实验者之间互不 影响。以满分 100 为标准(分离后的语音与 源语音完全相同为 100 分) ,60 个人给出的 相似度的平均分为 98.72,97.01,98.43 。实验 结果表明, PCA-ICA 算法对混合语音信号的 分离是比较成功的,人耳对分离后的语音与 源语音的相似度是满意的。
2.3 ICA 算法原理 ICA 算法的基本思路是设置一个 n n 维的反混合矩阵 W , 由 2.1 节知识可知, X (t ) 经过 W 变换后得到 n 维输出列向量
S (t ) [ s1 , s2 , , sn ] , S (t ) 可 表 示 为 S (t ) WX (t ) WAS (t ) , 如果通过学习得以实
e &99 。若在 k 次迭
中
!k
为
常
数
,
( S (t ))
# ∗ # − '' '' g ( s ) g ( s 1 n )( +& , ,& , g (t ) 为非 # # ( + ' ' g ( s ) g ( s ) + ( 1 n ) ,
代内某个独立分量不收敛,则相应增大迭代 的次数,直至各个分量全部收敛。 (4) 求出各个独立的分量:由 S (t ) WZ
Blind Separation for Speech Signal based on PCA and ICA
Abstract :In order to solve the slow convergence problem of ICA based algorithm and high computational cost due to excessive amount data,an blind separation algorithm based on PCA-ICA for speech signal is proposed.PCA is used to remove the second-order correlations among different dimensions of feature from original data.Using similarity coefficient matrix as the separation effect standard,the simulation experiment results show that the proposed method can reduce 90% of iterations and is 3 times faster compared with ICA with the same separation accuracy.Thus the ICA-PCA algorithm effectively solves the slow convergence problem of original ICA method. Key words :blind source separation;independent component analysis;principle component analysis 摘 要:针对 ICA 用于语音信号盲分离时,由于数据量过大、迭代次数过多引起的收敛速度慢的问题,采用 一种 PCA 和 ICA 相结合的盲分离算法 PCA-ICA。通过 PCA 对混合语音信号进行白化处理,消除了原始各道数 据间的二阶相关性。在仿真实验中,采用相似系数矩阵作为评价混合语音信号分离效果的标准,结果表明 PCA-ICA 算法与 ICA 算法相比,在达到几乎相同的相似系数矩阵的情况下,迭代次数减少了 90%,从而分离速 度提高了 3 倍,有效地解决了 ICA 分离算法收敛速度慢的问题。 关键词:盲源分离;独立分量分析;主成分分析 文献标识码: A 中图分类号:TN912
T T XT M
UM
M
T M #M MUM M
(4)
其中 #
diag [
i
1 2
] 是对角阵,
i
为C
的特征根且
% 0 , i 1,2, , M 。U 为特征
值相对应的特征向量组成的正交矩阵,它的 各列 u1 , u2 , u M 称为特征矢量,结合数据阵
X 可得 PM
T T UM M
n 个信号源 s1 , s 2 , , sn 所发出的信号
S (t ) ,从而实现了盲分离的目的。
ICA 是一种自组织的学习, 首先要建立 一个以 W 为变量的目标函数 L(W ) ,如果某 个 W 能使 L(W ) 达到极大或极小值,则该 W 即为所求的分离矩阵。然后根据 L(W ) 的定 义选择最优的学习算法。本文采用文献 [1] 中提出的最大熵和自然梯度算法分别作为 目标函数和求解的优化算法。目标函数
1. 江南大学 物联网工程学院, 江苏 无锡 2. 江南大学 物联网工程学院, 江苏 无锡 214122 214122
1. School of Internet of Things Engineering, Jiangnan University, Wuxi 214122, China 2. School of Internet of Things Engineering, Jiangnan University, Wuxi 214122, China
被 m 个传 感 器接 收 到 后得 到 输 出
x1 , x2 , , xm , 在不考虑噪声的情况下, 第i 个
XM
T
(5)
传感器的输出为
xi
n
称 P 的各行为 X 的主分量,p1 称为第一主分 量, p 2 称为第二主分量,以此类推。将白化 矩阵变换算子 Q
#
1 & 1 2U T
j 1
aij s j (t )
2.2 PCA 原理 设原始数据有 M 路,构成一个 M T 的 数据阵 X ( T 是每道数据的长度) 。 X 必可分 解为 X
M T M M M TT T
U
∃ V T ,其中 U 、 V 为左右
1 2 M], i
奇异阵,∃ 令 XX T
C
Diag[
为奇异值。
C ,称 C 为 X 的协方差阵,则 XM
i 1,2,, m
(1)
左乘到数据阵 X
其中 aij 为混合系数,用矢量和矩阵表示为
X (t ) AS (t )
上,可得将 X 白化后的矩阵为
Z QX
&
(2)
# 2U T X
1 2P
&
(6)
其中 A 为 m n 维的混合矩阵,一般假设
m n , S (t )
比较(5) (6)两式可得
Z #
!s1 (t ), s2 (t ), , sn (t )∀T 是 n
L (W ( k / 1)) & L (W ( k )) 0
其中 p( X (t )) 为联合概率密度函数,自 然梯度优化算法的分离矩阵调节公式为
W (k / 1) W (k ) / ! k [W
&T
( k ) & ( S (t )) X (t ) ]
#
时停止迭代,将此
T
(9) 其
#
时的 W (k / 1)Hale Waihona Puke Baidu作为分离矩阵 W 输出, 为接 近 0 的数值,本文中令