recent advances in approximate message...

48
Recent Advances in Approximate Message Passing Phil Schniter Collaborators: Sundeep Rangan (NYU), Alyson Fletcher (UCLA), Mark Borgerding (OSU) Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS — June 8, 2017

Upload: others

Post on 12-Sep-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

Recent Advances in Approximate Message Passing

Phil Schniter

Collaborators: Sundeep Rangan (NYU), Alyson Fletcher (UCLA),Mark Borgerding (OSU)

Supported in part by NSF grants IIP-1539960 and CCF-1527162.

SPARS — June 8, 2017

Page 2: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

Overview

1 Linear Regression, AMP, and Vector AMP (VAMP)

2 VAMP, ADMM, and Convergence in the Convex Setting

3 VAMP Convergence in the Non-Convex Setting

4 VAMP for Inference

5 EM-VAMP and Adaptive VAMP

6 Plug-and-play VAMP & Whitening

7 VAMP as a Deep Neural Network

8 VAMP for the Generalized Linear Model

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 2 / 48

Page 3: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

Linear Regression, AMP, and Vector AMP (VAMP)

Outline

1 Linear Regression, AMP, and Vector AMP (VAMP)

2 VAMP, ADMM, and Convergence in the Convex Setting

3 VAMP Convergence in the Non-Convex Setting

4 VAMP for Inference

5 EM-VAMP and Adaptive VAMP

6 Plug-and-play VAMP & Whitening

7 VAMP as a Deep Neural Network

8 VAMP for the Generalized Linear Model

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 3 / 48

Page 4: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

Linear Regression, AMP, and Vector AMP (VAMP)

The Linear Regression Problem

Consider the following linear regression problem:

Recover xo from

y = Axo +w with

xo ∈ RN unknown signal

A ∈ RM×N known linear operator

w ∈ RM white Gaussian noise.

Typical methodologies:

1 Regularized loss minimization (or MAP estimation):

x = argminx

θ22‖Ax− y‖22 +R(x;θ1)

2 Approximate MMSE:

x ≈ E{x|y} for x ∼ p(x;θ1), y ∼ N (Ax, I/θ2)

3 Plug-and-play: iteratively apply a denoising algorithm like BM3D

4 Train a deep network to recover xo from y.

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 4 / 48

Page 5: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

Linear Regression, AMP, and Vector AMP (VAMP)

The AMP Methodology

All of the aforementioned methodologies can be addressed using theApproximate Message Passing (AMP) framework.1

AMP tackles these difficult global optimization/inference problems through asequence of simpler local optimization/inference problems.

It does this by appropriate definition of a denoiser g1(·; γ,θ1) : RN → R

N :

Optimization: g1(r; γ,θ1) = argmin

xR(x;θ1) +

γ2‖x− r‖22 , “proxR/γ(r)”

MMSE: g1(r; γ,θ1) = E

{x∣∣ r = x+N (0, I/γ)

}

Plug-and-play:2 g1(r; γ,θ1) = BM3D(r, 1/γ)

Deep network: g1(r; γ,θ1) is learned.

1Donoho,Maleki,Montanari’09, 2Metzler,Maleki,Baraniuk’14Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 5 / 48

Page 6: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

Linear Regression, AMP, and Vector AMP (VAMP)

AMP: the good, the bad, and the ugly

The good:

With large i.i.d. sub-Gaussian A, AMP performs provably3 well, in that it can

be rigorously characterized by a scalar state-evolution (SE). When this SE has aunique fixed point, AMP converges to the Bayes optimal solution.

Empirically, AMP behaves well with many other “sufficiently random” A (e.g.,randomly sub-sampled Fourier A & i.i.d. sparse x).

The bad:

With general A, AMP gives no guarantees.

The ugly:

With some A, AMP may fail to converge!(e.g., ill-conditioned or non-zero-mean A)

3Bayati,Montanari’15, Bayati,Lelarge,Montanari’15Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 6 / 48

Page 7: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

Linear Regression, AMP, and Vector AMP (VAMP)

The Vector AMP (VAMP) Algorithm

Take SVD A = U Diag(s)V T, choose ζ ∈ (0, 1] and Lipschitz g1(·; γ1,θ1) : R

N → RN .

Initialize r1, γ1.

For k = 1, 2, 3, . . .

x1 ← g1(r1; γ1,θ1) denoising of r1 = xo +N (0, I/γ1)

η1 ← γ1N/ tr

[∂g

1(r1; γ1,θ1)

∂r1

]

r2 ← (η1x1 − γ1r1)/(η1 − γ1) Onsager correction

γ2 ← η1 − γ1

