Bilinear Generalized Approximate Message Passing

Jason T. Parker, Philip Schniter, Volkan Cevher

I Introduction

and we likewise assume that the likelihood function of Z\boldsymbol{Z} is known and separable, i.e.,

Recently, various special cases of this problem have gained the intense interest of the research community, e.g.,

Matrix Completion: In this problem, one observes a few (possibly noise-corrupted) entries of a low-rank matrix and the goal is to infer the missing entries. In our framework, Z ⁣= ⁣AX\boldsymbol{Z}\!=\!\boldsymbol{AX} would represent the complete low-rank matrix (with tall A\boldsymbol{A} and wide X\boldsymbol{X}) and pyml∣zmlp_{\textsf{y}_{ml}|\textsf{z}_{ml}} the observation mechanism, which would be (partially) informative about zml\textsf{z}_{ml} at the observed entries (m,l)∈Ω(m,l)\in\Omega and non-informative at the missing entries (m,l)∉Ω(m,l)\notin\Omega.

Robust PCA: Here, the objective is to recover a low-rank matrix (or its principal components) observed in the presence of noise and sparse outliers. In our framework, Z ⁣= ⁣AX\boldsymbol{Z}\!=\!\boldsymbol{AX} could again represent the low-rank matrix, and pyml∣zmlp_{\textsf{y}_{ml}|\textsf{z}_{ml}} the noise-and-outlier-corrupted observation mechanism. Alternatively, X\boldsymbol{X} could also capture the outliers, as described in the sequel.

Dictionary Learning: Here, the objective is to learn a dictionary A\boldsymbol{A} for which there exists a sparse data representation X\boldsymbol{X} such that AX\boldsymbol{AX} closely matches the observed data Y\boldsymbol{Y}. In our framework, {pxnl}\{p_{\textsf{x}_{nl}}\} would be chosen to induce sparsity, Z=AX\boldsymbol{Z}=\boldsymbol{AX} would represent the noiseless observations, and {pyml∣zml}\{p_{\textsf{y}_{ml}|\textsf{z}_{ml}}\} would model the (possibly noisy) observation mechanism.

In the context of CS, the AMP framework yields algorithms with remarkable properties: i) solution trajectories that, in the large-system limit (i.e., as M,N→∞M,N\rightarrow\infty with M/NM/N fixed, under iid sub-Gaussian A\boldsymbol{A}) are governed by a state-evolution whose fixed points—when unique—yield the true posterior means and ii) a low implementation complexity (i.e., dominated by one multiplication with A\boldsymbol{A} and AT\boldsymbol{A}^{\textsf{T}} per iteration, and relatively few iterations) . Thus, a natural question is whether the AMP framework can be successfully applied to the generalized bilinear problem described earlier.

In this manuscript, we propose an AMP-based approach to generalized bilinear inference that we henceforth refer to as Bilinear Generalized AMP (BiG-AMP), and we uncover special cases under which the general approach can be simplified. In addition, we propose an adaptive damping mechanism, an expectation-maximization (EM)-based method of tuning the parameters of pamnp_{\textsf{a}_{mn}}, pxnlp_{\textsf{x}_{nl}}, and pyml∣zmlp_{\textsf{y}_{ml}|\textsf{z}_{ml}} (in case they are unknown), and methods to select the rank NN (in case it is unknown). In the case that pamnp_{\textsf{a}_{mn}}, pxnlp_{\textsf{x}_{nl}}, and/or pyml∣zmlp_{\textsf{y}_{ml}|\textsf{z}_{ml}} are completely unknown, they can be modeled as Gaussian-mixtures with mean/variance/weight parameters learned via EM . Finally, we present a detailed numerical investigation of BiG-AMP applied to matrix completion, robust PCA, and dictionary learning. Our empirical results show that BiG-AMP yields an excellent combination of estimation accuracy and runtime when compared to existing state-of-the-art algorithms for each application.

Although the AMP methodology is itself restricted to separable known pdfs (1)-(3), the results of Part II suggest that this limitation is not an issue for many practical problems of interest. However, in problems where the separability assumption is too constraining, it can be relaxed through the use of hidden (coupling) variables, as originally proposed in the context of “turbo-AMP” and applied to BiG-AMP in . Due to space limitations, however, this approach will not be discussed here. Finally, although we focus on real-valued random variables, all of the methodology described in this work can be easily extended to circularly symmetric complex-valued random variables.

We now discuss related work. One possibility of applying AMP methods to matrix completion was suggested by Montanari in [31, Sec. 9.7.3] but the approach described there differs from BiG-AMP in that it was i) constructed from a factor graph with vector-valued variables and ii) restricted to the (incomplete) additive white Gaussian noise (AWGN) observation model. Moreover, no concrete algorithm nor performance evaluation was reported. Since we first reported on BiG-AMP in , Rangan and Fletcher proposed an AMP-based approach for the estimation of rank-one matrices from AWGN-corrupted observations, and showed that it can be characterized by a state evolution in the large-system limit. More recently, Krzakala, Mézard, and Zdeborová proposed an AMP-based approach to blind calibration and dictionary learning in AWGN that bears similarity to a special case of BiG-AMP, and derived a state-evolution using the cavity method. Their method, however, was not numerically successful in solving dictionary learning problems . The BiG-AMP algorithm that we derive here is a generalization of those in in that it handles generalized bilinear observations rather than AWGN-corrupted ones. Moreover, our work is the first to detail adaptive damping, parameter tuning, and rank-selection mechanisms for AMP based bilinear inference, and it is the first to present an in-depth numerical investigation involving both synthetic and real-world datasets. An application/extension of the BiG-AMP algorithm described here to hyperspectral unmixing (an instance of non-negative matrix factorization) was recently proposed in .

The remainder of the document is organized as follows. Section II derives the BiG-AMP algorithm, and Sec. III presents several special-case simplifications of BiG-AMP. Section IV describes the adaptive damping mechanism, and Sec. V the EM-based tuning of prior parameters and selection of rank NN. Application-specific issues and numerical results demonstrating the efficacy of our approach for matrix completion, robust PCA, and dictionary learning, are discussed in Sections VI–VIII, respectively, and concluding remarks are offered in Sec. IX.

II Bilinear Generalized AMP

For the statistical model (1)-(3), the posterior distribution is

where (4) employs Bayes’ rule and ∝\propto denotes equality up to a constant scale factor.

The posterior distribution can be represented with a factor graph, as depicted in Fig. 1. There, the factors of pX,A∣Yp_{\textsf{{{X}}},\textsf{{{A}}}|\textsf{{{Y}}}} from (6) are represented by “factor nodes” that appear as black boxes, and the random variables are represented by “variable nodes” that appear as white circles. Each variable node is connected to every factor node in which that variable appears. The observed data {yml}\{y_{ml}\} are treated as parameters of the pyml∣zmlp_{\textsf{y}_{ml}|\textsf{z}_{ml}} factor nodes in the middle of the graph, and not as random variables. The structure of Fig. 1 becomes intuitive when recalling that Z=AX\textsf{{{Z}}}=\textsf{{{A}}}\textsf{{{X}}} implies zml=∑n=1Namnxnl\textsf{z}_{ml}=\sum_{n=1}^{N}\textsf{a}_{mn}\textsf{x}_{nl}.

II-B Loopy Belief Propagation

In this work, we aim to compute minimum mean-squared error (MMSE) estimates of X\boldsymbol{X} and A\boldsymbol{A}, i.e., the meansAnother worthwhile objective could be to compute the joint MAP estimate arg⁡max⁡X,ApX,A∣Y(X,A ∣ Y)\arg\max_{\boldsymbol{X},\boldsymbol{A}}p_{\textsf{{{X}}},\textsf{{{A}}}|\textsf{{{Y}}}}(\boldsymbol{X},\boldsymbol{A}\,|\,\boldsymbol{Y}); we leave this to future work. of the marginal posteriors pxnl∣Y(⋅ ∣ Y)p_{\textsf{x}_{nl}|\textsf{{{Y}}}}(\cdot\,|\,\boldsymbol{Y}) and pamn∣Y(⋅ ∣ Y)p_{\textsf{a}_{mn}|\textsf{{{Y}}}}(\cdot\,|\,\boldsymbol{Y}), for all pairs (n,l)(n,l) and (m,n)(m,n). Although exact computation of these quantities is generally prohibitive, they can be efficiently approximated using loopy belief propagation (LBP) .

In LBP, beliefs about the random variables (in the form of pdfs or log pdfs) are propagated among the nodes of the factor graph until they converge. The standard way to compute these beliefs, known as the sum-product algorithm (SPA) , stipulates that the belief emitted by a variable node along a given edge of the graph is computed as the product of the incoming beliefs from all other edges, whereas the belief emitted by a factor node along a given edge is computed as the integral of the product of the factor associated with that node and the incoming beliefs on all other edges. The product of all beliefs impinging on a given variable node yields the posterior pdf for that variable. In cases where the factor graph has no loops, exact marginal posteriors result from two (i.e., forward and backward) passes of the SPA . For loopy factor graphs, exact inference is in general NP hard and so LBP does not guarantee correct posteriors. That said, LBP has shown state-of-the-art performance in many applications, such as inference on Markov random fields , turbo decoding , LDPC decoding , multiuser detection , and compressive sensing .

In high-dimensional inference problems, exact implementation of the SPA is impractical, motivating approximations of the SPA. A notable example is the generalized approximate message passing (GAMP) algorithm, developed in to solve the generalized CS problem, which exploits the “blessings of dimensionality” that arise when A\boldsymbol{A} is a sufficiently large and dense and which was rigorously analyzed in . In the sequel, we derive an algorithm for the generalized bilinear inference BiG-AMP algorithm that employs GAMP-like approximations to the SPA on the factor graph in Fig. 1. As we shall see, the approximations are primarily based on central-limit-theorem (CLT) and Taylor-series arguments.

II-C Sum-product Algorithm

Applying the SPA to the factor graph in Fig. 1, we arrive at the following update rules for the four messages in Table I.

where const is an arbitrary constant (w.r.t xnlx_{nl} in (7) and (8), and w.r.t amna_{mn} in (9) and (10)). In the sequel, we denote the mean and variance of the pdf 1Cexp⁡(Δm←nlx(t,.))\frac{1}{C}\exp(\Delta_{m{\scriptscriptstyle\leftarrow}nl}^{\textsf{x}}(t,.)) by x^m,nl(t)\widehat{x}_{m,nl}(t) and νm,nlx(t)\nu^{x}_{m,nl}(t), respectively, and we denote the mean and variance of 1Cexp⁡(Δl←mna(t,.))\frac{1}{C}\exp(\Delta_{l{\scriptscriptstyle\leftarrow}mn}^{\textsf{a}}(t,.)) by a^l,mn(t)\widehat{a}_{l,mn}(t) and νl,mna(t)\nu^{a}_{l,mn}(t). For the log-posteriors, the SPA implies

and we denote the mean and variance of 1Cexp⁡(Δnlx(t,.))\frac{1}{C}\exp(\Delta_{nl}^{\textsf{x}}(t,.)) by x^nl(t)\widehat{x}_{nl}(t) and νnlx(t)\nu^{x}_{nl}(t), and the mean and variance of 1Cexp⁡(Δmna(t,.))\frac{1}{C}\exp(\Delta_{mn}^{\textsf{a}}(t,.)) by a^mn(t)\widehat{a}_{mn}(t) and νmna(t)\nu^{a}_{mn}(t).

II-D Approximated Factor-to-Variable Messages

