57
On Approximating the Smallest Enclosing Bregman Balls Frank Nielsen 1 Richard Nock 2 1 Sony Computer Science Laboratories, Inc. Fundamental Research Laboratory [email protected] 2 University of Antilles-Guyanne DSI-GRIMAAG [email protected] March 2006 F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

On Approximating the Smallest Enclosing Bregman Balls

Embed Size (px)

DESCRIPTION

Slides for On Approximating the Smallest Enclosing Bregman Balls See also http://www.youtube.com/watch?v=ROdWANRAYHQ

Citation preview

Page 1: On Approximating the Smallest Enclosing Bregman Balls

On Approximating the Smallest EnclosingBregman Balls

Frank Nielsen1 Richard Nock2

1Sony Computer Science Laboratories, Inc.Fundamental Research Laboratory

[email protected]

2University of Antilles-GuyanneDSI-GRIMAAG

[email protected]

March 2006

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 2: On Approximating the Smallest Enclosing Bregman Balls

Smallest Enclosing Balls

ProblemGiven S = {s1, ..., sn}, compute a simplified description, calledthe center, that fits well S (i.e., summarizes S).

Two optimization criteria:MINAVG Find a center c∗ which minimizes the average

distortion w.r.t S: c∗ = argminc∑

i d(c, si).

MINMAX Find a center c∗ which minimizes the maximaldistortion w.r.t S: c∗ = argminc maxi d(c, si).

Investigated in Applied Mathematics:

Computational geometry (1-center problem),Computational statistics (1-point estimator),Machine learning (1-class classification),

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 3: On Approximating the Smallest Enclosing Bregman Balls

Smallest Enclosing Balls in Computational Geometry

Distortion measure d(·, ·) is the geometric distance:

Euclidean distance L2.c∗ is the circumcenter of S for MINMAX,

Squared Euclidean distance L22.

c∗ is the centroid of S for MINAVG (→ k -means),Euclidean distance L2.

c∗ is the Fermat-Weber point for MINAVG.

Centroid Circumcenter Fermat-WeberMINAVG L2

2 MINMAX L2 MINAVG L2

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 4: On Approximating the Smallest Enclosing Bregman Balls

Core-sets for MINMAX Ball

→ Introduced by Badoiu and Clarkson [BC’02]

Approximating MINMAX [BC’02]: ||c− c∗|| ≤ εr∗

A ε-approximation for the MINMAX ball can be found in O(dnε2 )

time using algorithm BC. [for point/ball sets]

Algorithm BC(S, T )

Input: S = {s1, s2, ..., sn}Output: Circumcenter c such that ||c− c∗|| ≤ r∗√

T

Choose at random c ∈ Sfor t = 1, 2, ..., T do

C Find furthest pointBs← arg maxs′∈S ‖c− s′‖2C Update circumcenter Bc← t

t+1c + 1t+1s

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 5: On Approximating the Smallest Enclosing Bregman Balls

Demo Algorithm BC: Initialization

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 6: On Approximating the Smallest Enclosing Bregman Balls

Demo Algorithm BC: Iteration 1

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 7: On Approximating the Smallest Enclosing Bregman Balls

Demo Algorithm BC: Iteration 2

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 8: On Approximating the Smallest Enclosing Bregman Balls

Demo Algorithm BC: Iteration 3

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 9: On Approximating the Smallest Enclosing Bregman Balls

Demo Algorithm BC: Iteration 4

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 10: On Approximating the Smallest Enclosing Bregman Balls

Demo Algorithm BC: Iteration 5

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 11: On Approximating the Smallest Enclosing Bregman Balls

Demo Algorithm BC: Iteration 6

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 12: On Approximating the Smallest Enclosing Bregman Balls

Demo Algorithm BC: Iteration 7

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 13: On Approximating the Smallest Enclosing Bregman Balls

Demo Algorithm BC: Iteration 8

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 14: On Approximating the Smallest Enclosing Bregman Balls

Demo Algorithm BC: Iteration 9

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 15: On Approximating the Smallest Enclosing Bregman Balls

Demo Algorithm BC: Summary

After 10 iterations, we visualize the ball traces and the core-set.

Ball traces Core-set

Core-set’s size is independent of the dimension d .(depends only on 1

ε )F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 16: On Approximating the Smallest Enclosing Bregman Balls

Distortions: Bregman Divergences

DefinitionBregman divergences are parameterized (F ) families ofdistortions.Let F : X −→ R, such that F is strictly convex and differentiableon int(X ), for a convex domain X ⊆ Rd .Bregman divergence DF :

