【详细版】独立成分分析:算法和应用(一) | 您所在的位置:网站首页 › 独立浴缸弊端分析怎么写 › 【详细版】独立成分分析:算法和应用(一) |
独立成分分析:算法和应用 翻译原文+自己的理解 原文:Independent component analysis: algorithms and applications 作者:A. Hyvarinen, E. Oja 时间:2000年 注:详细版原文太长,分两篇来写;另外可以也看简洁版 文章目录 1 动机(Motivation)2 Independent component analysis2.1 ICA的定义(Definition of ICA)2.2 ICA的含糊之处(Ambiguities of ICA)2.3 ICA的实例(Illustration of ICA) 3 什么是独立性?(What is independence?)3.1 独立性的定义和基本特征3.2 不相关的变量只是部分独立的3.3 为什么高斯变量不可行 摘要: 在神经网络研究以及许多其他学科中, 一个基本问题是找到合适的多元数据表示形式,即随机向量。由于计算和概念上的简单性,通常希望将表示形式作为原始数据的线性变换。换句话说,表示的每个组成部分都是原始变量的线性组合。众所周知的线性变换方法包括主成分分析、因子分析和投影追踪(Projection Pursuit)。独立成分分析(ICA)是最近开发的一种方法,其目的是找到非高斯数据的线性表示形式,从而使成分在统计上独立或尽可能独立。这样的表示似乎捕获了许多应用中数据的基本结构,包括特征提取和信号分离。在本文中,我们介绍了ICA的基本理论和应用,以及我们在该主题上的最新工作。 1 动机(Motivation) 假如在一个房间里有两个人同时讲话,我们使用放置在不同的位置两个麦克风来记录这两个人的讲话(信号)可以用
x
1
(
t
)
x_1(t)
x1(t)和
x
2
(
t
)
x_2(t)
x2(t)表示,其中
x
1
x_1
x1和
x
2
x_2
x2是幅度,
t
t
t是时间。这些记录的信号中的每一个都是两个人发出的语音信号的加权和,我们用
s
1
(
t
)
s_1(t)
s1(t)和
s
2
(
t
)
s_2(t)
s2(t)表示。我们可以将其表达为线性方程:
{
x
1
(
t
)
=
a
11
s
1
+
a
12
s
2
x
2
(
t
)
=
a
21
s
1
+
a
22
s
2
(1)
\left\{ \begin{aligned} x_1(t) & = & a_{11}s_{1}+a_{12}s_2 \\ x_2(t) & = & a_{21}s_{1}+a_{22}s_2 \\ \end{aligned} \right.\tag{1}
{x1(t)x2(t)==a11s1+a12s2a21s1+a22s2(1) 式中,
a
11
,
a
12
,
a
21
a_{11},a_{12},a_{21}
a11,a12,a21和
a
22
a_{22}
a22是与麦克风和说话者之间距离相关参数。我们可以仅使用
x
1
(
t
)
x_1(t)
x1(t)和
x
2
(
t
)
x_2(t)
x2(t)来有效地估计
s
1
s_{1}
s1和
s
2
s_{2}
s2,这就是鸡尾酒问题(the cocktail party problem)。目前,我们忽略了任何时间延迟或其他额外因素以简化混合模型。 上述插图来源于博客(侵删):https://blog.csdn.net/edogawachia/article/details/78886626 作为例子,我们考虑图1和图2中的波形。当然,这些不是逼真的语音信号,但足以满足此说明的需要。原始语音信号看起来像图1的信号,混合信号看起来像图2中的信号。现在的问题就是,仅利用图2的数据恢复图1的数据。 为了严格定义ICA(Comon,1994年;Jutten&Herault,1991年),我们可以使用统计“潜在变量”模型。假设我们观察到 n n n个独立分量的 n n n个线性混合 x 1 , ⋯ , x n x_1,\cdots,x_n x1,⋯,xn: x j = a j 1 s 1 + a j 2 s 2 + ⋯ + a j n s n f o r a l l j (2) \begin{aligned} x_{j} & = & a_{j1}s_{1}+a_{j2}s_{2}+\cdots +a_{jn}s_{n}\ \ for \ all \ j \end{aligned}\tag{2} xj=aj1s1+aj2s2+⋯+ajnsn for all j(2) 现在我们删除时间 t t t,在ICA模型中,我们假设每一个变量 x j x_j xj和每一个独立分量 s k s_k sk都是随机变量,而不是确定性信号(proper time signal,deterministic signal)。比如,在鸡尾酒会问题上观察到的麦克风信号 x j ( t ) x_j(t) xj(t)就是一个随机变量样本。不失一般性(Without loss of generality),我们假设所有混合变量和独立分量都是零均值。如果不是的话,我们要对观测变量 x i x_i xi进行中心化(减去均值),使其变成零均值模型。 为了方便,我们使用矢量–矩阵表示法(vector–matrix notation)代替前面公式中的求和形式。我们将使用 x \mathbf x x和 s \mathbf s s表示随机向量,其元素分别是: x 1 , ⋯ , x n x_1,\cdots,x_n x1,⋯,xn和 s 1 , ⋯ , s n s_1,\cdots,s_n s1,⋯,sn;用 A \mathbf A A表示矩阵,其元素是 a i j a_{ij} aij。通常,粗体小写字母(bold lower case letters)表示向量,粗体大写字母(bold upper-case letters)表示矩阵。所有的向量都是列向量(column vector), x T x^T xT(the transpose of x \mathbf x x)就是行向量(row vector)。使用矢量–矩阵表示法,上面的混合模型可以表示为(is written as): x = A s (3) \begin{aligned} \mathbf {x}=\mathbf{As} \end{aligned}\tag{3} x=As(3) 有时,我们需要矩阵 A \mathbf A A的列向量,用 a j \mathbf a_j aj表示列向量,那么模型可以表示为: x = A s = [ a 1 , a 2 , ⋯ , a n ] s = [ a 1 , a 2 , ⋯ , a n ] [ s 1 s 2 ⋮ s n ] = ∑ i = 1 n a i s i (4) \mathbf x = \mathbf {As} =\mathbf {[ a _ { 1 } , a _ { 2 } , \cdots , a _ { n } ] s} =\mathbf {[ a _ { 1 } , a _ { 2 } , \cdots , a _ { n } ]} \left[ \begin{matrix} s_1 \\ s_2 \\ \vdots \\ s_n \end{matrix} \right] = \sum _ { i = 1 } ^ { n } \mathbf a _ { i } s _ { i }\tag{4} x=As=[a1,a2,⋯,an]s=[a1,a2,⋯,an]⎣⎢⎢⎢⎡s1s2⋮sn⎦⎥⎥⎥⎤=i=1∑naisi(4) 等式(3)中的统计模型称为独立成分分析或ICA模型。ICA模型是一个生成模型(generative model),这意味着它描述了如何通过混合分量 的过程来生成观测数据。独立分量是潜在变量,这意味着它们不能直接观察。混合矩阵(the mixing matrix)也被认为是未知的。我们观察到的只是随机向量 ,我们必须使用它来估计 和 。这必须在尽可能一般的假设下进行。 ICA的出发点(The starting point for ICA)是非常简单的假设,即分量 s i s_i si是统计独立的(statistically independent)。统计独立性(statistical independence)将在第3节中严格定义。从下面可以看出,我们还必须假设独立分量必须具有非高斯分布(non-Gaussian distributions)。但是,在基本模型中,我们假定这些分布是未知的(如果已知则可以大大简化问题)。为简单起见(For simplicity),我们还假设未知混合矩阵为方阵,但有时可以放宽此假设,如第4.5节中所述。然后,在估计矩阵 A \mathbf A A之后,我们可以计算其逆,即 W \mathbf W W,并通过以下方法简单地获得独立分量: s = W x (5) \mathbf{s}=\mathbf{Wx}\tag{5} s=Wx(5) ICA与盲源分离(blind source separation, BSS)或盲信号分离(blind signal separation)的方法密切相关。“源”在这里是指原始信号,即独立成分,例如鸡尾酒会问题中的说话者。“盲”是指我们对混合矩阵了解甚少,甚至对源信号也没有任何假设。ICA是执行盲源分离的一种方法,也许是使用最广泛的方法。 在许多应用中,假设测量中存在一些噪声(Hyva-rinen,1998a;Hyva-rinen,1999c)会更真实,这意味着在模型中添加噪声项。为简单起见,我们忽略了任何噪声项,因为无噪声模型的估计本身很难,而且对于许多应用来说似乎足够了。 2.2 ICA的含糊之处(Ambiguities of ICA)在公式(3)的ICA模型中,我们可以很容易的看出ICA具有以下不足: 1、无法确定独立分量的方差(能量)。 原因是,在 s \mathbf s s和 A \mathbf A A都不知道的情况下,总是可以通过将 A \mathbf A A的相应列 a i \mathbf a_i ai除以相同的标量来抵消其中一个源中的任何标量乘积: x = ∑ i ( 1 α i a i ) ( s i α i ) (6) \mathbf{x}=\sum\limits_{i}{(\frac{1}{{{\alpha }_{i}}}{\mathbf{a}_{i}})({{s}_{i}}{{\alpha }_{i}})}\tag{6} x=i∑(αi1ai)(siαi)(6) 作为推论,我们也可以用同样的方式对独立分量的幅值进行修正。因为它们是随机变量,所以(进行修正)最自然的方法是假定每个变量都有单位方差: E { s i 2 } = 1 E\{{s_i^2}\}=1 E{si2}=1。然后在ICA求解方法中,可以通过调整矩阵 A \mathbf A A来实现该归一化约束。但是,这仍然留下符号的不确定性问题:我们可以将某一独立分量乘以 − 1 -1 −1,而不会影响模型。幸运的是,这种歧义在大多数应用中都是微不足道的。 2、无法确定独立分量的顺序。 原因是,再次不知道 s \mathbf s s和 A \mathbf A A,我们可以自由地更改公式(4)中求和项的顺序,并将任何独立分量称为第一个分量。形式上,置换矩阵 P \mathbf P P及其逆可以在模型中替换为 x = A P − 1 P s \mathbf x=\mathbf{AP^{-1}Ps} x=AP−1Ps。 P s \mathbf {Ps} Ps的元素是原来的独立变量 s j s_j sj,但顺序发生了变化。矩阵 A P − 1 \mathbf {AP^{-1}} AP−1只是一个新的未知混合矩阵,将由ICA算法求解。 2.3 ICA的实例(Illustration of ICA)为了以统计方式说明ICA模型,请考虑具有以下均匀分布的两个独立分量:
p
(
s
i
)
=
{
1
2
3
i
f
∣
s
i
∣
≤
3
0
o
t
h
e
r
w
i
s
e
(7)
p({{s}_{i}})=\left\{ \begin{aligned} & \frac{1}{2\sqrt{3}}\ \ \ if\ \left| {{s}_{i}} \right|\le \sqrt{3} \\ & 0\ \ \ \ \ \ \ \ \ otherwise \end{aligned} \right.\tag{7}
p(si)=⎩⎪⎨⎪⎧23
1 if ∣si∣≤3
0 otherwise(7) 如上一节所述,选择这种均匀分布的取值范围,以使均值为零而方差为1。 和 分布的联合密度在一个正方形区域上是均匀的。这是从独立性的基本定义得出的,即两个独立变量的联合密度仅是其边际密度的乘积(参见等式10):我们需要简单地计算两个概率密度函数的乘积即可。这样的联合概率密度的直观图如图5所示,该图是通过随机绘制该分布中的数据点而得到的。 要定义独立性的概念,请考虑两个标量值随机变量 y 1 y_1 y1和 y 2 y_2 y2。基本上,如果关于 y 1 y_1 y1的值的信息没有给出关于 y 2 y_2 y2的值的任何信息,则变量 y 1 y_1 y1和 y 2 y_2 y2可以说是独立的,反之亦然。 上面我们注意到,变量 s 1 、 s 2 s_1、s_2 s1、s2就是这种情况,而混合变量 x 1 、 x 2 x_1、x_2 x1、x2则不是。. 从技术上讲,独立性可以通过概率密度来定义。让我们用 p ( y 1 , y 2 ) p(y1,y2) p(y1,y2)表示 y 1 y_1 y1和 y 2 y_2 y2的联合概率密度函数(pdf)。让我们进一步用 p 1 ( y 1 ) p_1(y_1) p1(y1)表示 y 1 y_1 y1的边际pdf,即单独考虑时 y 1 y_1 y1的pdf: p 1 ( y 1 ) = ∫ p ( y 1 , y 2 ) d y 2 (9) p _ { 1 } ( y _ { 1 } ) = \int p ( y _ { 1 } , y _ { 2 } ) d y _ { 2 }\tag{9} p1(y1)=∫p(y1,y2)dy2(9) 对于 y 2 y_2 y2同样。然后,当且仅当联合pdf可通过以下方式分解时,我们定义 y 1 y_1 y1和 y 2 y_2 y2是独立的: p ( y 1 , y 2 ) = p 1 ( y 1 ) p 2 ( y 2 ) (10) p ( y _ { 1 } , y _ { 2 } ) = p _ { 1 } ( y _ { 1 } ) p _ { 2 } ( y _ { 2 } )\tag{10} p(y1,y2)=p1(y1)p2(y2)(10) 该定义自然适用于任意数量的 n n n个随机变量,在这种情况下,联合密度必须是 n n n个项的乘积。 该定义可用于推导独立随机变量的最重要属性。给定两个函数 h 1 h_1 h1和 h 2 h_2 h2,我们总是有: E { h 1 ( y 1 ) h 2 ( y 2 ) } = E { h 1 ( y 1 ) } E { h 2 ( y 2 ) } (11) E \{ h _ { 1 } ( y _ { 1 } ) h _ { 2 } ( y _ { 2 } ) \} = E \{ h _ { 1 } ( y _ { 1 } ) \} E \{ h _ { 2 } ( y _ { 2 } ) \}\tag{11} E{h1(y1)h2(y2)}=E{h1(y1)}E{h2(y2)}(11) 可以证明如下: E { h ( y 1 ) h 2 ( y 2 ) } = ∫ ∫ h 1 ( y 1 ) h 2 ( y 2 ) p ( y 1 , y 2 ) d y 1 d y 2 = ∫ ∫ h 1 ( y 1 ) p 1 ( y 1 ) h 2 ( y 2 ) p 2 ( y 2 ) d y 1 d y 2 = E { h 1 ( y 1 ) } E { h 2 ( y 2 ) } (12) \begin{aligned} E\{h( y _ { 1 } ) h _ { 2 } ( y _ { 2 } ) \} &= \int \int h _ { 1 } ( y _ { 1 } ) h _ { 2 } ( y _ { 2 } ) p ( y _ { 1 } , y _ { 2 } ) d y _ { 1 }dy_{2} \\ &= \int \int h _ { 1 } ( y _ { 1 } ) p _ { 1 } ( y _ { 1 } ) h _ { 2 } ( y _ { 2 } ) p _ { 2 } ( y _ { 2 } ) d y _ { 1 } d y _ { 2 } \\ &= E \{ h _ { 1 } ( y _ { 1 } ) \} E \{ h _ { 2 } ( y _ { 2 } ) \}\tag{12} \end{aligned} E{h(y1)h2(y2)}=∫∫h1(y1)h2(y2)p(y1,y2)dy1dy2=∫∫h1(y1)p1(y1)h2(y2)p2(y2)dy1dy2=E{h1(y1)}E{h2(y2)}(12) 3.2 不相关的变量只是部分独立的独立性的较弱形式是不相关。如果两个随机变量 y 1 y_1 y1和 y 2 y_2 y2的协方差为零,则它们是不相关的: E { y 1 y 2 } − E { y 1 } E { y 2 } = 0 (13) E \{ y _ { 1 } y _ { 2 } \} - E \{ y _ { 1 } \} E \{ y _ { 2 } \} = 0\tag{13} E{y1y2}−E{y1}E{y2}=0(13) 如果变量是独立的,则它们是不相关的。取 h 1 ( y 1 ) = y 1 h_1(y_1)=y_1 h1(y1)=y1和 h 2 ( y 2 ) = y 2 h_2(y_2)=y_2 h2(y2)=y2则直接从等式(11)可以得出。 另一方面,不相关并不意味着独立。例如,假设 ( y 1 , y 2 ) (y_1,y_2) (y1,y2)是离散值,并且遵循这样的分布,即该对的概率1/4等于以下任意值:(0,1),(0,-1),(1,0),(-1,0)。可以简单地计算出 y 1 y_1 y1和 y 2 y_2 y2不相关。另一方面, E { y 1 2 y 2 2 } = 0 ≠ 1 4 = E { y 1 2 } E { y 2 2 } (14) E \{ y _ { 1 } ^ { 2 } y _ { 2 } ^ { 2 } \} = 0 \neq \frac { 1 } { 4 } = E \{ y _ { 1 } ^ { 2 } \} E \{ y _ { 2 } ^ { 2 } \}\tag{14} E{y12y22}=0=41=E{y12}E{y22}(14) 所以不符合等式(11)中的条件,变量不是独立的。 由于独立性包含不相关性,许多ICA方法都限制了估计过程,因此它总是给出独立分量的不相关性估计。这减少了可用参数的数量,并简化了问题。 3.3 为什么高斯变量不可行 要了解为什么高斯变量使ICA不可能,我们假设混合矩阵是正交的,并且 是高斯的。那么
x
1
x_{1}
x1和
x
2
x_2
x2是高斯的,不相关的并且具有单位方差。它们的联合密度由下式给出:
p
(
x
1
,
x
2
)
=
1
2
π
e
x
p
(
−
x
1
2
+
x
2
2
2
)
(15)
p({{x}_{1}},{{x}_{2}})=\frac{1}{2\pi }exp\left( -\frac{x_{1}^{2}+x_{2}^{2}}{2} \right)\tag{15}
p(x1,x2)=2π1exp(−2x12+x22)(15) 此分布如图7所示。 |
CopyRight 2018-2019 实验室设备网 版权所有 |