Documente Academic
Documente Profesional
Documente Cultură
Background paper:
http://www-stat.stanford.edu/∼hastie/Papers/ica.pdf
& %
' $
2
ICA Problem
X = AS
where
• X is a random p-vector representing multivariate input
measurements.
• S is a latent source p-vector whose components are
independently distributed random variables.
• A is p × p mixing matrix.
Given realizations x1 , x2 , . . . , xN of X, the goals of ICA are to
• Estimate A
• Estimate the source distributions Sj ∼ fSj , j = 1, . . . , p.
& %
' $
3
& %
time-series sampled uniformly at times ti .
' $
4
Independent vs Uncorrelated
and Cov(S ∗ ) = I
It is not enough to find uncorrelated variables, as they are not
unique under rotations.
Hence methods based on second order moments, like principal
components and Gaussian factor analysis, cannot recover A.
ICA uses independence, and non-Gaussianity of S, to recover A —
& %
e.g. higher order moments.
' $
5
Source S Data X
* * ***** * * * * * *** ** * * **
* * ** *****
* ******** * * * * * * * *** ***** **** *** ** ** *** ** * *
* * * *
* ** *** *** * * * ** ** * * ** ** * * * **
* * * * * * * ******* * * ***** * **
**** ******* ***************
* * ** * * *
*
* ** * * *** * ** *
* *
*
*
*
* * ***
* * ***** *
* * *
* *
* ***** **************
********* ******* ***************
Principal components are
* ** ****** * ** * *
* *** ** ***************** ** * *
* * ** * * * * ** *** ** ** * * * ****
********** *** *********
*
** * **
* * *
* **** ** * * * * *** *** * * ***
******** * * * ** ** * *** * * * * ** ** **
* ** * ** *
********* ***** *** * ** *************
* * * ****** *** * **
uncorrelated linear
** ** * ** ****** * ** *** ** * ** * ** * ** **** * ** * *** * *
* * * * * ** *** * * * *
* * **** * * * * * * ******** *********************** ******** ***
* * ** * ***** * * ** ** * * * * * **
** * * **** * ** * *** *** * ** *** *
* ** * * * ******
* *
**** * ************************ ********* combinations of X, chosen
** * ** * * * *** * ** * ** * *
*
*
*************** *********** **
*
** * ** * * * ** *
* * * ** ** ** ******* ** ********* ***
* ** * **** * ** * * * * ** * * *** *
* * * ** *** * * *** * * *** *** ** **** *
******* ****** * to successively maximize
*** * ****** * * * * * * **** * ** * ** * **** ***
* * * * * * * * * ** * * *
variance.
PCA Solution ICA Solution
** * ******* * * ** **
* **** * * *** * * * *
* ** *********** ** * * * ** *
*
* ** ** ** ** * * ****** ** *** * * * * ** ******** *
*
* * ** *
** * **
** **** ***** ****** * *
* * *** ** * ** *
** * ** *
* ** ******* ** ** **** ** ******
* ** * * * * **** ** * * **
*
**
* *
*
* * * ** * * **
*
Independent components
* ** **** ******* * **** ****** ******** ***** ** ** * * * * * ** * * * * **
* * ** * * ** * * * * * * **
***** ***************** ****** * **** * * ** * * **
*** ** ** **** * ***** *******
*
* *
* * * ** * * * ** * * * * * * * * * * **
*
* ***** *** *** * **** ****** ***** ******* ** *** ** *** *** * *
** * *** ** * * * * **
** * * ****
*
* *
* *
*** ***** * * ** * ***
*** * ** *** * * * ** *** * ** * * * ******** * *
are also uncorrelated
* * * * * *
****** *** ** ** * * ** * ***** ******* ** * ** * ******* ***** * * * * ** ** ** ***** * **** *** *** **** **
* ** *** ** ***** * ** *** *** *** ********** *
** ** * ** * ** **** * **** *** **** * *
* ** *** * ** * ** ** ** **
* * ** * * **** *
*
*** **** * *** ****
* ** ** * *
* * * * ** ** * * *** * * *** * *
* ** * **** *
*
**
linear combinations of X,
**** **** * ** ** ** ** ** ** * *** * * ** * ** ** * ***
* * * ** * **** * *** * *
* *
* * *** ***** ***
* * ** * * * *
** * *** * * * *
* * * **
*
*
* *
*
*
*
** * *
*
*
*
** * *
*
* * * * ** * * *
*
*
chosen to be as
*** *** * * * * * ****** * * * ******* ** ** * * ***** *****
* * * * * ** * * ** * *
** ** * * * * *
independent as possible.
& %
' $
6
Pixel blocks are treated as vectors, and then the collection of such
vectors for an image forms an image database. ICA can lead to a
sparse coding for the image, using a natural basis.
see http://www.cis.hut.fi/projects/ica/imageica/(Patrik
Hoyer and Aapo Hyvärinen, Helsinki University of Technology)
& %
' $
7
Approaches to ICA
& %
• Tensorial moment methods
' $
9
Simplification
& %
' $
10
R
Entropy: H(Y ) = − f (y) log f (y)dy — maximized by
f (y) = φ(y), the Gaussian (for fixed variance).
Pp
Mutual Information: I(Y ) = j=1 H(Yj ) − H(Y )
• Y is a random vector with joint density f (y) and entropy H(Y )
• H(Yj ) is the (marginal) entropy of component Yj , with
marginal density fj (yj ).
• I(Y ) is the Kullback-Leibler divergence between f (Y ) and it’s
Qp
independence version 1 fj (yj ) (which is the KL closest of all
independence densities to f (y))
• Hence I(Y ) is a measure of dependence between the
components of a random vector Y .
& %
' $
11
Hence
min I(WX) ⇐⇒ min {dependence between wjT X}
W W
⇐⇒ min {the sum of the entropies of the wjT X}
W
⇐⇒ max {departures from Gaussianity of the wjT X}
W
& %
Tukey, 1974)
' $
12
& %
' $
13
& %
' $
14
& %
h1 (aT1 X) · h2 (aT2 X), since [a1 , a2 ] is an orthonormal basis.
' $
15
• Hence model (1) is a product density for the data. If also looks
like a neural network
• Can fit it by a) sphering (“whitening”) the data and then b)
applying ppr function in R, combined with IRLS (iteratively
reweighted least squares).
& %
' $
16
& %
' $
17
Density of X = AS:
p
Y
fX (x) = |B| fj (bTj x)
j=1
with B = A−1 .
Log-likelihood, given x1 , x2 , . . . , xN :
p
N X
X
ℓ(B, {fj }p1 ) = log |B| + log fj (bTj xi )
i=1 j=1
& %
' $
18
& %
thereafter — pre-whitening in the ICA literature.
' $
19
ProdDenICA algorithm
& %
' $
20
Restrictions on gj
& %
' $
21
& %
' $
22
& %
' $
23
Simulations
a b c
d e f
Amari Metric
& %
' $
25
2-Dim examples
0.50
•
FastICA •
•
(Log Scale)
KernelICA
ProdDenICA •
•
• •
Amari Distance from True W
0.10
•
•
•• •
• • • • •
0.05
• • •
• •• • •
• • •
• •
• • • • •
• •
• •• •
•• • •
•
•
0.01
a b c d e f g h i j k l m n o p q r
& %
Distribution
' $
26
4-dim examples
1.5
1.0
0.5
0.0
& %
FastICA KernelICA ProdDenICA
' $
27
-3 -2 -1 0
•• • • • • • ••
• • •
••••••• • •• •••• • •
0
•• • • • • • • •• • ••
••• ••••• •••••• • • • • • • ••• •••• • •• •• • • •
• • • •• • • •• •
•• •• • •• • • • • • •••• • • ••• • • •
-1
• ••• • ••
• •••• • ••• •
•• ••••••• • ••• ••• •••• • • • •••••••••••• ••••• • •
•• ••• • • • • • •
FastICA ••• ••• •• ••• ••• • ••••• •••••••••• ••••• •• •
••• ••• • •• ••• • ••••••••••••••••••••• •••••••••• •• • •
• ••• •••••••••••••••••••••••••••• •• •• • •
-2
••• • • •••••• • • •• ••• ••••••••••••••• • ••
••••• •••••••••••••••••••• •••• • •••• •••••••••••• ••• ••••
• ••••••••••••••••••••• •
• • • ••••••••••••••••••••••••• •
•••••••• ••••••• • •
•• ••••••••• • •
• ••• •
• • •••• • •
••••• ••
-3
• • •
• • • •
• •
• •
• •
• • • •
0
• • • • •
•• • •• • • • •
-1
• • • • • ••
•• ••• • • • • • • • • •••• • •
• ••• ••• •• •• ••• • • •
• • • •• •
KernelICA • • • ••• • • •• • •
•• ••••••••••••• •••• ••• • • •• • •• ••• •
• •• ••••• ••••••••••••••••••••••••••••• • • •
-2
• ••• ••• ••••••••••••••• •••• •••• •••• • •••• • • ••• •••• •••••••• ••
•
• ••••••••••••••••••••••••••••••••••••••••• •••••••••••• • •••• • • •• •••••••••••••••••••••••••• •••••••• • •
• • • ••••••••••••••••• •••••••••••••• •••• •• • •• • •• •••••••••••••••••••••••••• •
• • ••
••
••• ••• • ••• • •• •• • • •••••••••••••••••••• • •
-3
• • •• • •• • • •• •••••
• •
-0.5
• •• • • •• • • •
-1.5
• • • ••
•
• •• • • • • • • •• • • ••
• •• • •• ••• • ••
• •• •••• •• • •
• •• • ••••••••• •••• • •
•• • • • • • • •• • • • • •• •••••••••••••••••••• •••• ProdDenICA
•• • • •••••••••• • • • • • •• •• • • • •
-2.5
•• • • ••••••••••••••••• •••••••••••••••••••• • • •••• •• • ••••••••••••••••••••••••• • •• • •
• ••• • ••• • • •
• • ••••••••••••••••••••••••••••••••••••••••• • •••••••••••••• •••••••• •••••••••••••••••• • • • •
••••••••••••••••••••••••••••••••••••••••• •• • •
• •• •• ••• •••• • • • • • • •• •
•
• • • • • • • • ••
• • • •• ••• •
• ••••• •••• • •• • • • • •• • • •
• • ••• •• •• • • •
•• ••••••••••• •
-3.5
• •
• •
• •
& %
-3 -2 -1 0 -3.5 -2.5 -1.5 -0.5