We now apply AMP approximations to the SPA updates (7)-(12). As we shall see, the approximations are based primarily on central-limit-theorem (CLT) and Taylor-series arguments that become exact in the large-system limit, where M,L,N→∞M,L,N\to\infty with fixed ratios M/NM/N and L/NL/N. (Due to the use of finite M,L,NM,L,N in practice, we still regard them as approximations.) In particular, our derivation will neglect terms that vanish relative to others as N→∞N\rightarrow\infty, which requires that we establish certain scaling conventions. First, we assume w.l.o.gOther scalings on E⁡{zml2}\operatorname{E}\{\textsf{z}_{ml}^{2}\}, E⁡{xnl2}\operatorname{E}\{\textsf{x}_{nl}^{2}\}, and E⁡{amn2}\operatorname{E}\{\textsf{a}_{mn}^{2}\} could be used as long as they are consistent with the relationship zml=∑n=1Namnxnl\textsf{z}_{ml}=\sum_{n=1}^{N}\textsf{a}_{mn}\textsf{x}_{nl}. that E⁡{zml2}\operatorname{E}\{\textsf{z}_{ml}^{2}\} and E⁡{xnl2}\operatorname{E}\{\textsf{x}_{nl}^{2}\} scale as O(1)O(1), i.e., that the magnitudes of these elements do not change as N→∞N\rightarrow\infty. In this case, the relationship zml=∑n=1Namnxnl\textsf{z}_{ml}=\sum_{n=1}^{N}\textsf{a}_{mn}\textsf{x}_{nl} implies that E⁡{amn2}\operatorname{E}\{\textsf{a}_{mn}^{2}\} must scale as O(1/N)O(1/N). These scalings are assumed to hold for random variables zml\textsf{z}_{ml}, amn\textsf{a}_{mn}, and xml\textsf{x}_{ml} distributed according to the prior pdfs, according to the pdfs corresponding to the SPA messages (7)-(10), and according to the pdfs corresponding to the SPA posterior approximations (11)-(12). These assumptions lead straightforwardly to the scalings of z^ml(t)\widehat{z}_{ml}(t), νmlz(t)\nu^{z}_{ml}(t), x^m,nl(t)\widehat{x}_{m,nl}(t), νm,nlx(t)\nu^{x}_{m,nl}(t), x^nl(t)\widehat{x}_{nl}(t), νnlx(t)\nu^{x}_{nl}(t), a^l,mn(t)\widehat{a}_{l,mn}(t), νl,mna(t)\nu^{a}_{l,mn}(t), a^mn(t)\widehat{a}_{mn}(t), and νmna(t)\nu^{a}_{mn}(t) specified in Table II. Furthermore, because Δm→nlx(t,⋅)\Delta_{m{\scriptscriptstyle\rightarrow}nl}^{\textsf{x}}(t,\cdot) and Δnlx(t,⋅)\Delta_{nl}^{\textsf{x}}(t,\cdot) differ by only one term out of MM, it is reasonable to assume that the corresponding difference in means x^m,nl(t)−x^nl(t)\widehat{x}_{m,nl}(t)-\widehat{x}_{nl}(t) and variances νm,nlx(t)−νnlx(t)\nu^{x}_{m,nl}(t)-\nu^{x}_{nl}(t) are both O(1/N)O(1/\sqrt{N}), which then implies that x^m,nl2(t)−x^nl2(t)\widehat{x}^{2}_{m,nl}(t)-\widehat{x}^{2}_{nl}(t) is also O(1/N)O(1/\sqrt{N}). Similarly, because Δl→mna(t,⋅)\Delta_{l{\scriptscriptstyle\rightarrow}mn}^{\textsf{a}}(t,\cdot) and Δmna(t,⋅)\Delta_{mn}^{\textsf{a}}(t,\cdot) differ by only one term out of NN, where a^l,mn(t)\widehat{a}_{l,mn}(t) and a^mn(t)\widehat{a}_{mn}(t) are O(1/N)O(1/\sqrt{N}), it is reasonable to assume that a^l,mn(t)−a^mn(t)\widehat{a}_{l,mn}(t)-\widehat{a}_{mn}(t) is O(1/N)O(1/N) and that both νl,mna(t)−νmna(t)\nu^{a}_{l,mn}(t)-\nu^{a}_{mn}(t) and a^l,mn2(t)−a^mn2(t)\widehat{a}^{2}_{l,mn}(t)-\widehat{a}^{2}_{mn}(t) are O(1/N3/2)O(1/N^{3/2}). The remaining entries in Table II will be explained below.

We start by approximating the message Δm→nlx(t,.)\Delta_{m{\scriptscriptstyle\rightarrow}nl}^{\textsf{x}}(t,.). Expanding (7), we find

For large NN, the CLT motivates the treatment of zml\textsf{z}_{ml}, the random variable associated with the zmlz_{ml} identified in (13), conditioned on xnl=xnl\textsf{x}_{nl}=x_{nl}, as Gaussian and thus completely characterized by a (conditional) mean and variance. Defining the zero-mean r.v.s a~l,mn≜amn−a^l,mn(t)\widetilde{\textsf{a}}_{l,mn}\triangleq\textsf{a}_{mn}-\widehat{a}_{l,mn}(t) and x~m,nl=xnl−x^m,nl(t)\widetilde{\textsf{x}}_{m,nl}=\textsf{x}_{nl}-\widehat{x}_{m,nl}(t), where amn∼1Cexp⁡(Δl←mna(t,⋅))\textsf{a}_{mn}\sim\frac{1}{C}\exp(\Delta_{l{\scriptscriptstyle\leftarrow}mn}^{\textsf{a}}(t,\cdot)) and xnl∼1Cexp⁡(Δm←nlx(t,⋅))\textsf{x}_{nl}\sim\frac{1}{C}\exp(\Delta_{m{\scriptscriptstyle\leftarrow}nl}^{\textsf{x}}(t,\cdot)), we can write

after which it is straightforward to see that

With this conditional-Gaussian approximation, (13) becomes

Unlike the original SPA message (7), the approximation (20) requires only a single integration. Still, additional simplifications are possible. First, notice that p^n,ml(t)\widehat{p}_{n,ml}(t) and νn,mlp(t)\nu^{p}_{n,ml}(t) differ from the corresponding nn-invariant quantities

by one term. In the sequel, we will assume that p^ml(t)\widehat{p}_{ml}(t) and νmlp(t)\nu^{p}_{ml}(t) are O(1)O(1) since these quantities can be recognized as the mean and variance, respectively, of an estimate of zml\textsf{z}_{ml}, which is O(1)O(1). Writing the HmlH_{ml} term in (20) using (22)-(23),

where in (25) we used the facts that a^l,mn(t)(x^nl(t)−x^m,nl(t))\widehat{a}_{l,mn}(t)(\widehat{x}_{nl}(t)-\widehat{x}_{m,nl}(t)) and νl,mna(t)(x^m,nl2(t)−x^nl2(t)))−a^l,mn2(t)νm,nlx(t)−νl,mna(t)νm,nlx(t)\nu^{a}_{l,mn}(t)(\widehat{x}_{m,nl}^{2}(t)-\widehat{x}_{nl}^{2}(t)))-\widehat{a}_{l,mn}^{2}(t)\nu^{x}_{m,nl}(t)-\nu^{a}_{l,mn}(t)\nu^{x}_{m,nl}(t) are both O(1/N)O(1/N).

Rewriting (20) using a Taylor series expansion in xnlx_{nl} about the point x^nl(t)\widehat{x}_{nl}(t), we get

where Hml′H_{ml}^{\prime} and Hmn′′H_{mn}^{\prime\prime} are the first two derivatives of HmnH_{mn} w.r.t its first argument and H˙ml\dot{H}_{ml} is the first derivative w.r.t its second argument. Note that, in (26) and elsewhere, the higher-order terms in the Taylor’s expansion are written solely in terms of their scaling dependence on NN, which is what will eventually allow us to neglect these terms (in the large-system limit).

We now approximate (26) by dropping terms that vanish, relative to the second-to-last term in (26), as N→∞N\rightarrow\infty. Since this second-to-last term is O(1/N)O(1/N) due to the scalings of a^l,mn2(t)\widehat{a}^{2}_{l,mn}(t), p^ml(t)\widehat{p}_{ml}(t), and νmlp(t)\nu^{p}_{ml}(t), we drop terms that are of order O(1/N3/2)O(1/N^{3/2}), such as the final term. We also replace νl,mna(t)\nu^{a}_{l,mn}(t) with νmna(t)\nu^{a}_{mn}(t), and a^l,mn2(t)\widehat{a}_{l,mn}^{2}(t) with a^mn2(t)\widehat{a}_{mn}^{2}(t), since in both cases the difference is O(1/N3/2)O(1/N^{3/2}). Finally, we drop the O(1/N)O(1/N) terms inside the HmlH_{ml} derivatives, which can be justified by taking a Taylor series expansion of these derivatives with respect to the O(1/N)O(1/N) perturbations and verifying that the higher-order terms in this latter expansion are O(1/N3/2)O(1/N^{3/2}). All of these approximations are analogous to those made in previous AMP derivations, e.g., , , and .

Applying these approximations to (26) and absorbing xnlx_{nl}-invariant terms into the const term, we obtain

Note that (27) is essentially a Gaussian approximation to the pdf 1Cexp⁡(Δm→nlx(t,.))\frac{1}{C}\exp(\Delta_{m{\scriptscriptstyle\rightarrow}nl}^{\textsf{x}}(t,.)).

computed according to the (conditional) pdf

where here C=\int_{z}p_{\textsf{y}_{ml}|\textsf{z}_{ml}}(y_{ml}\,|\,z)\mathcal{N}\big{(}z;\widehat{p}_{ml}(t),\nu^{p}_{ml}(t)\big{)}. In fact, (35) is BiG-AMP’s iteration-tt approximation to the true marginal posterior pzml∣Y(⋅∣Y)p_{\textsf{z}_{ml}|\textsf{{{Y}}}}(\cdot|\boldsymbol{Y}). We note that (35) can also be interpreted as the (exact) posterior pdf for zml\textsf{z}_{ml} given the likelihood pyml∣zml(yml∣⋅)p_{\textsf{y}_{ml}|\textsf{z}_{ml}}(y_{ml}|\cdot) from (3) and the prior \textsf{z}_{ml}\sim\mathcal{N}\big{(}\widehat{p}_{ml}(t),\nu^{p}_{ml}(t)\big{)} that is implicitly assumed by iteration-tt BiG-AMP.

Since ZT=XTAT\textsf{{{Z}}}^{\textsf{T}}=\textsf{{{X}}}^{\textsf{T}}\textsf{{{A}}}^{\textsf{T}}, the derivation of the BiG-AMP approximation of Δl→mna(t,.)\Delta_{l{\scriptscriptstyle\rightarrow}mn}^{\textsf{a}}(t,.) closely follows the derivation for Δm→nlx(t,.)\Delta_{m{\scriptscriptstyle\rightarrow}nl}^{\textsf{x}}(t,.). In particular, it starts with (similar to (13))

where again the CLT motivates the treatment of zml\textsf{z}_{ml}, conditioned on amn=amn\textsf{a}_{mn}=a_{mn}, as Gaussian. Eventually we arrive at the Taylor-series approximation (similar to (27))

II-E Approximated Variable-to-Factor Messages

We now turn to approximating the messages flowing from the variable nodes to the factor nodes. Starting with (8) and plugging in (27) we obtain

Since a^mn2(t)\widehat{a}^{2}_{mn}(t) and νmna(t)\nu^{a}_{mn}(t) are O(1/N)O(1/N), and recalling s^ml2(t)\widehat{s}^{2}_{ml}(t) and νmls(t)\nu^{s}_{ml}(t) are O(1)O(1), we take νm,nlr(t)\nu^{r}_{m,nl}(t) to be O(1)O(1). Meanwhile, since r^m,nl(t)\widehat{r}_{m,nl}(t) is an estimate of xnl\textsf{x}_{nl}, we reason that it is O(1)O(1).

The mean and variance of the pdf associated with the Δm←nlx(t ⁣+ ⁣1,.)\Delta_{m{\scriptscriptstyle\leftarrow}nl}^{\textsf{x}}(t\!+\!1,.) approximation in (40) are

where here C=\int_{x}p_{\textsf{x}_{nl}}(x)\mathcal{N}\big{(}x;\widehat{r}_{m,nl}(t),\nu^{r}_{m,nl}(t)\big{)} and gxnl′g^{\prime}_{\textsf{x}_{n}l} denotes the derivative of gxnlg_{\textsf{x}_{nl}} with respect to the first argument. The fact that (43) and (44) are related through a derivative was shown in .

We now derive approximations of x^m,nl(t)\widehat{x}_{m,nl}(t) and νm,nlx(t)\nu^{x}_{m,nl}(t) that avoid the dependence on the destination node mm. For this, we introduce mm-invariant versions of r^m,nl(t)\widehat{r}_{m,nl}(t) and νm,nlr(t)\nu^{r}_{m,nl}(t):

Comparing (45)-(46) with (41)-(42) and applying previously established scalings from Table II reveals that νm,nlr(t)−νnlr(t)\nu^{r}_{m,nl}(t)-\nu^{r}_{nl}(t) is O(1/N)O(1/N) and that r^m,nl(t)=r^nl(t)−νnlr(t)a^mn(t)s^ml(t)+O(1/N)\widehat{r}_{m,nl}(t)=\widehat{r}_{nl}(t)-\nu^{r}_{nl}(t)\widehat{a}_{mn}(t)\widehat{s}_{ml}(t)+O(1/N), so that (43) implies

Above, (48) follows from taking Taylor series expansions around each of the O(1/N)O(1/N) perturbations in (47); (II-E) follows from a Taylor series expansion in the first argument of (48) about the point r^nl(t)\widehat{r}_{nl}(t); and (50) follows by neglecting the O(1/N)O(1/N) term (which vanishes relative to the others in the large-system limit) and applying the definitions

which match (43)-(44) sans the mm dependence. Note that (50) confirms that the difference x^m,nl(t)−x^nl(t)\widehat{x}_{m,nl}(t)-\widehat{x}_{nl}(t) is O(1/N)O(1/\sqrt{N}), as was assumed at the start of the BiG-AMP derivation. Likewise, taking Taylor series expansions of gxnl′g^{\prime}_{\textsf{x}_{nl}} in (44) about the point r^nl(t)\widehat{r}_{nl}(t) in the first argument and about the point νnlr(t)\nu^{r}_{nl}(t) in the second argument and then comparing the result with (52) confirms that νm,nlx(t)−νnlx(t)\nu^{x}_{m,nl}(t)-\nu^{x}_{nl}(t) is O(1/N)O(1/\sqrt{N}).