x2 ← g2(r2; γ2, θ2) LMMSE estimate x ∼ N (r2, I/γ2)

from y = Ax+N (0, I/θ2)η2 ← γ2N/ tr

[∂g

2(r2; γ2, θ2)

∂r2

]

r1 ← ζ(η2x2 − γ2r2)/(η2 − γ2) + (1−ζ)r1 Onsager correction

γ1 ← ζ(η2 − γ2) + (1− ζ)γ1 damping

where g2(r2; γ2, θ2) = V

(θ2 Diag(s)2 + γ2I

)−1

(θ2 Diag(s)UTy + γ2V

Tr2

)

η2 = 1

N

∑Nn=1

(θ2s2

n + γ2)−1 two mat-vec mults per iteration!

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 7 / 48

Page 8: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP, ADMM, and Convergence in the Convex Setting

Outline

1 Linear Regression, AMP, and Vector AMP (VAMP)

2 VAMP, ADMM, and Convergence in the Convex Setting

3 VAMP Convergence in the Non-Convex Setting

4 VAMP for Inference

5 EM-VAMP and Adaptive VAMP

6 Plug-and-play VAMP & Whitening

7 VAMP as a Deep Neural Network

8 VAMP for the Generalized Linear Model

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 8 / 48

Page 9: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP, ADMM, and Convergence in the Convex Setting

PRS-ADMM

Consider the optimization problem

argminx

f1(x) + f2(x) with, e.g.,

