yo horikawa kagawa university , japan

16
1 Use of Autocorrelation Kernels in Kernel Canonical Correlation Analysis for Texture Classification Yo Horikawa Kagawa University , Japan

Upload: sissy

Post on 06-Feb-2016

55 views

Category:

Documents


0 download

DESCRIPTION

Use of Autocorrelation Kernels in Kernel Canonical Correlation Analysis for Texture Classification. Yo Horikawa Kagawa University , Japan. ・ Support vector machine (SVM) ・ Kernel canonical correlation analysis (kCCA) with autocorrelation kernels → Invariant texture classification - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Yo Horikawa  Kagawa University , Japan

1

Use of Autocorrelation Kernels in Kernel Canonical Correlation

Analysis for Texture Classification

Yo Horikawa

Kagawa University , Japan

Page 2: Yo Horikawa  Kagawa University , Japan

2

・ Support vector machine (SVM)

・ Kernel canonical correlation analysis (kCCA)

  with autocorrelation kernels

→ Invariant texture classification

only using raw pixel data

without explicit feature extraction

Compare the performance of the kernel methods.

Discuss the effects of the order of autocorrelation kernels.

Page 3: Yo Horikawa  Kagawa University , Japan

3

Support vector machine (SVM) Sample data: xi (1 ≤ i ≤ n), belonging to Class ci {-1, 1} ∊SVM learns a discriminant function for test data x:

d(x) = sgn(∑i=1n’ αiciK(x, xsi) + b)

αi and b are obtained through the quadratic programming problem.

Kernel function: Inner product of nonlinear maps φ(x): K(x

i, xj) = φ(xi) ・ φ(xj)

Support vectors: xsi (1 ≤ i ≤ n’ (≤ n)): a part of sample data

Feature extraction process is implicitly done in SVM through the kernel function and support vectors.

Page 4: Yo Horikawa  Kagawa University , Japan

4

Autocorrelation kernelThe kth-order autocorrelation of data xi(t):

rxi(t1, t2, ∙∙∙ , tk-1) = ∫xi(t)xi(t+t1) ・・・ xi(t+tk-1)dt

The inner product between rxi and rxj is calculated with the k-th power of the cross-correlation function (2nd-order):

rxi・ rxj = ∫{∫xi(t)xj(t+t1)dt}k dt1  

The calculation of explicit values of the autocorrelations is avoided.

→ High-order autocorrelations are tractable with practical computational cost.

 ・ Linear autocorrelation kernel: K(xi, xj) = rxi・ rxj

 ・ Gaussian autocorrelation kernel: K(xi, xj) = exp(-μ|rxi - rxj|2)

= exp(-μ(rxi・ rxj + rxi・ rxj - 2rxi・ rxj))

Page 5: Yo Horikawa  Kagawa University , Japan

5

Calculation of autocorrelation kernels rxi・ rxj for 2-dimensional image data: x(l, m) (1≤ l ≤ L, 1≤ m ≤ M)

・ Calculate the cross-correlations between xi(l, m) and xj(l, m):

rxi, xj (l1, m1) = ∑l=1L-l1∑m=1

M-m1 xi(l, m)xj(l+l1, m+m1)/(LM)

(1 ≤ l1 ≤ L1, 1 ≤ m1 ≤ M1)

・ Sum up the kth-power of the cross-correlations:

rxi・ rxj = ∑l1=0L1-1∑m1=0

M1-1 {rxi, xj (l1, m1)}k

L

M

M1

L1

xi(l, m)xj(l+l1, m+m1)

∑l,m xi(l+m)xj(l+l1, m+m1)

rxi ・ rxj = ∑l1, m1 { ・ }k

Page 6: Yo Horikawa  Kagawa University , Japan

6

0 ΦΘ f Φ2+γxI 0 f = λ ΘΦ 0 g 0 Θ2+γyI g

Kernel canonical correlation analysis (kCCA) Pairs of feature vectors of sample objects: (xi, yi) (1 ≤ i ≤ n)

KCCA finds projections (canonical variates) (u, v) that yield maximum correlation between φ(x) and θ(y).

(u, v) = (wφ ・ φ(x), wθ ・ θ(y)) wφ = ∑i=1

n fiφ(xi), wθ = ∑i=1n giθ(yi)

where fT = (f1, ∙∙∙, fn) and gT = (g1, ∙∙∙, gn) are the eigenvectors of the generalized eigenvalue problem:

Φij = φ(xi) ・ φ(xj) Θij = θ(yi) ・ θ(yj) I: Identity matrix                             of n×n

Page 7: Yo Horikawa  Kagawa University , Japan

7

Application of KCCA for classification problems