We then repeat the above procedure to derive an approximation to Δl←mna(t ⁣+ ⁣1,.)\Delta_{l{\scriptscriptstyle\leftarrow}mn}^{\textsf{a}}(t\!+\!1,.) analogous to (40), whose corresponding mean is then further approximated as

Arguments analogous to the discussion following (42) justify the remaining scalings in Table II.

II-F Closing the Loop

The penultimate step in the derivation of BiG-AMP is to approximate earlier steps that use a^l,mn(t)\widehat{a}_{l,mn}(t) and x^m,nl(t)\widehat{x}_{m,nl}(t) in place of a^mn(t)\widehat{a}_{mn}(t) and x^nl(t)\widehat{x}_{nl}(t). For this, we start by plugging (50) and (53) into (22), which yieldsRecall that the error of the approximation in (50) is O(1/N)O(1/N) and the error in (53) is O(1/N3/2)O(1/N^{3/2}).

where, for (60), we used a^mn2(t)\widehat{a}_{mn}^{2}(t) in place of a^mn(t)a^mn(t ⁣− ⁣1)\widehat{a}_{mn}(t)\widehat{a}_{mn}(t\!-\!1), used x^nl2(t)\widehat{x}_{nl}^{2}(t) in place of x^nl(t)x^nl(t ⁣− ⁣1)\widehat{x}_{nl}(t)\widehat{x}_{nl}(t\!-\!1), and neglected terms that are O(1/N)O(1/\sqrt{N}), since they vanish relative to the remaining O(1)O(1) terms in the large-system limit.

Next we plug (50), (53), νm,nlx(t)=νnlx(t)+O(1/N)\nu^{x}_{m,nl}(t)=\nu^{x}_{nl}(t)+O(1/\sqrt{N}), and νl,mna(t)=νmna(t)+O(1/N3/2)\nu^{a}_{l,mn}(t)=\nu^{a}_{mn}(t)+O(1/N^{3/2}) into (23), giving

where (62) retains only the O(1)O(1) terms from (61).

Similarly, we plug (53) into (46) and (50) into (58) to obtain

where the approximations involve the use of s^ml2(t)\widehat{s}^{2}_{ml}(t) in place of s^ml(t)s^ml(t−1)\widehat{s}_{ml}(t)\widehat{s}_{ml}(t-1), of a^mn(t)\widehat{a}_{mn}(t) in place of a^mn(t−1)\widehat{a}_{mn}(t-1), of x^nl(t)\widehat{x}_{nl}(t) in place of x^nl(t−1)\widehat{x}_{nl}(t-1), and the dropping of terms that vanish in the large-system limit. Finally, we make the approximations

by neglecting the s^ml2(t)−νmls(t)\widehat{s}^{2}_{ml}(t)-\nu^{s}_{ml}(t) terms in (45) and (57), as explained in Appendix B.

II-G Approximated Posteriors

The final step in the BiG-AMP derivation is to approximate the SPA posterior log-pdfs in (11) and (12). Plugging (27) and (37) into those expressions, we get

using steps similar to (40). The associated pdfs are

for C_{x}\triangleq\int_{x}p_{\textsf{x}_{nl}}(x)\mathcal{N}\big{(}x;\widehat{r}_{nl}(t),\nu^{r}_{nl}(t)\big{)} and C_{a}\triangleq\int_{a}p_{\textsf{a}_{mn}}(a)\mathcal{N}\big{(}a;\widehat{q}_{mn}(t),\nu^{q}_{mn}(t)\big{)}, which are iteration-tt BiG-AMP’s approximations to the true marginal posteriors pxnl∣Y(xnl ∣ Y)p_{\textsf{x}_{nl}|\textsf{{{Y}}}}(x_{nl}\,|\,\boldsymbol{Y}) and pamn∣Y(amn ∣ Y)p_{\textsf{a}_{mn}|\textsf{{{Y}}}}(a_{mn}\,|\,\boldsymbol{Y}), respectively.

Note that x^nl(t ⁣+ ⁣1)\widehat{x}_{nl}(t\!+\!1) and νnlx(t ⁣+ ⁣1)\nu^{x}_{nl}(t\!+\!1) from (51)-(52) are the mean and variance, respectively, of the posterior pdf in (69). Note also that (69) can be interpreted as the (exact) posterior pdf of xnl\textsf{x}_{nl} given the observation rnl=r^nl(t)\textsf{r}_{nl}=\widehat{r}_{nl}(t) under the prior model xnl∼pxnl\textsf{x}_{nl}\sim p_{\textsf{x}_{nl}} and the likelihood model p_{\textsf{r}_{nl}|\textsf{x}_{nl}}(\widehat{r}_{nl}(t)\,|\,x_{nl};\nu^{r}_{nl}(t))=\mathcal{N}\big{(}\widehat{r}_{nl}(t);x_{nl},\nu^{r}_{nl}(t)\big{)} implicitly assumed by iteration-tt BiG-AMP. Analogous statements can be made about the posterior pdf of amn\textsf{a}_{mn} in (70).

This completes the derivation of BiG-AMP.

II-H Algorithm Summary

The BiG-AMP algorithm derived in Sections II-C to II-G is summarized in Table III. There, we have included a maximum number of iterations, TmaxT_{\textrm{max}} and a stopping condition (R17) based on the (normalized) change in the residual and a user-defined parameter τBiG-AMP\tau_{\textrm{BiG-AMP}}. We have also written the algorithm in a more general form that allows the use of complex-valued quantities [note the complex conjugates in (R10) and (R12)], in which case N\mathcal{N} in (D1)-(D3) would be circular complex Gaussian. For ease of interpretation, Table III does not include the important damping modifications that will be detailed in Sec. IV-A. Suggestions for the initializations in (I2) will be given in the sequel.

We note that BiG-AMP avoids the use of SVD or QR decompositions, lending itself to simple and potentially parallel implementations. Its complexity order is dominatedThe computations in steps (R4)-(R8) are O(ML)O(ML), while the remainder of the algorithm is O(MN+NL)O(MN+NL). Thus, as NN grows, the matrix multiplies dominate the complexity. by ten matrix multiplications per iteration [in steps (R1)-(R3) and (R9)-(R12)], each requiring MNLMNL multiplications, although simplifications will be discussed in Sec. III.

The steps in Table III can be interpreted as follows. (R1)-(R2) compute a “plug-in” estimate P‾\boldsymbol{\overline{P}} of the matrix product Z ⁣= ⁣AX\textsf{{{Z}}}\!=\!\textsf{{{A}}}\textsf{{{X}}} and a corresponding set of element-wise variances {ν‾mlp}\{\overline{\nu}^{p}_{ml}\}. (R3)-(R4) then apply “Onsager” correction (see and for discussions in the contexts of AMP and GAMP, respectively) to obtain the corresponding quantities P^\boldsymbol{\widehat{P}} and {νmlp}\{\nu^{p}_{ml}\}. Using these quantities, (R5)-(R6) compute the (approximate) marginal posterior means Z^\boldsymbol{\widehat{Z}} and variances {νmlz}\{\nu^{z}_{ml}\} of Z. Steps (R7)-(R8) then use these posterior moments to compute the scaled residual S^\boldsymbol{\widehat{S}} and a set of inverse-residual-variances {νmls}\{\nu^{s}_{ml}\}. This interpretation becomes clear in the case of AWGN observations with noise variance νw\nu^{w}, where

Steps (R9)-(R10) then use the residual terms S^\boldsymbol{\hat{S}} and {νmls}\{\nu^{s}_{ml}\} to compute R^\boldsymbol{\hat{R}} and {νnlr}\{\nu^{r}_{nl}\}, where r^nl\widehat{r}_{nl} can be interpreted as a νnlr\nu^{r}_{nl}-variance-AWGN corrupted observation of the true xnl\textsf{x}_{nl}. Similarly, (R11)-(R12) compute Q^\boldsymbol{\hat{Q}} and {νmnq}\{\nu^{q}_{mn}\}, where q^mn\widehat{q}_{mn} can be interpreted as a νmnq\nu^{q}_{mn}-variance-AWGN corrupted observation of the true amn\textsf{a}_{mn}. Finally, (R13)-(R14) merge these AWGN-corrupted observations with the priors {pxnl}\{p_{\textsf{x}_{nl}}\} to produce the posterior means X^\boldsymbol{\hat{X}} and variances {νnlx}\{\nu^{x}_{nl}\}; (R15)-(R16) do the same for the amn\textsf{a}_{mn} quantities.

The BiG-AMP algorithm in Table III is a direct (although non-trivial) extension of the GAMP algorithm for compressive sensing , which estimates X assuming perfectly known A, and even stronger similarities to the A-uncertain GAMP from , which estimates X assuming knowledge of the marginal means and variances of unknown random A, but which makes no attempt to estimate A itself. In Sec. III-B, a simplified version of BiG-AMP will be developed that is similar to the Bayesian-AMP algorithm for compressive sensing.

III BiG-AMP Simplifications

We now describe simplifications of the BiG-AMP algorithm from Table III that result from additional approximations and from the use of specific priors pyml∣zmlp_{\textsf{y}_{ml}|\textsf{z}_{ml}}, pxnlp_{\textsf{x}_{nl}}, and pamnp_{\textsf{a}_{mn}} that arise in practical applications of interest.

The BiG-AMP algorithm in Table III stores and processes a number of element-wise variance terms whose values vary across the elements (e.g., νnlx\nu^{x}_{nl} can vary across nn and ll). The use of scalar variances (i.e., uniform across m,n,lm,n,l) significantly reduces the memory and complexity of the algorithm.

To derive scalar-variance BiG-AMP, we first assume ∀n,l:νnlx(t)≈νx(t)≜1NL∑n=1N∑l=1Lνnlx(t)\forall n,l:\nu^{x}_{nl}(t)\approx\nu^{x}(t)\triangleq\frac{1}{NL}\sum_{n=1}^{N}\sum_{l=1}^{L}\nu^{x}_{nl}(t) and ∀m,n:νmna(t)≈νa(t)≜1MN∑m=1M∑n=1Nνmna(t)\forall m,n:\nu^{a}_{mn}(t)\approx\nu^{a}(t)\triangleq\frac{1}{MN}\sum_{m=1}^{M}\sum_{n=1}^{N}\nu^{a}_{mn}(t), so from (R1)

Note that using (74) in place of (R1) avoids two matrix multiplies. Plugging these approximations into (R3) gives

which, when used in place of (R3), avoids another matrix multiply. Even with the above scalar-variance approximations, {νmls(t)}\{\nu^{s}_{ml}(t)\} from (R5) are not guaranteed to be equal (except in special cases like AWGN pyml∣zmlp_{\textsf{y}_{ml}|\textsf{z}_{ml}}). Still, they can be approximated as such using νs(t)≜1ML∑m=1M∑l=1Lνmls(t)\nu^{s}(t)\triangleq\frac{1}{ML}\sum_{m=1}^{M}\sum_{l=1}^{L}\nu^{s}_{ml}(t), in which case

Using (76) in place of (R9) and (77) in place of (R11) avoids two matrix multiplies and NL ⁣+ ⁣MN ⁣− ⁣2NL\!+\!MN\!-\!2 scalar divisions, and furthermore allows (R10) and (R12) to be implemented as

saving two more matrix multiplies, and leaving a total of only three matrix multiplies per iteration.

III-B Possibly Incomplete AWGN Observations

We now consider a particular observation model wherein the elements of Z ⁣= ⁣AX\boldsymbol{Z}\!=\!\boldsymbol{AX} are AWGN-corrupted at a subset of indices Ω⊂(1…M) ⁣× ⁣(1…L)\Omega\subset(1\dots M)\!\times\!(1\dots L) and unobserved at the remaining indices, noting that the standard AWGN model (71) is the special case where ∣Ω∣ ⁣= ⁣ML|\Omega|\!=\!ML. This “possibly incomplete AWGN” (PIAWGN) model arises in a number of important applications, such as matrix completion and dictionary learning.

We can state the PIAWGN model probabilistically as

When the PIAWGN model is combined with the scalar-variance approximations from Sec. III-A, BiG-AMP simplifies considerably. To see this, we start by using νp(t)\nu^{p}(t) from (75) in place of νmlp(t)\nu^{p}_{ml}(t) in (81)-(82), resulting in

since PΩP_{\Omega} is a projection operator, and using (R4) and (83).

Scalar-variance BiG-AMP under PIAWGN observations is summarized in Table IV. Note that the residual matrix U^(t)≜PΩ(Y−A^(t)X^(t))\boldsymbol{\widehat{U}}(t)\triangleq P_{\Omega}(\boldsymbol{Y}-\boldsymbol{\widehat{A}}(t)\boldsymbol{\widehat{X}}(t)) needs to be computed and stored only at the observed entries (m,l)∈Ω(m,l)\in\Omega, leading to significant savingsSimilar computational savings also occur with incomplete non-Gaussian observations. when the observations are highly incomplete (i.e., ∣Ω∣≪ML|\Omega|\ll ML). The same is true for the Onsager-corrected residual, V^(t)\boldsymbol{\widehat{V}}(t). Thus, the algorithm in Table IV involves only three (partial) matrix multiplies [in steps (R3p), (R8p), and (R10p), respectively], each of which can be computed using only N∣Ω∣N|\Omega| scalar multiplies.

