Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
ANALISIS DE COMPONENTES
INDEPENDIENTES (ICA)
Febrero-Mayo 2006
1
ÍNDICE
2
3.1 DEFINICIÓN DE ICA
SEPARACIÓN CIEGA DE
FUENTES DE SEÑAL
CLASIFICACIÓN
3
Observamos un conjunto de n señales, x1(t),…,xn(t)
combinación lineal de otras n señales s1(t),…,sn(t)
estadísticamente independientes entre si:
n
x(t ) = As(t ) = ∑
i =1
ai si (t ) ∈ n×1
Cocktail party
problem
4
RESTRICCIONES EN EL MODELO
5
AMBIGÜEDADES EN LA SEPARACIÓN
Ejemplo:
⎡0 1 0 ⎤
P = ⎢⎢1 0 0 ⎥⎥
⎢⎣0 0 1 ⎥⎦
6
ESQUEMA
⎛ s1 (t ) ⎞ ⎛ x1 (t ) ⎞ ⎛ z1 (t ) ⎞ ⎛ s1 (t ) ⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟
s(t ) = ⎜ s2 (t ) ⎟ x(t ) = ⎜ x2 (t ) ⎟ z (t ) = ⎜ z2 (t ) ⎟ s(t ) = ⎜ s2 (t ) ⎟
⎜ s (t ) ⎟ ⎜ x (t ) ⎟ ⎜ z (t ) ⎟ ⎜ s (t ) ⎟
⎝ 3 ⎠ ⎝ 3 ⎠ ⎝ 3 ⎠ ⎝ 3 ⎠
A Λ −1 U H WT
7
3.2 INDEPENDENCIA Y BLANQUEADO
El blanqueado de características siempre es posible, pero no
garantiza la independencia.
x(t ) = As(t )
svd ( A) :A = U ΛV H ; U H U = I; VHV = I
Cx = E {x(t )xT (t )} = UΛU H
8
3.2 INDEPENDENCIA Y BLANQUEADO
3.- Blanqueado o Incorrelación de las señales:
z (t ) = Λ −1 U H x(t )
Cz = E {z (t )zT (t )} = I
s(t ) = W T z (t )
Cs = E {s(t )sT (t )} = I ⇒ W T W = I
9
⎡ 0.32 0.9 ⎤
A=⎢ ⎥
⎣ −0.63 0.77 ⎦
1 1 1
a2
PDF uniforme 0 0 0
-1 -1 -1
-1 -0.5 0 0.5 1 -1 -0.5 0 0.5 1 -1 -0.5 0 0.5 1
Vectores de dos
Características
características Características
blanquedadas (no son
independientes mezcladas
aún independientes!)
6 6 a2 6
4 4 4
2 2 2
0 0 0
PDF laplaciana
-2 -2 -2
-4 -4 a1 -4
-6 -6 -6
-5 0 5 -5 0 5 -5 0 5
10
• Para procesos gausianos, el blanqueado implica independencia
estadística por lo que no puede aplicarse ningun criterio mas
estricto de separación
• En el caso no-gausiano, el blanqueado no es suficiente para
separar los procesos
11
3.3 MAXIMIZACIÓN DE LA NO-GAUSIANIDAD
Si todas las componentes si(t) independientes están igualmente
distribuidas, su mezcla es más gausiana por el teorema central
del límite.
Histograma
datos uniformes
12
3.3.1 MEDIDA DE NO-GAUSIANIDAD: KURTOSIS
La kurtosis es el cumulante de orden 4, y para una variable
aleatoria de media nula se define como:
κ 4 { y} = E { y } − 3 ( E { y })
2
4 2
Propiedades
1. (
Si y ∼ N m, σ
2
)
⇒ κ 4 { y} = 0
2. Puede tomar valores positivos y negativos
Gausiana kurt { y} = 0
13
3. Para variables aleatorias y1 , y2 independientes
κ 4 { y1 + y2 } = κ 4 { y1} + κ 4 { y2 }
4. Escalado
κ 4 {α y} = α 4κ 4 { y}
n
b = arg max κ 4 { y} = arg max
b b
∑ j =1
q 4j κ 4 {s j (t )}
(1)
subject to qT q = 1
14
Ejemplo: si κ 4 {si (t )} = 1 ∀i = 1, 2
q2
Puntos de solución
q1
w = arg max κ 4 {w T z (t )}
w
subject to w T w = 1
16
ALGORITMO DE GRADIENTE
Si la kurtosis es positiva (negativa) la maximización
(minimización) con restricciones puede hacerse mediante una
técnica de gradiente:
∂ κ 4 {w T z (t )} ∂
{ } { }
2
E ( w T z (t ) ) − 3E ( w T z (t ) )
4 2
= =
∂w ∂w
T ⎡ {
T 3
}
= 4 sign (κ 4 {w z (t )} ) ⎣ E z ( w z (t ) ) − 3wwT w ⎤⎦
Este término puede eliminarse
ya que sólo cambia la norma de
w, no su dirección (el vector w
ha de ser normalizado de todas
Algoritmo de gradiente formas)
( T
n ) {
w n +1 = w n + μ sign κ 4 {w z (t )} E z ( w z (t ) ) T
n
3
}
w n +1 ← w n +1 (w T
n +1 w n +1 )
17
ASPECTOS PRÁCTICOS
1. Puede aproximarse la esperanza matemática por un valor
instantáneo
( T
n )
w n +1 = w n + μ sign κ 4 {w z (t )} z ( w z (t ) )
T
n
3
(
γ (t ) = (1 − α ) γ (t − 1) + α ( wTn z (t ) ) − 3
4
)
18
ALGORITMO DE PUNTO FIJO (Fast ICA)
El algoritmo de gradiente es de convergencia lenta: depende del
paso de adaptación escogido y de la inicialización. Puede
converger más rápidamente dándonos cuenta que el gradiente
debe apuntar en la dirección del vector w. En efecto, en un
problema genérico con restricciones esféricas:
L ( w ) = F ( w ) + λ (1 − w T w ) El gradiente es
∂L ( w ) ∂F ( w ) proporcional a
= − λw = 0 la solución
∂w ∂w
Así pues:
{ }
w ← E z ( w z (t ) ) − 3wwT w
T 3
wT w = 1
Solución no adaptativa,
19
usar promedio temporal
Vector w despues de la
primera iteración
Vector w despues de la
segunda iteración La convergencia es muy rápida
20
3.3.2 MEDIDA DE NO-GAUSIANIDAD:
NEG-ENTROPÍA
La kurtosis es una medida de no-gausianidad poco fiable ya que
los valores outliers tienen una gran influencia en la estimación.
Alternativamente puede usarse la entropía para construir una
medida de no-gausianidad.
La entropía es una medida de la información que aporta la
observación de los valores de una variable aleatoria sobre la
variable aleatoria.
∫
H ( y ) = − p y (η ) log p y (η )dη
py ∫
min p y (η ) log p y (η )dη con ∫ η 2 p y (η )dη = σ 2
21
La demostración se apoya en:
Teorema 3.1: Sean ϕ (η ) y f (η ) dos fdp. Entonces:
∫ ∫
− ϕ (η ) log ϕ (η )dη ≤ − ϕ (η ) log f (η )dη
Demostración:
f (η )
A partir de la desigualdad log( z ) ≤ z − 1 aplicada sobre z =
ϕ (η )
⎛ f (η ) ⎞ f (η )
log ⎜ ⎟ ≤ −1
⎝ ϕ (η ) ⎠ ϕ (η )
Multiplicando por ϕ (η ) e integrando
⎛ f (η ) ⎞
∫ ϕ (η ) log ⎜ ⎟
⎝ ϕ (η ) ⎠
dη ≤ ∫ ( f (η ) − ϕ (η ) ) dη = 0
22
Teorema 3.2: El máximo de la entropía de una variable aleatoria
de la que se conocen n momentos generalizados:
∫
E { gi ( x)} = gi ( x) f ( x)dx = ηi i = 1,..., n
es exponencial:
f ( x) = A exp {−λ1 g1 ( x) − λ2 g 2 ( x) − ... − λn g n ( x)}
Demostración:
La entropía de f(x) viene dada por
∫
H f = − f ( x) log f ( x)dx =
= − ∫ f ( x) [ log A − λ g ( x) − λ g ( x) − ... − λ g ( x) ] dx =
1 1 2 2 n n
23
Cualquier otra función de densidad ϕ(x) que satisficiera las
restricciones daría lugar a una entropía menor:
Teorema 3.1
∫ ∫
H φ = − ϕ ( x) log ϕ ( x)dx ≤ − ϕ ( x) log f ( x)dx =
= − ∫ ϕ ( x) [ log A − λ g ( x) − λ g ( x) − ... − λ g ( x) ] dx =
1 1 2 2 n n
24
La gausiana es la pdf que minimiza las suposiciones que se
hacen sobre los datos, conocida la potencia.
La medida de no-gausianidad vendrá dada por la neg-entropía:
J ( y ) = H ( ygauss ) − H ( y )
exp ( − y 2 / 2 )
1
φ ( y) =
2π
25
⎛ h3 ( y ) h4 ( y ) ⎞
p y ( y ) ≈ φ ( y ) ⎜1 + κ 3 { y} + κ 4 { y} ⎟
⎝ 3! 4! ⎠
κ 3 { y} = E { y 3 }
Polinomios de
κ 4 { y} = E { y 4 } − 3 Hermite
∂φ i ( y )
= hi ( y ) φ ( y )
∂y i
⎧1 i = j
∫ φ ( y ) hi ( y ) h j ( y ) dy = ⎨
⎩0 i ≠ j
∫
≈ − φ (η ) log φ (η )dη −
2 × 3!
−
2 × 4!
A tener en cuenta:
1. H3(x) y H4(x) son ortogonales a cualquier polinomio de
segundo orden, y ortogonales entre si
2. py(y) está cerca de ser Gausiana, por lo que los monomios
de tercer grado del skewness o la kurtoskis son
despreciables respecto a los monomios de segundo grado
Es la expresión que
Y la neg-entropía viene dada por: hemos estado
maximizando (si la
pdf es simétrica, el
κ3 ( y ) κ4 ( y) ⎧si p y ( y ) es ⎫ κ 4 ( y )
2 2 2
primer término es
J ( y) ≈ + =⎨ ⎬= cero)
12 48 ⎩ simétrica ⎭ 48
27
Una alternativa a la kurtosis es el uso de otras funciones pares de
variación más suave que la potencia cuarta:
J ( y ) ≈ ⎡⎣ E {G ( y )} − E {G (υ )}⎤⎦
2
Variable aleatoria
G( y) = y 4 gaussiana
1
G( y) = log cosh ( ay ) 1≤ a ≤ 2
a
G ( y ) = − exp ( − y 2 2 )
28
ALGORITMO DE GRADIENTE
subject to w T w = 1
Algoritmo de gradiente
w n +1 = w n + μ ∇ w n J ( w T z )
w n +1 ← w n +1 (w T
n +1 w n +1 ) ( )
g x =
dG ( x)
dx
∇ w n J (wT z ) = γ E {zg ( w T z )}
Control de Signo:
γ = E {G ( w T z )} − E {G (υ )}
29
ASPECTOS PRÁCTICOS
1. Puede aproximarse la esperanza matemática por un valor
instantáneo
w n +1 = w n + μ γ zg ( wT z (t ) )
γ (t ) = (1 − α ) γ (t − 1) + α ( G ( wTn z (t ) ) − E {G (υ )} )
⎛ ∂ 2 J ( w [ n ]) ⎞ ⎛ ∂ 2 J ( w [ n ]) ⎞
−1
∇J ( w [ n ] ) + ⎜ ⎟ Δw = 0 ⇒ Δw = − ⎜ ⎟ ∇J ( w [ n ] )
⎜ ∂w [ n ]2 ⎟ ⎜ ∂w [ n ]2 ⎟
⎝ ⎠ ⎝ ⎠
w [ n + 1] = w [ n ] − ⎜ ⎟ ∇J ( w [ n ] )
⎜ ∂w [ n ]2 ⎟
⎝ ⎠
31
4. Aproximación de la función kurtosis
(
J ( w ) = E ⎡⎣G ( w T z (t ) ) ⎤⎦ − ⎡⎣G (ν ) ⎤⎦ )
2
ν : v.a. gaussiana de referencia
5. Función a Minimizar
E ⎡⎣G ( w T z (t ) ) ⎤⎦ + λ ( w T w − 1)
∇J ( w ) = E ⎡⎣ g ( w T z (t ) ) z (t ) ⎤⎦ + λ w
7. Matriz Hessiana :
⎛ ∂2 J ( w ) ⎞
⎜⎜ ∂w 2 ⎟⎟
⎝ ⎠
= E ⎡⎣ g ' ( w T z (t ) ) z (t )z (t )T ⎤⎦ + λ I ( )
E ⎡⎣ g ' ( w T z (t ) ) ⎤⎦ E ⎡⎣ z (t ) z (t )T ⎤⎦ + λ I = E ⎡⎣ g ' ( w T z (t ) ) ⎤⎦ + λ I ⇒
−1
⎛ ∂2 J ( w ) ⎞
( )
−1
⎜⎜ ⎟⎟ E ⎣⎡ g ' ( w T z (t ) ) ⎦⎤ + λ I
⎝ ∂ w 2
⎠
32
8. Sustituyendo los resultados de 6 y 7 en 3:
−1
⎛ ∂ 2 J ( w [ n ]) ⎞
w [ n + 1] = w [ n ] − ⎜
⎜
⎝ ∂w [ n ] ⎠
2
⎟ ∇J ( w [ n ] ) = w [ n ] −
⎟
(
1
)
E ⎡⎢ g ' w [ n ] z (t ) ⎤⎥ + λ
T ( ( ⎣ ) ⎦ )
E ⎡⎢ g w [ n ] z (t ) z (t ) ⎤⎥ + λ w [ n ] ⇒
T
⎣ ⎦
⎣ ( T
) ⎦ ⎣ ( T
)
w [ n + 1] = E ⎡⎢ g w [ n ] z (t ) z (t ) ⎤⎥ − ⎡⎢ g ' w [ n ] z (t ) ⎤⎥ w [ n ]
⎦
33
EXTRACCIÓN DE TODAS LAS COMPONENTES
Con las técnicas vistas hasta el momento es posible extraer la
componente independiente i a partir del vector wi. Para extraer
todas las demás es necesario garantizar que todos los vectores
wi serán ortogonales entre si. Pueden aplicarse dos métodos:
Método 1 W ← WW ) W
( T −1/ 2
34
Conclusiones/Objetivos
35
Método 2 W (1) = W (0) W (0)
3 1
W(t + 1) = W(t ) − W(t ) W(t )T W(t )
2 2
Se itera hasta que W (t ) W (t ) ≈ I
T
36
REFERENCIAS
37
ANNEX: Gram-Charlier expansion of a pdf and approximate entropy
The Gram-Charlier expansion is a series that approximate any density function of Note that a random variable is Gaussian if and only if all cumulants of order greater
finite-valued cumulants in the vicinity of a Gaussian density. Let x be a random than 2 are zero. By differenciating k times with respect to x we obtain:
variable whose cumulants are known. Cumulants are defined as the coefficients of the
c + j∞
Taylor series expansion of the second characteristic function: ⎛ ⎞
( − z )k exp ⎜ ( x − x ) z + σ 2 z ⎟ dz = 1k +1 φ( k ) ⎜⎛ x − x ⎟⎞
2
∞
( − z )k
∫ ⎝ 2! ⎠ 2πj σ ⎝ σ ⎠
∑
c − j∞
z2
Φ x ( z ) = ln Ψ x ( z ) = −κ1 z + κ 2 + κk (1.1 k
k d
2! k =3
k! φ( k ) ( x ) = ( −1) φ(0) ( x )
dx k
where κi is the i-th order cumulant of x. In particular
Therefore we can conclude that
κ1 = E { x} = x , κ 2 = E { x − E { x} }=σ
2 2
. Cumulants have two interesting property that
∞
can be used in the derivation of the capacity for the interference channel: the cumulant 1 (0) ⎛ x − x ⎞ 1 ⎛ x−x ⎞
∑σ
ck
(of any order) of a sum of independent random variables is the sum of cumulants; and fx ( x) = φ ⎜ ⎟+ φ( k ) ⎜ ⎟
σ ⎝ σ ⎠ σ k =3
k
⎝ σ ⎠
the cross cumulant of an ensemble of random variables is zero if one of the random
variables is independent of the rest.
which is the Gram-Charlier series expansion of the probability density function. The
Ψ x ( z ) is the characteristic function, the Laplace transform of the probability density
functions φ( k ) ( x ) can be related to the Hermite polynomials1 as:
function:
c + j∞ φ( k ) ( x ) = φ(0) ( x ) hk ( x )
∫
dz
fx ( x) = e Ψx (z)
zx
(1.2) and hence:
2πj
c − j∞
1 (0) ⎛ x − x ⎞ ⎡ ⎛ x − x ⎞⎤
∞
∑σ
ck
a contour integral over the regularity domain c1 ≤ c ≤ c2 . fx ( x) = φ ⎜ ⎟ ⎢1 + hk ⎜ ⎟⎥
σ ⎝ σ ⎠ ⎣⎢ k =3
k
⎝ σ ⎠ ⎦⎥
Equation (1.1) can be rewritten as:
This expression can be used to evaluate the entropy of x. In particular, truncating the
⎛ z2 ⎞ ⎛ ∞
( − z )k ⎞ ⎛ 2 ⎛
2 z ⎞
∞
k ⎞
Ψ x ( z ) = exp ⎜ − xz + σ 2 ⎟ exp ⎜
⎝ 2! ⎠ ⎜
⎝
∑ k =3
κk
k ! ⎟⎠
⎟ = exp ⎜ − xz + σ
⎝
⎟ ⎜1 +
2! ⎠ ⎜⎝ ∑
k =3
ck ( − z ) ⎟
⎟
⎠
(1.3) series to the first two terms:
By replacing equation (1.3) in (1.2): where the last equality is obtained by recognising that:
c + j∞
z2 ⎞⎛
1. h3(x) and h4(x) are orthogonal to any 2nd order polynomial
k ⎞ dz
∞
⎛
fx ( x) =
∫
c − j∞
exp ⎜ ( x − x ) z + σ 2 ⎟ ⎜ 1 +
⎝ 2! ⎠ ⎜⎝ ∑
k =3
ck ( − z ) ⎟
⎟ 2πj
⎠
2. The pdf to be approximated will be close to a Gaussian, and hence any third
order monomial of κ3 and κ 4 will be much smaller than second order
monomial.
Let us evaluate this integral term by term, but first we need to determine the cumulant
generating function for the Gaussian case:
c + j∞
⎛ z 2 ⎞ dz 1 (0) ⎛ x − x ⎞
∫
1 − x2 2 ⎧1 i = j
G ( x) = exp ⎜ ( x − x ) z + σ 2 ⎟ = φ ⎜ φ(0) ( x ) = 1
⎟ where e
∫φ ( y ) hi ( y ) h j ( y ) dy = ⎨
(0)
The Hermite polynomials are orthogonal in the scalar product: . The first
⎝ 2! ⎠ 2πj σ ⎝ σ ⎠ 2π ⎩0 i ≠ j
c − j∞
Hermite polynomials are: h0 ( y ) = 1 h1 ( y ) = − y h2 ( y ) = 1 + y 2 h3 ( y ) = −3 y − y 3 h4 ( y ) = 3 + 6 y 2 + y 4