Deep learning--------------Independent Component Analysis(ICA)

原创 2013年12月05日 19:56:57

在sparse coding模型中,学习到的基是超完备集的,也就是说基集中基的个数比数据的维数还要大,那么对一个数据而言,将其分解为基的线性组合时,这些基之间本身就是线性相关的。如果我们想要得到线性无关的基集,那么基集中元素的个数必须小于或等于样本的维数,本节所讲的ICA(Independent Component Analysis,独立成分分析)模型就可以完成这一要求,它学习到的基之间不仅保证线性无关,还保证了相互正交。本节主要参考的资料见:Independent Component Analysis

  ICA模型中的目标函数非常简单,如下所示:

   

  它只有一项,也就是数据x经过W线性变换后的系数的1范数(这里的1范数是对向量而言的,此时当x是向量时,Wx也就是个向量了,注意矩阵的1范数和向量的1范数定义和思想不完全相同,这一项也相当于sparse coding中对特征的稀疏性惩罚项。于系数性不同的是,这里的基W是直接将输入数据映射为特征值,而在sparse coding中的W是将特征系数映射重构出原始数据。

  当对基矩阵W加入正交化约束后,其表达式变为:

   

  所以针对上面的目标函数和约束条件,如果要用梯度下降的方法去优化权值的话,则需要执行下面2个步骤:

    

  首先给定的学习率alpha是可以变化的(可以使用线性搜索算法来加速梯度下降过程,具体的每研究过,不了解),而Wx的1范数关于W的导数可以利用BP算法思想将其转换成一个神经网络模型求得,具体可以参考文章Deriving gradients using the backpropagation idea。此时的目标函数为:

  

  最后的导数结果为:

   

  另外每次用梯度下降法迭代权值W后,需要对该W进行正交化约束,即上面的步骤2。而用具体的数学表达式来表示其更新方式描述为:

   

  由于权值矩阵为正交矩阵,就意味着:

  1. 矩阵W中基的个数比输入数据的维数要低。这个可以这么理解:因为权值矩阵W是正交的,当然也就是线性无关的了,而线性相关的基的个数不可能大于输入数据的维数。
  2. 在使用ICA模型时,对输入数据进行ZCA白化时,需要将分母参数eplison设置为0,原因是上面W权值正交化更新公式已经代表了ZCA Whitening。这是网页教程中所讲的,真心没看懂。

  另外,PCA Whitening和ZCA Whitening都是白化操作,即去掉数据维度之间的相关性,且保证特征间的协方差矩阵为单位矩阵。


ICA--独立成分分析(Independent Component Analysis)

1. 问题:      1、上节提到的PCA是一种数据降维的方法,但是只对符合高斯分布的样本点比较有效,那么对于其他分布的样本,有没有主元分解的方法呢?      2、经典的鸡尾酒宴会问题(coc...

斯坦福大学公开课 :机器学习课程(Andrew Ng)——14、无监督学习:Independent Component Analysis(ICA)

1)问题描述     1、上节提到的PCA是一种数据降维的方法,但是只对符合高斯分布的样本点比较有效,那么对于其他分布的样本,有没有主元分解的方法呢?     2、经典的鸡尾酒宴会问题(cocktai...
  • mmc2015
  • mmc2015
  • 2015年01月06日 19:20
  • 1061

<ICA>Independent Component Analysis与fMRI

独立成分分析 fMRI 数据

尝试理解ICA(Independent Component Analysis)独立成分分析

1.从鸡尾酒会问题(cocktail party problem)说起 ICA最早是从神经网络领域开始研究的,为了简单,我们这里从一个经典的例子开始——盲源信号分离(blind signal sepa...

[机器学习] UFLDL笔记 - ICA(Independent Component Analysis)(Representation)

本文主要记录我在学习ICA(独立成分分析)过程中的心得笔记,对于ICA模型的理解和疑问,也纠正网络上一些Tutorial、资料和博文中的错误,欢迎大家一起讨论。...
  • walilk
  • walilk
  • 2016年01月06日 13:17
  • 2733

[机器学习] UFLDL笔记 - ICA(Independent Component Analysis)(Code)

本文主要介绍ICA的训练过程、代码以及实验结果(对应UFLDL的课后练习),源自于我在学习ICA过程中的笔记资料,包括了我个人对ICA模型的理解、代码实现和实验结果,欢迎大家一起讨论。...
  • walilk
  • walilk
  • 2016年01月07日 09:31
  • 1775

Deep Learning 系列(4):稀疏编码(sparse coding)和主成分分析(ICA)

一直犹豫稀疏编码怎么写,来来回回看了好几遍的UFLDL。因为这不仅是DL深度学习的重要概念,也是我这段时间一直在研究的stacked ISA 深度特征学习的支柱。 这章将主要介绍一下稀疏编码的主要概念...

Deep learning:三十九(ICA模型练习)

前言:   本次主要是练习下ICA模型,关于ICA模型的理论知识可以参考前面的博文:Deep learning:三十三(ICA模型)。本次实验的内容和步骤可以是参考UFLDL上的教程:Exercis...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Deep learning--------------Independent Component Analysis(ICA)
举报原因:
原因补充:

(最多只允许输入30个字)