We note that Krzakala, Mézard, and Zdeborová recently proposed an AMP-based approach to blind calibration and dictionary learning that bears close similarityThe approach in does not compute (or use) νp(t)\nu^{p}(t) as given in lines (R4p)-(R5p) of Table IV, but rather uses an empirical average of the squared Onsager-corrected residual in place of our νp(t)+νw\nu^{p}(t)+\nu^{w} throughout their algorithm. to BiG-AMP under the special case of AWGN-corrupted observations (i.e., ∣Ω∣=ML|\Omega|=ML) and scalar variances. Their derivation differs significantly from that in Sec. II due to the many simplifications offered by this special case.

III-C Zero-mean iid Gaussian Priors on A and X

In this section we will investigate the simplifications that result in the case that both pamnp_{\textsf{a}_{mn}} and pxnlp_{\textsf{x}_{nl}} are zero-mean iid Gaussian, i.e.,

which, as will be discussed later, is appropriate for matrix completion. In this case, straightforward calculations reveal that E⁡{xnl ∣ rnl ⁣= ⁣r^nl;νnlr}=r^nlν0x/(νnlr+ν0x)\operatorname{E}\{\textsf{x}_{nl}\,|\,\textsf{r}_{nl}\!=\!\widehat{r}_{nl};\nu^{r}_{nl}\}=\widehat{r}_{nl}\nu^{x}_{0}/(\nu^{r}_{nl}+\nu^{x}_{0}) and var⁡{xnl ∣ rnl ⁣= ⁣r^nl;νnlr})=ν0xνnlr/(νnlr+ν0x)\operatorname{var}\{\textsf{x}_{nl}\,|\,\textsf{r}_{nl}\!=\!\widehat{r}_{nl};\nu^{r}_{nl}\})=\nu^{x}_{0}\nu^{r}_{nl}/(\nu^{r}_{nl}+\nu^{x}_{0}) and, similarly, that E⁡{amn ∣ qmn ⁣= ⁣q^mn;νmnq}=q^mnν0a/(νmnq+ν0a)\operatorname{E}\{\textsf{a}_{mn}\,|\,\textsf{q}_{mn}\!=\!\widehat{q}_{mn};\nu^{q}_{mn}\}=\widehat{q}_{mn}\nu^{a}_{0}/(\nu^{q}_{mn}+\nu^{a}_{0}) and var⁡{amn ∣ qmn ⁣= ⁣q^mn,νmnq}=ν0aνmnq/(νmnq+ν0a)\operatorname{var}\{\textsf{a}_{mn}\,|\,\textsf{q}_{mn}\!=\!\widehat{q}_{mn},\nu^{q}_{mn}\}=\nu^{a}_{0}\nu^{q}_{mn}/(\nu^{q}_{mn}+\nu^{a}_{0}). Combining these iid Gaussian simplifications with the scalar-variance simplifications from Sec. III-A yields an algorithm whose computational cost is dominated by three matrix multiplies per iteration, each with a cost of MNLMNL scalar multiplies. The precise number of multiplies it consumes depends on the assumed likelihood model that determines steps (R7g)-(R8g).

Additionally incorporating the PIAWGN observations from Sec. III-B reduces the cost of the three matrix multiplies to only N∣Ω∣N|\Omega| scalar multiplies each, and yields the “BiG-AMP-Lite” algorithm summarized in Table V, consuming (3N+5)∣Ω∣+3(MN+NL)+29(3N+5)|\Omega|+3(MN+NL)+29 multiplies per iteration.

IV Adaptive Damping

The approximations made in the BiG-AMP derivation presented in Sec. II were well-justified in the large system limit, i.e., the case where M,N,L→∞M,N,L\rightarrow\infty with fixed MN\frac{M}{N} and LN\frac{L}{N}. In practical applications, however, these dimensions (especially NN) are finite, and hence the algorithm presented in Sec. II may diverge. In case of compressive sensing, the use of “damping” with GAMP yields provable convergence guarantees with arbitrary matrices . Here, we propose to incorporate damping into BiG-AMP. Moreover, we propose to adapt the damping of these variables to ensure that a particular cost criterion decreases monotonically (or near-monotonically), as described in the sequel. The specific damping strategy that we adopt is similar to that described in and coded in .

In BiG-AMP, the iteration-tt damping factor β(t)∈(0,1]\beta(t)\in(0,1] is used to slow the evolution of certain variables, namely ν‾mlp\overline{\nu}^{p}_{ml}, νmlp\nu^{p}_{ml}, νmls\nu^{s}_{ml}, s^ml\widehat{s}_{ml}, x^nl\widehat{x}_{nl}, and a^mn\widehat{a}_{mn}. To do this, steps (R1), (R3), (R7), and (R8) in Table III are replaced with

and the following are inserted between (R8) and (R9):

The newly defined state variables x‾nl(t)\overline{x}_{nl}(t) and a‾mn(t)\overline{a}_{mn}(t) are then used in place of x^nl(t)\widehat{x}_{nl}(t) and a^mn(t)\widehat{a}_{mn}(t) in steps (R9)-(R12) [but not (R1)-(R2)] of Table III. A similar approach can be used for the algorithm in Table IV (with the damping applied to V^(t)\boldsymbol{\widehat{V}}(t) instead of S^(t)\boldsymbol{\widehat{S}}(t)) and those in Table V. Notice that, when β(t) ⁣= ⁣1\beta(t)\!=\!1, the damping has no effect, whereas when β(t) ⁣= ⁣0\beta(t)\!=\!0, all quantities become frozen in tt.

IV-B Adaptive Damping

The idea behind adaptive damping is to monitor a chosen cost criterion J(t)J(t) and decrease β(t)\beta(t) when the cost has not decreased sufficientlyThe following adaptation procedure is borrowed from GAMPmatlab, where it has been established to work well in the context of GAMP-based compressive sensing. When the current cost J(t)J(t) is not smaller than the largest cost in the most recent stepWindow iterations, then the “step” is deemed unsuccessful, the damping factor β(t)\beta(t) is reduced by the factor stepDec, and the step is attempted again. These attempts continue until either the cost criterion decreases or the damping factor reaches stepMin, at which point the step is considered successful, or the iteration count exceeds Tmax⁡T_{\max} or the damping factor reaches stepTol, at which point the algorithm terminates. When a step is deemed successful, the damping factor is increased by the factor stepInc, up to the allowed maximum value stepMax. relative to {J(τ)}τ=t−1−Tt−1\{J(\tau)\}_{\tau=t-1-T}^{t-1} for some “step window” T≥0T\geq 0. This mechanism allows the cost criterion to increase over short intervals of TT iterations and in this sense is similar to the procedure used by SpaRSA . We now describe how the cost criterion J(t)J(t) is constructed, building on ideas in .

Notice that, for fixed observations Y\boldsymbol{Y}, the joint posterior pdf solves the (trivial) KL-divergence minimization problem

The factorized form (5) of the posterior allows us to write

To judge whether a given time-tt BiG-AMP approximation “bX,A(t)b_{\textsf{{{X}}},\textsf{{{A}}}}(t)” of the joint posterior pX,A∣Yp_{\textsf{{{X}}},\textsf{{{A}}}|\textsf{{{Y}}}} is better than the previous approximation bX,A(t ⁣− ⁣1)b_{\textsf{{{X}}},\textsf{{{A}}}}(t\!-\!1), one could in principle plug the posterior approximation expressions (69)-(70) into (103) and then check whether J(bX,A(t))<J(bX,A(t ⁣− ⁣1))J(b_{\textsf{{{X}}},\textsf{{{A}}}}(t))<J(b_{\textsf{{{X}}},\textsf{{{A}}}}(t\!-\!1)). But, since the expectation in (103) is difficult to evaluate, we approximate the cost (103) by using, in place of AX, an independent Gaussian matrixThe GAMP work uses a similar approximation. whose component means and variances are matched to those of AX. Taking the joint BiG-AMP posterior approximation bX,A(t)b_{\textsf{{{X}}},\textsf{{{A}}}}(t) to be the product of the marginals from (69)-(70), the resulting component means and variances are

In this way, the approximate iteration-tt cost becomes

Intuitively, the first term in (108) penalizes the deviation between the (BiG-AMP approximated) posterior and the assumed prior on X, the second penalizes the deviation between the (BiG-AMP approximated) posterior and the assumed prior on A, and the third term rewards highly likely estimates Z.

V Parameter Tuning and Rank Selection

Recall that BiG-AMP requires the specification of priors pX(X)=∏n,lpxnl(xnl)p_{\textsf{{{X}}}}(\boldsymbol{X})=\prod_{n,l}p_{\textsf{x}_{nl}}(x_{nl}), pA(A)=∏m,npamn(amn)p_{\textsf{{{A}}}}(\boldsymbol{A})=\prod_{m,n}p_{\textsf{a}_{mn}}(a_{mn}), and pY∣Z(Y∣Z)=∏m,lpyml∣zml(yml∣zml)p_{\textsf{{{Y}}}|\textsf{{{Z}}}}(\boldsymbol{Y}|\boldsymbol{Z})=\prod_{m,l}p_{\textsf{y}_{ml}|\textsf{z}_{ml}}(y_{ml}|z_{ml}). In practice, although one may know appropriate families for these distributions, the exact parameters that govern them are generally unknown. For example, one may have good reason to believe apriori that the observations are AWGN corrupted, justifying the choice pyml∣zml(yml∣zml)=N(yml;zml,νw)p_{\textsf{y}_{ml}|\textsf{z}_{ml}}(y_{ml}|z_{ml})=\mathcal{N}(y_{ml};z_{ml},\nu^{w}), but the noise variance νw\nu^{w} may be unknown. In this section, we outline a methodology that takes a given set of BiG-AMP parameterized priors {pxnl(⋅;θ),pamn(⋅;θ),pyml∣zml(yml∣⋅;θ)}∀m,n,l\{p_{\textsf{x}_{nl}}(\cdot;\boldsymbol{\theta}),p_{\textsf{a}_{mn}}(\cdot;\boldsymbol{\theta}),p_{\textsf{y}_{ml}|\textsf{z}_{ml}}(y_{ml}|\cdot;\boldsymbol{\theta})\}_{\forall m,n,l} and tunes the parameter vector θ\boldsymbol{\theta} using an expectation-maximization (EM) based approach, with the goal of maximizing the likelihood, i.e., finding θ^≜arg max⁡θpY(Y;θ)\boldsymbol{\hat{\theta}}\triangleq\operatorname*{arg\,max}_{\boldsymbol{\theta}}p_{\textsf{{{Y}}}}(\boldsymbol{Y};\boldsymbol{\theta}). The approach presented here can be considered as a generalization of the GAMP-based work to BiG-AMP.

Taking X, A, and Z to be the hidden variables, the EM recursion can be written as

As a concrete example, consider updating the noise variance νw\nu^{w} under the PIAWGN model (80). Equation (109) suggests

where the true marginal posterior pzml∣Y(⋅∣Y)p_{\textsf{z}_{ml}|\textsf{{{Y}}}}(\cdot|\boldsymbol{Y}) is replaced with the most recent BiG-AMP approximation pzml∣pml(⋅∣p^ml(Tmax⁡);νmlp(Tmax⁡),θ^k)p_{\textsf{z}_{ml}|\textsf{p}_{ml}}(\cdot|\widehat{p}_{ml}(T_{\max});\nu^{p}_{ml}(T_{\max}),\boldsymbol{\widehat{\theta}}^{k}), where “most recent” is with respect to both EM and BiG-AMP iterations. Zeroing the derivative of the sum in (110) with respect to νw\nu^{w},

where z^ml(t)\widehat{z}_{ml}(t) and νmlz(t)\nu^{z}_{ml}(t) are the BiG-AMP approximated posterior mean and variance from (33)-(34).

The overall procedure can be summarized as follows. From a suitable initialization θ^0\boldsymbol{\hat{\theta}}^{0}, BiG-AMP is run using the priors {pxnl(⋅;θ^0),pamn(⋅;θ^0),pyml∣zml(yml∣⋅;θ^0)}∀m,n,l\{p_{\textsf{x}_{nl}}(\cdot;\boldsymbol{\hat{\theta}}^{0}),p_{\textsf{a}_{mn}}(\cdot;\boldsymbol{\hat{\theta}}^{0}),p_{\textsf{y}_{ml}|\textsf{z}_{ml}}(y_{ml}|\cdot;\boldsymbol{\hat{\theta}}^{0})\}_{\forall m,n,l} and iterated to completion, yielding approximate marginal posteriors on {xnl,amn,zml}∀m,n,l\{\textsf{x}_{nl},\textsf{a}_{mn},\textsf{z}_{ml}\}_{\forall m,n,l}. These posteriors are used in (109) to update the parameters θ\boldsymbol{\theta} one element at a time, yielding θ^1\boldsymbol{\hat{\theta}}^{1}. BiG-AMP is then run using the priors {pxnl(⋅;θ^1),pamn(⋅;θ^1),pyml∣zml(yml∣⋅;θ^1)}∀m,n,l\{p_{\textsf{x}_{nl}}(\cdot;\boldsymbol{\hat{\theta}}^{1}),p_{\textsf{a}_{mn}}(\cdot;\boldsymbol{\hat{\theta}}^{1}),p_{\textsf{y}_{ml}|\textsf{z}_{ml}}(y_{ml}|\cdot;\boldsymbol{\hat{\theta}}^{1})\}_{\forall m,n,l}, and so on. A detailed discussion in the context of GAMP, along with explicit update equations for the parameters of Bernoulli-Gaussian-mixture pdfs, can be found in .

