Non-Negative and Geodesic approaches to Independent Component - - PowerPoint PPT Presentation

non negative and geodesic approaches to independent
SMART_READER_LITE
LIVE PREVIEW

Non-Negative and Geodesic approaches to Independent Component - - PowerPoint PPT Presentation

Non-Negative and Geodesic approaches to Independent Component Analysis Mark Plumbley Queen Mary, University of London, Email: mark.plumbley@elec.qmul.ac.uk. ICA Workshop, 20 December 2002. Overview Introduction Nonnegative ICA using


slide-1
SLIDE 1

Non-Negative and Geodesic approaches to Independent Component Analysis

Mark Plumbley Queen Mary, University of London, Email: mark.plumbley@elec.qmul.ac.uk. ICA Workshop, 20 December 2002.

slide-2
SLIDE 2

Overview

  • Introduction
  • Nonnegative ICA using nonlinear PCA
  • Successive rotations
  • Geodesic line search
  • Results
  • Conclusions

1

slide-3
SLIDE 3

Introduction

  • Observations of mixed data - generative model

X = AS

(1) with sources S ∈ I Rn×p and mixing matrix A ∈ I Rm×n.

  • Task - to discover the source samples S and mixing matrix

A given only the observations X.

  • An Underdetermined problem: if (A∗, S∗) is a solution, so is

(A∗M, M−1S∗) (for invertible M)

  • So - need constraints.

2

slide-4
SLIDE 4

Constraints

  • 1. Independence of sources: sjk sampled from independent ran-

dom variables Sj.

  • 2. Non-negativity of sources: sjk ≥ 0 for all 1 ≤ j ≤ n, 1 ≤ k ≤ p.

Independence alone → classical noiseless ICA. Non-negativity alone (of S and A) → non-negative matrix factorization [Lee & Seung, 1999] Both constraints → non-negative independent component analysis.

3

slide-5
SLIDE 5

Non-negative ICA using Nonlinear PCA

ICA often simplified by pre-whitening - transform

x = Qz

(2) to get identity covariance Cx = E((x − ¯

x)(x − ¯ x)T) = I.

Problem now to find orthonormal weight matrix W, satisfying

WTW = WWT = In, such that the outputs y = Wx = WQAs

are independent. Typical ICA algorithms search for extremum of contrast function (e.g. kurtosis).

4

slide-6
SLIDE 6

Whitening of Non-Negative Data

−2 2 4 −2 −1 1 2 3 4 5 x1 x2

(a)

−2 2 4 −2 −1 1 2 3 4 5 z1 z2

(b) Original data (a) is whitened (b) to remove 2nd order correla-

  • tions. Suggests we just try to fit the data into +ve quadrant.

5

slide-7
SLIDE 7

Cost/Contrast Function for Non-negative ICA?

Let U = WQA, i.e. y = Us For non-negative sources s, which are well-grounded (i.e. Pr(s < δ) > 0 for any δ > 0), then

U is a permutation matrix (i.e. sources are separated)

iff all components of y are non-negative w.p.1. So - use a cost function, e.g. mean squared reconstruction error J = 1 2E(x − ˆ

x)

ˆ

x = WTy+

where y+ is rectified version of y = Wx.

6

slide-8
SLIDE 8

Nonlinear PCA algorithms

Natural to consider nonlinear PCA algorithm: ∆W = ηg(y)[x − Wg(y)]T in special case of g(y) = y+, i.e. ∆W = ηy+[x − ˆ

x]T

ˆ

x = WTy+

(“non-negative PCA”). Convergence? g(y) = y+ neither odd nor twice differentiable, so standard proof not applicable. However, behaves like a ‘switching subspace network’, so can modify PCA subspace convergence proofs (to be confirmed!)

7

slide-9
SLIDE 9

Orthonormality through Axis Rotation

Nonlinear PCA updates W in Euclidean matrix space, tending towards orthonormality WWT = I. However, can instead construct W from 2D rotations [Comon, 1994],

  • yi1

yi2

  • =
  • cos φ

sin φ

  • sin φ

cos φ xi1 xi2

  • Rotations (and product) always remain orthonormal.

Construct update multiplicatively as

W(t) = R(t)R(t − 1) · · · R(1)W(0)

where R(t) is a 2D Givens rotation.

8

slide-10
SLIDE 10

2D Axis rotations

x2 x y1 l y2 x1

2J =

          

if y1 ≥ 0, y2 ≥ 0 y2

2

if y1 ≥ 0, y2 < 0 y2

1

if y1 < 0, y2 ≥ 0 y2

1 + y2 2 = l2

  • therwise (i.e. y1 ≥ 0, y2 < 0)

9

slide-11
SLIDE 11

Derivative and Algorithm

dJ/dθ =

        

if y1 ≥ 0, y2 ≥ 0 y2y1 if y1 ≥ 0, y2 < 0 −y1y2 if y1 < 0, y2 ≥ 0

  • therwise (y1 ≥ 0, y2 < 0)

= y+ × y− = y+

1 y− 2 − y+ 2 y− 1

Gradient descent algorithm: ∆φ = −ηφ · dJ/dφ = +ηφ · dJ/dθ = ηφ(y+

1 y− 2 − y− 1 y+ 2 )