DF (x, y) = F (x)− F (y)− 〈x− y,∇F (y)〉 .

∇F : gradient operator of F〈·, ·〉 : Inner product (dot product)

(→ DF is the tail of a Taylor expansion of F )

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 17: On Approximating the Smallest Enclosing Bregman Balls

Visualizing F and DF

xy

F (·)

DF (x,y)

〈x− y,∇F (y)〉

DF (x, y) = F (x)− F (y)− 〈x− y,∇F (y)〉 .

(→ DF is the tail of a Taylor expansion of F )

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 18: On Approximating the Smallest Enclosing Bregman Balls

Bregman Balls

Two Bregman balls:Bc,r = {x ∈ X : DF ( c , x) ≤ r},B′c,r = {x ∈ X : DF (x, c ) ≤ r}Euclidean Ball: Bc,r = {x ∈ X : ‖x− c‖22 ≤ r} = B′c,r

(r : squared radius. L22: Bregman divergence F (x) =

∑di=1 x2

i )

Lemma [NN’05]The smallest enclosing Bregman ball Bc∗,r∗ of S is unique.

Theorem [BMDG’04]The MINAVG Ball for Bregman divergences is the centroid .

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 19: On Approximating the Smallest Enclosing Bregman Balls

Applying BC for divergences yields poor result

−→ design a tailored algorithm for divergences.

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 20: On Approximating the Smallest Enclosing Bregman Balls

Bregman BC Algorithm

BBC generalizes BC to Bregman divergences(analysis in [NN’05]).

Algorithm BBC(S, T )

Choose at random c ∈ Sfor t = 1, 2, ..., T doC Furthest point w.r.t. DF B

s← arg maxs′∈S DF (c, s′)C Circumcenter update B

c←∇−1F

(t

t+1∇F (c) + 1t+1∇F (s)

)Observations

BBC(L22) is BC.

DF (c, x) is convex in c but not necessarily the ball’sboundary ∂Bc,r(depends on x given c; see Itakura-Saito ball).

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 21: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC (Itakura-Saito): Initialization

DF (p, q) =d∑

i=1

(pi

qi− log

pi

qi− 1), [F (x) = −

d∑i=1

log xi ]

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 22: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC (Itakura-Saito): Iteration 1

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 23: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC (Itakura-Saito): Iteration 2

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 24: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC (Itakura-Saito): Iteration 3

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 25: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC (Itakura-Saito): Iteration 4

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 26: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC (Itakura-Saito): Iteration 5

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 27: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC (Itakura-Saito): Iteration 6

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 28: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC (Itakura-Saito): Iteration 7

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 29: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC (Itakura-Saito): Iteration 8

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 30: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC (Itakura-Saito): Iteration 9

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 31: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC(Itakura-Saito): Summary

n = 100 points (d = 2)

Sampling Ball All iterations Core-set

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 32: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC (Kullbach-Leibler): Initialization

DF (p, q) =d∑

i=1

(pi logpi

qi− pi + qi), [F (x) = −

d∑i=1

xi log xi ]

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 33: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC (Kullbach-Leibler): Iteration 1

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 34: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC (Kullbach-Leibler): Iteration 2

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 35: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC (Kullbach-Leibler): Iteration 3

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 36: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC (Kullbach-Leibler): Iteration 4

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 37: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC (Kullbach-Leibler): Iteration 5

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 38: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC (Kullbach-Leibler): Iteration 6

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 39: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC (Kullbach-Leibler): Iteration 7

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 40: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC (Kullbach-Leibler): Iteration 8

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 41: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC (Kullbach-Leibler): Iteration 9

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 42: On Approximating the Smallest Enclosing Bregman Balls

Demo BBC(Kullbach-Leibler): Summary

n = 100, d = 2.

Sampling Ball All iterations Core-set

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 43: On Approximating the Smallest Enclosing Bregman Balls

Fitting Bregman Balls

For a same dataset (drawn from a 2D Gaussian distribution)

Euclidean ball (L22),

Itakura-Saito ball,Kullbach-Leibler ball (as known as Information ball).

Squared Euclidean Itakura-Saito Kullbach-Leibler

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 44: On Approximating the Smallest Enclosing Bregman Balls

BBC: Iteration 1

Squared Euclidean Itakura-Saito Kullbach-Leibler

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 45: On Approximating the Smallest Enclosing Bregman Balls

BBC: Iteration 2

Squared Euclidean Itakura-Saito Kullbach-Leibler

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 46: On Approximating the Smallest Enclosing Bregman Balls

BBC: Iteration 3