V-B Rank Selection

BiG-AMP and EM-BiG-AMP, as described up to this point, require the specification of the rank NN, i.e., the number of columns in A (and rows in X) in the matrix factorization Z=AX\textsf{{{Z}}}=\textsf{{{A}}}\textsf{{{X}}}. Since, in many applications, the best choice of NN is difficult to specify in advance, we now describe two procedures to estimate NN from the data Y\boldsymbol{Y}, building on well-known rank-selection procedures.

have been developed, such as the Bayesian Information Criterion (BIC) and Akaike’s Information Criterion (AIC) . In (112), Θ^N\boldsymbol{\hat{\Theta}}_{N} is the ML estimate of \mathsfbfΘN\mathsfbf{\Theta}_{N} under Y\boldsymbol{Y}, and η(⋅)\eta(\cdot) is a penalty function that depends on the effective number of scalar parameters NeffN_{\text{eff}} estimated under model HN\mathcal{H}_{N} (which depends on NN) and possibly on the number of scalar parameters ∣Ω∣|\Omega| that make up the observation Y\boldsymbol{Y}.

Applying this methodology to EM-BiG-AMP, where pY∣\mathsfbfΘN(Y ∣ ΘN)=pY∣Z(Y ∣ ANXN;θ)p_{\textsf{{{Y}}}|\mathsfbf{\Theta}_{N}}(\boldsymbol{Y}\,|\,\boldsymbol{\Theta}_{N})=p_{\textsf{{{Y}}}|\textsf{{{Z}}}}(\boldsymbol{Y}\,|\,\boldsymbol{A}_{N}\boldsymbol{X}_{N};\boldsymbol{\theta}), we obtain the rank-selection rule

Since NeffN_{\text{eff}} depends on the application (e.g., matrix completion, robust PCA, dictionary learning), detailed descriptions of η(⋅)\eta(\cdot) are postponed to .

To perform the maximization over NN in (113), we start with a small hypothesis N1N_{1} and run EM-BiG-AMP to completion, generating the (approximate) MMSE estimates A^N1,X^N1\boldsymbol{\hat{A}}_{N_{1}},\boldsymbol{\hat{X}}_{N_{1}} and ML estimate θ^\boldsymbol{\hat{\theta}}, which are then used to evaluateSince we compute approximate MMSE estimates rather than ML estimates, we are in fact evaluating a lower bound on the penalized log-likelihood. the penalized log-likelihood in (113). The NN hypothesis is then increased by a fixed value (i.e., N2=N1+rankStepN_{2}=N_{1}+\texttt{rankStep}), initializations of (AN2,XN2,θ)(\boldsymbol{A}_{N_{2}},\boldsymbol{X}_{N_{2}},\boldsymbol{\theta}) are chosen based on the previously computed (A^N1,X^N1,θ^)(\boldsymbol{\hat{A}}_{N_{1}},\boldsymbol{\hat{X}}_{N_{1}},\boldsymbol{\hat{\theta}}), and EM-BiG-AMP is run to completion, yielding estimates (A^N2,X^N2,θ^)(\boldsymbol{\hat{A}}_{N_{2}},\boldsymbol{\hat{X}}_{N_{2}},\boldsymbol{\hat{\theta}}) with which the penalized likelihood is again evaluated. This process continues until either the value of the penalized log-likelihood decreases, in which case N^\widehat{N} is set at the previous (i.e., maximizing) hypothesis of NN, or the maximum-allowed rank N‾\overline{N} is reached.

V-B2 Rank contraction

We now describe an alternative rank-selection procedure that is appropriate when Z has a “cliff” in its singular value profile and which is reminiscent of that used in LMaFit . In this approach, EM-BiG-AMP is initially configured to use the maximum-allowed rank, i.e., N=N‾N=\overline{N}. After the first EM iteration, the singular values {σn}\{\sigma_{n}\} of the estimate X^\boldsymbol{\hat{X}} and the corresponding pairwise ratios Rn=σn/σn+1R_{n}=\sigma_{n}/\sigma_{n+1} are computed,In some cases the singular values of A^\boldsymbol{\hat{A}} could be used instead. from which a candidate rank estimate N^=arg max⁡nRn\widehat{N}=\operatorname*{arg\,max}_{n}R_{n} is identified, corresponding to the largest gap in successive singular values. However, this candidate is accepted only if this maximizing ratio exceeds the average ratio by the user-specified parameter τMOS\tau_{\text{MOS}} (e.g., τMOS=5\tau_{\text{MOS}}=5), i.e., if

and if N^/N‾\widehat{N}/\overline{N} is sufficiently small. Increasing τMOS\tau_{\text{MOS}} makes the approach less prone to selecting an erroneous rank during the first few iterations, but making the value too large prevents the algorithm from detecting small gaps between the singular values. If N^\widehat{N} is accepted, then the matrices A and X are pruned to size N^\widehat{N} and EM-BiG-AMP is run to convergence. If not, EM-BiG-AMP is run for one more iteration, after which a new candidate N^\widehat{N} is identified and checked for acceptance, and so on.

In many cases, a rank candidate is accepted after a small number of iterations, and thus only a few SVDs need be computed. This procedure has the advantage of running EM-BiG-AMP to convergence only once, rather than several times under different hypothesized ranks. However, when the singular values of Z decay smoothly, this procedure can mis-estimate the rank, as discussed in .

VI Matrix Completion

In this and the next two sections, we detail the application of BiG-AMP to the problems of matrix completion (MC), robust principle components analysis (RPCA), and dictionary learning (DL), respectively. For each application, we discuss the BiG-AMP’s choice of matrix representation, priors, likelihood, initialization, adaptive damping, EM-driven parameter learning, and rank-selection. Also, for each application, we provide an extensive empirical study comparing BiG-AMP to state-of-the-art solvers on both synthetic and real-world datasets. These results demonstrate that BiG-AMP yields excellent reconstruction performance (often best in class) while maintaining competitive runtimes. For each application of BiG-AMP discussed in the sequel, we recommend numerical settings for necessary parameter values, as well as initialization strategies when appropriate. Although we cannot guarantee that our recommendations are universally optimal, they worked well for the range of problems considered in this paper, and we conjecture that they offer a useful starting point for further experimentation. Nevertheless, modifications may be appropriate when applying BiG-AMP outside the range of problems considered here. Our BiG-AMP Matlab code can be found as part of the GAMPmatlab package at https://sourceforge.net/projects/gampmatlab/, including examples of BiG-AMP applied to the MC, RPCA, and DL problems.

As in several existing Bayesian approaches to matrix completion (e.g., ), we choose Gaussian priors for the factors A and X. Although EM-BiG-AMP readily supports the use of priors with row- and/or column-dependent parameters, we focus on simple iid priors of the form

where the mean and variance in (116) can be tuned using EM-BiG-AMP, as described in the sequel, and where the variance in (115) is fixed to avoid a scaling ambiguity between A and X. Section VI-F demonstrates that this simple approach is effective in attacking several MC problems of interest. Assuming the observation noise to be additive and Gaussian, we then choose the PIAWGN model from (80) for the likelihood pY∣Zp_{\textsf{{{Y}}}|\textsf{{{Z}}}} given by

Note that, by using (115)-(116) with x^0=0\widehat{x}_{0}=0 and the scalar-variance approximation from Sec. III-A, the BiG-AMP algorithm from Table III reduces to the simpler BiG-AMP-Lite algorithm from Table V with ν0a=1\nu^{a}_{0}=1.

VI-B Initialization

In most cases we advocate initializing the BiG-AMP quantities X^(1)\boldsymbol{\hat{X}}(1) and A^(1)\boldsymbol{\hat{A}}(1) using random draws from the priors pXp_{\textsf{{{X}}}} and pAp_{\textsf{{{A}}}}, although setting either X^(1)\boldsymbol{\hat{X}}(1) or A^(1)\boldsymbol{\hat{A}}(1) at zero also seems to perform well in the MC application. Although it is also possible to use SVD-based initializations of X^(1)\boldsymbol{\hat{X}}(1) and A^(1)\boldsymbol{\hat{A}}(1) (i.e., for SVD Y=UΣDT\boldsymbol{Y}=\boldsymbol{U}\boldsymbol{\Sigma}\boldsymbol{D}^{T}, set A^(1)=UΣ1/2\boldsymbol{\hat{A}}(1)=\boldsymbol{U}\boldsymbol{\Sigma}^{1/2} and X^(1)=Σ1/2DT\boldsymbol{\hat{X}}(1)=\boldsymbol{\Sigma}^{1/2}\boldsymbol{D}^{T}) as done in LMaFit and VSBL , experiments suggest that the extra computation required is rarely worthwhile for BiG-AMP.

As for the initializations νnlx(1)\nu_{nl}^{x}(1) and νmna(1)\nu_{mn}^{a}(1), we advocate setting them at 1010 times the prior variances in (115)-(116), which has the effect of weighting the measurements Y\boldsymbol{Y} more than the priors pX,pAp_{\textsf{{{X}}}},p_{\textsf{{{A}}}} during the first few iterations.

VI-C Adaptive damping

For the assumed likelihood (117) and priors (115)-(116), the adaptive-damping cost criterion J^(t)\widehat{J}(t) described in Sec. IV-B reduces to

To derive (118), one can start with the first term in (108) and leverage the Gaussianity of the approximated posterior on xnl\textsf{x}_{nl}:

which then directly yields the first term in (118). The second term in (118) follows using a similar procedure, and the third and fourth terms follow directly from the PIAWGN model.

In the noise free setting (i.e., νw→0\nu^{w}\rightarrow 0), the third term in (118) dominates, omitting the need to compute the other terms.

VI-D EM-BiG-AMP

For the likelihood (117) and priors (115)-(116), the distributional parameters θ=[νw,x^0,ν0x]T\boldsymbol{\theta}=[\nu^{w},\widehat{x}_{0},\nu_{0}^{x}]^{T} can be tuned using the EM approach from Sec. V-A.For the first EM iteration, we recommend initializing BiG-AMP using νnlx(1)=ν0x\nu_{nl}^{x}(1)=\nu^{x}_{0}, x^nl(1)=x^0\widehat{x}_{nl}(1)=\widehat{x}_{0}, νmna(1)=1\nu_{mn}^{a}(1)=1, and a^mn(1)\widehat{a}_{mn}(1) drawn randomly from pamnp_{\textsf{a}_{mn}}. After the first iteration, we recommend warm-starting BiG-AMP using the values from the previous EM iteration. To initialize θ\boldsymbol{\theta} for EM-BiG-AMP, we adapt the procedure outlined in to our matrix-completion problem, giving the EM initializations x^0=0\widehat{x}_{0}=0 and

where SNR0\textrm{SNR}^{0} is an initial estimate of the signal-to-noise ratio that, in the absence of other knowledge, can be set at 100100.

VI-E Rank selection

For MC rank-selection under the penalized log-likelihood strategy (113), we recommend using the small sample corrected AIC (AICc) penalty η(N)=2∣Ω∣∣Ω∣−Neff−1Neff\eta(N)=2\frac{|\Omega|}{|\Omega|-N_{\text{eff}}-1}N_{\text{eff}}. For the MC problem, Neff=df+3N_{\text{eff}}=\mathsf{df}+3, where df≜N(M ⁣+ ⁣L ⁣− ⁣N)\mathsf{df}\triangleq N(M\!+\!L\!-\!N) counts the degrees-of-freedom in a rank-NN real-valued M×LM\times L matrix and the three additional parameters come from θ\boldsymbol{\theta}. Based on the PIAWGN likelihood (117) and the standard form of the ML estimate of νw\nu^{w} (see, e.g., [55, eq. (7)]), the update rule (113) becomes

We note that a similar rule (but based on BIC rather than AICc) was used for rank-selection in .

MC rank selection can also be performed using the rank contraction scheme described in Sec. V-B2. We recommend choosing the maximum rank N‾\overline{N} to be the largest value such that N‾(M+L−N‾)<∣Ω∣\overline{N}(M+L-\overline{N})<|\Omega| and setting τMOS=1.5\tau_{\text{MOS}}=1.5. Since the first EM iteration runs BiG-AMP with the large value N=N‾N=\overline{N}, we suggest limiting the number of allowed BiG-AMP iterations during this first EM iteration to nitFirstEM=50\texttt{nitFirstEM}=50. In many cases, the rank learning procedure will correctly reduce the rank after these first few iterations, reducing the added computational cost of the rank selection procedure.

VI-F Matrix Completion Experiments

