Slepian-Wolf and Related e Problems s n s o r w e b BASiCS - - PowerPoint PPT Presentation

slepian wolf and related
SMART_READER_LITE
LIVE PREVIEW

Slepian-Wolf and Related e Problems s n s o r w e b BASiCS - - PowerPoint PPT Presentation

Slepian-Wolf and Related e Problems s n s o r w e b BASiCS Group, Smartdust, TinyOS, Blackouts s http://basics.eecs.berkeley.edu/sensorwebs Julius Kusuma Laboratory for Information and Decision Systems kusuma@mit.edu Massachusetts


slide-1
SLIDE 1

s e n s

  • r

w e b s

http://basics.eecs.berkeley.edu/sensorwebs

BASiCS Group, Smartdust, TinyOS, Blackouts

Julius Kusuma

Laboratory for Information and Decision Systems

kusuma@mit.edu Massachusetts Institute of Technology

Slepian-Wolf and Related Problems

slide-2
SLIDE 2

University of California, Berkeley

Outline of presentation

Information-theoretic motivation: achievable performance Algorithmic component for distributed compression Code constructions Rate-distortion performance Optimization of parameters Deployment in sensor networks

slide-3
SLIDE 3

University of California, Berkeley

Distributed compression: basic ideas

Suppose X, Y correlated as

X=Y+N

Y available at decoder but not at

encoder

How to compress X close to

H(X|Y)?

Key idea: discount I(X;Y).

H(X|Y) = H(X) – I(X;Y)

For now X and Y iid.

X Y

slide-4
SLIDE 4

University of California, Berkeley

Binning argument

Make a main codebook of all

typical sequences. 2nH(X) and 2nH(Y) elements.

Partition into 2nH(X|Y). When observe Xn, transmit index

  • f bin it belongs to

Decoder finds member of bin that

is jointly typical with Yn.

Can extend to “symmetric cases”