Relate this to concept of torque in a mechanical system.

10

slide-12
SLIDE 12

Line Search over Rotation Angle

Instead of simple gradient descent, can use line search. E.g. Matlab fzero for zero of dJ/dφ. If sources are non-negative as required, we know min(J) = 0 so make local quadratic approximation and jump to φ(t + 1) = φ(t) − 2J(t)/(dJ(t)/dφ) OK since solution locally quadratic & curvature increases away from solution, as more data points ‘escape’ from the +ve quad- rant.

11

slide-13
SLIDE 13

More Than 2 Dimensions: Algorithm

  • 1. Set X(0) = X, W(0) = I, t = 0.
  • 2. Calculate Y = X(t) = W(t)X(0)
  • 3. Calculate torques gij =

k y+ iky− jk − y− iky+ jk

  • 4. Exit if |gij| < tolerance
  • 5. For i∗, j∗ maximizing |gij| construct X∗ from selecting rows i∗

and j∗ from X(t).

  • 6. Do line search to find φ∗(t + 1) which minimizes J.
  • 7. Form the rotation matrix R(t+1) = [r(t+1)ij] from φ∗(t+1).
  • 8. Form the updated weight matrix W(t + 1) = R(t + 1)W(t)

and modified input data X(t+1) = R(t+1)X(t) = W(t+1)X(0).

  • 9. Increment the step count t, and repeat from 2.

12

slide-14
SLIDE 14

Geodesic search

Successive rotations - equivalent to line search along axis direc- tions. Search in more general directions? Geodesic - shortest path between 2 points on a manifold. For orthonormal matrices, have [Edelmam, Arias & Smith, 1998]

W(τ) = eτBW(0)

where BT = −B and τ scalar. [Fiori 2001, Nishimori 1999] NB: In 2D we get

B =

  • b

−b

  • eτB =
  • cos(τb)

sin(τb) − sin(τb) cos(τb)

  • 13
slide-15
SLIDE 15

Steepest Descent Geodesic

Parameterize B = C−CT with cij = 0 for i ≥ j. C has n(n−1)/2 free parameters. For steepest descent in C space, maximize − lim

∆τ→0

(change in J due to ∆τ)/∆τ (distance moved by of τC due to ∆τ)/∆τ = dJ/dτ CF We find dJ/dτ = trace((Y−YT − YYT

−)CT) =< (Y−YT − YYT −), C >

so for steepest descent choose

C ∝ UT(Y−YT − YYT

−) = UT(Y−YT + − Y+YT −)

14

slide-16
SLIDE 16

Gradient descent

Simply update W according to

W(t + 1) = e−η(Y−YT

+−Y+YT −)W(t)

with small update η. This is the geodesic flow method [Fiori 2001, Nishimori 1999]. BUT - no need to restrict to small updates. Can do e.g. line search along the steepest-descent geodesic.

15

slide-17
SLIDE 17

Line Search along Geodesic: Algorithm

  • 1. X(0) = X and W(0) = I at step t = 0.
  • 2. Calculate Y = X(t) = W(t)X(0).
  • 3. Calculate gradient G(t) = UT(Y−YT

+ − Y+YT −) and B-space

movement direction H(t) = −(G(t) − G(t)T ) = Y+YT

− − Y−YT +.

  • 4. Stop if G(t) < tolerance.

5. Perform a line search for τ ∗ which minimizes J(τ) using

Y(τ) = R(τ)X(t) and R(τ) = e−τH.

  • 6. Update W(t + 1) = R(τ∗)W(t) and X(t + 1) = R(τ∗)X(t) =

W(t + 1)X(0).

  • 7. Increment t, repeat from 2. Until exit at 4.

For simple tasks can guess single quadratic jump to J = 0 ∆C = 2JG/G2.

16

slide-18
SLIDE 18

Results - Image separation problem

Source images and histograms [Cichocki, Kasprzak & Amari 1996].

17

slide-19
SLIDE 19

Nonlinear PCA

50 100 150 200 10

−10

10

−5

10 Epoch, t Error

(a) Initial state (b) After 50 epochs (c) After 200 epochs

18

slide-20
SLIDE 20

Successive rotations

5 10 15 20 25 10

−10

10 Epoch Error

(a) Initial state (b) 5 epochs: rotated axes 1-3 (c) 15 epochs: rotated axes 2-3 (c) 22 epochs: rotated axes 1-3

19

slide-21
SLIDE 21

Geodesic step

5 10 15 10

−15

10

−10

10

−5

10 Epoch Error

(Visually similar images)

20

slide-22
SLIDE 22

Music example: Liszt Etude No 5 (extract)

Frame Frequency bin 50 100 150 200 250 300 350 400 450 50 100 150 200 250 Frame Output 50 100 150 200 250 300 350 400 450 2 4 6 8 10

21

slide-23
SLIDE 23

Conclusions

  • Considered problem of non-negative ICA
  • Separation of whitened sources when zero reconstruction er-

ror.

  • Nonlinear PCA with g(y) = y+.
  • Successive rotations keeps orthogonality
  • Geodesic line search

22