Use an indicator vector as the second feature vector y. y = (y1, ∙∙∙, yC) corresponding to x: yc = 1 if x belongs to class c yc = 0 otherwise (C: the number of classes) Mapping θ of y is not used. C-1 eigenvectors fk = (fk1, …, fkn) (1 ≤ k ≤ C-1) corresponding to non-zero eigenvalues are obtained. Canonical variates uk (1 ≤ k ≤ C-1) for a test object (x, ?) are calculated by

uk = ∑i=1n fiφ(xi) ・ φ(x) = ∑i=1

n fi K(xi, xj)

Classification methods, e.g., the nearest-neighbor method, can be applied in the canonical variate space (u1, …, uC-1).

Page 8: Yo Horikawa  Kagawa University , Japan

8

Classification experiment

D4 D84 D5 D92 (a) Brodatz album

Bark.0000 Sand.0000 Brick.0000 Tile.0007 (b) VisTex database

Shift Scaling Rotation Noise SD

Sample [0, 400] 1.0 0 0.0

Test 1 [0, 400] 1.0 0 0.0

Test 2 [0, 400] 1.0 0 0.1

Test 3 [0, 400] [0.5, 1.0] [0, 2π ] 0.0

Test 4 [0, 400] [0.5, 1.0] [0, 2π ] 0.1

Fig. 1. Texture images.

Table 1. Sample and test sets.

4-class classification problems with SVM and kCCA

Original images: 512×512 pixels (256 gray scale) in the VisTex database and the Brodatz album

Sample and test images: 50×50 pixels, chosen in the original images with random shift and scaling, rotation, Gaussian noise (100 images each)

Page 9: Yo Horikawa  Kagawa University , Japan

9

Kernel functions K(xi, xj) ( ) Linear kernel: ⅰ xi ・ xj ( ) Gaussian kernel: exp(-μ||ⅱ xi – xj||2) ( ) ⅲ Linear autocorrelation kernel: rxi ・ rxj  ( ) ⅳ Gaussian autocorrelation kernel: = exp(-μ|rxi - rxj|2) = exp(-μ(rxi ・ rxj + rxi ・ rxj - 2rxi ・ rx

j))

Range of correlation lags: L1 = M1 = 10 (in 50×50 pixel images)

The simple nearest-neighbor classifier is used for classification with canonical variates (u1, …, uC-1) in kCCA.

Parameter values are empirically chosen. (Soft margin: C = 100, Gaussian:μ, Regularization:γx, γy)

Page 10: Yo Horikawa  Kagawa University , Japan

10

0.0

0.2

0.4

0.6

0.8

1.0

linea

r (ⅰ

)

Gau

ss (ⅱ

)

k=2

(ⅲ)

k=3

(ⅲ)

k=4

(ⅲ)

k=5

(ⅲ)

k=6

(ⅲ)

k=2

(ⅳ)

k=3

(ⅳ)

k=4

(ⅳ)

k=5

(ⅳ)

k=6

(ⅳ)

2nd

cor.

linea

r

3rd

cor.

linea

r

2nd

cor.

Gau

ss

3rd

cor.

Gau

ss

CC

RTest 1Test 2Test 3Test 4

Fig. 2. Correct classification rates (CCR (%)) in SVM.

(a) Brodatz Album

0.0

0.2

0.4

0.6

0.8

1.0

linea

r (ⅰ

)

Gau

ss (ⅱ

)

k=2

(ⅲ)

k=3

(ⅲ)

k=4

(ⅲ)

k=5

(ⅲ)

k=6

(ⅲ)

k=2

(ⅳ)

k=3

(ⅳ)

k=4

(ⅳ)

k=5

(ⅳ)

k=6

(ⅳ)

2nd

cor.

linea

r

3rd

cor.

linea

r

2nd

cor.

Gau

ss

3rd

cor.

Gau

ss

CC

R

Test 1Test 2Test 3Test 4

(b) VisTex database

Page 11: Yo Horikawa  Kagawa University , Japan

11

Fig. 3. Correct classification rates (CCR (%)) in kCCA.

0.0

0.2

0.4

0.6

0.8

1.0

linea

r (ⅰ

)

Gau

ss (

ⅱ)

k=2

(ⅲ)

k=3

(ⅲ)

k=4

(ⅲ)

k=5

(ⅲ)

k=6

(ⅲ)

k=10

(ⅲ

)

CC

R

(a) Brodatz Album

0.0

0.2

0.4

0.6

0.8

1.0

linea

r (ⅰ

)

Gau

ss (

ⅱ)

k=2

(ⅲ)

k=3

(ⅲ)

k=4

(ⅲ)

k=5

(ⅲ)

k=6

(ⅲ)

k=10

(ⅲ

)

CC

R

Test 1Test 2Test 3Test 4

(b) VisTex database

Page 12: Yo Horikawa  Kagawa University , Japan

12

Comparison of the performances Classification experiments for the Brodatz album texture images

(D4 and D84), (D5 and D92) with various filtering methods and vector quantization learning (Randen and Husøy, 1999)