We now present the results of experiments used to ascertain the performance of BiG-AMP relative to existing state-of-the-art algorithms for matrix completion. For these experiments, we considered IALM , a nuclear-norm based convex-optimization method; LMaFit , a non-convex optimization-based approach using non-linear successive over-relaxation; GROUSE , which performs gradient descent on the Grassmanian manifold; Matrix-ALPS , a greedy hard-thresholding approach; and VSBL , a variational Bayes approach. In general, we configured BiG-AMP as described in Sec. VIUnless otherwise noted, we used the BiG-AMP parameters Tmax⁡=1500T_{\max}=1500 (see Sec. II-H for descriptions) and the adaptive damping parameters stepInc=1.1\texttt{stepInc}=1.1, stepDec=0.5\texttt{stepDec}=0.5, stepMin=0.05\texttt{stepMin}=0.05, stepMax=0.5\texttt{stepMax}=0.5, stepWindow=1\texttt{stepWindow}=1, and β(1)=stepMin\beta(1)=\texttt{stepMin}. (See Sec. IV-B for descriptions). and made our best attempt to configure the competing algorithms for maximum performance. That said, the different experiments that we ran required somewhat different parameter settings, as we detail in the sequel.

Defining “successful” matrix completion as NMSE <−100<-100 dB, Fig. 2 shows the success rate of each algorithm over a grid of sampling ratios δ≜∣Ω∣ML\delta\triangleq\frac{|\Omega|}{ML} and ranks NN. As a reference, the solid line superimposed on each subplot delineates the problem feasibility boundary, i.e., the values of (δ,N)(\delta,N) yielding ∣Ω∣=df|\Omega|=\mathsf{df}, where df=N(M+L−N)\mathsf{df}=N(M+L-N) is the degrees-of-freedom in a rank-NN real-valued M×LM\times L matrix; successful recovery above this line is impossible by any method.

Figure 2 shows that each algorithm exhibits a sharp phase-transition separating near-certain success from near-certain failure. There we see that BiG-AMP yields the best PTC. Moreover, BiG-AMP’s PTC is near optimal in the sense of coming very close to the feasibility boundary for all tested δ\delta and NN. In addition, Fig. 2 shows that BiG-AMP-Lite yields the second-best PTC, which matches that of BiG-AMP except under very low sampling rates (e.g., δ<0.03\delta<0.03). Recall that the only difference between the two algorithms is that BiG-AMP-Lite uses the scalar-variance simplification from Sec. III-A.

Figure 3 plots median runtimeThe reported runtimes do not include the computations used for initialization nor those used for runtime evaluation. to NMSE =−100=-100 dB versus rank NN for several sampling ratios δ\delta, uncovering orders-of-magnitude differences among algorithms. For most values of δ\delta and NN, LMaFit was the fastest algorithm and BiG-AMP-Lite was the second fastest, although BiG-AMP-Lite was faster than LMaFit at small δ\delta and relatively large NN, while BiG-AMP-Lite was slower than GROUSE at large δ\delta and very small NN. In all cases, BiG-AMP-Lite was faster than IALM and VSBL, with several orders-of-magnitude difference at high rank. Meanwhile, EM-BiG-AMP was about 33 to 55 times slower than BiG-AMP-Lite. Although none of the algorithm implementations were fully optimized, we believe that the reported runtimes are insightful, especially with regard to the scaling of runtime with rank NN.

VI-F2 Approximately low-rank matrices

As in , we first tried to recover Z\boldsymbol{Z} from the noiseless incomplete observations {zml}(m,l)∈Ω\{z_{ml}\}_{(m,l)\in\Omega}, with Ω\Omega chosen uniformly at random. Figure 4 shows the performance of several algorithms that are able to learn the underlying rank: LMaFit,LMaFit was run under the settings provided in their source code for this example. VSBL,VSBL was allowed at most 100100 iterations and run with DIMRED_THR =103=10^{3}, UPDATE_BETA =1=1, and tolerance =10−8=10^{-8}. and EM-BiG-AMP under the penalized log-likelihood rank selection strategy from Sec. V-B1.Rank-selection rule (113) was used with up to 55 EM iterations for each rank hypothesis NN, a minimum of 3030 and maximum of 100100 BiG-AMP iterations for each EM iteration, and a BiG-AMP tolerance of 10−810^{-8}. All three algorithms were allowed a maximum rank of N‾=30\overline{N}=30. The figure shows that the NMSE performance of BiG-AMP and LMaFit are similar, although BiG-AMP tends to find solutions with lower rank but comparable NMSE at low sampling ratios δ\delta. For this noiseless experiment, VSBL consistently estimates ranks that are too low, leading to inferior NMSEs.

Next, we examined noisy matrix completion by constructing the matrix Z=UΣVT\boldsymbol{Z}=\boldsymbol{U\Sigma V}^{\textsf{T}} as above but then corrupting the measurements with AWGN. Figure 5 shows NMSE and estimated rank versus the measurement signal-to-noise ratio (SNR) ∑(m,l)∈Ω∣zml∣2/∑(m,l)∈Ω∣yml−zml∣2\sum_{(m,l)\in\Omega}|z_{ml}|^{2}/\sum_{(m,l)\in\Omega}|y_{ml}-z_{ml}|^{2} at a sampling rate of δ=0.2\delta=0.2. There we see that, for SNRs <50<50 dB, EM-BiG-AMP and VSBL offer similarly good NMSE performance and nearly identical rank estimates, whereas LMaFit overestimates the rank and thus performs worse in NMSE. Meanwhile, for SNRs >50>50 dB, EM-BiG-AMP and LMaFit offer similarly good NMSE performance and nearly identical rank estimates, whereas VSBL underestimates the rank and thus performs worse in NMSE. Thus, in these examples, EM-BiG-AMP is the only algorithm to successfully estimate the rank across the full SNR range.

VI-F3 Image completion

We now compare the performance of several matrix-completion algorithms for the task of reconstructing an image from a subset of its pixels. For this, we repeated the experiment in the Matrix-ALPS paper , where the 512×512512\times 512 boat image was reconstructed from 35%35\% of its pixels sampled uniformly at random. Figure 6 shows the complete (full-rank) image, the images reconstructed by several matrix-completion algorithmsAll algorithms were run with a convergence tolerance of 10−410^{-4}. VSBL was run with β\beta hand-tuned to maximize performance, as the adaptive version did not converge on this example. GROUSE was run with maxCycles=600\texttt{maxCycles}=600 and step_size=0.1\texttt{step\_size}=0.1. Matrix-ALPS II with QR was run under default parameters and 300300 allowed iterations. Other settings are similar to earlier experiments. under a fixed rank of N=40N=40, and the NMSE-minimizing rank-4040 approximation of the complete image, computed using an SVD. In all cases, the sample mean of the observations was subtracted prior to processing and then added back to the estimated images, since this approach generally improved performance. Figure 6 also lists the median reconstruction NMSE over 1010 sampling-index realizations Ω\Omega. From these results, it is apparent that EM-BiG-AMP provides the best NMSE, which is only 33 dB from that of the NMSE-optimal rank-4040 approximation.

VI-F4 Collaborative Filtering

In our final experiment, we investigate the performance of several matrix-completion algorithms on the task of collaborative filtering. For this, we repeated an experiment from the VSBL paper that used the MovieLens 100k dataset, which contains ratings {zml}(m,l)∈R\{z_{ml}\}_{(m,l)\in\mathcal{R}}, where ∣R∣=100 000|\mathcal{R}|=100\,000 and zml∈{1,2,3,4,5}z_{ml}\in\{1,2,3,4,5\}, from M=943M=943 users about L=1682L=1682 movies. The algorithms were provided with a randomly chosen training subset {zml}(m,l)∈Ω\{z_{ml}\}_{(m,l)\in\Omega} of the ratings (i.e., Ω⊂R\Omega\subset\mathcal{R}) from which they estimated the unseen ratings {z^ml}(m,l)∈R∖Ω\{\widehat{z}_{ml}\}_{(m,l)\in\mathcal{R}\setminus\Omega}. Performance was then assessed by computing the Normalized Mean Absolute Error (NMAE)

where the 44 in the denominator of (123) reflects the difference between the largest and smallest user ratings (i.e., 55 and 11). When constructing Ω\Omega, we used a fixed percentage of the ratings given by each user and made sure that at least one rating was provided for every movie in the training set.

Figure 7 reports the NMAE and estimated rank N^\widehat{N} for EM-BiG-AMP under the PIAWGN model (117), LMaFit, and VSBL,VSBL was was allowed at most 100100 iterations and was run with DIMRED_THR=103=10^{3} and UPDATE_BETA=1=1. Both VSBL and EM-BiG-AMP used a tolerance of 10−810^{-8}. LMaFit was configured as for the MovieLens experiment in . Each algorithm was allowed a maximum rank of N‾=30\overline{N}=30. all of which include mechanisms for rank estimation. Figure 7 shows that, under the PIAWGN model, EM-BiG-AMP yields NMAEs that are very close to those of VSBLThe NMAE values reported for VSBL in Fig. 7 are slightly inferior to those reported in . We attribute the discrepancy to differences in experimental setup, such as the construction of Ω\Omega. but slightly inferior at larger training fractions, whereas LMaFit returns NMAEs that are substantially worse all training fractions.The NMAE results presented here differ markedly from those in the MovieLens experiment in because, in the latter paper, the entire set of ratings was used for both training and testing, with the (trivial) result that high-rank models (e.g., N^=94\widehat{N}=94) yield nearly zero test error. Figure 7 also shows that LMaFit’s estimated rank is much higher than those of VSBL and EM-BiG-AMP, suggesting that its poor NMAE performance is the result of overfitting. (Recall that similar behavior was seen for noisy matrix completion in Fig. 5.) In addition, Fig. 7 shows that, as the training fraction increases, EM-BiG-AMP’s estimated rank remains very low (i.e., ≤2\leq 2) while that of VSBL steady increases (to >10>10). This prompts the question: is VSBL’s excellent NMAE the result of accurate rank estimation or the use of a heavy-tailed (i.e., student’s t) noise prior?

To investigate the latter question, we ran BiG-AMP under

i.e., a possibly incomplete additive white Laplacian noise (PIAWLN) model, and used the EM-based approach from Sec. V-A to learn the rate parameter λ\lambda. Figure 7 shows that, under the PIAWLN model, EM-BiG-AMP essentially matches the NMAE performance of VSBL and even improves on it at very low training fractions. Meanwhile, its estimated rank N^\widehat{N} remains low for all training fractions, suggesting that the use of a heavy-tailed noise model was the key to achieving low NMAE in this experiment. Fortunately, the generality and modularity of BiG-AMP made this an easy task.

VI-F5 Summary

In summary, the known-rank synthetic-data results above showed the EM-BiG-AMP methods yielding phase-transition curves superior to all other algorithms under test. In addition, they showed BiG-AMP-Lite to be the second fastest algorithm (behind LMaFit) for most combinations of sampling ratio δ\delta and rank NN, although it was the fastest for small δ\delta and relatively high NN. Also, they showed EM-BiG-AMP was about 33 to 55 times slower than BiG-AMP-Lite but still much faster than IALM and VSBL at high ranks. Meanwhile, the unknown-rank synthetic-data results above showed EM-BiG-AMP yielding excellent NMSE performance in both noiseless and noisy scenarios. For example, in the noisy experiment, EM-BiG-AMP uniformly outperformed its competitors (LMaFit and VSBL).

In the image completion experiment, EM-BiG-AMP again outperformed all competitors, beating the second best algorithm (Matrix ALPS) by more than 11 dB and the third best algorithm (LMaFit) by more than 2.52.5 dB. Finally, in the collaborative filtering experiment, EM-BiG-AMP (with the PIAWLN likelihood model) matched the best competitor (VSBL) in terms of NMAE, and significantly outperformed the second best (LMaFit).

VII Robust PCA

In robust principal components analysis (RPCA) , one seeks to estimate a low-rank matrix observed in the presence of noise and large outliers. The data model for RPCA can be written as

where Z=AX\boldsymbol{Z}=\boldsymbol{AX}—the product of tall A\boldsymbol{A} and wide X\boldsymbol{X}—is the low-rank matrix of interest, E\boldsymbol{E} is a sparse outlier matrix, and W\boldsymbol{W} is a dense noise matrix. We now suggest two ways of applying BiG-AMP to the RPCA problem, both of which treat the elements of A\boldsymbol{A} as iid N(0,ν0a)\mathcal{N}(0,\nu_{0}^{a}) similar to (115), the elements of X\boldsymbol{X} as iid N(0,ν0x)\mathcal{N}(0,\nu_{0}^{x}) similar to (116), the non-zero elements of E\boldsymbol{E} as iid N(0,ν1)\mathcal{N}(0,\nu_{1}), and the elements of W\boldsymbol{W} as iid N(0,ν0)\mathcal{N}(0,\nu_{0}), with ν1≫ν0\nu_{1}\gg\nu_{0}.

In the first approach, E+W\boldsymbol{E}+\boldsymbol{W} is treated as additive noise on Z\boldsymbol{Z}, leading to the likelihood model

where λ∈\lambda\in models outlier density.