{f1(x)= − log p(x;θ1)

f2(x)=θ22 ‖Ax− y‖2

and define the augmented Lagrangian

Lγ(x1,x2, s) = f1(x1) + f2(x2) + sT(x1 − x2) +γ

2‖x1 − x2‖2.

An ADMM variant (via Peaceman-Rachford splitting on the dual) is

x1 ← argminx1Lγ(x1, x2, s)

s← s+ γ(x1 − x2)

x2 ← argminx2Lγ(x1,x2, s)

s← s+ γ(x1 − x2)

PRS-ADMM has weaker convergence guarantees than standard ADMM, but issupposedly faster.

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 9 / 48

Page 10: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP, ADMM, and Convergence in the Convex Setting

VAMP Connections to PRS-ADMM

Now consider VAMP applied to the same optimization problem, but withγ1 = γ2 , γ enforced at each iteration. Also, define

si , γ(xi − ri) for i = 1, 2.

This γ-forced VAMP manifests as

x1 ← argminx1Lγ(x1, x2, s1)

s2 ← s1 + γ(x1 − x2)

x2 ← argminx2Lγ(x1,x2, s2)

s1 ← s2 + γ(x1 − x2)

which is identical to Peaceman-Rachford ADMM.

The full VAMP algorithm adapts γ1 and γ2 on-the-fly according to the localcurvature of the cost function.

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 10 / 48

Page 11: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP, ADMM, and Convergence in the Convex Setting

Example of VAMP applied to the LASSO Problem

100

101

102

103

-45

-40

-35

-30

-25

-20

-15

-10

-5

0

VAMP

AMP

Chambolle-Pock

FISTA

iterations

NMSE[dB]

iid Gaussian matrix

100

101

102

103

104

-30

-25

-20

-15

-10

-5

0

VAMP

AMP

Chambolle-Pock

FISTA

iterationsNMSE[dB]

column-correlated (0.99) matrix

Solving LASSO to reconstruct 40-sparse x ∈ R1000 from noisy y ∈ R

400.

x = argminx

‖y −Ax‖22 + λ‖x‖1.

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 11 / 48

Page 12: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP, ADMM, and Convergence in the Convex Setting

VAMP Convergence in the Convex Setting

Consider arbitrary A.

A double-loop version of VAMP globally converges to a unique minimum whenthe Jacobian of the denoiser g1 is bounded as:

∃c1, c2 > 0 s.t.γ

γ + c1I ≤ ∂g1(r, γ)

∂r≤ γ

γ + c2I,

as occurs in optimization-VAMP under strictly convex regularization R(·;θ1).

For convergence, it suffices to choose the damping parameter ζ ∈ (0, 1] as

ζ ≤ 2min{γ1, γ2}γ1 + γ2

.Thus

the damping parameter ζ can be adapted using γ1, γ2, anddamping is not needed (i.e., ζ = 1 suffices) if γ1 = γ2.

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 12 / 48

Page 13: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP Convergence in the Non-Convex Setting

Outline

1 Linear Regression, AMP, and Vector AMP (VAMP)

2 VAMP, ADMM, and Convergence in the Convex Setting

3 VAMP Convergence in the Non-Convex Setting

4 VAMP for Inference

5 EM-VAMP and Adaptive VAMP

6 Plug-and-play VAMP & Whitening

7 VAMP as a Deep Neural Network

8 VAMP for the Generalized Linear Model

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 13 / 48

Page 14: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP Convergence in the Non-Convex Setting

VAMP State Evolution

Suppose the denoiser g1(·) has identical scalar components g1(·), where g1 andg′1 are Lipschitz.

Suppose that A is right-rotationally invariant, in that its SVD

A = USV T

has Haar V (i.e., uniformly distributed over the set of orthogonal matrices).Since U and S are arbitrary, this includes iid Gaussian A as a special case.

In the large-system limit, one can prove4 that VAMP is rigorously characterizedby a scalar state-evolution (using techniques inspired by Bayati-Montanari’10).

This state-evolution establishes

1 the convergence of VAMP in the non-convex setting,2 the correctness of the denoising model r1 = xo +N (0, I/γ1).

4Rangan,Schniter,Fletcher’16Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 14 / 48

Page 15: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP Convergence in the Non-Convex Setting

VAMP state evolution

Assuming empirical convergence of {sj}→S and {(r01,j , xo,j)}→(R0

1, Xo) and Lipschitz

continuity of g and g′, the VAMP state-evolution under τw = τw is as follows:

for t = 0, 1, 2, . . .

Et1 = E{[g(Xo +N (0, τ t1); γ

t1

)−Xo

]2}MSE

αt1 = E

{g′(Xo +N (0, τ t1); γ

t1)}

divergence

γt2 = γt

11−αt

1

αt

1

, τ t2 = 1(1−αt

1)2

[Et1 −

(αt1

)2τ t1]

Et2 = E{[S2/τw + γt

2

]−1}MSE

αt2 = γt

2 E{[

S2/τw + γt2

]−1}divergence

γt+11 = γt

21−αt

2

αt

2

, τ t+11 = 1

(1−αt

2)2

[Et2 −

(αt2

)2τ t2]

More complicated expressions for Et2 and αt2 exist for the case when τw 6= τw.

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 15 / 48

Page 16: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP for Inference

Outline

1 Linear Regression, AMP, and Vector AMP (VAMP)

2 VAMP, ADMM, and Convergence in the Convex Setting

3 VAMP Convergence in the Non-Convex Setting

4 VAMP for Inference

5 EM-VAMP and Adaptive VAMP

6 Plug-and-play VAMP & Whitening

7 VAMP as a Deep Neural Network

8 VAMP for the Generalized Linear Model

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 16 / 48

Page 17: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP for Inference

VAMP for Inference

Now consider VAMP applied to the “inference” or “MMSE” problem.

assume a prior p(x;θ1),choose the denoiser as g

1(r1; γ1,θ1) = E{x | r1 = x+N (0, I/γ1)}.

What is the corresponding cost function in this case?

What can we say about convergence and performance?

Can we tune the hyperparameters θ = [θ1, θ2] if they are unknown?

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 17 / 48

Page 18: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP for Inference

Variational Inference

Ideally, we would like to compute the exact posterior density

p(x|y) = p(x;θ1)ℓ(x; θ2)

Z(θ)for Z(θ) ,

∫p(x;θ1)ℓ(x; θ2) dx,

but the high-dimensional integral in Z(θ) is difficult to compute.

We can avoid computing Z(θ) through variational optimization:

p(x|y) = argminb

D(b(x)

∥∥p(x|y))where D(·‖·) is KL divergence

= argminb

D(b(x)

∥∥p(x;θ1))+D

(b(x)

∥∥ℓ(x; θ2))+H

(b(x)

)︸ ︷︷ ︸

Gibbs free energy

= argminb1,b2,q

D(b1(x)

∥∥p(x;θ1))+D

(b2(x)

∥∥ℓ(x; θ2))+H

(q(x)

)︸ ︷︷ ︸

, JGibbs(b1, b2, q;θ)s.t. b1 = b2 = q,

but the density constraint keeps the problem difficult.

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 18 / 48

Page 19: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP for Inference

Expectation Consistent Approximation

In expectation-consistent approximation (EC)5, the density constraint is relaxedto moment-matching constraints:

p(x|y) ≈ argminb1,b2,q

JGibbs(b1, b2, q;θ)

s.t.

{E{x|b1} = E{x|b2} = E{x|q}tr(Cov{x|b1}) = tr(Cov{x|b2}) = tr(Cov{x|q}).

The stationary points of EC are the densities

b1(x)∝ p(x;θ1)N (x; r1, I/γ1)b2(x)∝ ℓ(x; θ2)N (x; r2, I/γ2)q(x)= N (x; x, I/η)

s.t.

{E{x|b1} = E{x|b2} = x

tr(Cov{x|b1}) = tr(Cov{x|b2}) = Nη,

where VAMP iteratively solves for the quantities r1, γ1, r2, γ2, x, η.

For large right-rotationally invariant A, the these stationary points are “good”in that MSE(x) matches the MMSE predicted by the replica method.67

5Opper,Winther’04, 6Kabashima,Vehkapera’14, 7Fletcher,Sahraee,Rangan,Schniter’16Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 19 / 48

Page 20: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP for Inference

The VAMP Algorithm for Inference

When applied to inference, the VAMP algorithm manifests as

Initialize r1, γ1.

For k = 1, 2, 3, . . .

x1 ← g1(r1; γ1,θ1) MMSE estimate of x ∼ p(x;θ1)

from r1 = x+N (0, I/γ1)

η1 ← γ1N/ tr

[∂g

1(r1; γ1,θ1)

∂r1

]posterior precision

r2 ← (η1x1 − γ1r1)/(η1 − γ1)

γ2 ← η1 − γ1

x2 ← g2(r2; γ2, θ2) LMMSE estimate of x ∼ N (r2, I/γ2)

from y = Ax+N (0, I/θ2)

η2 ← γ2N/ tr

[∂g

2(r2; γ2, θ2)

∂r2

]posterior precision

r1 ← ζ(η2x2 − γ2r2)/(η2 − γ2) + (1−ζ)r1

γ1 ← ζ(η2 − γ2) + (1− ζ)γ1

and yields x1 = x2 = x and η1 = η2 = η at a fixed point.

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 20 / 48

Page 21: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP for Inference

Experiment with Matched Priors

Comparison of several algorithms8 with priors matched to data.

100

101

102

103

104

105

106

-50

-45

-40

-35

-30

-25

-20

-15

-10

-5

0

med

ian

NM

SE

[d

B]

AMP

S-AMP

damped GAMP

VAMP

replica

condition number κ(A)

N = 1024M/N = 0.5

A = U Diag(s)V T

U ,V ∼ Haarsn/sn−1 = φ ∀nφ determines κ(A)

Xo ∼Bernoulli-GaussianPr{X0 6= 0} = 0.1

SNR= 40dB

VAMP follows replica prediction9 over a wide range of condition numbers.

8S-AMP: Cakmak,Fleury,Winther’14, AD-GAMP: Vila,Schniter,Rangan,Krzakala,Zdeborova’159Tulino,Caire,Verdu,Shamai’13

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 21 / 48

Page 22: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP for Inference

Experiment with Matched Priors

Comparison of several algorithms with priors matched to data.

100

101

102

103

-50

-40

-30

-20

-10

0

med

ian

NM

SE

[d

B]

condition number=1

AMP

S-AMP

damped GAMP

VAMP

VAMP SE

100

101

102

103

iterations

-40

-30

-20

-10

0

med

ian

NM

SE

[d

B]

condition number=1000

AMP

S-AMP

damped GAMP

VAMP

VAMP SE

N = 1024M/N = 0.5

A = U Diag(s)V T

U ,V ∼ Haarsn/sn−1 = φ ∀nφ determines κ(A)

Xo ∼Bernoulli-GaussianPr{X0 6= 0} = 0.1

SNR= 40dB

VAMP is fast even when A is ill-conditioned.

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 22 / 48

Page 23: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

EM-VAMP and Adaptive VAMP

Outline

1 Linear Regression, AMP, and Vector AMP (VAMP)

2 VAMP, ADMM, and Convergence in the Convex Setting

3 VAMP Convergence in the Non-Convex Setting

4 VAMP for Inference

5 EM-VAMP and Adaptive VAMP

6 Plug-and-play VAMP & Whitening

7 VAMP as a Deep Neural Network

8 VAMP for the Generalized Linear Model

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 23 / 48

Page 24: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

EM-VAMP and Adaptive VAMP

Expectation Maximization

What if the hyperparameters θ of the prior & likelihood are unknown?.

The EM algorithm10 is majorization-minimization approach to ML estimationthat iteratively minimizes a tight upper bound on − ln p(y|θ):

θk+1

= argminθ

{− ln p(y|θ) +D

(bk(x)

∥∥p(x|y;θ))

︸ ︷︷ ︸≥ 0

}

with bk(x) = p(x|y; θk)

θk θk+1

We can also write EM in terms of the Gibbs free energy:11

θk+1

= argminθ

D(bk(x)

∥∥p(x;θ1))+D

(bk(x)

∥∥ℓ(x; θ2))+H

(bk(x)

)︸ ︷︷ ︸

JGibbs(bk, bk, bk;θ)

Thus, we can interleave EM and VAMP to solve

minθ

minb1,b2,q

JGibbs(b1, b2, q;θ) s.t.{

E{x|b1} = E{x|b2} = E{x|q}tr[Cov{x|b1}] = tr[Cov{x|b2}] = tr[Cov{x|q}].

10Dempster,Laird,Rubin’77, 11Neal,Hinton’98Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 24 / 48

Page 25: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

EM-VAMP and Adaptive VAMP

The EM-VAMP Algorithm

Input conditional-mean g1(·) and g

2(·), and initialize r1, γ1, θ1, θ2.

For k = 1, 2, 3, . . .

x1 ← g1(r1; γ1, θ1) MMSE estimation

η1 ← γ1N/ tr[∂g

1(r1; γ1, θ1)/∂r1

]

r2 ← (η1x1 − γ1r1)/(η1 − γ1)

γ2 ← η1 − γ1

θ2 ← argmaxθ2E{ln ℓ(x; θ2) | r2; γ2, θ2} EM update

x2 ← g2(r2; γ2, θ2) LMMSE estimation

η2 ← γ2N/ tr[∂g

2(r2; γ2, θ2)/∂r2

]

r1 ← ζ(η2x2 − γ2r2)/(η2 − γ2) + (1−ζ)r1

γ1 ← ζ(η2 − γ2) + (1− ζ)γ1

θ1 ← argmaxθ1

E{ln p(x;θ1) | r1; γ1, θ1} EM update

Experiments suggest it helps to update θ2 several times per VAMP iteration.Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 25 / 48

Page 26: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

EM-VAMP and Adaptive VAMP

State Evolution and Consistency

EM-VAMP has a rigorous state-evolution when the prior is i.i.d. and A is largeand right-rotationally invariant.12

Furthermore, a variant known as “adaptive VAMP” can be shown to yieldconsistent parameter estimates with an i.i.d. prior in the exponential-family orwith finite-cardinality θ1.

12

Essentially, adaptive VAMP replaces the EM update

θ1 ← argmaxθ1E{ln p(x;θ1) | r1, γ1, θ1}

with(θ1, γ1)← argmax(θ1,γ1) E{ln p(x;θ1) | r1, γ1, θ1},

which also re-estimates the precision γ1. (And similar for θ2, γ2.)

12Fletcher,Rangan,Schniter’17Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 26 / 48

Page 27: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

EM-VAMP and Adaptive VAMP

Experiment with Unknown Hyperparameters θ

Learning both noise precision θ2 and BG mean/variance/sparsity θ1:

100

101

102

103

104

105

106

-50

-45

-40

-35

-30

-25

-20

-15

-10

-5

0

med

ian

NM

SE

[d

B]

damped EM-AMPEM-VAMPVAMPreplica

condition number κ(A)

N = 1024M/N = 0.5

A = U Diag(s)V T

U ,V ∼ Haarsn/sn−1 = φ ∀nφ determines κ(A)

Xo ∼Bernoulli-GaussianPr{X0 6= 0} = 0.1

SNR= 40dB

EM-VAMP achieves oracle performance at all condition numbers!13

13EM-AMP proposed in Vila,Schniter’11 and Krzakala,Mezard,Sausset,Sun,Zdeborova’12Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 27 / 48

Page 28: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

EM-VAMP and Adaptive VAMP

Experiment with Unknown Hyperparameters θ

Learning both noise precision θ2 and BG mean/variance/sparsity θ1:

100

101

102

103

-50

-40

-30

-20

-10

0

med

ian

NM

SE

[d

B]

condition number=1

100

101

102

103

iterations

-40

-30

-20

-10

0

med

ian

NM

SE

[d

B]

condition number=1000

damped EM-AMP

damped EM-AMP

EM-VAMP

EM-VAMP

VAMP

VAMPN = 1024M/N = 0.5

A = U Diag(s)V T

U ,V ∼ Haarsn/sn−1 = φ ∀nφ determines κ(A)

Xo ∼Bernoulli-GaussianPr{X0 6= 0} = 0.1

SNR= 40dB

EM-VAMP nearly as fast as VAMP and much faster than damped EM-GAMP.

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 28 / 48

Page 29: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

Plug-and-play VAMP & Whitening

Outline

1 Linear Regression, AMP, and Vector AMP (VAMP)

2 VAMP, ADMM, and Convergence in the Convex Setting

3 VAMP Convergence in the Non-Convex Setting

4 VAMP for Inference

5 EM-VAMP and Adaptive VAMP

6 Plug-and-play VAMP & Whitening

7 VAMP as a Deep Neural Network

8 VAMP for the Generalized Linear Model

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 29 / 48

Page 30: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

Plug-and-play VAMP & Whitening

Plug-and-play VAMP

Recall that the nonlinear estimation step in VAMP (or AMP)

x1 ← g1(r1; γ1) where r1 = xo +N (0, I/γ1)

can be interpreted as “denoising” the pseudo-measurement r1.

For certain signal classes, very sophisticated non-scalar denoising procedureshave been developed (e.g., BM3D for images).

Such denoising procedures can be “plugged into” signal recovery algorithms likeADMM14, AMP15, or VAMP16.

For AMP and VAMP, the divergence can be approximated using Monte-Carlo:

1

Ntr

[∂g1

∂r1

]≈ 1

K

K∑

k=1

pTk

[g1(r+ǫpk, γ1)− g1(r, γ1)

]

with random vectors pk ∈ {±1}N and small ǫ > 0. Often, K = 1 suffices.14Bouman et al’13, 15Metzler,Maleki,Baraniuk’14, 16Schniter,Rangan,Fletcher’16Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 30 / 48

Page 31: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

Plug-and-play VAMP & Whitening

Experiment: Image Recovery with Random Matrices

Plug-and-play versions of VAMP and AMP work similarly when A is i.i.d.,but VAMP can handle a larger class of random matrices A.

0.1 0.2 0.3 0.4 0.5

sampling rate M/N

15

20

25

30

35

40

PS

NR

VAMP-BM3D

AMP-BM3D

VAMP-L1

AMP-L1

iid Gaussian A

100

101

102

103

104

condition number

0

5

10

15

20

25

30

PS

NR VAMP-BM3D

VAMP-L1

AMP-BM3D

AMP-L1

spread spectrum A (M/N = 0.2)

Results above are averaged over 128× 128 versions of

lena, barbara, boat, fingerprint, house, peppers

and 10 random realizations of A,w.

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 31 / 48

Page 32: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

Plug-and-play VAMP & Whitening

Plug-and-play with Non-Random Matrices

Many imaging applications (e.g., MRI) use low-frequency Fouriermeasurements, in which case A = USV T = I [I 0]F .

This causes problems for VAMP because the signal correlation structureinteracts with V T in a way that VAMP is not designed to handle.

Why? Say x is a natural image, and consider q = V Tx.

If V is large and Haar, then q will be iid Gaussian.If V T = F , the low-freq entries of q will be much stronger than the others.

PnP VAMP treats V Tx as iid Gaussian and thus diverges when V T=F !

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 32 / 48

Page 33: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

Plug-and-play VAMP & Whitening

Whitened VAMP for Image REcovery (VAMPire)

To apply VAMP with non-random Fourier measurements, we propose tooperate on the whitened signal:

y = [I 0]FR1/2x︸ ︷︷ ︸

A

s+w for

{Rx = E{xxT}s= whitened signal coefficients

and perform plug-and-play denoising from the whitened-coefficient space:

s1 = g1(r1, γ1) = R−1/2x denoise(R1/2

x r1; γ1N/ tr(Rx)).

In practice, we approximate Rx ≈W T Diag(τ )2W , where W is a wavelettransform and τ2i specifies the energy of the ith wavelet coefficient (which iseasy to predict for natural images).

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 33 / 48

Page 34: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

Plug-and-play VAMP & Whitening

Whitened VAMP for Image REcovery (VAMPire)

The resulting matrix A = [I 0]FW Diag(τ ) does not yield a right singularvector matrix V with a fast multiplication.

But since A has a fast implementation, the LMMSE stage can be computed via(preconditioned) LSQR:

g2(r2; γ2) = (γwATA+ γ2I)

−1(γwATy + γ2r2) =

[√γwA√γ2I

]+ [√γwy√γ2r2

]

The divergence 〈g′2(r2; γ2)〉 can be approximated using Monte-Carlo:

〈g′2〉 =

γ2N

tr

[(γwA

HA+ γ2I)−1

]≈ 1

NK

K∑

k=1

pk

[√γwA√γ2I

]+ [0√γ2pk

],

where E{pkpHk } = I. Here again, (preconditioned) LSQR can be used.

In practice, K = 1 suffices.

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 34 / 48

Page 35: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

Plug-and-play VAMP & Whitening

Image Recovery Experiments

Fourier measurements sampled at M lowest frequencies

SNR=40dB

128× 128 images {lena, barbara, boat, fingerprint, house, peppers}db1 wavelet decomposition, D = 2 levels

0.1 0.2 0.3 0.4 0.5

measurement rate M/N

20

22

24

26

28

30

32

34

PS

NR

VAMPire-BM3D

LASSO via SPGL1

LMMSE

0 5 10 15

iteration

0

5

10

15

20

25

30

35

PS

NR

VAMPire-BM3D

M/N=0.5

M/N=0.4

M/N=0.3

M/N=0.2

M/N=0.1

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 35 / 48

Page 36: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP as a Deep Neural Network

Outline

1 Linear Regression, AMP, and Vector AMP (VAMP)

2 VAMP, ADMM, and Convergence in the Convex Setting

3 VAMP Convergence in the Non-Convex Setting

4 VAMP for Inference

5 EM-VAMP and Adaptive VAMP

6 Plug-and-play VAMP & Whitening

7 VAMP as a Deep Neural Network

8 VAMP for the Generalized Linear Model

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 36 / 48

Page 37: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP as a Deep Neural Network

Deep learning for sparse reconstruction

Until now we’ve focused on designing algorithms to recover xo ∼ p(x) frommeasurements y = Axo +w.

xy

model p(x),A

algorithm

What about training deep networks to predict xo from y?Can we increase accuracy and/or decrease computation?

xy

training data {(xd,yd)}Dd=1

deepnetwork

Are there connections between these approaches?

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 37 / 48

Page 38: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP as a Deep Neural Network

Unfolding Algorithms into Networks

Consider, e.g., the classical sparse-reconstruction algorithm, ISTA.17

vt =y −Axt

xt+1 = g(xt +ATvt)

⇔ xt+1= g(Sxt +By) with

S, I −ATA

B, AT

Gregor & LeCun18 proposed to “unfold” it into a deep net and “learn” improvedparameters using training data, yielding “learned ISTA” (LISTA):

+++

y B

SSSx1

x2

x3 x

4g(·)g(·) g(·)g(·)

The same “unfolding & learning” idea can be used to improve AMP, yielding“learned AMP” (LAMP).19

17Daubechies,Defrise,DeMol’04. 18Gregor,LeCun’10. 19Borgerding,Schniter’16.Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 38 / 48

Page 39: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP as a Deep Neural Network

Onsager-Corrected Deep Networks

tth LISTA layer:

+

+

−xt

xt+1

vt vt+1

y y

rt

Bt At

g(•;λt)

to exploit low-rank BtAt in linear stage St = I −BtAt.

tth LAMP layer:

+ +

+−

×

xt xt+1

vt vt+1

y y

rtct‖•‖2√

MλtBt At

g(•; •)NM 〈g′〉

Onsager correction now aims to decouple errors across layers.

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 39 / 48

Page 40: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP as a Deep Neural Network

LAMP performance with soft-threshold denoising

LISTA beats AMP,FISTA,ISTALAMP beats LISTA

in convergence speed and asymptotic MSE.

5 10 15 20

-40

-35

-30

-25

-20

-15

-10

-5

ISTA

FISTA

AMP

LISTA tiedLISTA untiedLAMP tiedLAMP untied

averageNMSE[dB]

layers / iterations

-4 -3 -2 -1 0 1 2 3 4-0.5

-0.4

-0.3

-0.2

-0.1

0

0.1

0.2

0.3

0.4

0.5

QQplot of LAMP rt

Standard Normal QuantilesQuantilesof

InputSam

ple

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 40 / 48

Page 41: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP as a Deep Neural Network

LAMP beyond soft-thresholding

So far, we used soft-thresholding to isolate the effects of Onsager correction.

What happens with more sophisticated (learned) denoisers?

2 4 6 8 10 12 14

-45

-40

-35

-30

-25

-20

-15

-10LISTA

LAMP-l1

LAMP-bg

LAMP-expo

LAMP-pwlin

LAMP-splinesupport oracle

averageNMSE[dB]

layers

Here we learned the parameters ofthese denoiser families:

scaled soft-thresholding

conditional mean under BG

Exponential kernel20

Piecewise Linear20

Spline21

Big improvement!

20Guo,Davies’15. 21Kamilov,Mansour’16.Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 41 / 48

Page 42: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP as a Deep Neural Network

LAMP versus VAMP

How does our best Learned AMP compare to (unlearned) VAMP?

2 4 6 8 10 12 14

-45

-40

-35

-30

-25

-20

-15

-10LAMP-pwlin

VAMP-bg

support oracle

averageNMSE[dB]

layers / iterations

VAMP wins!

So what about “learned VAMP”?

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 42 / 48

Page 43: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP as a Deep Neural Network

Learned VAMP

Suppose we unfold VAMP and learn (via backprop) the parameters {St, gt}Tt=1

that minimize the training MSE.

Onsager

Onsager

Onsager

Onsager

gt(·)gt(·) StSt. . .

xo +N (0, I/γt1)xo +N (0, I/γt

1) xo +N (0, I/γt2)xo +N (0, I/γt

2)0

y

xt

xt

Remarkably, backpropagation does not improve matched VAMP!

VAMP is locally optimal

Onsager correction decouples the design of {St, gt(·)}Tt=1:

Layer-wise optimal St, gt(·) ⇒ Network optimal {St, gt(·)}Tt=1

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 43 / 48

Page 44: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP for the Generalized Linear Model

Outline

1 Linear Regression, AMP, and Vector AMP (VAMP)

2 VAMP, ADMM, and Convergence in the Convex Setting

3 VAMP Convergence in the Non-Convex Setting

4 VAMP for Inference

5 EM-VAMP and Adaptive VAMP

6 Plug-and-play VAMP & Whitening

7 VAMP as a Deep Neural Network

8 VAMP for the Generalized Linear Model

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 44 / 48

Page 45: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP for the Generalized Linear Model

Generalized linear models

Until now we have considered linear regression: y = Axo +w.

VAMP can also be applied to the generalized linear model (GLM)23

y ∼ p(y|z) with hidden z = Axo

which supports, e.g.,

yi = zi + wi: additive, possibly non-Gaussian noiseyi = sgn(zi + wi): binary classification / one-bit quantizationyi = |zi + wi|: phase retrieval in noisePoisson yi: photon-limited imaging

How? A simple trick turns the GLM into a linear regression problem:

z = Ax ⇔ 0︸︷︷︸z

=[A −I

]︸ ︷︷ ︸

A

[x

z

]

︸︷︷︸x

23Schniter,Rangan,Fletcher’16Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 45 / 48

Page 46: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP for the Generalized Linear Model

One-bit compressed sensing / Probit regression

Learning both θ2 and θ1:

100

101

102

103

104

105

106

condition number

-40

-35

-30

-25

-20

-15

-10

-5

0

avera

ge N

MS

E [dB

]

EM-AMP

EM-VAMP

VAMP

VAMP-SE

N = 512M/N = 4

A = U Diag(s)V T

U ,V drawn uniformsn/sn−1 = φ ∀nφ determines κ(A)

Xo ∼Bernoulli-GaussianPr{X0 6= 0} = 1/32

SNR= 40dB

VAMP and EM-VAMP robust to ill-conditioned A.

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 46 / 48

Page 47: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP for the Generalized Linear Model

One-bit compressed sensing / Probit regression

Learning both θ2 and θ1:

100

101

102

103

-40

-30

-20

-10

0

avera

ge N

MS

E [dB

]

condition number=3.1623

100

101

102

103

iterations

-40

-30

-20

-10

0

avera

ge N

MS

E [dB

]

condition number=1000

EM-AMP

EM-AMP

EM-VAMP

EM-VAMP

VAMP

VAMP

VAMP-SE

VAMP-SE

N = 512M/N = 4

A = U Diag(s)V T

U ,V drawn uniformsn/sn−1 = φ ∀nφ determines κ(A)

Xo ∼Bernoulli-GaussianPr{X0 6= 0} = 1/32

SNR= 40dB

EM-VAMP mildly slower than VAMP but much faster than damped AMP.

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 47 / 48

Page 48: Recent Advances in Approximate Message Passingspars2017.lx.it.pt/index_files/PlenarySlides/Schniter...Supported in part by NSF grants IIP-1539960 and CCF-1527162. SPARS—June8,2017

VAMP for the Generalized Linear Model

Conclusions

VAMP is an efficient algorithm for linear and generalized-linear regression.

For convex optimization problems, VAMP is provably convergent and related toPeaceman-Rachford ADMM.

For inference under right rotationally-invariant A, VAMP has a rigorous stateevolution and fixed-points that agree with the replica MMSE prediction.

VAMP can be combined with EM to handle priors/likelihood with unknownparameters, again with a rigorous state evolution.

Can unfold VAMP into an interpretable deep network.

In non-convex settings (e.g., plug-and-play) with deterministic matrices, morework is needed to understand the performance and convergence of VAMP.

Still lots to do! (multilayer generative models, bilinear problems . . . )

Phil Schniter (Ohio State & Duke iiD) SPARS — June’17 48 / 48