→ CCRs are about 90%.

SVM and kCCA with autocorrelation kernels show comparable performance.

Test1 0.995 k=2 (ⅳ ) 0.947 k=2 (ⅲ )0.960 k=4 (ⅳ )0.925 k=2 (ⅲ )Test2 0.953 k=2 (ⅳ ) 0.925 k=2 (ⅲ )0.973 k=4 (ⅳ )0.920 k=2 (ⅲ )Test3 0.748 k=4 (ⅳ ) 0.720 k=4 (ⅲ )0.805 k=4 (ⅲ )0.695 k=2 (ⅲ )Test4 0.735 k=2 (ⅳ ) 0.697 k=2 (ⅲ )0.638 k=2 (ⅳ )0.592 k=2 (ⅲ )Mean 0.858 0.822 0.844 0.783

SVM kCCA(a) Brodatz (b) VisTex

SVM kCCA

0.0

0.2

0.4

0.6

0.8

1.0

linea

r(ⅰ

)

Gau

ss(ⅱ

)

k=2

(ⅲ)

k=3

(ⅲ)

k=4

(ⅲ)

k=5

(ⅲ)

k=6

(ⅲ)

k=2

(ⅳ)

k=3

(ⅳ)

k=4

(ⅳ)

k=5

(ⅳ)

k=6

(ⅳ)

2nd

cor.

linea

r

3rd

cor.

linea

r

2nd

cor.

Gau

ss

3rd

cor.

Gau

ss

CC

R

Test 1Test 2Test 3Test 4

Table 2. Highest correct classification rates in SVM and kCCA.

Page 13: Yo Horikawa  Kagawa University , Japan

13

Effects of the order of autocorrelation kernels

Experiments of face detection (Popovici and Thiran, 2001)→ CCR increases as the autocorrelation order increases.

The result of this texture classification experiment → the lower-order (k = 2, 3, 4) kernels show better performance.

The best order may depend on the objects.

Page 14: Yo Horikawa  Kagawa University , Japan

14

The order k of autocorrelation kernels increases.

→ The generalization ability and robustness are lost.

rxi・ rxj = ∑t1 (rxi, xj (t1))k → δi, j (k → ∞)

For test data x (≠xi), rxi・ rx = 0

In kCCA, Φ= I, Θ: block matrix, eigenvectors:

f = (p1, …, p1, p2, …, p2, … , pC, …, pC) (fi = pc, if xi class c) ∊

For sample data, canonical variates lie on a line through the origin corresponding to its class:

uxi = (rxi・ rxi)pc (pc = (pc,1, ∙∙∙, pc,C-1)) , if xi class c∊For test data: ux ≈ 0

Modification: Use of lp-norm like functions

(rxi・ rxj)1/k = |∑t1 (rxi, xj (t1))k|1/k

Page 15: Yo Horikawa  Kagawa University , Japan

15

Fig. 4. Scatter diagram of canonical variates (u1, u2) and (u3, u1) of Test 1 data of texture images in the Brodatz album in kCCA. Plotted are square (■) for D4, cross (×) for D84, circle (●) for D5 and triangle (Δ) for D92.

(a) linear kernel ( ) ⅰ (b) Gaussian kernel ( ) ⅱ

(c) 2nd-order correlation kernel ( ) ⅲ (d) 3rd-order correlation kernel ( ) ⅲ

(e) 4th-order correlation kernel ( ) ⅲ

(f) 10th-order correlation kernel ( ) ⅲ

-0.0

90.

000.

09

- 0.08 0.00 0.08u1

u2

-0.0

70.

000.

07

- 0.08 0.00 0.08u3

u1

-0.0

120.

000

0.01

2

- 0.03 0.00 0.03u1

u2

-0.0

30.

000.

03

- 0.008 0.000 0.008u3

u1

-0.1

0.0

0.1

- 0.13 0.00 0.13u1

u2

-0.1

20.

000.

12

- 0.07 0.00 0.07u3

u1

-0.0

70.

000.

07

- 0.06 0.00 0.06u1

u2

-0.0

60.

000.

06

- 0.03 0.00 0.03u3

u1

-0.0

60.

000.

06

- 0.11 0.00 0.11u1

u2

-0.1

10.

000.

11

- 0.02 0.00 0.02u3

u1

-0.0

30.

000.

03

- 0.02 0.00 0.02u1

u2

-0.0

20.

000.

02

- 0.007 0.000 0.007u3

u1

Most of test data u ≈ 0

Page 16: Yo Horikawa  Kagawa University , Japan

16

Summary SVM and kCCA with autocorrelation kernels are applie

d to texture classification.

The performance compete with conventional feature extraction methods and learning.

The Gaussian autocorrelation kernel of the order 2 or 4 gives highest correct classification.

The generalization ability of the autocorrelation kernels decreases as the order of the correlation increases.