Squared Euclidean Itakura-Saito Kullbach-Leibler

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 47: On Approximating the Smallest Enclosing Bregman Balls

BBC: Iteration 4

Squared Euclidean Itakura-Saito Kullbach-Leibler

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 48: On Approximating the Smallest Enclosing Bregman Balls

BBC: Iteration 5

Squared Euclidean Itakura-Saito Kullbach-Leibler

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 49: On Approximating the Smallest Enclosing Bregman Balls

BBC: Iteration 6

Squared Euclidean Itakura-Saito Kullbach-Leibler

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 50: On Approximating the Smallest Enclosing Bregman Balls

BBC: Iteration 7

Squared Euclidean Itakura-Saito Kullbach-Leibler

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 51: On Approximating the Smallest Enclosing Bregman Balls

BBC: Iteration 8

Squared Euclidean Itakura-Saito Kullbach-Leibler

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 52: On Approximating the Smallest Enclosing Bregman Balls

BBC: Iteration 9

Squared Euclidean Itakura-Saito Kullbach-Leibler

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 53: On Approximating the Smallest Enclosing Bregman Balls

BBC: After 10 iterations

Squared Euclidean Itakura-Saito Kullbach-Leibler

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 54: On Approximating the Smallest Enclosing Bregman Balls

Experiments with BBC

Kullbach-Leibler ball, 100 runs(n = 1000, T = 200 on the plane: d = 2)

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

0.5

0 20 40 60 80 100 120 140 160 180 200

Plain curves (BBC): DF (c∗,c)+DF (c,c∗)2 .

Dashed curves: Upperbound ||c− c∗|| from [BC’02]: 1T for L2

2.

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 55: On Approximating the Smallest Enclosing Bregman Balls

Bregman divergences↔ Functional averages

Bijection (core-sets) [NN’05]Domain F (s) DF (c, s) cj (1 ≤ j ≤ d)

L22 norm Arithmetic mean

IRd Pdj=1 s2

jPd

j=1 (cj − sj )2 Pm

i=1 αi si,j

(IR+,∗)d Information/Kullbach-Leibler divergence Geometric mean/ d-simplex

Pdj=1 sj log sj − sj

Pdj=1 cj log(cj /sj ) − cj + sj

Qmi=1 s

αii,j

Itakura-Saito divergence Harmonic mean(IR+,∗)d −

Pdj=1 log sj

Pdj=1 (cj /sj ) − log(cj /sj ) − 1 1/

Pmi=1 (αi /si,j )

Mahalanobis divergence Arithmetic meanIRd sT Cov−1s (c − s)T Cov−1(c − s)

Pmi=1 αi si,j

p ∈ IN\{0, 1} Weighted power mean

IRd /IR+d(1/p)

Pdj=1 sp

jPd

j=1

cpjp +

(p−1)spj

p − cj sp−1j

�Pmi=1 αi s

p−1i,j

�1/(p−1)

Bregman divergences↔ Family of exponential distributions[BMDG’04].

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 56: On Approximating the Smallest Enclosing Bregman Balls

References

[BC’02] M. Badoiu and K. L. Clarkson, Core-sets for balls,Manuscript, 2002.(MINMAX core-set and (1 + ε)-approximation)

[NN’04] F. Nielsen and R. Nock, Approximating SmallestEnclosing Balls, ICCSA 2004.(Survey on MINMAX)

[BMDG’04] A. Banerjee, S. Merugu, I. S. Dhillon, J. Ghosh,Clustering with Bregman Divergences, SDM 2004.(Bregman divergences and k -means)

[NN’05] R. Nock and F. Nielsen, Fitting the SmallestEnclosing Bregman Ball, ECML 2005.(Bregman Balls)

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls

Page 57: On Approximating the Smallest Enclosing Bregman Balls

Linux R© and Windows R© codes

Available from our Web pages:

http://www.csl.sony.co.jp/person/nielsen/BregmanBall/

http://www.univ-ag.fr/∼rnock/BregmanBall/

Command line executable: cluster

-h display this help-B choose Bregman divergence

(0: Itakura-Saito, 1: Euclidean, 2: Kullbach-Leibler (simplex), 3: Kullbach-Leibler (general), 4: Csiszar)

-d dimension-n number of points-k number of theoretical clusters-g type of clusters

(0: Gaussian, 1: Ring Gaussian, 2: Uniform, 3: Gaussian with small σ, 4: Uniform Bregman)

-S number of runs... ...

F. Nielsen and R. Nock On Approximating the Smallest Enclosing Bregman Balls