and apply BiG-AMP to the “augmented” model Y‾=A‾X‾+W‾\boldsymbol{\underline{Y}}=\boldsymbol{\underline{A}}\boldsymbol{\underline{X}}+\boldsymbol{\underline{W}}. Here, W‾\boldsymbol{\underline{W}} remains iid N(0,ν0)\mathcal{N}(0,\nu_{0}), thus giving the likelihood

Meanwhile, we choose the following separable priors on A‾\boldsymbol{\underline{A}} and X‾\boldsymbol{\underline{X}}:

Essentially, the first NN columns of A‾\boldsymbol{\underline{A}} and first NN rows of X‾\boldsymbol{\underline{X}} model the factors of the low-rank matrix AX\boldsymbol{AX}, and thus their elements are assigned iid Gaussian priors, similar to (115)-(116) in the case of matrix completion. Meanwhile, the last MM rows in X‾\boldsymbol{\underline{X}} are used to represent the sparse outlier matrix E\boldsymbol{E}, and thus their elements are assigned a Bernoulli-Gaussian prior. Finally, the last MM columns of A‾\boldsymbol{\underline{A}} are used to represent the designed matrix Q\boldsymbol{Q}, and thus their elements are assigned zero-variance priors. Since we find that BiG-AMP is numerically more stable when Q\boldsymbol{Q} is chosen as a dense matrix, we set it equal to the singular-vector matrix of an iid N(0,1)\mathcal{N}(0,1) matrix. After running BiG-AMP, we can recover an estimate of A\boldsymbol{A} by left multiplying the estimate of A‾\boldsymbol{\underline{A}} by QH\boldsymbol{Q}^{\textsf{H}}.

VII-B Initialization

We recommend initializing a‾^mn(1)\widehat{\underline{a}}_{mn}(1) using a random draw from its prior and initializing x‾^nl(1)\widehat{\underline{x}}_{nl}(1) at the mean of its prior, i.e., x‾^nl(1)=0\widehat{\underline{x}}_{nl}(1)=0. The latter tends to perform better than initializing x‾^nl(1)\widehat{\underline{x}}_{nl}(1) randomly, because it allows the measurements Y\boldsymbol{Y} to determine the initial locations of the outliers in E\boldsymbol{E}. As in Sec. VI-B, we suggest initializing νmna‾(1)\nu^{\underline{a}}_{mn}(1) and νnlx‾(1)\nu^{\underline{x}}_{nl}(1) at 1010 times the variance of their respective priors to emphasize the role of the measurements during the first few iterations.

VII-C EM-BiG-AMP

The EM approach from Sec. V-A can be straightforwardly applied to BiG-AMP for RPCA: after fixing ν0a=1\nu_{0}^{a}=1, EM can be used to tune the remaining distributional parameters, θ=[ν0,ν1,ν0x,λ]T\boldsymbol{\theta}=[\nu_{0},\nu_{1},\nu_{0}^{x},\lambda]^{T}. To avoid initializing ν0\nu_{0} and ν0x\nu^{x}_{0} with overly large values in the presence of large outliers enle_{nl}, we suggest the following procedure. First, define the set \Gamma\triangleq\big{\{}(m,l):|y_{ml}|\leq\operatorname{median}\{|y_{ml}|\}\big{\}} and its complement Γc\Gamma^{c}. Then initialize

where, as in Sec. VI-D, we suggest setting SNR0=100\textrm{SNR}^{0}=100 in the absence of prior knowledge. This approach uses the median to avoid including outliers among the samples used to estimate the variances of the dense-noise and low-rank components. Under these rules, the initialization λ=0.1\lambda=0.1 was found to work well for most problems.

VII-D Rank Selection

In many applications of RPCA, such as video separation, the singular-value profile of AX\boldsymbol{AX} exhibits a sharp cutoff, in which case it is recommended to perform rank-selection using the contraction strategy from Sec. V-B2.

VII-E Avoiding Local Minima

Sometimes, when NN is very small, BiG-AMP may converge to a local solution that mistakes entire rows or columns of AX\boldsymbol{AX} for outliers. Fortunately, this situation is easy to remedy with a simple heuristic procedure: the posterior probability that ymly_{ml} is outlier-corrupted can be computed for each (m,l)(m,l) at convergence, and if any of the row-wise sums exceeds 0.8M0.8M or any of the column-wise sums exceeds 0.8L0.8L, then BiG-AMP is restarted from a new random initialization. Experimentally, we found that one or two of such restarts is generally sufficient to avoid local minima.

VII-F Robust PCA Experiments

In this section, we present a numerical study of the two BiG-AMP formulations of RPCA proposed in Sec. VII, including a comparison to the state-of-the-art IALM , LMaFit , GRASTA , and VSBL algorithms. In the sequel, we use “BiG-AMP-1” when referring to the formulation that treats the outliers as noise, and “BiG-AMP-2” when referring to the formulation that explicitly estimates the outliers.

All algorithms under test were run to a convergence tolerance of 10−810^{-8} and forced to use the true rank NN. GRASTA, LMaFit, and VSBL were run under their recommended settings.For LMaFit, however, we increased the maximum number of allowed iterations, since this improved its performance. Two versions of IALM were tested: “IALM-1,” which uses the universal penalty parameter λALM=1M\lambda_{\texttt{ALM}}=\frac{1}{\sqrt{M}}, and “IALM-2,” which tries 5050 hypotheses of λALM\lambda_{\texttt{ALM}}, logarithmically spaced from 110M\frac{1}{10\sqrt{M}} to 10M\frac{10}{\sqrt{M}} and uses an oracle to choose the MSE-minimizing hypothesis. BiG-AMP-1 and BiG-AMP-2 were given perfect knowledge of the mean and variance of the entries of A\boldsymbol{A}, X\boldsymbol{X}, and E\boldsymbol{E} (although their Bernoulli-Gaussian model of E\boldsymbol{E} did not match the data generation process) as well as the outlier density λ\lambda, while EM-BiG-AMP-2 learned all model parameters from the data. BiG-AMP-1 was run under a fixed damping of β=0.25\beta=0.25, while BiG-AMP-2 was run under adaptive damping with stepMin=0.05\texttt{stepMin}=0.05 and stepMax=0.5\texttt{stepMax}=0.5. Both variants used a maximum of 55 restarts to avoid local minima.

Figure 8 shows the empirical success rate achieved by each algorithm as a function of corruption-rate δ\delta and rank NN, averaged over 1010 trials, where a “success” was defined as attaining an NMSE of −80-80 dB or better in the estimation of the low-rank component Z\boldsymbol{Z}. The red curves in Fig. 8 delineate the problem feasibility boundary: for points (δ,N)(\delta,N) above the curve, N(M+L−N)N(M+L-N), the degrees-of-freedom in Z\boldsymbol{Z}, exceeds (1−δ)ML(1-\delta)ML, the number of uncorrupted observations, making it impossible to recover Z\boldsymbol{Z} without additional information.

Figure 8 shows that all algorithms exhibit a relatively sharp phase-transition curve (PTC) separating success and failure regions, and that the BiG-AMP algorithms achieve substantially better PTCs than the other algorithms. The PTCs of BiG-AMP-1 and BiG-AMP-2 are similar (but not identical), suggesting that both formulations are equally effective. Meanwhile, the PTCs of BiG-AMP-2 and EM-BiG-AMP-2 are nearly identical, demonstrating that the EM procedure was able to successfully learn the statistical model parameters used by BiG-AMP. Figure 8 also shows that all RPCA phase transitions remain relatively far from the feasibility boundary, unlike those for matrix completion (MC) shown in Fig. 2. This behavior, also observed in , is explained by the relative difficulty of RPCA over MC: the locations of RPCA outliers (which in this case effectively render the corrupted observations as incomplete) are unknown, whereas in MC they are known.

Figure 9 plots runtime to NMSE =−80=-80 dB as a function of rank NN for various outlier fractions. The results suggest that the BiG-AMP algorithms are moderate in terms of speed, being faster than GRASTAWe note that, for this experiment, GRASTA was run as a Matlab M-file and not a MEX file, because the MEX file would not compile on the supercomputer used for the numerical results. That said, since BiG-AMP was also run as an unoptimized M-file, the comparison could be considered “fair.” and much faster than the grid-tuned IALM-2, but slower than IALM-1, VSBL, and LMaFit. Notably, among the non-BiG-AMP algorithms, LMaFit offers both the fastest runtime and the best phase-transition curve on this synthetic test problem.

In summary, the results presented here suggest that BiG-AMP achieves state-of-the-art PTCs while maintaining runtimes that are competitive with existing approaches.

VII-F2 Rank Estimation

We now investigate the ability to estimate the underlying rank, NN, for EM-BiG-AMP-2 (using the rank-contraction strategy from Sec. V-B2The rank-selection rule (114) was used with τMOS=5\tau_{\text{MOS}}=5, up to 5050 EM iterations, and a minimum of 3030 and maximum of 500500 BiG-AMP iterations per EM iteration.) IALM-1, IALM-2, LMaFit, and VSBL, all of which include either explicit or implicit rank-selection mechanisms. For this, we generated problem realizations of the form Y=Z+E+W\boldsymbol{Y}=\boldsymbol{Z}+\boldsymbol{E}+\boldsymbol{W}, where the 200×200200\times 200 rank-NN matrix Z\boldsymbol{Z} and δ=0.1\delta=0.1-sparse outlier matrix E\boldsymbol{E} were generated as described in Sec. VII-F1 and the noise matrix W\boldsymbol{W} was constructed with iid N(0,10−3)\mathcal{N}(0,10^{-3}) elements. The algorithms under test were not provided with knowledge of the true rank NN, which was varied between 55 and 9090. LMaFit, VSBL, and EM-BiG-AMP, were given an initial rank estimate of N‾=90\overline{N}=90, which enforces an upper bound on the final estimates that they report.

Figure 10 reports RPCA performance versus (unknown) true rank NN in terms of the estimated rank N^\widehat{N} and the NMSE on the estimate Z^\boldsymbol{\hat{Z}}. All results represent median performance over 1010 Monte-Carlo trials. The figure shows that EM-BiG-AMP-2 and LMaFit returned accurate rank estimates N^\widehat{N} over the full range of true rank N∈N\in, whereas VSBL returned accurate rank estimates only for N≤20N\leq 20, and both IALM-1 and IALM-2 greatly overestimated the rank at all NN. Meanwhile, Fig. 10 shows that EM-BiG-AMP-2 and LMaFit returned accurate estimates of Z^\boldsymbol{\hat{Z}} for all N≤80N\leq 80 (with EM-BiG-AMP-2 outperforming LMaFit by several dB throughout this range), whereas VSBL and IALM-1 and IALM-2 returned accurate estimates of Z^\boldsymbol{\hat{Z}} only for small values of NN. We note that the relatively poor MSE performance of LMaFit and EM-BiG-AMP-2 for true rank N>80N>80 is not due to poor rank estimation but rather due to the fact that, at δ=0.1\delta=0.1, these operating points lie above the PTCs shown in Fig. 8.

VII-F3 Application to Video Surveillance

We now apply EM-BiG-AMP-2 to a video surveillance problem, where the goal is to separate a video sequence into a static “background” component and a dynamic “foreground” component. To do this, we stack each frame of the video sequence into a single column of the matrix Y\boldsymbol{Y}, run EM-BiG-AMP-2 as described in Sec. VII, extract the background frames from the estimate of the low-rank component Z=AX\boldsymbol{Z}=\boldsymbol{AX}, and extract the foreground frames from the estimate of the (sparse) outlier component E\boldsymbol{E}. We note that a perfectly time-invariant background would correspond to a rank-one Z\boldsymbol{Z} and that the noise term W\boldsymbol{W} in (125) can be used to account for small perturbations that are neither low-rank nor sparse.

We tested EM-BiG-AMPThe maximum allowed damping was reduced to stepMax=0.125\texttt{stepMax}=0.125 for this experiment. To reduce runtime, a relatively loose tolerance of 5×10−45\times 10^{-4} was used to establish EM and BiG-AMP convergence. on the popular “mall” video sequence,See http://perception.i2r.a-star.edu.sg/bk_model/bk_index.html. processing 200200 frames (of 256×320256\times 320 pixels each) using an initial rank estimate of N‾=5\overline{N}=5. Figure 11 shows the result, with original frames in the left column and EM-BiG-AMP-2 estimated background and foreground frames in the middle and right columns, respectively. We note that, for this sequence, the rank-contraction strategy reduced the rank of the background component to 11 after the first EM iteration. Similar results (not shown here for reasons of space) were obtained with other video sequences.

VIII Dictionary Learning

The BiG-AMP methodology is particularly well-suited to the DL problem, since both are inherently bilinear. In this work, for simplicity, we model the entries of A using the iid standard normal prior (115) and the entries of X using the iid zero-mean Bernoulli-Gaussian (BG) prior

where ξ\xi represents the activity rate and νx\nu^{x} the active-component variance. However, other priors could be considered, such as truncated Gaussian mixtures with column-dependent prior parameters in the case of non-negative matrix factorization . For the likelihood pY∣Zp_{\textsf{{{Y}}}|\textsf{{{Z}}}}, we again select the PIAWGN model (117), but note that in most applications of DL the observations are completely observed.

VIII-B Initialization