6182-13ihronvqanv83-4vnq-ren Hqigofednv3q4nvqrnvqwnv0=r Nkqlveno3[nv34=3nv=3w4nvi3 Nklqenv3=349i3wvn=3qwpvnv Inhgvvvo3=vn3=nv3=vnv=wvc 6182-13ihronvqanv83-4vnq-ren Hqigofednv3q4nvqrnvqwnv0=r Nkqlveno3[nv34=3nv=3w4nvi3 Nklqenv3=349i3wvn=3qwpvnv Inhgvvvo3=vn3=nv3=vnv=wvc 6182-13ihronvqanv83-4vnq-ren Hqigofednv3q4nvqrnvqwnv0=r Nkqlveno3[nv34=3nv=3w4nvi3 Nklqenv3=349i3wvn=3qwpvnv Inhgvvvo3=vn3=nv3=vnv=wvc 6182-13ihronvqanv83-4vnq-ren Hqigofednv3q4nvqrnvqwnv0=r Nkqlveno3[nv34=3nv=3w4nvi3 Nklqenv3=349i3wvn=3qwpvnv Inhgvvvo3=vn3=nv3=vnv=wvc

X

slide-5
SLIDE 5

University of California, Berkeley

Symmetric case: joint binning

Rate limited by:

Rx ? H(X|Y) RY ? H(Y|X) Rx + RY ? H(X,Y)

x

R

y

R

H(X|Y) H(Y|X) H(X,Y)

6182-13ihronvqanv83-4vnq-ren Hqigofednv3q4nvqrnvqwnv0=r Nkqlveno3[nv34=3nv=3w4nvi3 Nklqenv3=349i3wvn=3qwpvnv Inhgvvvo3=vn3=nv3=vnv=wvc 6182-13ihronvqanv83-4vnq-ren Hqigofednv3q4nvqrnvqwnv0=r Nkqlveno3[nv34=3nv=3w4nvi3 Nklqenv3=349i3wvn=3qwpvnv Inhgvvvo3=vn3=nv3=vnv=wvc 6182-13ihronvqanv83-4vnq-ren Hqigofednv3q4nvqrnvqwnv0=r Nkqlveno3[nv34=3nv=3w4nvi3 Nklqenv3=349i3wvn=3qwpvnv Inhgvvvo3=vn3=nv3=vnv=wvc 6182-13ihronvqanv83-4vnq-ren Hqigofednv3q4nvqrnvqwnv0=r Nkqlveno3[nv34=3nv=3w4nvi3 Nklqenv3=349i3wvn=3qwpvnv Inhgvvvo3=vn3=nv3=vnv=wvc 6182-13ihronvqanv83-4vnq-ren Hqigofednv3q4nvqrnvqwnv0=r Nkqlveno3[nv34=3nv=3w4nvi3 Nklqenv3=349i3wvn=3qwpvnv Inhgvvvo3=vn3=nv3=vnv=wvc 6182-13ihronvqanv83-4vnq-ren Hqigofednv3q4nvqrnvqwnv0=r Nkqlveno3[nv34=3nv=3w4nvi3 Nklqenv3=349i3wvn=3qwpvnv Inhgvvvo3=vn3=nv3=vnv=wvc 6182-13ihronvqanv83-4vnq-ren Hqigofednv3q4nvqrnvqwnv0=r Nkqlveno3[nv34=3nv=3w4nvi3 Nklqenv3=349i3wvn=3qwpvnv Inhgvvvo3=vn3=nv3=vnv=wvc 6182-13ihronvqanv83-4vnq-ren Hqigofednv3q4nvqrnvqwnv0=r Nkqlveno3[nv34=3nv=3w4nvi3 Nklqenv3=349i3wvn=3qwpvnv Inhgvvvo3=vn3=nv3=vnv=wvc

X Y

slide-6
SLIDE 6

University of California, Berkeley

Simple binary example

X and Y => length-3 binary data (equally likely), Correlation: Hamming distance between X and Y is at most 1.

Example: When X=[0 1 0], Y => [0 1 0], [0 1 1], [0 0 0], [1 1 0].

Encoder Decoder

X Y X X ? ˆ

) | ( Y X H R ?

  • X and Y correlated
  • Y at encoder and decoder

System 1

X+Y= 0 0 0 0 0 1 0 1 0 1 0 0 Need 2 bits to index this.

slide-7
SLIDE 7

University of California, Berkeley

What is the best that one can do?

Encoder Decoder

X Y X X ? ˆ

) | ( Y X H R ?

  • X and Y correlated
  • Y at encoder

System 2

The answer is still 2 bits!

How?

0 0 0 1 1 1 Coset-1 000 001 010 100 111 110 101 011 X Y

slide-8
SLIDE 8

University of California, Berkeley

  • Encoder -> index of the coset containing X.
  • Decoder reconstructs X in given coset.

Note:

  • Coset-1 -> repetition code.
  • Each coset -> unique “syndrome”
  • DIstributed Source Coding Using Syndromes

? ? ? ? ? ? 1 1 1 Coset-1 ? ? ? ? ? ? 1 1 1 Coset-4 ? ? ? ? ? ? 1 1 1 Coset-3 ? ? ? ? ? ? 1 1 1 Coset-2

slide-9
SLIDE 9

University of California, Berkeley

Group interpretation of “binning”

  • Rules of thumb:

1.

Want high density of elements in codebook

2.

Want members of each bin as far apart

  • Consider error-correcting codes!

Codes select a (normal) subgroup of all possible elements. Members of a subgroup is as far apart as possible.

  • Error occurs when distance between side info to main info > dmin
  • Example: (3,1) repetition codes: can compress if dH(X,Y)<2

coset-00 coset-01 coset-10 coset-11

000 111 001 110 100 011 010 101

slide-10
SLIDE 10

University of California, Berkeley

Intuition behind source coding with side info.

Why does it not matter if encoder doesn’t have Y?

X = Y+N, where N is Gaussian (note X and Y need not be Gaussian) Subtract Y and quantize only N, add Y back at the decoder. Transmission rate:

X

N

Y Q

X ˆ

Y

N ˆ

?

? ? ?

N ˆ

Case I: Y present at both ends

? ? ? ? ? ?

? ? ? ? ? ? ? ? ? ?

2 2 2

log 2 1 | ;

q q n

N h h N I ? ? ?

N ˆ N ˆ N ˆ

X=Y+N

slide-11
SLIDE 11

University of California, Berkeley

Intuition (contd.)…

Quantize to same rate, subtract and add Y back at the decoder. Transmission rate:

X Y Q

X ˆ

Y W W

N ˆ

? ? ? ? ? ? ? ? ? ? ? ?

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

2 2 2

log 2 1 | | ; ;

q q n

Q h Q N h X W h Y W h Y W I X W I ? ? ?

? ? ? ?

Case II: Y present at decoder only: X=Y+N

slide-12
SLIDE 12

University of California, Berkeley

Geometric Interpretation

radius radius

q n?

?

q

?

Case I: Y at both sides Case II: Y at decoder only

slide-13
SLIDE 13

University of California, Berkeley

Sending the difference telepathically

Jump ahead to a real-world example:

X - Temperature in Boston Y - Temperature in Providence

Suppose we can bound difference,

most of the time < 8 degrees

If Boston knows the reading of

Providence, can just send difference.

But this means that the information Y

must be available at both Boston and Providence!

Establishing communication network

expensive in a sensor network!

CNN

slide-14
SLIDE 14

University of California, Berkeley

Motivations for sensor networks

  • Dense sensor network high

spatial redundancy

  • Need to remove redundancy

without communication

  • Assume statistical correlation

properties of neighboring nodes are known/learnt

slide-15
SLIDE 15

University of California, Berkeley

Consider the following idea

Difference at most 1 cell. Send only index of “coset”: A,B,C,D Decoder decide which member of coset

is the correct answer

1 2 3 4 5 6 7 A B C D A B C D

We have compressed from 3 bits to 2 bits X Y

slide-16
SLIDE 16

University of California, Berkeley

Coding operation of “binning”

Performance determined by selection of main and

subgroups.

Tradeoff:

Quantization error: determined by the main group Coset error: determined by the subgroup

Quantization error: want main group to be dense Coset error: want intra-coset distance of subgroup to be

as large as possible

slide-17
SLIDE 17

University of California, Berkeley

Gentle intro to groups and codes

Key idea: algebraic codes is a subgroup of

(discrete) signal set.

For example: (7,4) Hamming code is subgroup of

{0,1}7.

Therefore codes induce a (geometrically

uniform) partition!

We develop several examples in the following

slide-18
SLIDE 18

University of California, Berkeley

Partitioning a scalar quantizer

Start with a scalar quantizer Partition into PAM signals Call this SQ-PAM

1 2 3 4 5 6 7 A B C D A B C D

slide-19
SLIDE 19

University of California, Berkeley

Better idea: using TCM codes

Objective of algebraic codes: sphere packing –

densest packing for distance and rate.

Use a TCM code to partition ? L.

Coset selector

G G=

? ? ? ? ? ? D D D

2

1 1

? ?

1

slide-20
SLIDE 20

University of California, Berkeley

And yet better … !

Can also induce partition on codes themselves by

choosing subcodes.

Called: TCQ-TCM

Coset selector

G1 G2

slide-21
SLIDE 21

University of California, Berkeley

Alternative representation

Subspace of a code is a subgroup of the code

G G

Y

Note: send LSB of codewords!

slide-22
SLIDE 22

University of California, Berkeley

SQ-PAM: Scalar quantization, pulse- amplitude modulation

Back to previous example: The letters index different cosets of a PAM code. Start with scalar quantization.

Encoder calculates the index of the bin. Transmit index of the bin. Decoder receives index of the bin. Use correlated reading to determine which member of the bin is correct.

1 2 3 4 5 6 7 A B C D A B C D

X Y

slide-23
SLIDE 23

University of California, Berkeley

X X X d* 2d*

  • d*
  • 2d*

d*/2

  • d*/2

?

?? ?? ?

? ?

i X

d i x f ) (

*

) (x f X ) (

* x

f X

Observation: quantization indifference

Important note:

Quantizer can’t differentiate A from A

Therefore:

Must combine statistics

  • f members of bins

Use PDF

periodization: repeat PDFs using parameter d*.

Design using f’x(x)

slide-24
SLIDE 24

University of California, Berkeley

Caveats: choice of d*

If too small: high coset error If too large: high quantization error

X X

d* 2d* 3d* 4d* d* 2d*

f(x) f(x)

slide-25
SLIDE 25

University of California, Berkeley

Coding performance

Can use SQ-TCM (Trellis Coded Modulation), TCQ-TCM. More details in:

Pradhan, Ramchandran, “DISCUS: Distributed Coding Using Syndromes”, DCC 1999 and 2000 http://basics.eecs.berkeley.edu

Gaussian Uniform

slide-26
SLIDE 26

University of California, Berkeley

Theoretical bound

Can get within 2-3 dB of Wyner-Ziv’s bound using Trellis

codes. Transmission rate 1 bit per symbol

slide-27
SLIDE 27

University of California, Berkeley

Dynamic bit allocation

Consider iterative method:

assign one bit at a time

Can either:

improve quantization improve code performance

Iteratively assign using rules of

thumb.

Multiple levels of protection

Most significant index Least significant index Not transmitted Send syndrome Full index sent Protection needed Not transmitted

slide-28
SLIDE 28

University of California, Berkeley

Lattice illustration of symmetric decoding

Finding nearest neighbors of selected

cosets X Y

slide-29
SLIDE 29

University of California, Berkeley

For example

Increase quantization (need more protection

too!) OR

Increase code performance Most significant index Least significant index Not transmitted Send syndrome Full index sent Protection needed Not transmitted

slide-30
SLIDE 30

University of California, Berkeley

Symmetric rates and network applications

Can also have motes all send

“partial information”.

Use clustering to enable

network deployment

X Y

partial information partial information

slide-31
SLIDE 31

University of California, Berkeley

Multiplicity effect in multihop networks

Multihop networks: central

node wants readings from all

  • ther nodes.

Get multiply many more bits of

data to send at every link!

A B C A B A B C

slide-32
SLIDE 32

University of California, Berkeley

000 110 010 011 Objective: Gateway node 1 has to get sensor readings from network Assumptions:

  • Sensor readings are 3-bit quantized representations
  • Children nodes differ in at most one bit from their parent

1 2 3 4

Example of simple sensor network with one gateway

slide-33
SLIDE 33

University of California, Berkeley

000 111 001 110 010 101 100 011 DISCUS: Set of all 3-tuples partitioned into 4 cosets A, B, C, D. Distributed encoder assigns each 3-tuple with a 2-bit index: A=00; B=01; C=10; D=11 A B C D

slide-34
SLIDE 34

University of California, Berkeley

011 000 110 010 000 111 001 110 010 101 100 011 A B C D 2 4 3 A B 3 4 2 1 1 A B C

  • Gateway node 1 first

decodes node 2

  • It then recursively

decodes nodes 3,4 If each link ~ 1 m, network does 15 bit-meter work w/o DISCUS With DISCUS, network does only 10 bit-meter work.

slide-35
SLIDE 35

University of California, Berkeley

Real-life application: Blackouts project, etc.

Near real-time monitoring of room

conditions http://blackouts.eecs.berkeley.edu

Ad-hoc networking, data goes

  • nline (WWW)

Earthquake, engine data (with

LBNL)

slide-36
SLIDE 36

University of California, Berkeley

Emerging Image/Video Coding Standards (progressive format)

  • Multi-resolution coding: e.g, JPEG-2000, MPEG-4.
  • Bit stream arranged in importance layers (progressive)
slide-37
SLIDE 37

University of California, Berkeley

Conventional Successive Refinement

D R *x

1

D1 D2 R1 R2 x

2

+

Encoder 1 Encoder 2 + _ x x

2

R1 Rate = R2 Rate =

  • R1

x

1

slide-38
SLIDE 38

University of California, Berkeley

The other SR perspective ...

Wyner-Ziv successive refinement: “universal”

Encoder 1 x x

1

R1 Rate = Encoder 2 x

2

R2 Rate =

  • R1

Decoder 1 x

1

Decoder 2 x

1

Decoder 2 x

1

~ Can refine any description which is at distortion D w.r.t. x

1

< ~ R *x

1

D1 D2 R1 R2 x

2

x

2

x

2

D

slide-39
SLIDE 39

University of California, Berkeley

Multiuser successive refinement…

Even when no “explicit” need for invoking coding with side information, we believe that this is the most efficient strategy for broadcast source coding. Encoder 1 x Decoder 1 y

1

Decoder 2 y

1

y

2

y

2

x x

slide-40
SLIDE 40

University of California, Berkeley

Conclusions

Can effectively take advantage

  • f correlation. Improved

performance compared to same bit budget without side information.

Can use efficient

encoding/decoding algorithms.

Simple design using well-

known tools.