精华内容
下载资源
问答
  • 独立
    万次阅读
    2021-10-02 19:58:24

    分类目录:《算法设计与分析》总目录


    两个随机变量 x x x y y y,如果它们的概率分布可以表示成两个因子的乘积形式,并且一个因子只包含 x x x另一个因子只包含 y y y,我们就称这两个随机变量是相互独立的:
    ∀ x i ∈ x , y i ∈ y : P ( x = x i , y = y i ) = P ( x = x i ) P ( y = y i ) \forall x_i\in x, y_i\in y:P(x=x_i, y=y_i)=P(x=x_i)P(y=y_i) xix,yiy:P(x=xi,y=yi)=P(x=xi)P(y=yi)

    如果关于 x x x y y y的条件概率分布对于 z z z的每一个值都可以写成乘积的形式,那么这两个随机变量 x x x y y y在给定随机变量 z z z时是条件独立的:
    ∀ x i ∈ x , y i ∈ y , z i ∈ z : P ( x = x i , y = y i ∣ z = z i ) = P ( x = x i ∣ z = z i ) P ( y = y i ∣ z = z i ) \forall x_i\in x, y_i\in y, z_i\in z:P(x=x_i, y=y_i|z=z_i)=P(x=x_i|z=z_i)P(y=y_i|z=z_i) xix,yiy,ziz:P(x=xi,y=yiz=zi)=P(x=xiz=zi)P(y=yiz=zi)

    我们可以采用一种简化形式来表示独立性和条件独立性: x ⊥  ⁣ ⁣ ⁣ ⊥ y x\perp \!\!\! \perp y xy表示 x x x y y y相互独立, x ⊥  ⁣ ⁣ ⁣ ⊥ y ∣ z x\perp \!\!\! \perp y|z xyz表示 x x x y y y在给定 z z z时条件独立。

    更多相关内容
  • 独立性和条件独立性测试方法

    千次阅读 2021-04-04 17:21:31
    独立性和条件独立性测试方法[1] 独立和条件独立定义:两个变量X, Z是独立的,其中P(Z=z)>0,有: ​ P(X=x,Z=z)=P(X=x)P(Z=z)P(X=x, Z=z)=P(X=x)P(Z=z)P(X=x,Z=z)=P(X=x)P(Z=z) 给定变量集合S,X和Z条件独立,记...

    独立性和条件独立性测试方法[1]

    独立和条件独立定义:两个变量X, Z是独立的,其中P(Z=z)>0,有:

    P ( X = x , Z = z ) = P ( X = x ) P ( Z = z ) P(X=x, Z=z)=P(X=x)P(Z=z) P(X=x,Z=z)=P(X=x)P(Z=z)

    给定变量集合S,X和Z条件独立,记为 I n d ( X , Z ∣ S ) Ind(X,Z|S) Ind(X,ZS)

    P ( X = x , Z = z ∣ S = s ) = P ( X = x ∣ S = s ) P ( Z = z ∣ S = s ) P(X=x, Z=z|S=s)=P(X=x|S=s)P(Z=z|S=s) P(X=x,Z=zS=s)=P(X=xS=s)P(Z=zS=s), 其中 P ( S = s ) > 0 P(S=s)>0 P(S=s)>0

    方法1:Fisher’s z-Transform for Correlation and Partial Correlation

    (1)独立性测试

    给定一个包含n个样本的X,Y变量,皮尔森相关系数计算如下:

    r = ∑ i = 1 n ( X i − X ˉ ) ( Y i − Y ˉ ) ∑ i = 1 n ( X i − X ˉ ) 2 ∑ i = 1 n ( Y i − Y ˉ ) 2 r=\frac{\sum_{i=1}^{n}{(X_i-\bar X)(Y_i-\bar Y)}}{\sqrt{\sum_{i=1}^n{(X_i-\bar X)^2}}\sqrt{\sum_{i=1}^n{(Y_i-\bar Y)^2}}} r=i=1n(XiXˉ)2 i=1n(YiYˉ)2 i=1n(XiXˉ)(YiYˉ)

    Fisher 的r-to-z transformation 其实是将皮尔森相关系数转化成具有正态分布的变量z, z ∼ N ( μ z , σ z ) z\sim N(\mu_z,\sigma_z) zN(μz,σz):
    z = 0.5 l n ( 1 + r 1 − r ) z = 0.5ln(\frac{1+r}{1-r}) z=0.5ln(1r1+r)
    and
    μ z = 0.5 l n ( 1 + ρ 1 − ρ ) , σ z = 1 n − 3 \mu_z=0.5ln(\frac{1+\rho}{1-\rho}), \sigma_z = \frac{1}{\sqrt{n-3}} μz=0.5ln(1ρ1+ρ),σz=n3 1
    其中 ρ \rho ρ是总体皮尔森相关系数
    PS总体皮尔森相关系数和样本皮尔森相关系数:
    在这里插入图片描述

    在这里插入图片描述

    给定显著性水平 α \alpha α和皮尔森相关系数 r r r,X, Y相关需要满足以下条件:
    z n − 3 > ϕ − 1 ( 1 − α / 2 ) z\sqrt{n-3}>\phi^{-1}(1-\alpha/2) zn3 >ϕ1(1α/2)
    ϕ \phi ϕ表示标准正态分布函数

    例:假如有一组包含100个样本的X,Y变量组,计算得出二者皮尔森相关系数为 0.4。在95%的置信水平下,有:
    z n − 3 = 0.5 l n ( 1 + 0.4 1 − 0.4 ) 100 − 3 = 4.172458 z\sqrt{n-3}=0.5ln(\frac{1+0.4}{1-0.4})\sqrt{100-3}=4.172458 zn3 =0.5ln(10.41+0.4)1003 =4.172458
    还有:

    ϕ − 1 ( 1 − α / 2 ) = ϕ − 1 ( 1 − 0.05 / 2 ) = ϕ − 1 ( 0.975 ) = 1.959964 \phi^{-1}(1-\alpha/2)=\phi^{-1}(1-0.05/2)=\phi^{-1}(0.975)=1.959964 ϕ1(1α/2)=ϕ1(10.05/2)=ϕ1(0.975)=1.959964
    因为前者4.172458大于后者1.959964,所以X和Y不独立(相关的)。

    (2)条件独立性测试

    给定变量集S情况下,X,Y的条件相关系数计算如下:
    r X , Y ∣ S = r X , Y ∣ S \ W − r X , W ∣ S \ W r Y , W ∣ S \ W ( 1 − r X , W ∣ S \ W 2 ) ( 1 − r Y , W ∣ S \ W 2 ) r_{X,Y|S}=\frac{r_{X,Y|S\backslash W}-r_{X,W|S\backslash W}r_{Y,W|S\backslash W}}{\sqrt{(1-r^2_{X,W|S\backslash W})(1-r^2_{Y,W|S\backslash W})}} rX,YS=(1rX,WS\W2)(1rY,WS\W2) rX,YS\WrX,WS\WrY,WS\W
    其中W是变量集S的任意一个变量,

    PS:论文[2]给出了一种计算 r X , Y ∣ S r_{X,Y|S} rX,YS的高效算法。

    给定显著性水平 α \alpha α,X和Y在给定变量集S的相关性需满足以下条件:
    z n − ∣ S ∣ − 3 > ϕ − 1 ( 1 − α / 2 ) z\sqrt{n-|S|-3}>\phi^{-1}(1-\alpha/2) znS3 >ϕ1(1α/2)
    其中 |S|表示变量集S的长度,且有:
    z = 0.5 l n ( 1 + r X , Y ∣ S 1 − r X , Y ∣ S ) z=0.5 ln(\frac{1+r_{X,Y|S}}{1-r_{X,Y|S}}) z=0.5ln(1rX,YS1+rX,YS)

    方法2: Chi-Square Test of Independence and Conditional Independence

    (1)独立性检测

    构建一个列联表,表示X,Z两个变量的联合频率分布。如下图:
    在这里插入图片描述

    n 11 , n 12 , n 21 , n 22 n_{11},n_{12},n_{21},n_{22} n11,n12,n21,n22分别表示 ( X = 1 , Z = 1 ) , ( X = 1 , Z = 0 ) , ( X = 0 , Z = 1 ) , ( X = 0 , Z = 0 ) (X=1,Z=1),(X=1,Z=0),(X=0,Z=1),(X=0,Z=0) (X=1,Z=1),(X=1,Z=0),(X=0,Z=1),(X=0,Z=0)的数量,称为观测频率; n 1 ∗ , n 2 ∗ , n ∗ 1 , n ∗ 2 n_{1*},n_{2*},n_{*1},n_{*2} n1,n2,n1,n2分别表示 X = 1 , X = 0 , Z = 1 , Z = 0 X=1,X=0,Z=1,Z=0 X=1,X=0,Z=1,Z=0的数量,称为边缘频率。

    基于联合频率表,我们可以计算出卡方检验统计量:
    χ 2 = ∑ i = 1 i = 2 ∑ j = 1 j = 2 ( n i j − n ^ i j ) 2 n ^ i j \chi^2=\sum_{i=1}^{i=2}\sum_{j=1}^{j=2}\frac{(n_{ij}-\hat{n}_{ij})^2}{\hat n_{ij}} χ2=i=1i=2j=1j=2n^ij(nijn^ij)2
    其中 n ^ 11 , n ^ 12 , n ^ 21 , n ^ 22 \hat{n}_{11},\hat n_{12},\hat n_{21},\hat n_{22} n^11,n^12,n^21,n^22是期望频率,按照下式计算:
    n ^ i j = n i ∗ n ∗ j n \hat n_{ij}=\frac{n_{i*}n_{*j}}{n} n^ij=nninj

    给定置信水平 α \alpha α,可以查询卡方分布(自由度为)的值 χ α 2 \chi^2_\alpha χα2。如果计算出的卡方统计量大于 χ α 2 \chi^2_\alpha χα2,就拒绝零假设,两者在给定的置信水平下有相关关系。

    (2)条件独立性

    在条件独立性测试中,测试X和Z在给定变量集S的独立性,我们生成取变量集S每个值情况下的列联表。例如,如果S中只有一个变量W,然后我们给出W=1和W=0两个情况下的列联表,如下图:
    在这里插入图片描述

    条件独立测试中的卡方统计量是所有列联表卡方统计量的总和。例如,如果W=1的表的卡方值为1.7,W=0表的卡方值为0.9,所以最终的卡方统计量的值为1.7+0.9=2.6。类似于非条件独立测试,我们可以通过比较卡方统计量与 χ α 2 \chi^2_\alpha χα2来判断是否独立。但是需要注意的是,条件独立性测试时自由度为 2 ∣ S ∣ 2^{|S|} 2S,|S|是变量集S中的变量个数。

    参考文献

    [1] Practical approaches to causal relationship exploration. LI J,LIU L,LE T D. Springerbriefs in Electrical and Computer Engineering . 2015,LIU L,LE T D. Springerbriefs in Electrical and Computer Engineering . 2015

    [2] J. Schaefer, R. Opgen-Rhein, and K. Strimmer. corpcor: Effificient estimation of covariance and (partial) correlation. R package version 1.5, 7, 2010.

    展开全文
  • 详解独立成分分析

    万次阅读 多人点赞 2019-06-15 15:13:22
    最近在学习数据降维的一些方法(有关数据降维的其他内容请看这篇文章),虽然独立成分分析不算是严格意义上的降维方法,但是它和PCA有着千丝万缕的联系,所以打算专门写一篇文章来学习ICA的相关知识,看了挺多的关于...

    最近在学习数据降维的一些方法(有关数据降维的其他内容请看这篇文章),虽然独立成分分析不算是严格意义上的降维方法,但是它和PCA有着千丝万缕的联系,所以打算专门写一篇文章来学习ICA的相关知识,看了挺多的关于ICA的博文,有些文章讲的比较详细。有句话是这么说的:“论文是详细版的知识讲解”,也就是说如果想深入详细的了解某个知识,那么去读相关论文,所以阅读了一篇经典的ICA论文,作者是A. Hyva¨rinen,整篇论文对ICA做出了详细的解释。这篇文章按照原论文的结构,对原论文进行了翻译概括。

    目录

    1. 动机(Motivation)

    2. 独立成分分析(independent component analysis)

    2.1 ICA的定义(Definition of ICA)

    2.2 ICA的不明确性(Ambiguities of ICA)

    2.3 图解ICA(Illustration of ICA)

    3. 什么是独立性(What's independence?)

    3.1 定义和基本属性(Definition and fundamental properties)

    3.2 不相关变量是部分独立的(Uncorrelated variables are only partly independent)

    3.3 为什么独立成分不能是高斯变量(Why Gaussian variables are forbidden)

    4 ICA估计原理(Principles of ICA estimation)

    4.1 非高斯独立(“Non-Gaussian is independent”)

    4.2 非高斯性的度量(Measures of non-Gaussianity)

    4.2.1 峰度(Kurtosis)

    4.2.2 负熵(Negentropy)

    4.2.3 负熵的近似(Approximations of negentropy)

    4.3 互信息最小化(Minimization of mutual information)

    4.3.1 互信息(Mutual information)

    4.3.2 通过互信息定义ICA(Defining ICA by mutual information)

    4.4 最大似然估计(Maximum likelihood estimation)

    4.4.1 似然(The likelihood)

    4.4.2 信息最大原则(The infomax principle)

    4.4.3 互信息连接(Connection to mutual information)

    4.5 ICA与投影跟踪(ICA and projection pursuit)

    5 ICA的预处理(Preprocessing of ICA)

    5.1 中心化(Centering)

    5.2 白化(whitening)

    5.3 进一步的预处理(Further preprocessing)

    6 FastICA算法(The FastICA algorithm)

    6.1 单元FastICA(FastICA for one unit)

    6.2 多元FastICA(FastICA for several unit)

    6.3 FastICA 和最大似然(FastICA and maximum likelihood)

    6.4 FastICA的属性(Properties of the FastICA algorithm)

    参考文献

    1. 动机(Motivation)

    想象两个人在意见房间内同时说话,有两个位于房间不同位置的麦克风记录时间信号,记录的时间信号分别用x_{1}(t)x_{2}(t)。被麦克风记录的信号是两个说话者语音信号的加权和,分别用s_{1}(t)s_{2}(t)表示。那么我们可以得到下面的等式:

                                         x_{1}(t) = a_{11}s_{1} + a_{12}s_{2}      (1)                      x_{2}(t) = a_{21}s_{1} + a_{22}s_{2}           (2)

    其中a_{11},a_{12},a_{21},a_{22}是一些取决于麦克风和说话者距离的参数。如果能用记录的信号x_{1}(t)x_{2}(t)估算出两个原始的语音信号s_{1}(t)s_{2}(t),这将会是一件非常有用的事。上面说的这个例子被称为“鸡尾酒宴会”问题。

                               

                                 

    以图1和图2的波形为例,图1表示的波形是原始语音信号,图2表示的波形是混合后即麦克风记录的信号。我们要做的就是通过图2中的信号来恢复图1中的信号。实际上,如果我们知道参数a_{ij},那么我们就能通过传统的方法求解出式(1)和式(2),但是如果我们不知道参数a_{ij},那么求解就会变的非常困难。

    其中一种方法是我们可以应用信号s_{i}(t)的一些统计特性来估计a_{ii}。我们可以假设在每个时刻t,信号s_{1}(t)s_{2}(t)是统计独立的。ICA可以独立分量的信息来估计参数a_{ij},这使得我们可以从混合信号x_{1}(t)x_{2}(t)中分离原始信号s_{1}(t)s_{2}(t)。图3的信号是从图2中信号通过ICA方法估计出的信号,可以看到,通过ICA得到的信号的波形和原始信号的波形(图1)非常相似。只是幅度是相反的,将估计得到的信号取个负即可。

                               

    2. 独立成分分析(independent component analysis)

    2.1 ICA的定义(Definition of ICA)

    为了严格定义ICA,我们可以使用统计隐变量模型。假设我们从n个独立成分观察到n个线性混合信号x_{1},...x_{n}

                                                                     x_{j} = a_{j1}s_{1} + a_{j1}s_{2} + ...a_{jn}s_{n}             (3)

    假设每一个x_{j}和每一个独立成分s_{k}是随机变量,观测值x_{j}(t)是随机变量的样本值。在不失一般性的情况下,我们可以假设混合变量和独立分量都具有零均值:如果不是这样的话,我们可以对观察变量x_{i}中心化,使得模型为零均值模型。

    用向量-矩阵法表示前面的和式是非常方便的,我们用x表示随机向量,其元素为x_{1},...,x_{n},同样的s表示随机向量,其元素为s_{1},...,s_{n}。用A表示矩阵,其元素为a_{ij},通常情况下,小写黑体表示向量,大写黑体表示矩阵。所有的向量都被视为列向量。根据向量-矩阵表示法,上面的混合模型可被写为:

                                                                                        {\color{Red} \mathbf{x} = \mathbf{As}}                             (4)

    有时,我们需要矩阵的列向量,用\mathbf{a}_{i}表示,那么模型可被写为:

                                                                                        \mathbf{x} = \sum_{i = 1}^{n}\mathbf{a}_{i}s_{i}                       (5)

    我们称(4)式表示的统计模型为独立成分分析或ICA模型。ICA模型是生成模型,它描述了观测数据是如何通过混合元素s_{i}生成的。独立成分是隐变量,也就是说它们不能被直接观测;而且混合矩阵\mathbf{A}也被假设是未知的。所有我们能观测到的只有随机向量\mathbf{x},我们需要用它去估计\mathbf{A}\mathbf{s}

    ICA的出发点是非常简单的一个假设:成分{\color{Red} s_{i}}是统计独立的。而且还假设独立成分是非高斯分布的。在基础模型中,我们不假设分布是已知的(如果分布已知,那么问题就会很简单了),还假设混合矩阵\mathbf{A}是方阵。当我们估算了矩阵\mathbf{A},那么我们可以求得它的逆\mathbf{W},可以通过下面的时候得到独立成分:

                                                                                           \mathbf{s} = \mathbf{Wx}                                  (6)

    ICA是和“盲源分离”(BSS)非常相近的一种方法。“源”是指原始信号,也就是独立成分,比如鸡尾酒宴会中的说话者的语音信号;“盲”是因为我们可知的信息非常少,不知道混合矩阵\mathbf{A},而且只能对源信号做极有限的假设。在实际的应用中,我们观测到的信号中还会包含一些噪声,为了简化,此处忽略噪声项,即便如此,它对许多应用仍然有效。

    2.2 ICA的不明确性(Ambiguities of ICA)

    在ICA模型,也就是式(4)中,我们很容易看到ICA的一些不太明确的地方:

    1. 我们不能确定独立成分的方差(能量)

    原因是,\mathbf{A}\mathbf{s}都是未知的,通过将\mathbf{A}的相应列\mathbf{a}_{i}除以相同的标量,可以总是取消其中一个源s_{i}中的任何标量乘数。因此,我们可以很好的确定独立成分的大小,因为它们是随机变量,确定其大小最自然的方式是假设它们的方差为1,即:E \left \{ s_{i}^{2} \right \} = 1。然后,矩阵\mathbf{A}将在ICA解决方案方法中进行调整,以考虑这种限制。 请注意,这仍然会留下符号的模糊性:我们可以将独立分量乘以21而不会影响模型。 幸运的是,这种模糊性在大多数应用中都是微不足道的。

    2. 我们不能确定独立成分的顺序

    原因同样是\mathbf{A}\mathbf{s}都是未知的,我们可以随意的改变式(5)中求和项的顺序,然后把任何一个独立成分称为第一个。形式上,置换矩阵\mathbf{P}及其逆可以在模型中代入以给出\mathbf{x} = \mathbf{A}\mathbf{P}^{-1}\mathbf{Ps}\mathbf{Ps}的元素是原始的独立变量s_{j},但是以另一种顺序。 矩阵\mathbf{A}\mathbf{P}^{-1}只是一个新的未知混合矩阵,由ICA算法求解。

    2.3 图解ICA(Illustration of ICA)

    为了用统计学术语来阐明ICA模型,我们假设两个独立分量服从下面的均匀分布:

                                                     

    选择均匀分布的取值范围,使得均值为0,方差为1。s_{1}s_{2}的联合密度在正方形内是均匀的,这源于联合密度的基础定义:两个独立变量的联合密度是他们边密度的乘积。联合密度如图4所示,数据点是从分布中随机抽取。

                                                            

    现在混合这两个独立成分,我们取下面的混合矩阵:

                                           

    这得出了两个混合变量,x_{1}x_{2},很容易得出混合数据在一个平行四边形上的均匀分布,如图5所示:

                                                              

    我们可以看到,随机变量x_{1}x_{2}不再独立,换一种说法是,是否有可能从一个值去预测另一个值。假设x_{1}的值为最大或最小值,那么x_{2}的值就可以确定了。如上图中红框圈起来的数据点所示。由此可知,x_{1}x_{2}已经不再独立了。但是对于图4中的随机变量s_{1}s_{2}情况就不同了,如果我们知道s_{1}的值,那么无论通过什么方式都无法确定s_{2}的值。

    现在估计ICA模型中数据的问题变成了用包含在x_{1}x_{2}中仅有的信息估计混合矩阵\mathbf{A}_{0}的问题。实际上我们可以从图5中对{\color{Red} \mathbf{A}}有个更直观的估计:平行四边形的边是矩阵列向量的方向。这意味着我们原则上可以通过首先估计x_{1}x_{2}的联合密度,然后定位边缘来估计ICA模型。 所以,问题似乎有一个解决方案。

    然而,实际上,这将是一种非常差的方法,因为它仅适用于具有完全均匀分布的变量。 而且,它在计算上会非常复杂。 我们需要的是一种适用于独立成分的任何分布的方法,并且可以快速可靠地工作。 接下来,在开始开发用于估计ICA模型的方法之前,我们将考虑独立性的确切定义。

    3. 什么是独立性(What's independence?)

    在这一小节我们将会解决两个关键的问题:为什么要假设独立成分是统计独立的?为什么独立成分必须是非高斯变量

    3.1 定义和基本属性(Definition and fundamental properties)

    为了定义独立性,首先考虑两个常量随机变量y_{1}y_{2}。基本上,如果关于y_{1}值的信息没有给出关于y_{2}值的任何信息,则变量y_{1}y_{2}被认为是独立的,反之亦然。从上一小节我们知道变量s_{1}s_{2}满足独立性,而混合变量x_{1}x_{2}并不满足独立性。独立性可以通过概率密度定义,用p(y_{1},y_{2})表示y_{1}y_{2}的联合概率密度。用p_{1}(y_{1})表示y_{1}的边缘概率密度函数,单独考虑y_{1}概率密度函数时有:

                                                                      p_{1}(y_{1}) = \int p(y_{1},y_{2})dy_{2}                                    (9)

    对于y_{2}也是一样的。当且仅当联合概率密度函数可以通过以下方式分解时,我们定义{\color{Red}y_{1}}{\color{Red}y_{2}}是独立的

                                                                      {\color{Red}p(y_{1}y_{2}) = p_{1}(y_{1})p_{2}(y_{2}) }                                     (10)

    式(10)对n个随机变量同样适用,此时联合概率密度函数等于n个部分的边缘概率密度函数的乘积。该定义可用于推导独立随机变量的一个最重要的性质。给定h1和h2两个函数,我们总是有:

                                                       E\left\{h_{1}(y_{1})h_{2}(y_{2})\right\} = E\left\{h_{1}(y_{1}) \right\}E\left\{h_{2}(y_{2})\right\}                  (11)

    其证明过程如下:

                                                

    3.2 不相关变量是部分独立的(Uncorrelated variables are only partly independent)

    弱化的独立是不相关。如果两个随机变量y_{1}y_{2}的协方差为0,那么说这两个随机变量不相关:

                                                                  E\left\{y_{1}y_{2}\right\} - E\left\{ y_{1}\right\}E\left\{ y_{2}\right\} = 0                                     (13)

    独立一定不相关,但是不相关不一定独立。例如,假设(y_{1},y_{2})是离散值并遵循这样的分布,即其为(0,1),(0,-1),(1,0),(-1,0)中任意值的概率为\frac{1}{4}。可以看到,y_{1}的取值为(0,0,1,-1),所以E\left\{y_{1}\right\} = 0,同样的y_{2}的取值为(1,-1,0,0),所以E\left\{y_{2}\right\} = 0y_{1}y_{2}的取值总是为0,那么E\left\{y_{1}y_{2}\right\} = 0。根据式(13)得出,随机变量y_{1},y_{2}不相关。我们令h_{1}(y_{1}) = y_{1}^{2},h_{2}(y_{2}) = y_{2}^{2},可以得到y_{1}^{2}y_{2}^{2}的值总是0,那么E\left\{y_{1}^{2}y_{2}^{2}\right\} = 0y_{1}^{2}取0和1的概率各为\frac{1}{2},那么E\left\{y_{1}^{2}\right\} = \frac{1}{2},同样的,y_{2}^{2}取0和1的概率各为\frac{1}{2},得E\left\{y_{2}^{2}\right\} = \frac{1}{2},由此可得:

                                                              E\left\{y_{1}^{2}y_{2}^{2}\right\} = 0 \neq E\left\{y_{1}^{2}\right\}E\left\{y_{2}^{2}\right\} = \frac{1}{4}                                  (14)

    由式(11)可以得出随机变量y_{1},y_{2}不独立。所以,不相关不一定独立。

     

    3.3 为什么独立成分不能是高斯变量(Why Gaussian variables are forbidden)

    在ICA中对独立成分最基础的限制是:独立成分必须为非高斯变量。接下来我们看看为什么高斯变量对ICA不适用,我们假设混合矩阵\mathbf{A}是正交的,且s_{i}是高斯变量。那么x_{1}x_{2}是高斯变量,且不相关、方差为1。它们的联合密度如下:

                                                 

    其分布如图6所示:

                                                      

    此图显示了密度的完全对称性,因此它不包含混合矩阵{\color{Red} \mathbf{A}}的列向量方向的任何信息。这就是为什么\mathbf{A}不能被估算的原因。更严格地说,可以证明高斯变量(x_{1},x_{2})的任何正交变换的分布具有与(x_{1},x_{2})完全相同的分布,并且x_{1}x_{2}是独立的。因此,在高斯变量的情况下,我们只能估算正交变换的ICA模型。换句话说,矩阵\mathbf{A}对于高斯独立分量是不可识别的。 (实际上,如果只有一个独立分量是高斯分布,那么仍然可以估计ICA模型。)

    4 ICA估计原理(Principles of ICA estimation)

    4.1 非高斯独立(“Non-Gaussian is independent”)

    直观的说,非高斯分布是ICA估计的关键,实际上,没有非高斯性,估计是不可能完成的,正如3.3 中所说的那样。这也可能是ICA后期复苏的主要原因:在传统统计学理论中,大多假设随机变量服从高斯分布,因此这将任何与ICA有关的方法都排除在外了。中心极限定理是概率论中的经典,它表明在一定条件下,独立随机变量之和的分布倾向于高斯分布。 因此,两个独立随机变量的总和通常具有比两个原始随机变量中的任何一个更接近高斯的分布。

    现在假设数据向量\mathbf{x}按照式(4)中ICA数据模型分布,即它是独立成分的混合。我们假设所有的独立成分有相同的分布,为了估算其中的一个独立成分,我们考虑x_{i}的线性组合(见式(6));我们用y = \mathbf{w}^{T}\mathbf{x} = \sum_{i}w_{i}x_{i}来表示,其中\mathbf{w}是待求向量。如果\mathbf{w}\mathbf{A}的逆的一行,那么这个线性组合实际上就表示一个独立成分。现在问题变成了:如何使用中心极限定理去确定\mathbf{w}使得它等于矩阵\mathbf{A}的逆的一行。实际上,我们并不能确定这样一个向量\mathbf{w},因为我们对矩阵\mathbf{A}一无所知,但是我们可以寻找一个估计器来找到较好的近似。

    为了了解这如何引出ICA估计的基本原理,让我们换一下变量,定义\mathbf{z} = \mathbf{A}^{T}\mathbf{w}。然后我们可以得出y = \mathbf{w}^{T}\mathbf{x} = \mathbf{w}^{T}\mathbf{A}\mathbf{s} = \mathbf{z}^{T}\mathbf{s}。因此y是s_{i}的线性组合,权重为z_{i},因为两个独立随机变量的和比原始的变量更接近高斯分布,所以\mathbf{z}^{T}\mathbf{s}比任意一个s_{i}更接近高斯分布且当它等于其中一个s_{i}时变成最小高斯。很明显,在这种情况下\mathbf{z}只有一个元素z_{i}非零。因此我们可以取\mathbf{w}为使\mathbf{w}^{T}\mathbf{x}非高斯性最大的向量。(既然随机变量的和更接近高斯分布,但是在ICA中我们又不想让随机变量服从高斯分布,那么我们可以只让{\color{Red}\mathbf{z}}中一个元素非零,这样就会得到最小高斯,从而使得{\color{Red}\mathbf{z}^{T}\mathbf{s}}的非高斯性最大)。这样的向量对应于只具有一个非零分量的\mathbf{z}。这意味着\mathbf{w}^{T}\mathbf{x} = \mathbf{z}^{T}\mathbf{s}等于一个独立成分。

    最大化\mathbf{w}^{T}\mathbf{x}的非高斯性会求出一个独立成分,事实上,向量\mathbf{x}的n维空间中非高斯性的优化格局具有2n个局部最大值,每个独立分量有两个,对应于s_{i}-s_{i}(回想一下,独立分量只能估计到乘法符号)。为了找到一些独立分量,我们需要找到所有的局部最大值,这并不困难,因为不同的独立分量不相关:我们总是可以将搜索限制在那些给出与以前的估计不相关的估计的空间。这对应于适当变换(即白化)空间中的正交化。我们这里的方法颇具启发性,但在第4.2节和第4.3节中可以看出它具有完全严格的证明。

    4.2 非高斯性的度量(Measures of non-Gaussianity)

    为了在ICA估计中使用费高斯性,我们必须对随机变量y的非高斯性进行定量的度量。为了简化,我们假设y的均值为0,方差为1。实际上,通过ICA算法的预处理过程可以使这个假设成真。

    4.2.1 峰度(Kurtosis)

    非高斯性的传统度量方式是峰度和四阶累积量。y的峰度的定义如下:

                                                               kurt(y) = E\left\{y^{4}\right\} - 3(E\left\{y^{2}\right\})^{2}                               (16)

    实际上,我们假设过y的方差为1,那么等式右边可简化为:E\left\{y^{4}\right\} - 3。这表明峰度只是四阶矩的标准化版本。对于高斯随机变量y,四阶矩等于3(E\left\{y^{2}\right\})^{2}。因此对于高斯随机变量其峰度为0 。而对于大多数(并非所有)非高斯变量,其峰度非零。峰度可正可负;具有负峰度的随机变量称为亚高斯,具有正峰度的随机变量称为超高斯。超高斯随机变量通常具有带有重尾的“尖峰”概率密度函数,即概率密度函数在零和变量的较大值处相对较大,而对于中间值较小。典型的例子是拉普拉斯分布,其概率密度函数的定义如下:                               

                                                      p(y) = \frac{1}{\sqrt{2}}exp(-\sqrt{2}|y|)                                        (17)

    其概率密度函数如图7所示:

                                                         

    亚高斯随机变量通常具有“平坦”概率密度函数,其在零附近相当恒定,并且对于较大的变量值而言非常小。 典型的例子是的均匀分布。非高斯性通常通常通过峰度的绝对值或平方来度量,高斯随机变量的峰度为了,而非高斯z_{1},z_{2}变量的峰度不为0,但是也有极少数的非高斯变量的峰度为0。 

    峰度或其绝对值在ICA或其它领域度量非高斯性时广泛应用。主要原因是它的计算和理论分析都比较简单:计算简单是因为峰度只需要计算样本数据的四阶矩;而理论分析简单是因为以下的线性特性:

                                                           kurt(x_{1} + x_{2}) = kurt(x_{1}) + kurt(x_{2})                    (18)

                                                           kurt(\alpha x_{1}) = \alpha^{4}kurt(x_{1})                                          (19)

    其中x_{1}x_{2}是独立的随机变量,\alpha是常数。以上性质由定义很容易证明。为了在一个简单的例子中说明峰度的优化格局是什么样的,以及如何通过峰度最小化或最大化找到独立的组件,让我们看一下二维模型\mathbf{x} = \mathbf{A}\mathbf{s}。假设独立成分s_{1},s_{2}的峰值分别为kurt(s_{1}),kurt(s_{2})且都不等于0,我们之前假设过随机变量的方差都为1,我们要求一个独立成分y = \mathbf{w}^{T}\mathbf{x}。我们再一次应用转换\mathbf{z} = \mathbf{A}^{T}\mathbf{w},接着有y = \mathbf{w}^{T}\mathbf{x} = \mathbf{w}^{T}\mathbf{A}\mathbf{s} = \mathbf{z}^{T}\mathbf{s} = z_{1}s_{1} + z_{2}s_{2},现在根据峰度的线性特性我们可以得到:kurt(y) = kurt(z_{1}s_{1}) + kurt(z_{2}s_{2}) = z_{1}^{4}kurt(s_{1}) + z_{2}^{4}kurt(s_{2}),因为随机变量是s_{1},s_{2},而z_{1},z_{2}可看做是常数。另一方面,我们使y的方差为1。这意味着对\mathbf{z}有个约束:E\left\{y^{2}\right\} = z_{1}^{2} +z_{2}^{2} = 1。在对上式进行推导之前首先要明确几个问题,s_{1},s_{2}是均值为0方差为1的独立变量,z_{1},z_{2}是常数,其推导如下:

                                                              \begin{align*} E\left\{y^{2}\right\} &= E\left\{(z_{1}s_{1} + z_{2}s_{2})^{2}\right\}\\ &= E\left\{z_{1}^{2}s_{1}^{2}+z_{2}^{2}s_{2}^{2}+2z_{1}z_{2}s_{1}s_{2}\right\}\\ &= z_{1}^{2}E\left\{s_{1}^{2}\right\} +z_{2}^{2}E\left\{s_{2}^{2}\right\} + 2z_{1}z_{2}E\left\{s_{1}s_{2}\right\}\\ &= z_{1}^{2} + z_{2}^{2} +2z_{1}z_{2}E\left\{s_{1}\right\}E\left\{s_{2}\right\}\\ & = z_{1}^{2} +z_{2}^{2} = 1 \end{align*}

    这在几何上意味着\mathbf{z}被约束在二维平面的单位圆上,现在优化问题变成了:函数|kurt(y)| = |z_{1}^{4}kurt(s_{1}) +z_{1}^{4}kurt(s_{1})|在单位圆上的最大值是什么。为简单起见,可以认为峰度具有相同的符号,在这种情况下,可以省略绝对值运算符。 该函数的图形是问题的“优化”。

    当向量\mathbf{z}的一个元素恰好为零而另一个非零时,不难显示最大值位于这些点; 由于单位圆约束,非零元素必须等于1或-1。实际上,我们可以从权值向量\mathbf{w}开始,基于混合向量\mathbf{x}的样本\mathbf{x}(1),...,\mathbf{x}(T)计算方向,即峰度增长最快的方向(如果峰度为正)或减少最快(如果峰度为负)的方向,并使用梯度方法或其中一个扩展来寻找新的矢量w。这个例子可以一般化到任意维度来表明峰度可以作为ICA问题的优化准则。

    但是,峰度在实际应用中也存在一些缺陷,主要原因是峰度对异常值非常敏感。其值可能仅取决于分布尾部的少数观测值,这可能是错误的或不相关的观测。 换句话说,峰度是一种不稳定的非高斯性度量。接下来,介绍另一种比峰度优越的非高斯性度量方法:负熵。

    4.2.2 负熵(Negentropy)

    负熵是另一种非常重要的非高斯性量度。 负熵是信息论中熵量的一种概念。熵是信息论中的基本概念,随机变量的熵可以被解释为观察变量包含的信息量。变量越随机,越不可预测,那么它的熵越大,更严格的说,熵和随机变量的编码长度相关,实际上在某些简单的假设下,熵就是随机变量的编码长度。随机变量Y的熵H的定义如下:

                                                             H(Y) = -\sum_{i}P(Y = a_{i})logP(Y = a_{i})                     (20)

    其中a_{i}Y可能取到的值。此定义可以推广到连续值的随机变量和随机向量,这种情况下其被称为“差分熵”。密度函数为f(\mathbf{y})的随机向量\mathbf{y}的差分熵H定义如下:

                                                            H(\mathbf{y}) = -\int f(\mathbf{y})log(f(\mathbf{y}))d\mathbf{y}                                     (21)

    在信息论中有个基本的结论:在所有方差相等的随机变量中,高斯变量的熵最大。这意味着熵可以作为非高斯性的一种度量,实际上,这表明高斯分布是所有分布中最“随机”的。随机变量的分布越集中,其熵越小。为了获得对于高斯变量为零并且总是非负的非高斯性度量,通常使用负熵。负熵J的定义如下:

                                                             J(\mathbf{y}) = H(\mathbf{y}_{gauss}) - H(\mathbf{y})                                              (22)

    \mathbf{y}_{gauss}是与\mathbf{y}有相同协方差矩阵的高斯随机变量。根据上面提到的特性,负熵总是非负的,且只有\mathbf{y}是高斯分布的时候为0,而且负熵对于可逆线性变换是不变的。使用负熵作为非高斯性度量的优势是:统计理论能够很好的证明它。实际上,对统计性质而言,负熵在某种意义上是对非高斯性的最优估计。但是负熵的计算非常复杂,用定义估计负熵需要估计概率密度函数。因此我们可以寻找负熵的近似。

    4.2.3 负熵的近似(Approximations of negentropy)

    像上面提到的,负熵的计算非常困难,因此对比函数仍然是理论函数。所以在实际应用中经常会使用一些负熵的近似,接下来介绍具有不错性质的负熵的近似。

    传统的负熵近似是使用高阶矩,像下面这种形式:

                                                                 J(y) \approx \frac{1}{12}E\left\{y^{3}\right\}^{2} + \frac{1}{48}kurt(y)^{2}                                (23)

    假设y是零均值方差为1的随机变量。然而这种近似的有效性可能是有限的,这些近似受到了峰度的非鲁棒性的影响。为了避免这种问题,一种新的负熵的近似被提出,这种近似是基于最大熵原理的,其近似如下:

                                                                J(y) \approx \sum_{i= 1}^{p}k_{i}[E\left\{G_{i}(y)\right\} - E\left\{G_{i}(v)\right\} ]^{2}                       (24)

    其中k_{i}是正常数,v是均值为0,方差为1的高斯变量,y也是均值为0,方差为1的变量,G_{i}是非二次函数。即使在近似不是非常准确的情况下,式(24)仍然可以构建非高斯性的度量。当我们只用一个非二次函数时,近似如下:

                                                                 J(y) \propto [E\left\{G(y)\right\} - E\left\{G(v)\right\}]^{2}                                   (25)

    如果y是对称的,这显然是基于矩的近似推广(如式(23))。取G(y) = y^{4}就会得到式(23),也就是基于峰度的近似。在这里,我们通过G(y)的选择,会获得一个比式(23)的更好负熵的近似。选择增长不是太快的G,会得到一个比较稳定的估计量。下面的G选择被证明比较有效:

                                                 G_{1}(u) = \frac{1}{a_{1}}log(cosh a_{1}u)                      G_{2}(u) = -exp(\frac{-u^{2}}{2})                (26)

    其中a_{1}是1到2之间的常数。因此,我们得到了负熵的近似值,它在由峰度和负熵给出的两个经典非高斯性度量的性质之间给出了非常好的折衷。它们的概念简单,计算速度快,而且还有些比较不错的统计特性,尤其是鲁棒性。

    4.3 互信息最小化(Minimization of mutual information)

    另外一种基于信息论的估计ICA的方法是互信息最小化。接下来将解释这种方法,并说明它跟上面描述寻找大多数非高斯方向的方法相似。

    4.3.1 互信息(Mutual information)

    根据差分熵的概念,我们定义m个随机变量y_{i}(i = 1,2,...,m)之间的互信息,如下:

                                                                 I(y_{1},y_{2},...,y_{m}) = \sum_{i = 1}^{m}H(y_{i}) - H(\mathbf y)                            (27)

    互信息是衡量随机变量之间独立性的方法,事实上,它等于联合密度f(\mathbf{y})和其边缘密度乘积之间的散度,它总是非负的,只有当变量之间统计独立时为0。因此互信息考虑变量的整体依赖结构,而不是像PCA等方法一样仅仅考虑协方差。互信息可以用熵作为码长来解释,H(y_{i})给出了当y_{i}分别编码时的码长,H(\mathbf y)给出了当\mathbf y被编码为随机向量时的码长。因此,互信息显示了通过编码整个向量而不是单独的分量来减少代码长度的效果。一般来说,对整个向量进行编码可以得到更好的编码。但是,如果y_{i}是独立的,那么它们彼此之间就没有任何信息,即互信息为0。

    互信息一个重要的特性是:我们有一个可逆的线性变换\mathbf{y} = \mathbf{Wx}:

                                                            I(y_{1},y_{2},...,y_{n}) = \sum_{i}H(y_{i}) - H(\mathbf{x}) - log|det\mathbf{W}|                 (28)

    我们试想一下如果y_{i}是不相关的,而且它们的方差为1会发生什么,这意味着E\left\{\mathbf{y}\mathbf{y}^{T}\right\} = \mathbf{W}E\left\{\mathbf{x}\mathbf{x}^{T} \right\}\mathbf{W}^{T} = \mathbf{I},这意味着:

                                                          \begin{align*} det\mathbf{I} &= 1 = det(\mathbf{W}E\left\{\mathbf{x}\mathbf{x}^{T}\right\}\mathbf{W}^{T})\\ & = (det\mathbf{W})(detE\left\{\mathbf{x}\mathbf{x}^{T}\right\})(det\mathbf{W}^{T}) \end{align*}                                      (29)

    这意味着\mathbf{W}的行列式必须是常量,而且,对于单位方差的y_{i},熵和负熵只差一个常数和符号,因此我们可以得到:

                                                          I(y_{1},y_{2},...,y_{n}) = C - \sum_{i}J(y_{i})                                                  (30)

    其中C是不依赖\mathbf{W}的常数。上面的式子表示了负熵和互信息之间的关系。

    4.3.2 通过互信息定义ICA(Defining ICA by mutual information)

    因为互信息是信息论中随机变量独立性的度量方式,我们可以用它作为寻找ICA变换的准则。此方法是模型估计的替代方法,我们将随机向量\mathbf{x}的ICA定义为可逆变换,就想式(6)中那样,确定了矩阵\mathbf{W},使变换后的元素s_{i}的互信息最小化。很明显,在式(30)中找到最小化互信息的逆变换\mathbf{W},就相当于负熵最大的方向。更精确的说,它相当于找到了一维子空间,使得在这些子空间上的投影具有最大熵。式(30)表明,当估计被约束为不相关时,通过最大互信息估计相当于最大化非高斯估计的和。非相关性的约束其实是不必要的,是为了简化计算考虑。因此,我们看到ICA作为互信息最小化的公式给出了另一个严格的理由,即我们更具启发性地引入了寻找最大非高斯方向的想法。

    4.4 最大似然估计(Maximum likelihood estimation)

    4.4.1 似然(The likelihood)

    一种非常流行的估计ICA模型的方法是最大似然估计,它和信息最大化原则相似。接下来将讨论这种方法,并表明它的本质是和最小化互信息是一样的。在无噪声的ICA模型中可以直接表示似然,然后通过最大似然估计来估计模型。\mathbf{W} = (\mathbf{w}_{1},...,\mathbf{w}_{n})^{T}表示矩阵\mathbf{A}的逆,log似然函数如下:

                                                     

    其中f_{i}s_{i}的密度函数,\mathbf{x}(t),t = 1,2,...,T\mathbf{x}的实现。对于任何密度为p_{i}的随机变量\mathbf{x}和任意的矩阵\mathbf{W}\mathbf{y} = \mathbf{Wx}的密度由p_{x}(\mathbf{W}^{-1}\mathbf{y})|det\mathbf{W}^{-1}|给出。      

    4.4.2 infomax原则(The infomax principle)

    另一个相关的对比函数是从神经网络的观点中推导出来的。这是基于最大化具有非线性输出的神经网络的输出熵(或信息流)。假设\mathbf{x}是神经网络的输入,它的输出是\phi _{i}(\mathbf{w}_{i}^{T}\mathbf{x}),其中\phi_{i}是非线性的标量函数,\mathbf{w}_{i}是神经元的权重矩阵。想最大化输出的熵为:

                                                          L_{2} = H(\phi_{1}(\mathbf{w}_{1}^{T}\mathbf{x}),...,\phi_{n}(\mathbf{w}_{n}^{T}\mathbf{x}))                                      (32)

    如果\phi_{i}选择的合适,这个框架也可以估计ICA模型,实际上,一些研究者已经证明了infomax原则相当于最大似然估计。这种等价要求神经网络中的非线性\phi_{i}是密度函数f_{i}的积分,也就是说\phi_{i}^{'}(\cdot ) = f_{i}(\cdot)

    4.4.3 互信息连接(Connection to mutual information)

    为了研究似然和互信息之间的关系,考虑log似然函数的期望,如下:

                                                \frac{1}{T}E\left\{L\right\} = \sum_{i = 1}^{n}E\left\{logf_{i}(\mathbf{w}_{i}^{T}\mathbf{x})\right\} + log|det \mathbf{W}|                            (33)

    如果f_{i}\mathbf{w}_{i}^{T}\mathbf{x}的分布,那么上式右边的第一部分可以写为-\sum_{i}H(\mathbf{w}_{i}^{T}\mathbf{x})。因此似然将会和式(28)中的互信息的负相等(只是相差一个常数)。在实际应用这种联系会更强,因为在实际中我们不知道独立成分的分布。比较合理的一种方法是把\mathbf{w}_{i}^{T}\mathbf{x}估计作为最大似然估计方法的一部分,并且把它作为s_{i}密度函数的一部分。在这种情况下,似然和互信息是等价的。

    在实际情况下,我们有很多关于独立成分的先验知识,我们不需要根据数据来估计它们的性质。在任何情况下,如果独立成分的性质是错误了,那么最大似然估计也会给完全错误的结果。

    4.5 ICA与投影跟踪(ICA and projection pursuit)

    如何明确ICA与投影跟踪之间的联系。投影跟踪是在统计学中发展起来的一种技术,用于发现多维数据的“有趣的”投影。这样的投影可用于数据的最佳可视化,以及密度估计和回归等目的。在基本的(1-D)投影跟踪中,我们试图找到方向,使数据在这些方向上的投影具有有趣的分布,即显示某种结构。研究者认为,高斯分布是最没有意思的分布,最有趣的方向是那些显示最低高斯分布的方向,而这正是我们估计ICA模型的方法。

    在图8中可以看到找到这种投影的有用性,其中投影追踪方向上的投影是水平的,清楚地显示了数据的聚类结构。

                                                        

    在第一个主成分(垂直方向)上的投影没有显示出这种结构。 在一般公式中,投影跟踪可以看做是ICA的变体。特别是,投影追踪使我们能够解决独立分量s_{i}比原始变量x_{i}少的情况。假设空间的那些未被独立分量跨越的维度被高斯噪声填充,我们看到计算非高斯投影追踪方向,我们有效地估计了独立分量。 当找到所有非高斯方向时,估计了所有独立分量。 这样的过程可以被解释为投影跟踪和ICA的混合。然而,应该注意的是,在投影跟踪的公式中,没有关于独立分量的数据模型或假设。 如果ICA模型成立,优化ICA非高斯度量度量会产生独立的分量; 如果模型不成立,那么我们得到的是投影跟踪方向。

    5 ICA的预处理(Preprocessing of ICA)

    在上一节中,我们讨论了ICA方法的基本统计原理。 基于这些原理的实用算法将在下一节中讨论。 但是,在对数据应用ICA算法之前,进行一些预处理通常非常有用。 在本节中,我们将讨论一些预处理技术,这些技术可以使ICA估计问题更简单,条件更好。

    5.1 中心化(Centering)

    最基础也是最有必要的预处理是对\mathbf{x}中心化,也就是说用原始数据减去它们的均值\mathbf{m} = E\left\{\mathbf{x}\right\}使得\mathbf{x}的均值为0。因为\mathbf{s}的均值也是零,所以可以对式(4)两边同时取期望。这只是为了简化ICA算法,并不是说不能估计平均值。用中心化后的数据估计完混合矩阵\amthbf{A}之后,我们把\mathbf{s}的均值向量加回到\mathbf{s}中心估计值以完成完全估计。均值向量由\mathbf{A}^{-1}\mathbf{m}给出,其中\mathbf{m}是预处理过程中减去的均值。

    5.2 白化(whitening)

    ICA另一个有用的预处理策略是对观测数据白化。这意味着在应用ICA算法之前(中心化之后),我们对观测数据\mathbf{x}进行线性变换,因此我们可以获得白化的新的向量\widetilde{\mathbf{x}},也就是说,它的元素是不相关的且方差是一致的。换句话说,\widetilde{\mathbf{x}}的协方差矩阵是单位矩阵:

                                                                               E\left\{\widetilde{\mathbf{x}}\widetilde{\mathbf{x}}^{T}\right\} = \mathbf{I}                               (34)

    一种比较流行的白化的方法是协方差矩阵E\left\{\widetilde{\mathbf{x}}\widetilde{\mathbf{x}}^{T}\right\} = \mathbf{ED}\mathbf{E}^{T}的特征分解,其中\mathbf{E}E\left\{\widetilde{\mathbf{x}}\widetilde{\mathbf{x}}^{T}\right\}的特征向量组成的正交矩阵,\mathbf{D}是由特征值组成的对角矩阵,\mathbf{D} = diag(d_{1},...,d_{n})E\left\{\widetilde{\mathbf{x}}\widetilde{\mathbf{x}}^{T}\right\}可以根据已知的值\mathbf{x}(1),...,\mathbf{x}(T)算出来,白化可以通过下式完成:

                                                                              \widetilde{\mathbf{x}} = \mathbf{E}\mathbf{D}^{-\frac{1}{2}}\mathbf{E}^{T}\mathbf{x}                              (35)

    其中\mathbf{D}^{-\frac{1}{2}} = diag(d_{1}^{-\frac{1}{2}},...,d_{n}^{-\frac{1}{2}}),现在很容易发现E\left\{\widetilde{\mathbf{x}}\widetilde{\mathbf{x}}^{T}\right\} = \mathbf{I}

    通过白化将混合矩阵转换为\widetilde{\mathbf{A}},由式(4)和式(35)可得到:

                                                                        \widetilde{\mathbf{x}} = \mathbf{E}\mathbf{D}^{-\frac{1}{2}}\mathbf{E}^{T}\mathbf{As} = \widetilde{\mathbf{A}}\mathbf{s}                        (36)

    白化的作用在于可以使新的混合矩阵\widetilde{\mathbf{A}}变成正交的,这可以从下式中看到:

                                                               E\left\{\widetilde{\mathbf{x}}\widetilde{\mathbf{x}}^{T}\right\} = \widetilde{\mathbf{A}}E\left\{\mathbf{s}\mathbf{s}^{T}\right\}\widetilde{\mathbf{A}}^{T} = \widetilde{\mathbf{A}}\widetilde{\mathbf{A}}^{T} = \mathbf{I}       (37)

    我们可以看到,通过白化减少了要估计的参数的数量,现在我们不需要估计原始矩阵\mathbf{A}中的n^{2}个参数(即矩阵\mathbf{A}中的元素),而只需要估计新的正交混合矩阵\widetilde{\mathbf{A}}。一个正交矩阵包含\frac{n(n-1)}{2}的自由度,例如,在二维空间中正交变换可由单个的角参数确定,在更高的维度中,正交矩阵只包含任意矩阵参数数目的一半左右。因此我们可以这样说,白化解决了ICA一半的问题。因为白化是非常简单且标准的流程(比任何的ICA算法都简单),用这种方法减少问题的复杂性是个不错的主意。在我们白化的同时,减少数据的维度也是件非常有用的,我们可以舍弃E\left\{\widetilde{\mathbf{x}}\widetilde{\mathbf{x}}^{T}\right\}的较小的特征值,正如PCA所做的那样,这有去噪的效果,而且维度的减少会防止过拟合(个人建议,不要通过降维的方式防止过拟合,尽量通过正则化来防止过拟合)。

    图9对图5中的数据进行了白化,如下所示:

                                                                    

    定义分布的正方形现在显然是图4中原始正方形的旋转,剩下的就是估计给出旋转的单个角度。 在接下来的分析中,我们都假设数据经过了预处理:中心化和白化。为了简单起见,预处理的数据就用\mathbf{x}表示,变换的混合矩阵用\mathbf{A}表示。

    5.3 进一步的预处理(Further preprocessing)

    给定数据集的ICA成功与否可能会跟特定应用的预处理步骤有关。比如数据中包含时间信号,那么带通滤波也将会是很有用的。如果我们对观测信号x_{i}(t)进行线性滤波得到新的信号x_{i}^{*}(t),具有相同混合矩阵的ICA模型仍然适用于x_{i}^{*}(t)。观测\mathbf{x}(1),...,\mathbf{x}(T)是矩阵\mathbf{X}的列,对于\mathbf{S}也是如此,那么ICA模型可被表示为:

                                                                                     \mathbf{X} = \mathbf{AS}                                       (38)

    现在,\mathbf{X}的时间滤波相当于\mathbf{X}从右边乘以一个矩阵\mathbf{M},如下:

                                                                    \mathbf{X}^{*} = \mathbf{XM} = \mathbf{ASM} = \mathbf{A}\mathbf{S}^{*}                         (39)

    这表明ICA模型依然有效。

    6 FastICA算法(The FastICA algorithm)

    在前面的小节中,介绍了非高斯性的不同度量方式,也就是ICA估计的目标函数。在实际中,还需要一种最大化对比函数的算法,如式(25)那样。这一小节介绍一种非常有效的最大化方法,这里假设数据都是经过预处理的。

    6.1 单元FastICA(FastICA for one unit)

    首先来看单元FastICA,通过“单元”,我们指的是计算单元,最终是人工神经元,具有神经元能够通过学习规则更新的权值向量\mathbf{w}。FastICA学习规则寻找方向,也就是使投影\mathbf{w}^{T}\mathbf{x}最大化非高斯性的单位向量\mathbf{w},非高斯性通过负熵J(\mathbf{w}^{T}\mathbf{x})的近似度量。回想一下\mathbf{w}^{T}\mathbf{x}的方差必须是统一的,对于白化的数据,这相当于将\mathbf{w}的范数统一。FastICA是基于定点迭代的方案的寻找\mathbf{w}^{T}\mathbf{x}非高斯性的最大值,像式(25)那样。这也可以用近似牛顿迭代法推导出来,用g表示式(25)中非二次函数G的导数,例如,式(26)中函数的导数为:

                                              g_{1}(u) = tanh(a_{1}u)                      g_{2}(u) = u\ exp^{-\frac{u^{2}}{2}}                       (40)

    其中a_{1}是介于1到2之间的常数,通常取a_{1} = 1。FastICA算法的基本形式如下:

                   1. 选择初始的权值向量\mathbf{w}(随机选择)

                   2. 令\mathbf{w}^{+} = E\left\{\mathbf{x}g(\mathbf{w}^{T}\mathbf{x})\right\} - E\left\{g'(\mathbf{w}^{T}\mathbf{x})\right\}\mathbf{w}

                   3. 令\mathbf{w} = \mathbf{w}^{+} / \ ||\mathbf{w}^{+}||

                   4. 如果不收敛,就返回步骤2

    收敛是指\mathbf{w}的新旧值指向同一个方向,也就是,它们的点积等于1,向量不一定收敛到同一个点,因为\mathbf{w}-\mathbf{w}定义的方向是相同的,这也是因为独立分量只能定义为乘法符号。     

    FastICA推导如下,首先\mathbf{w}^{T}\mathbf{x}的负熵的近似的最大值是从E\left\{G(\mathbf{w}^{T}\mathbf{x})\right\}获得的,在约束E\left\{(\mathbf{w}^{T}\mathbf{x})^{2}\right\} = ||\mathbf{w}||^{2} = 1下的E\left\{G(\mathbf{w}^{T}\mathbf{x})\right\}的最优值是从下式中获得的:

                                                                                           

    用牛顿法来解上面的等式,令等式左边为F,然后可以获得雅可比矩阵JF(\mathbf{w}): 

                                                                          

    为了简化矩阵,我们对上式中的第一部分取近似,由于数据是球形的,一个合理的近似是 因此雅可比矩阵变成了对角矩阵,并且很容易求其逆,从而得到下面的近似牛顿迭代:

                                            

    通过对上式两边同时乘以可以进一步简化。实际上,FastICA的期望必须由他们的估计来代替。 自然估计当然是相应的样本均值。 理想情况下,应该使用所有可用数据,但这通常不是一个好主意,因为计算可能变得过于苛刻。 然后可以使用较小的样本估计平均值,其大小可能对最终估计的准确性具有相当大的影响。 应在每次迭代时单独选择样本点。 如果收敛不令人满意,则可以增加样本量。

    6.2 多元FastICA(FastICA for several unit)

    前面讲的单单元算法只是估计一个独立成分或者一个投影追踪的方向,为了估计几个独立成分,我们需要使用具有权重向量\mathbf{w}的若干单元(例如,神经元)来运行单单元FastICA算法。为了防止不同的向量收敛到相同的最大值,需要在每次迭代后对输出\mathbf{w}^{T}_{1}\mathbf{x},...,\mathbf{w}^{T}_{n}\mathbf{x}去相关,有3种方法可以做到这一点,对于白化的\mathbf{x}这种去相关相当于正交化。

    实现去相关的简单方法是基于类似Gram-Schmidt的去相关的放缩方案。这意味着需要一个个的估计独立成分,当我们已经估计了p个独立成分或者p个向量\mathbf{w}_{1},...,\mathbf{w}_{p},对\mathbf{w}_{p+1}运行单单元定点算法,在每一次迭代之后,从\mathbf{w}_{p+1}中减去投影\mathbf{w}^{T}_{p+1}\mathbf{w}_{j}\mathbf{w}_{j},其中j = 1,...,p,最后重新标准化\mathbf{w}_{p+1}

                                                

    然而,在某些应用程序中,可能需要使用对称的去相关,其中没有向量比其他向量具有“特权”,这可以通过矩阵平方根法做到,令:

                                                                    \mathbf{W} = (\mathbf{W}\mathbf{W}^{T})^{-\frac{1}{2}}\mathbf{W}                                                 (45)

    其中\mathbf{W}是向量(\mathbf{w}_{1},...,\mathbf{w}_{n})^{T}组成的矩阵,平方根的倒数(\mathbf{W}\mathbf{W}^{T})^{-\frac{1}{2}}可以从\mathbf{W}\mathbf{W}^{T} = \mathbf{F}\Lambda\mathbf{F}^{T}特征值分解得到,(\mathbf{W}\mathbf{W}^{T})^{-\frac{1}{2}} = \mathbf{F}\Lambda^{\frac{1}{2}}\mathbf{F}^{T},一个更简单的迭代方法如下:

                                   1. 令

                                    重复步骤2直到收敛       

                                   2. 令 

    步骤一中的范数可以使用矩阵的任意范数,比如2-范数。

    6.3 FastICA 和最大似然(FastICA and maximum likelihood)

    最后,给出FastICA和最大似然估计的联系。如果我们使用式(43)中的中间公式表达FastICA,并以矩阵形式写,我们看到FastICA采用以下形式:

                                                

    其中\mathbf{y} = \mathbf{Wx}\beta_{i} = -E\left\{y_{i}g(y_{i})\right\}\alpha_{i} = -\frac{1}{\beta_{i} + E\left\{g'(y_{i})\right\}},矩阵\mathbf{W}在每一步后都需要正交化。上述版本的FastICA可以与随机梯度法的最大似然比较:

                                                

    其中\mu是学习速率。g是独立成分的额概率密度函数的函数:g = \frac{f_{i}'}{f_{i}},其中f_{i}是独立成分的概率密度函数。比较式(47)和(48)可以看出,FastICA可以作为ICA数据模型最大似然估计的定点算法。在FastICA中,通过选择矩阵diag(\alpha_{i})diag(\beta_{i})来优化收敛速度。 FastICA的另一个优点是它可以估计子和超高斯独立分量,这与普通ML算法形成对比,普通ML算法仅适用于给定的分布类别。

    6.4 FastICA的属性(Properties of the FastICA algorithm)

    与现有的ICA方法相比,FastICA算法和底层对比度函数具有许多所需的特性。

    1. 在ICA数据模型的假设下,收敛是立方的(或至少是二次的)。 这与基于(随机)梯度下降方法的普通ICA算法形成对比,其中收敛仅是线性的。 这意味着非常快速的收敛,正如通过对真实数据的模拟和实验所证实的那样

    2. 与基于梯度的算法相反,没有选择步长参数。这意味着该算法易于使用。

    3. 该算法使用任何非线性g直接找到(实际上)任何非高斯分布的独立分量。 这与许多算法形成对比,其中必须首先获得概率分布函数的一些估计,并且必须相应地选择非线性。

    4. 可以通过选择合适的非线性g来优化该方法的性能。 特别地,可以获得稳健和/或最小方差的算法。 实际上,式(40)中的两个非线性具有一些最佳性质

    5. 可以逐个估计独立分量,这大致相当于进行投影追踪。 这在探索性数据分析中很有用,并且在仅需要估计某些独立组件的情况下减少了该方法的计算负荷

    6. FastICA具有神经算法的大部分优点:它是并行的,分布式的,计算简单的,并且需要很少的存储空间。 只有在不断变化的环境中需要快速适应性时,随机梯度法似乎才是优选的。

    原论文中还涉及到了ICA算法的应用:在脑磁图去除数据伪迹中的应用;在金融数据中发现隐藏因子;为自然图像去噪。有兴趣的可以去阅读原文。

    参考文献

    1. Independent component analysis: algorithms and applications

    2. 一个简单的FastICA示例    http://www.endolith.com/wordpress/2009/11/22/a-simple-fastica-example/

    展开全文
  • 51单片机 --独立按键

    千次阅读 2022-05-01 20:53:30
    前几章介绍的都是IO 口输出的使用,这一教程我们通过独立按键实验来介绍IO 口作为输入的使用。开发板上板载8 个独立按键。本教程所要实现的功能是:通过开发板上的独立按键K1 控制D1 指示灯亮灭。大家可以参考前面的...

    前言

    前几章介绍的都是IO 口输出的使用,这一教程我们通过独立按键实验来介绍IO 口作为输入的使用。开发板上板载8 个独立按键。本教程所要实现的功能是:通过开发板上的独立按键K1 控制D1 指示灯亮灭。大家可以参考前面的实验内容。


    一、按键介绍

    按键是一种电子开关,使用时轻轻按开关按钮就可使开关接通,当松开手时,开关断开。开发板上使用的按键及内部简易图如下图所示:

    按键管脚两端距离长的表示默认是导通状态,距离短的默认是断开状态, 如果按键按下,初始导通状态变为断开,初始断开状态变为导通。

    通常的按键所用开关为机械弹性开关,当机械触点断开、闭合时,电压信号如下图所示:

    由于机械点的弹性作用,按键开关在闭合时不会马上稳定的接通,在断开时也不会一下子断开,因而在闭合和断开的瞬间均伴随着一连串的抖动。抖动时间的长短由按键的机械特性决定的,一般为5ms 到10ms。按键稳定闭合时间的长短则由操作人员的按键动作决定的,一般为零点几秒至数秒。按键抖动会引起按键被误读多次。为了确保CPU 对按键的一次闭合仅作一次处理,必须进行消抖。

    按键消抖有两种方式,一种是硬件消抖,另一种是软件消抖。为了使电路更加简单,通常采用软件消抖。我们开发板也是采用软件消抖,一般来说一个简单的按键消抖就是先读取按键的状态,如果得到按键按下之后,延时10ms,再次读取按键的状态,如果按键还是按下状态,那么说明按键已经按下。其中延时10ms 就是软件消抖处理,至于硬件消抖,大家可以百度了解下,网上都有非常详细的介绍。这里给大家列出单片机常用的软件去抖动方法:

    1,先设置IO 口为高电平(由于开发板IO 都有上拉电阻,所以默认IO 为高电平)。

    2,读取IO 口电平确认是否有按键按下。

    3,如有IO 电平为低电平后,延时几个毫秒。

    4,再读取该IO 电平,如果仍然为低电平,说明按键按下。

    5,执行按键控制程序。

    独立按键电路构成是由各个按键的一个管脚连接在一起接地,按键其他引脚

    分别接到单片机IO 口。我们知道单片机的IO 口既可作为输出也可作为输入使用,当检测按键时用的是它的输入功能,独立按键的一端接地, 另一端与单片机的I/O 口相连,开始时先给该IO 口赋一高电平,然后让单片机不断地检测该I/O 口是否变为低电平,当按键闭合时,即相当于该I/O 口通过按键与地相连,变成低电平,程序一旦检测到I/O 口变为低电平则说明按键被按下,然后执行相应的指令。

    二、硬件设计

    本实验使用到硬件资源如下:

    (1)LED 模块中D1 指示灯

    (2)K1 按键

    LED 模块电路在前面章节都介绍过,这里就不多说,开发板上的独立按键模块电路如下图所示:

    从上图中可以看出,该电路是独立的,8 个独立按键的控制管脚并未直接连接到51 单片机的IO 上,而是连接到JP1 端子上。如果要想51 单片机能够检测按键是否按下,就必须将单片机管脚通过导线连接到JP1 端子上。因此需使用一根8Pin 排线将单片机的管脚与JP1 端子顺序连接。由于独立按键模块电路是独立的,所以使用任意单片机管脚都可以,为了与我们例程程序配套,这里使用P3.1 口来检测K1 按键,使用P2.0 管脚控制D1指示灯。

    三、软件设计

    本教程所要实现的功能是:通过开发板上的独立按键K1 控制D1 指示灯亮灭。

    ​​​​​​​

    #include<reg52.h>typedef unsigned int u16;typedef unsigned char u8;sbit KEY1=P3^1;sbit KEY2=P3^2;sbit KEY3=P3^3;sbit KEY4=P3^4;sbit LED1=P2^0;#define KEY1_PRESS 1#define KEY2_PRESS 2#define KEY3_PRESS 3#define KEY4_PRESS 4#define KEY1_UNPRESS 0
    void delay_10us(u16 time_us)//延时函数{    while(time_us--);}
    u8 key_scan(u8 mode){    static u8 key=1;    if(mode==1)    {        key=1;//连续扫描按键    }    if(key==1&&(KEY1==0||KEY2==0||KEY3==0||KEY4==0))//任意按键按下    {        delay_10us(1000);//消抖        key=0;             if(KEY1==0)            return KEY1_PRESS;        else if(KEY2==0)            return KEY2_PRESS;        else if(KEY3==0)            return KEY3_PRESS;        else if(KEY4==0)            return KEY4_PRESS;    }else if(KEY1==1&&KEY2==1&&KEY3==1&&KEY4==1)//无按键按下    {        key=1;        return KEY1_UNPRESS;    }}
    void main(){    u8 key=0;    while(1)    {        key=key_scan(0);            if(key==KEY1_PRESS)//检测按键K1是否按下        {            LED1=!LED1;//LED1状态翻转          }    }}

    key_scan 函数带一个形参mode,该参数用来设定是否连续扫描按键,如果mode 为0,只能操作一次按键,只有当按键松开后才能触发下次的扫描,这样做的好处是可以防止按下一次出现多次触发的情况。如果mode 为1,函数是支持连续扫描的,即使按键未松开,在函数内部有if(mode==1)这条判断语句,因此key 始终是等于1 的,所以可以连续扫描按键,当按下某个按键,会一直返回这个按键的键值,这样做的好处是可以很方便实现连按操作。函数内的delay_10us(1000)即为软件消抖处理,通常延时10ms 即可。

    key_scan 函数还带有一个返回值,如果未有按键按下,返回值即KEY_UNPRESS,否则返回值即为对应按键的键值,如KEY1_PRESS、KEY2_PRESS、KEY3_PRESS、KEY4_PRESS,这都是程序开头定义好的宏,方便大家理解和使用。函数内定义了一个static 变量key,相当于全局变量,所以该函数不是一个可重入函数。还有一点要注意的就是该函数按键的扫描是有优先级的,因为函数内用了if...else if...else 格式,所以最先扫描处理的按键是KEY1,其次是KEY2,然后是KEY3,最后是KEY4。如果需要将其优先级设置一样,那么可以全部用if 语句。

    main 函数中主要就是调用key_scan 函数用于检测按键,此时传入的mode值为0,表示单次扫描按键,然后将扫描按键的值保存在变量key 中,最后通过if 判断语句控制LED1 状态。


    展开全文
  • Java的平台独立

    千次阅读 2020-10-29 12:00:41
    一、为什么要平台独立 Java是一门为了网络环境而开发的语言,这要求Java程序的二进制形式可以在多种不同的平台上无差别的执行。 在开发者这一边,是用Java开发就可以获得平台独立性,这使自己的软件多了很多潜在的...
  • 1. 实体是什么东西? 实体:实体表示保存到数据库中的域对象的单个实例,作为记录。它具有一些属性,我们将其表示为表中的列。...也可以编辑一个实体,并可以将一个独立实体转换成非独立实体,同样也可以将非独立实体转
  • 独立路径

    万次阅读 多人点赞 2020-06-11 13:52:38
    独立路径是指从程序的入口到出口的多次执行中,每次至少有一个语句是新的,未被重复的,也即每次至少要经历一条从未走过的弧。 独立路径的个数即为环复杂度的个数,而求环复杂度的个数三种方法: 直观观察法: 1....
  • 自学51单片机 - 独立按键实验

    千次阅读 2022-04-09 16:06:14
    自学51单片机 - 独立按键实验
  • 独立与条件独立

    千次阅读 2018-09-11 10:20:16
    版权声明:本文为博主原创文章,未经博主允许不得转载。... 条件有时为不独立的事件之间带来独立(gain independence),有时也会把本来独立的事件,因为此条件的存在,而失去独立性(lose indep...
  • 独立显卡主要是指成独立的办卡存在,需要将其插在抓板的相对应接口上的显卡。同时显卡作为电脑主机中非常重要的组成部分,安装步骤也就有所讲究,才能够很好的提供显示效果以及运行性能。那么要如何正确安装独立显卡...
  • 什么是设备独立性? 为什么要引入设备独立性?如何实现设备独立性 什么是设备独立性 设备独立性是指操作系统把所有外部设备统一当作成文件来看待,只要安装它们的驱动程序,任何用户都可以象使用文件一样,操纵、...
  • 51单片机之独立按键

    万次阅读 多人点赞 2019-05-15 12:03:00
    非编码键盘又分为独立键盘和行列式键盘(常说的矩阵键盘)。在这一讲中我们介绍一下单片机中键盘使用。  单片机的IO口既可作为输出也可作为输入使用,当检测按键时用的是它的输入功能,我们把按键的一端接地,另...
  • 希望大家在掌握理论的基础上,参照课程实践部分,独立完成各个实验操作。 后续:在理论知识扎实,实践操作到位的情况下,《企业级VMware vSphere6.7虚拟化技术配置与管理(下集)》将深入讲解vSphere环境下的vMotion、...
  • 就 OKDELL C2100服务器,想加装独立显卡,怎样关闭独立显卡?请不要说在BIOS。开机时,看屏幕提示,按f2设置bios,按f12设置启动盘(如光盘、u盘)独立显卡的运行方式在BIOS内是设置不了的,需要您在系统内进行设置,...
  • 独立站运营到底要做什么!

    千次阅读 2021-03-30 18:29:59
    都说优秀的独立站运营能让销量翻倍,到底什么是「独立站运营」? 今天店小匠给大家分享独立站运营的底层逻辑。看完本文,老板能知道如何招到好的运营、独立站运营人员能知道如何进一步精进、跨境电商从业者能懂得...
  • IE11-For-Win7 x86 独立离线安装包下载

    千次下载 热门讨论 2015-02-11 23:34:33
    IE11-For-Win7 x86 独立离线安装包,
  • 卡方独立性检验|卡方拟合性检验

    万次阅读 2020-06-25 22:59:58
    独立性检验 “独立性检验”验证从两个变量抽出的配对观察值组是否互相独立(例如:每次都从A国和B国各抽一个人,看他们的反应是否与国籍无关)。 独立性检验主要用于两个或两个以上因素多项分类的计数资料分析,也...
  • 独立成分分析(ICA)

    万次阅读 多人点赞 2019-05-10 20:13:41
    独立成分分析是从多元(多维)统计数据中寻找潜在因子或成分的一种方法.ICA与其它的方法重要的区别在于,它寻找满足统计独立和非高斯的成分。这里我们简要介绍ICA的基本概念、应用和估计原理。 1.1 多元数据...
  • 今天,我会用最通俗易懂的语言,全面介绍一下非独立组网和独立组网。 在南京夫子庙,有一个做餐饮业的老板,名叫星爷。 他开的店,名叫四号餐厅。餐厅的主厨,叫胖四。 【图片】 餐厅的生意一直很好,但是随着业务日...
  • 51单片机——独立按键

    千次阅读 2022-04-16 22:53:22
    开发板上有四个独立按键,K1,K2,K3,K4分别接RXD(P31),TXD(P30),P32,P33四个拐角,按键未按下时,按键对应的拐角输出高电平,按键按下之后,拐角接地,输出低电平。 图2 独立按键连接原理图 按键在闭合和断开时,...
  • 51单片机:独立按键控制LED灯

    千次阅读 2022-04-21 11:37:43
    1. 独立按键控制LED灯状态 亮灭实验完成后,就可以控制LED状态,首先我们知道由于机械结构的弹性作用,按键开关在闭合时不会一瞬间稳定的接通,在断开时,也不会一下子断开。所以就得需要程序消抖,也就是适当延时...
  • 集成显卡和独立显卡的区别_哪个好

    千次阅读 2021-07-28 05:18:55
    什么是独立显卡独立显卡是指成独立的板卡存在,需要插在主板的相应接口上的显卡。独立显卡具备单独的显存,不占用系统内存,能够提供更好的显示效果和运行性能。什么是集成显卡集成显卡:则将图形核心以单独芯片的...
  • 两两独立为什么不能推出相互独立

    千次阅读 2021-01-26 10:55:49
    独立的概念是两个事件发生的概率等于每个事件发生的概率的乘积。 有四个数:3,4,5,60 事件A:从上面四个数随机抽一个数是3的倍数 事件B:从上面四个数随机抽一个数是4的倍数 事件C:从上面四个数随机抽一个数是5的...
  • STM32---独立看门狗

    千次阅读 2022-03-13 17:37:27
    STM32—独立看门狗 提示:以下是本篇文章正文内容,下面案例可供参考 一、看门狗概述 1.背景 在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成各种寄存器和内存的数据混乱...
  • 西班牙格拉纳达大学Francisco Herrera教授在他PPT《Dataset Shift in Classification: Approaches and Problems》里提到数据集偏移有三种类型: 协变量偏移(Covariate Shift): 独立变量的偏移,指训练集和测试集的...
  • 1.重新梳理两个事件的独立性 在上一小节中,我们引入了条件概率P(A∣B)P(A|B)P(A∣B)这个重要概念,何谓条件概率?条件概率的核心就是刻画了事件BBB的发生给事件AAA是否发生所带来的额外信息。 在所有的条件概率情况...
  • 5G标准——独立组网(SA)和非独立组网(NSA)

    万次阅读 多人点赞 2019-06-15 15:33:06
    下面到了非独立组网了,总体上来说,非独立组网要比独立组网复杂得多,这也是省钱所必须要付出的代价。 首先解释几个术语: 双连接:顾名思义,就是手机能同时跟4G和5G都进行通信,能同时下载数据。一般情况下...
  • 设备独立

    千次阅读 2021-03-13 10:29:08
    ·设备独立性简介 设备独立性又名设备无关性:可使应用程序独立于具体使用的物理设备。 设备独立性的实现需要:1.引入逻辑设备,物理设备两个概念 2.在驱动层序上设置一层设备独立性软件。 设备独立性的具体实现...
  • 独立样本T检验类似于单样本T检验,不过独立样本T检验的内容比单样本T检验要复杂的多,特别是对其结果的分析,而独立样本T检验被使用的情况也比单样本T检验更广泛(因此也可以看到网络上关于独立样本T检验的文章远比...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,745,543
精华内容 1,098,217
关键字:

独立