In general, we advocate initializing x^nl(1)\widehat{x}_{nl}(1) at the mean of the assumed prior on xnl\textsf{x}_{nl}, and initializing the variances νnlx(1)\nu^{x}_{nl}(1) and νmna(1)\nu^{a}_{mn}(1) at 1010 times the variance of xnl\textsf{x}_{nl} and amn\textsf{a}_{mn}, respectively. We now discuss several strategies for initializing the dictionary estimates a^mn(1)\widehat{a}_{mn}(1). One option is to draw a^mn(1)\widehat{a}_{mn}(1) randomly from the assumed prior on amn\textsf{a}_{mn}, as suggested for MC and RPCA. Although this approach works reasonably well, the prevalence of local minima in the DL problem motivates us to propose two alternative strategies. The first alternative is to exploit prior knowledge of a “good” sparsifying dictionary A\boldsymbol{A}, in the case that such knowledge exists. With natural images, for example, the discrete cosine transform (DCT) and discrete wavelet transform (DWT) are known to yield reasonably sparse transform coefficients, and so the DCT and DWT matrices make appropriate initializations of A^(1)\boldsymbol{\hat{A}}(1).

The second alternative is to initialize A^(1)\boldsymbol{\hat{A}}(1) using an appropriately chosen subset of the columns of Y\boldsymbol{Y}, which is well motivated in the case that there exists a very sparse representation X\boldsymbol{X}. For example, if there existed a decomposition Y=AX\boldsymbol{Y}=\boldsymbol{AX} in which X\boldsymbol{X} had 11-sparse columns, then the columns of A\boldsymbol{A} would indeed match a subset of the columns of Y\boldsymbol{Y} (up to a scale factor). In the general case, however, it is not apriori obvious which columns of Y\boldsymbol{Y} to choose, and so we suggest the following greedy heuristic, which aims for a well-conditioned A^(1)\boldsymbol{\hat{A}}(1): select (normalized) columns from Y\boldsymbol{Y} sequentially, in random order, accepting each candidate if the mutual coherences with the previously selected columns and the condition number of the resulting submatrix are all sufficiently small. If all columns of Y\boldsymbol{Y} are examined before finding NN acceptable candidates, then the process is repeated using a different random order. If repeated re-orderings fail, then A^(1)\boldsymbol{\hat{A}}(1) is initialized using a random draw from A.

VIII-C EM-BiG-AMP

To tune the distributional parameters θ=[νw,ν0x,ξ]T\boldsymbol{\theta}=[\nu^{w},\nu_{0}^{x},\xi]^{T}, we can straightforwardly apply the EM approach from Sec. V-A. For this, we suggest initializing ξ=0.1\xi=0.1 (since Sec. VIII-E shows that this works well over a wide range of problems) and initializing ν0x\nu^{x}_{0} and νw\nu^{w} using a variation on the procedure suggested for MC that accounts for the sparsity of xnl\textsf{x}_{nl}:

VIII-D Avoiding Local Minima

The DL problem is fraught with local minima (see, e.g., ), and so it is common to run iterative algorithms several times from different random initializations. For BiG-AMP, we suggest keeping the result of one initialization over the previous if bothAs an alternative, if both the previous and current solutions achieve sufficiently small residual error, then only the average sparsity is considered in the comparison. the residual error ∥Z^−Y∥F\|\boldsymbol{\widehat{Z}}-\boldsymbol{Y}\|_{F} and the average sparsity (as measured by 1NL∑nlPr⁡{xnl ⁣≠ ⁣0 ∣ Y ⁣= ⁣Y}\frac{1}{NL}\sum_{nl}\Pr\{\textsf{x}_{nl}\!\neq\!0\,|\,\textsf{{{Y}}}\!=\!\boldsymbol{Y}\}) decrease.

VIII-E Dictionary Learning Experiments

In this section, we numerically investigate the performance of EM-BiG-AMP for DL, as described in Sec. VIII. Comparisons are made with the greedy K-SVD algorithm , the SPAMS implementation of the online approach , and the ER-SpUD(proj) approach for square dictionaries .

where J\boldsymbol{J} is a generalized permutation matrix used to resolve the permutation and scale ambiguities.

The subplots on the left of Fig. 12 show the mean NMSE achieved by K-SVD, SPAMS, ER-SpUD(proj), and EM-BiG-AMP,EM-BiG-AMP was allowed up to 2020 EM iterations, with each EM iteration allowed a minimum of 3030 and a maximum of 15001500 BiG-AMP iterations. K-SVD was allowed up to 100100 iterations and provided with knowledge of the true sparsity KK. SPAMS was allowed 10001000 iterations and run using the hand-tuned penalty λ=0.1/N\lambda=0.1/\sqrt{N}. The non-iterative ER-SpUD(proj) was run using code provided by the authors without modification. respectively, over 5050 problem realizations, for various combinations of dictionary size N∈{10,…,60}N\in\{10,\dots,60\} and data sparsity K∈{1,…,10}K\in\{1,\dots,10\}, using L=5Nlog⁡NL=5N\log N training examples. K-SVD, SPAMS, and EM-BiG-AMP were run with 1010 different random initializations for each problem realization. To choose among these initializations, EM-BiG-AMP used the procedure from Sec. VIII-D, while K-SVD and SPAMS used oracle knowledge to choose the NMSE-minimizing initialization.

The left column in Fig. 12 shows that the K-SVD, ER-SpUD(proj), and EM-BiG-AMP algorithms all exhibit a relatively sharp phase-transition curve (PTC) separating success and failure regions, and that ER-SpUD(proj)’s PTC is the best, while EM-BiG-AMP’s PTC is very similar. Meanwhile, K-SVD’s PTC is much worse and SPAMS performance is not good enough to yield a sharp phase transition,Our results for SPAMS and ER-SPUD(proj) in the left column of Fig. 12 are nearly identical to those in [63, Fig. 1], while our results for K-SVD are noticeably better. despite the fact that both use oracle knowledge. EM-BiG-AMP, by contrast, was not provided with any knowledge of the DL problem parameters, such as the true sparsity or noise variance (in this case, zero).

For the same problem realizations, Fig. 13 shows the runtime to NMSE =−60=-60 dB (measured using MATLAB’s tic and toc) versus dictionary size NN. The results show that EM-BG-AMP runs within an order-of-magnitude of the fastest algorithm (SPAMS) and more than two orders-of-magnitude faster than ER-SpUD(proj)The simpler “SC” variant of ER-SpUD reduces the computational cost relative to the “proj” variant, but results in a significantly worse PTC (see [63, Fig. 1]) and remains slower than EM-BiG-AMP for larger problems. for larger dictionaries.

VIII-E2 Noisy Square Dictionary Recovery

Next we examined the recovery of square dictionaries from AWGN-corrupted observations. For this, we repeated the experiment from the previous section, but constructed the observations as Y=Z+W\boldsymbol{Y}=\boldsymbol{Z}+\boldsymbol{W}, where Z=AX\boldsymbol{Z}=\boldsymbol{AX} and W\boldsymbol{W} contained AWGN samples with variance adjusted to achieve an SNR =E⁡{∑m,l∣zml∣2}/E⁡{∑m,l∣yml−zml∣2}=\operatorname{E}\{\sum_{m,l}|\textsf{z}_{ml}|^{2}\}/\operatorname{E}\{\sum_{m,l}|\textsf{y}_{ml}-\textsf{z}_{ml}|^{2}\} of 4040 dB.

The right subplots in Fig. 12 show the mean value (over 1010 trials) of the relative NMSE from (140) when recovering an N×NN\times N dictionary from L=5Nlog⁡NL=5N\log N training samples of sparsity KK, for various combinations of NN and KK. These subplots show that ER-SpUD(proj) falls apart in the noisy case, which is perhaps not surprising given that it is intended only for noiseless problems. Meanwhile, the K-SVD, SPAMS, and EM-BiG-AMP algorithms appear to degrade gracefully in the presence of noise, yielding NMSE ≈−50\approx-50 dB at points below the noiseless PTCs.

VIII-E3 Recovery of Overcomplete Dictionaries

Finally, we consider recovery of overcomplete M×NM\times N dictionaries, i.e., the case where M<NM<N. In particular, we investigated the twice overcomplete case, N=2MN=2M. For this, random problem realizations were constructed in the same manner as described earlier, except for the dictionary dimensions.

The left column of Fig. 14 shows the mean value (over 1010 trials) of the relative NMSE for noiseless recovery, while the right column shows the corresponding results for noisy recovery. In all cases, L=5Nlog⁡N=10Mlog⁡(2M)L=5N\log N=10M\log(2M) training samples were provided. EM-BiG-AMP, K-SVD, and SPAMS all give very similar results to Fig. 12 for the square-dictionary case, verifying that these techniques are equally suited to the recovery of over-complete dictionaries. ER-SpUD(proj), however, only applies to square dictionaries and hence was not tested here.

VIII-E4 Summary

In summary, Figs. 12-14 show that, for noiseless square dictionary learning, EM-BiG-AMP yields an empirical PTC that is nearly as good as the state-of-the-art ER-SpUD(proj) algorithm and much better than those of (genie-aided) K-SVD and SPAMS. However, the figures show that, in comparison to ER-SpUD(proj), EM-BiG-AMP is fast for large (square) dictionaries, robust to AWGN, and applicable to non-square dictionaries.

We recall that Krzakala, Mézard, and Zdeborová recently proposed an AMP-based approach to blind calibration and dictionary learning that bears similarity to our scalar-variance BiG-AMP under AWGN-corrupted observations (recall footnote 6). Although their approach gave good results for blind calibration, they report that it was “not able to solve” the DL problem . We attribute EM-BiG-AMP’s success with DL (as evidenced by Figs. 12-14) to the adaptive damping procedure proposed in Sec. IV-B, the initialization procedure proposed in Sec. VIII-B, the EM-learning procedure proposed in Sec. VIII-C, and the re-initialization procedure proposed in Sec. VIII-D.

IX Conclusion

In this work, we presented BiG-AMP, an extension of the G-AMP algorithm proposed for high-dimensional generalized-linear regression in the context of compressive sensing, to generalized-bilinear regression, with applications in matrix completion, robust PCA, dictionary learning, and related matrix-factorization problems. In addition, we proposed an adaptive damping mechanism to aid convergence under realistic problem sizes, an expectation-maximization (EM)-based method to automatically tune the parameters of the assumed priors, and two rank-selection strategies. Extensive numerical results, conducted with synthetic and realistic datasets for matrix completion, robust PCA, and dictionary learning problems, demonstrated that BiG-AMP yields excellent reconstruction accuracy (often best in class) while maintaining competitive runtimes, and that the proposed EM and rank-selection strategies successfully avoid the need to tune algorithmic parameters.

The excellent empirical results reported here motivate future work on the analysis of EM-BiG-AMP, on the extension of EM-BiG-AMP to, e.g., structured-sparse or parametric models, and on the application of EM-BiG-AMP to practical problems in high-dimensional inference. For example, preliminary results on the application of EM-BiG-AMP to hyperspectral unmixing have been reported in and are very encouraging.

Appendix A

for an appropriately defined function ϕ(⋅)\phi(\cdot). Now, defining pu∣q(u ∣ q^)≜Z(q^)−1exp⁡(ϕ(u)+q^u)p_{\textsf{u}|\textsf{q}}(u\,|\,\widehat{q})\triangleq Z(\widehat{q})^{-1}\exp(\phi(u)+\widehat{q}u) with normalization term Z(\widehat{q})\triangleq\int\exp\big{(}\phi(u)+\widehat{q}u\big{)}du, simple calculus yields

Thus, from (141) and (142) it follows that

Equation (31) is then established by applying definitions (33) and (35) to (144).

where z^\widehat{z} is the expectation from (33). Equation (32) is then established by applying the definitions (34) and (35) to (145).

Appendix B

Here we explain the approximations (65)-(66). The term neglected in going from (45) to (65) can be written using (31)-(32) as

where the expectations are taken over \textsf{z}_{ml}\sim p_{\textsf{z}_{ml}|\textsf{p}_{ml}}\big{(}\cdot\,|\,\widehat{p}_{ml}(t);\nu^{p}_{ml}(t)\big{)} from (35). For GAMP, [32, Sec. VI.D] clarifies that, in the large system limit, under i.i.d priors and scalar variances, the true zmz_{m} and the iterates p^m(t)\widehat{p}_{m}(t) converge empirically to a pair of random variables (z,p)(\textsf{z},\textsf{p}) that satisfy pz ∣ p(z ∣ p^(t))=N(z;p^(t),νp(t))p_{\textsf{z}\,|\,\textsf{p}}(z\,|\,\widehat{p}(t))=\mathcal{N}(z;\widehat{p}(t),\nu^{p}(t)). This result leads us to believe that the expectation in (147) is approximately unit-valued when averaged over mm, and thus (147) is approximately zero-valued. Similar reasoning applies to (66).

Acknowledgment

The authors would like to thank Sundeep Rangan, Florent Krzakala, and Lenka Zdeborová for insightful discussions on various aspects of AMP-based inference. We would also like to thank Subhojit Som, Jeremy Vila, and Justin Ziniel for helpful discussions about EM and turbo methods for AMP.

References