Fast and Robust Recursive Algorithms for Separable Nonnegative Matrix Factorization

Nicolas Gillis, Stephen A. Vavasis

Introduction

A hyperspectral image consists of a set of images taken at different wavelengths. It is acquired by measuring the spectral signature of each pixel present in the scene, that is, by measuring the reflectance (the fraction of the incident electromagnetic power that is reflected by a surface at a given wavelength) of each pixel at different wavelengths. One of the most important tasks in hyperspectral imaging is called unmixing. It requires the identification of the constitutive materials present in the image and estimation of their abundances in each pixel. The most widely used model is the linear mixing model: the spectral signature of each pixel results from the additive linear combination of the spectral signatures of the constitutive materials, called endmembers, where the weights of the linear combination correspond to the abundances of the different endmembers in that pixel.

where hkj≥0h_{kj}\geq 0 is the abundance of the kkth endmember in the jjth pixel, with ∑k=1rhkj=1\sum_{k=1}^{r}h_{kj}=1 ∀j\forall j. Defining the mm-by-rr matrix W=[w1 w2 …wk]≥0W=[w_{1}\,w_{2}\,\dots w_{k}]\geq 0 and the rr-by-nn matrix HH with Hkj=hkjH_{kj}=h_{kj} ∀j,k\forall j,k, the equation above can be equivalently written as M=WHM=WH where MM, WW and HH are nonnegative matrices. Given the nonnegative matrix MM, hyperspectral unmixing amounts to recovery of the endmember matrix WW and the abundance matrix HH. This inverse problem corresponds to the nonnegative matrix factorization problem (NMF), which is a difficult and highly ill-posed problem .

However, if we assume that, for each constitutive material, there exists at least one pixel containing only that material (a ‘pure’ pixel), then the unmixing problem can be solved in polynomial time: it simply reduces to identifying the vertices of the convex hull of a set of points. This assumption, referred to as the pure-pixel assumption , is essentially equivalent to the separability assumption : a nonnegative matrix MM is called separable if it can be written as M=WHM=WH where each column of WW is equal, up to a scaling factor, to a column of MM. In other words, there exists a cone spanned by a small subset of the columns of MM containing all columns (see Section 2.1 for more details). It is worth noting that this assumption also makes sense for other applications. For example, in text mining, each entry MijM_{ij} of matrix MM indicates the ‘importance’ of word ii in document jj (e.g., the number of appearances of word ii in text jj). The factors (W,H)(W,H) can then be interpreted as follows: the columns of WW represent the topics (i.e., bags of words) while the columns of HH link the documents to these topics. Therefore,

Separability of MM (that is, each column of WW appears as a column of MM) requires that, for each topic, there exists at least one document discussing only that topic (a ‘pure’ document).

Separability of MTM^{T} (that is, each row of HH appears as a row of MM) requires that, for each topic, there exists at least one word used only by that topic (a ‘pure’ word).

These assumptions often make sense in practice and are actually part of several existing document generative models, see and the references therein.

We focus in this paper on hyperspectral unmixing algorithms under the linear mixing model and the pure-pixel assumption, or, equivalently, to nonnegative matrix factorization algorithms under the separability assumption. Many algorithms handling this situation have been developed by the remote sensing community, see for a comprehensive overview of recent hyperspectral unmixing algorithms. Essentially, these algorithms amount to identifying the vertices of the convex hull of the (normalized) columns of MM, or, equivalently, the extreme rays of the convex cone generated by the columns of MM. However, as far as we know, none of these algorithms have been proved to work when the input data matrix MM is only approximately separable (that is, the original separable matrix is perturbed with some noise), and many algorithms are therefore not robust to noise. However, there exists a few recent notable exceptions:

Arora et al. [3, Section 5] proposed a method which requires the resolution of nn linear programs in O(n)\mathcal{O}(n) variables (nn is the number of columns of the input matrix), and is therefore not suited to dealing with large-scale real-world problems. In particular, in hyperspectral imaging, nn corresponds to the number of pixels in the image and is of the order of 10610^{6}. Moreover, it needs several parameters to be estimated a priori (the noise level, and a function of the columns of WW; see Section 2.4).

Esser et al. proposed a convex model with n2n^{2} variables (see also where a similar approach is presented), which is computationally expensive. In order to deal with a large-scale real-world hyperspectral unmixing problem, the authors had to use a preprocessing, namely kk-means, to select a subset of the columns in order to reduce the dimension nn of the input matrix. Their technique also requires a parameter to be chosen in advance (either the noise level, or a penalty parameter balancing the importance between the approximation error and the number of endmembers to be extracted), only applies to a restricted noise model, and cannot deal with repeated columns of WW in the data set (i.e., repeated endmembers).

Bittorf et al. proposed a method based on the resolution of a single convex optimization problem in n2n^{2} variables (cf. Section 5.2). In order to deal with large-scale problems (m ∼ 106m~{}\sim~{}10^{6}, n ∼ 105n~{}\sim~{}10^{5}), a fast incremental gradient descent algorithm using a parallel architecture is implemented. However, the algorithm requires several parameters to be tuned, and the factorization rank has to be chosen a priori. Moreover, it would be impractical for huge-scale problems (for example for web-related applications where n∼109n\sim 10^{9}), and the speed of convergence could be an issue.

2 Contribution and Outline of the Paper

In this paper, we propose a new family of recursive algorithms for nonnegative matrix factorization under the separability assumption. They have the following features:

They are very fast, running in approximately 6mnr6mnr floating point operations, while the memory requirement is low, as only one mm-by-nn matrix has to be stored.

They are extremely simple to implement and would be easily parallelized.

They do not require any parameter to be chosen a priori, nor to be tuned.

The solution does not need to be recomputed from scratch when the factorization rank is modified, as the algorithms are recursive.

A simple post-processing strategy allows us to identify outliers (Section 3).

Even if the input data matrix MM is not approximately separable, they identify rr columns of MM whose convex hull has large volume (Section 4.1).

To the best of our knowledge, no other algorithms share all these desirable properties. The weak point of our approach is that the bound on the noise to guarantee recovery is weaker than in ; see Section 2.4. Also, we will need to assume that the matrix WW is full rank, which is not a necessary condition for the approaches above . However, in practice, this condition is satisfied in most cases. At least, it is always assumed to hold in hyperspectral imaging and text mining applications, otherwise the abundance matrix HH is typically not uniquely determined; see Section 2.1. Moreover, in Section 5.2, our approach will be shown to perform in average better than the one proposed in on several synthetic data sets.

The paper is organized as follows. In Section 2, we introduce our approach and derive an a priori bound on the noise to guarantee the recovery of the pure pixels. In Section 3, we propose a simple way to handle outliers. In Section 4, we show that this family of algorithms generalizes several hyperspectral unmixing algorithms, including the successive projection algorithm (SPA) , the automatic target generation process (ATGP) , the successive volume maximization algorithm (SVMAX) , and the pp-norm based pure pixel algorithm (TRI-P) . Therefore, our analysis gives the first theoretical justification of the better performances of this family of algorithms compared to algorithms based on locating pure pixels using linear functions (such as the widely used PPI and VCA algorithms) which are not robust to noise. This was, until now, only experimentally observed. Finally, we illustrate these theoretical results on several synthetic data sets in Section 5.

Robust Recursive NMF Algorithm under Separability

In this section, we analyze a family of simple recursive algorithms for NMF under the separability assumption; see Algorithm 1.

Given an input data matrix MM and a function ff, it works as follows: at each step, the column of MM maximizing the function ff is selected, and MM is updated by projecting each column onto the orthogonal complement of the selected column.

Instead of fixing a priori the number rr of columns of the input matrix to be extracted, it is also possible to stop the algorithm whenever the norm of the residual (or of the last extracted column) is smaller than some specified threshold.

In Section 2.1, we discuss the assumptions on the input separable matrix M=WHM=WH and the function ff that we will need in Section 2.2 to prove that Algorithm 1 is guaranteed to recover columns of MM corresponding to columns of the matrix WW. Then, we analyze Algorithm 1 in case some noise is added to the input separable matrix MM, and show that, under these assumptions, it is robust under any small perturbations; see Section 2.3. Finally, we compare our results with the ones from in Section 2.4.

In the remainder of the paper, we will assume that the original data matrix M=WHM=WH is separable, that is, each column of WW appears as a column of MM. Recall that this condition is implied by the pure-pixel assumption in hyperspectral imaging; see Introduction. We will also assume that the matrix WW is full rank. This is often implicitly assumed in practice otherwise the problem is in general ill-posed, because the matrix HH is then typically not uniquely determined; see, e.g., .

The assumption on matrix HH is made without loss of generality by

Permuting the columns of MM so that the first rr columns of MM correspond to the columns of WW (in the same order).

Normalizing MM so that the entries of each of its columns sum to one (except for its zero columns). In fact, we have that

By construction, the entries of each column of MDM−1MD_{M}^{-1} and WDW−1WD_{W}^{-1} sum to one (except for the zero columns of MM), while the entries of each column of (DWHDM−1)(D_{W}HD_{M}^{-1}) have to sum to one (except for ones corresponding to the zero columns of MM which are equal to zero) since M=WHM=WH.

In the hyperspectral imaging literature, the entries of each column of matrix HH are typically assumed to sum to one, hence Assumption 1 is slightly more general. This has several advantages:

It allows the image to contain ‘background’ pixels with zero spectral signatures, which are present for example in hyperspectral images of objects in outer space (such as satellites).

It allows us to take into account different intensities of light among the pixels in the image, e.g., if there are some shadow parts in the scene or if the angle between the camera and the scene varies. Hence, although some pixels contain the same material(s) with the same abundance(s), their spectral signature could differ by a scaling factor.

In the noisy case, it allows us to take into account endmembers with very small spectral signature as noise, although it is not clear whether relaxing the sum-to-one constraint is the best approach .

Our assumptions actually do not require the matrix MM to be nonnegative, as WW can be any full-rank matrix. In fact, after the first step of Algorithm 1, the residual matrix will typically contain negative entries.

We will also need to assume that the function ff in Algorithm 1 satisfies the following conditions.

Notice that, for any strongly convex function gg whose gradient is Lipschitz continuous and whose global minimizer is xˉ\bar{x}, one can construct the function f(x)=g(xˉ+x)−g(xˉ)f(x)=g(\bar{x}+x)-g(\bar{x}) satisfying Assumption 2. In fact, f(0)=0f(0)=0 while f(x)≥0f(x)\geq 0 for any xx since g(xˉ+x)≥g(xˉ)g(\bar{x}+x)\geq g(\bar{x}) for any xx. Recall that (see, e.g., ) a function is strongly convex with parameter μ\mu if and only if it is convex and for any x,y∈dom(f)x,y\in\text{dom}(f)

for any δ∈\delta\in. Moreover, its gradient is Lipschitz continuous with constant LL if and only if for any x,y∈dom(f)x,y\in\text{dom}(f)

Convex analysis also tells us that if ff satisfies Assumption 2 then, for any x,yx,y,

since f(0)=0f(0)=0 and ∇f(0)=0\nabla f(0)=0 (because zero is the global minimizer of ff).

The most obvious choice for ff satisfying Assumption 2 is f(x)=∣∣x∣∣22f(x)=||x||^{2}_{2}; we return to this matter in Section 4.1.

2 Noiseless Case

We now prove that, under Assumption 1 and 2, Algorithm 1 recovers a set of indices corresponding to the columns of WW.

where eje_{j} is the jjth column of the identity matrix.

By assumption on ff, we have f(w)>0f(w)>0 for any w≠0w\neq 0; see Equation (1). Hence, if Yh=0Yh=0, we have the result since f(Yh)=0<f(wi)f(Yh)=0<f(w_{i}) for all ii. Otherwise Yh=∑i=1kwihiYh=\sum_{i=1}^{k}w_{i}h_{i} where hi≠0h_{i}\neq 0 for at least one 1≤i≤k1\leq i\leq k so that

The first inequality is strict since h≠ej∀jh\neq e_{j}\forall j and hi≠0h_{i}\neq 0 for at least one 1≤i≤k1\leq i\leq k, and the second follows from the fact that ∑i=1khi≤∑i=1rhi≤1\sum_{i=1}^{k}h_{i}\leq\sum_{i=1}^{r}h_{i}\leq 1. ∎

Let the matrix M=WHM=WH satisfy Assumption 1 and the function ff satisfy Assumption 2. Then Algorithm 1 recovers a set of indices JJ such that M(:,J)=WM(:,J)=W up to permutation.

First step. Lemma 1 applies since ff satisfies Assumption 2 while WW is full rank. Therefore, the first step of Algorithm 1 extracts one of the columns of WW. Assume without loss of generality the last column wrw_{r} of WW is extracted, then the first residual has the form

i.e., the matrix R(1)R^{(1)} is obtained by projecting the columns of MM onto the orthogonal complement of wrw_{r}. We observe that W(1)W^{(1)} satisfies the conditions of Lemma 1 as well because W′W^{\prime} is full rank since WW is. This implies, by Lemma 1, that the second step of Algorithm 1 extracts one of the columns of W′W^{\prime}.

Induction step. Assume that after kk steps the residual has the form R(k)=[W∗  0m×k]HR^{(k)}=[W^{*}\;\mathbf{0}_{m\times k}]H with W∗W^{*} full rank. Then, by Lemma 1, the next extracted index will correspond to one of the columns of W∗W^{*} (say, without loss of generality, the last one) and the next residual will have the form R=[W†,0m×(k+1)]HR=[W^{\dagger},\mathbf{0}_{m\times(k+1)}]H where W†W^{\dagger} full rank since W∗W^{*} is, and HH is unchanged. By induction, after rr steps, we have that the indices corresponding to the different columns of WW have been extracted and that the residual is equal to zero (R=0m×rHR=\mathbf{0}_{m\times r}H). ∎

3 Adding Noise

In this section, we analyze how perturbing the input data matrix affects the performances of Algorithm 1. We are going to assume that the input perturbed matrix M′M^{\prime} can be written as M′=M+NM^{\prime}=M+N where MM is the noiseless original separable matrix satisfying Assumption 1, and NN is the noise with ∣∣ni∣∣2≤ϵ||n_{i}||_{2}\leq\epsilon for all ii for some sufficiently small ϵ≥0\epsilon\geq 0.

Given a matrix WW, we introduce the following notations: γ(W)=min⁡i≠j∣∣wi−wj∣∣2\gamma(W)=\min_{i\neq j}||w_{i}-w_{j}||_{2}, ν(W)=min⁡i∣∣wi∣∣2\nu(W)=\min_{i}||w_{i}||_{2}, ω(W)=min⁡{ν(W),12γ(W)}\omega(W)=\min\left\{\nu(W),\frac{1}{\sqrt{2}}\gamma(W)\right\}, and K(W)=max⁡i∣∣wi∣∣2K(W)=\max_{i}||w_{i}||_{2}.

then, for any 0≤δ≤120\leq\delta\leq\frac{1}{2},

satisfies f∗≤max⁡if(wi)−12 μ (1−δ) δ ω(W)2f^{*}\leq\max_{i}f(w_{i})-\frac{1}{2}\,\mu\,(1-\delta)\,\delta\,\omega(W)^{2}.

x∗=(1−δ)ejx^{*}=(1-\delta)e_{j} for 1≤j≤k1\leq j\leq k,

x∗=δei+(1−δ)ejx^{*}=\delta e_{i}+(1-\delta)e_{j} for 1≤i,j≤k1\leq i,j\leq k, or

x∗=δei+(1−δ)ejx^{*}=\delta e_{i}+(1-\delta)e_{j} for k+1≤i≤rk+1\leq i\leq r and 1≤j≤k1\leq j\leq k.

Before analyzing the different cases, let us provide a lower bound for f∗f^{*}. Using Equation (1), we have

Since (1−δ)wi(1-\delta)w_{i} is a feasible solution and 0≤δ≤120\leq\delta\leq\frac{1}{2}, this implies f∗≥μ8K(W)2f^{*}\geq\frac{\mu}{8}K(W)^{2}. Recall that since ff is strongly convex with parameter μ\mu, we have

Clearly, x∗≠0x^{*}\neq 0 since f(0)=0f(0)=0 and f(y)>0f(y)>0 for all y≠0y\neq 0, cf. Equation (1).

Yx∗=qiYx^{*}=q_{i} for some ii. Using Equation (1), we have

since ν(W)>2LμK(Q)\nu(W)>2\sqrt{\frac{L}{\mu}}K(Q), a contradiction.

By strong convexity, we also have f(wi)≥μ2∣∣wi∣∣22≥12μ(1−δ)∣∣wi∣∣22f(w_{i})\geq\frac{\mu}{2}||w_{i}||_{2}^{2}\geq\frac{1}{2}\mu(1-\delta)||w_{i}||_{2}^{2}. Plugging it in (3) gives

Yx∗=δwi+(1−δ)wjYx^{*}=\delta w_{i}+(1-\delta)w_{j} for some i≠ji\neq j :

Yx∗=δqi+(1−δ)wjYx^{*}=\delta q_{i}+(1-\delta)w_{j} for some ii, jj. First, we have

In fact, ∣∣qi−wj∣∣2≥∣∣wj∣∣2−∣∣qi∣∣2≥ν(W)−K(Q)||q_{i}-w_{j}||_{2}\geq||w_{j}||_{2}-||q_{i}||_{2}\geq\nu(W)-K(Q). Then, using

ν(W)−K(Q)>(1−12μL)ν(W)≥12ν(W)\nu(W)-K(Q)>\left(1-\frac{1}{2}\sqrt{\frac{\mu}{L}}\right)\nu(W)\geq\frac{1}{2}\nu(W) and f(wj)≥μ2(1−δ)ν(W)2f(w_{j})\geq\frac{\mu}{2}(1-\delta)\nu(W)^{2}, we obtain

For the upper bound (4), we use the fact that the gradient of ff is Lipschitz continuous with constant LL

for any ∣∣x∣∣2≤K||x||_{2}\leq K, ∣∣n∣∣2≤ϵ≤K||n||_{2}\leq\epsilon\leq K. The second inequality follows from the fact that ∇f(0)=0\nabla f(0)=0 and by Lipschitz continuity of the gradient: ∣∣∇f(x)−0∣∣2≤L∣∣x−0∣∣2≤LK||\nabla f(x)-0||_{2}\leq L||x-0||_{2}\leq LK for any ∣∣x∣∣2≤K||x||_{2}\leq K.

For the lower bound (5), we use strong convexity

for any ∣∣x∣∣2≤K||x||_{2}\leq K, ∣∣n∣∣2≤ϵ≤K||n||_{2}\leq\epsilon\leq K. The third inequality follows from the fact that

We can now prove the theorem which will be used in the induction step to prove that Algorithm 1 works under small perturbations of the input separable matrix.

ff satisfy Assumption 2, with strong convexity parameter μ\mu, and its gradient have Lipschitz constant LL.

ϵ\epsilon be sufficiently small so that ϵ≤μω220KL\epsilon\leq\frac{\mu{\omega}^{2}}{20KL}.

Then the index ii corresponding to a column mi′m^{\prime}_{i} of M′M^{\prime} that maximizes the function ff satisfies

and δ=10ϵKLμω2\delta=\frac{10\epsilon KL}{\mu\omega^{2}}, which implies

First note that ϵ≤μω220KL\epsilon\leq\frac{\mu\omega^{2}}{20KL} implies δ=10ϵKLμω2≤12\delta=\frac{10\epsilon KL}{\mu\omega^{2}}\leq\frac{1}{2}. Let us then prove Equation (6) by contradiction. Assume the extracted index, say ii, for which mi′=mi+ni=Yhi+nim^{\prime}_{i}=m_{i}+n_{i}=Yh_{i}+n_{i} satisfies hi(l)<1−δh_{i}(l)<1-\delta for 1≤l≤k1\leq l\leq k. We have

where wj′w^{\prime}_{j} is the perturbed column of MM corresponding to wjw_{j} (that is, the jjth column of M′M^{\prime}). The first inequality follows from Lemma 3. In fact, we have ϵ≤K\epsilon\leq K since μ≤L\mu\leq L and ω≤K\omega\leq K, ∣∣mi∣∣2=∣∣Whi∣∣2≤max⁡i∣∣wi∣∣2=K||m_{i}||_{2}=||Wh_{i}||_{2}\leq\max_{i}||w_{i}||_{2}=K (by convexity of ∣∣.∣∣2||.||_{2}), and ∣∣ni∣∣2≤ϵ||n_{i}||_{2}\leq\epsilon ∀i\forall i so that f(mi′)≤f(mi)+32ϵKLf(m^{\prime}_{i})\leq f(m_{i})+\frac{3}{2}\epsilon KL. The second inequality is strict since the maximum is attained at a vertex with x(l)=1−δx(l)=1-\delta for some 1≤l≤k1\leq l\leq k at optimality (see proof of Lemma 2). The third inequality follows from Lemma 2 while the fourth follows from the fact that ∣∣wj∣∣2≤K||w_{j}||_{2}\leq K so that f(wj)−ϵKL≤f(wj′)f(w_{j})-\epsilon KL\leq f(w^{\prime}_{j}) for all jj by Lemma 3.

We notice that, since δ≤12\delta\leq\frac{1}{2},

Combining this inequality with Equation (8), we obtain f(mi′)<max⁡jf(wj′)f(m^{\prime}_{i})<\max_{j}f(w^{\prime}_{j}), a contradiction since mi′m^{\prime}_{i} should maximize ff among the columns of M′M^{\prime} and the wj′w^{\prime}_{j}’s are among the columns of M′M^{\prime}.

To prove Equation (7), we use Equation (6) and observe that

so that ∑k≠pαk≤δ′≤δ\sum_{k\neq p}\alpha_{k}\leq\delta^{\prime}\leq\delta. Therefore,

It is interesting to relate the ratio K(W)ω(W)\frac{K(W)}{\omega(W)} to the condition number of matrix WW, given by the ratio of its largest and smallest singular values κ(W)=σ1(W)σr(W)\kappa(W)=\frac{\sigma_{1}(W)}{\sigma_{r}(W)}.

In particular, this inequality implies that if κ(W)=1\kappa(W)=1 then K(W)ω(W)=1\frac{K(W)}{\omega(W)}=1.

3.2 Error Bound for Algorithm 1

We have shown that, if the input matrix M′M^{\prime} has the form

where QQ and NN are sufficiently small and the sum of the entries of each column of H′≥0H^{\prime}\geq 0 is smaller than one, then Algorithm 1 extracts one column of M′M^{\prime} which is close to a column of WW; cf. Theorem 2. We now show that, at each step of Algorithm 1, the residual matrix satisfies these assumptions so that we can prove the result by induction.

We first give some useful lemmas; see and the references therein.

We can now prove the main theorem of the paper which shows that, given a noisy separable matrix M′=M+N=WH+NM^{\prime}=M+N=WH+N where MM satisfies Assumption 1, Algorithm 1 is able to identify approximately the columns of WW.

and JJ be the index set of cardinality rr extracted by Algorithm 1. Then there exists a permutation PP of {1,2,…,r}\{1,2,\dots,r\} such that

Let us prove the result by induction. First, let us define the residual matrix R(k)R^{(k)} obtained after kk steps of Algorithm 1 as follows:

with P(k)=(I−uuT∣∣u∣∣22)P^{(k)}=\left(I-\frac{uu^{T}}{||u||_{2}^{2}}\right) is the orthogonal projection performed at step 5 of Algorithm 1 where uu is the extracted column of R(k)R^{(k)}, that is, u=ri(k)u=r^{(k)}_{i} for some 1≤i≤n1\leq i\leq n.

for some 1≤p≤r−k1\leq p\leq r-k. Let us assume without loss of generality that p=r−kp=r-k. The next residual R(k+1)R^{(k+1)} has the form

∣∣P(k)wp(k)∣∣2≤ϵˉ=ϵ(1+80K(W)2σr2(W)Lμ)||P^{(k)}w^{(k)}_{p}||_{2}\leq\bar{\epsilon}=\epsilon\left(1+80\frac{K(W)^{2}}{\sigma_{r}^{2}(W)}\frac{L}{\mu}\right) since

where the first inequality follows from P(k)wp(k)P^{(k)}w^{(k)}_{p} being the projection of wp(k)w^{(k)}_{p} onto the orthogonal complement of ri(k)r^{(k)}_{i}. Moreover,

In fact, K(W(k))≤K(W)K(W^{(k)})\leq K(W) because of the orthogonal projections, while ω(W(k))≥12σr(W)\omega(W^{(k)})\geq\frac{1}{2}\sigma_{r}(W) follows from

Lemma 7 applies since K(Q(k))≤ϵˉK(Q^{(k)})\leq\bar{\epsilon}. The last inequality follows from ϵˉ≤σr(W)2r−1\bar{\epsilon}\leq\frac{\sigma_{r}(W)}{2\sqrt{r-1}} since

For R(k+1)R^{(k+1)} to satisfy the same conditions as R(k)R^{(k)}, it remains to show that ν(W(k+1))>2Lμϵˉ\nu(W^{(k+1)})>2\sqrt{\frac{L}{\mu}}\bar{\epsilon} and ϵ≤ω(W(k+1))2μ20K(W(k+1))L\epsilon\leq\frac{\omega(W^{(k+1)})^{2}\mu}{20K(W^{(k+1)})L}. Let us show that these hold for all k=0,1,…,r−1k=0,1,\dots,r-1 :

Since ν(W(k))≥ω(W(k))≥12σr(W)\nu(W^{(k)})\geq\omega(W^{(k)})\geq\frac{1}{2}\sigma_{r}(W) (see above), ν(W(k))>2Lμϵˉ\nu(W^{(k)})>2\sqrt{\frac{L}{\mu}}\bar{\epsilon} is implied by 12σr(W)>2Lμϵˉ\frac{1}{2}\sigma_{r}(W)>2\sqrt{\frac{L}{\mu}}\bar{\epsilon}, that is,

By assumption on the matrix M′M^{\prime}, these conditions are satisfied at the first step of the algorithm (we actually have that Q(0)Q^{(0)} is an empty matrix), so that, by induction, all the residual matrices satisfy these conditions. Finally, Theorem 2 implies that the index ii extracted by Algorithm 1 at the (k+1)(k+1)th step satisfies

δ(k)=10ϵK(W(k))Lω(W(k))2μ\delta^{(k)}=\frac{10\epsilon K(W^{(k)})L}{\omega(W^{(k)})^{2}\mu}, and p=r−kp=r-k without loss of generality. Since the matrix HH is unchanged between each step, this implies mi=Whim_{i}=Wh_{i} where hi(p)≥1−δ(k)h_{i}(p)\geq 1-\delta^{(k)}, hence

The second inequality is obtained using mi=Whi=hi(p)wp+∑k≠phi(k)wkm_{i}=Wh_{i}=h_{i}(p)w_{p}+\sum_{k\neq p}h_{i}(k)w_{k} and ∑k≠phi(k)≤1−hi(p)\sum_{k\neq p}h_{i}(k)\leq 1-h_{i}(p) so that

4 Bounds for Separable NMF and Comparison with the Algorithms of Arora et al. [3] and Bittorf et al. [6]

Arora et al. identify a matrix UU such that

The algorithm of Bittorf et al. identifies a matrix UU satisfying

By Theorem 3, Algorithm 1 therefore requires

This shows that the above bounds are tighter, as they only require the noise to be bounded above by a constant proportional to α2\alpha^{2} to guarantee an NMF with error proportional to ϵ1α\frac{\epsilon_{1}}{\alpha}. In particular, if WW is not full rank, Algorithm 1 will fail to extract more than rank⁡(W)\operatorname{rank}(W) columns of WW, while the value of α\alpha can be much larger than zero implying that the algorithms from will still be robust to a relatively large noise.

To conclude, the techniques in based on linear programming lead to better error bounds. However, there are computationally much more expensive (at least quadratic in nn, while Algorithm 1 is linear in nn, cf. Section 1.1), and have the drawback that some parameters have to be estimated in advance: the noise level ϵ1\epsilon_{1}, and

the parameter α\alpha for Arora et al. (which is rather difficult to estimate as WW is unknown),

the factorization rank rr for Bittorf et al. In their incremental gradient descent algorithm, the parameter ϵ\epsilon does not need to be estimated. However, other parameters need to be tuned, namely, primal and dual step sizes., hence the solution has to be recomputed from scratch when the value of rr is changed (which often happens in practice as the number of columns to be extracted is typically estimated with a trial and error approach).

Moreover, the algorithms from heavily rely on the separability assumption while Algorithm 1 still makes sense even if the separability assumption is not satisfied; see Section 4.1. Table 1 summarizes these results. Note that we keep the analysis simple and only indicate the growth in terms of nn. The reason is threefold: (1) in many applications (such as hyperspectral unmixing), nn is much larger than mm and rr, (2) a more detailed comparison of the running times would be possible (that is, in terms of mm, nn, and rr) but is not straightforward as it depends on the algorithm used to solve the linear programs (and possibly on the parameters α\alpha and ϵ1\epsilon_{1}), and (3) both algorithms are at least quadratic in nn (for example, the computational cost of each iteration of the first-order method proposed in is proportional to mn2mn^{2}, so that the complexity is linear in mm).

Outlier Detection

It is important to point out that Algorithm 1 is very sensitive to outliers, as are most algorithms aiming to detect the vertices of the convex hull of a set of points, e.g., the algorithms from discussed in the previous section. Therefore, one should ideally discard the outliers beforehand, or design variants of these methods robust to outliers. In this section, we briefly describe a simple way for dealing with (a few) outliers. This idea is inspired from the approach described in .

where hi′∈Δrh^{\prime}_{i}\in\Delta^{r} for all ii, hence fi′∈Δrf^{\prime}_{i}\in\Delta^{r} for all ii. Assuming [W,T][W,T] has rank r+tr+t (hence t≤m−rt\leq m-r), the matrix MM above also satisfies Assumption 1. In the noiseless case, Algorithm 1 will then extract a set of indices corresponding to columns of WW and TT (Theorem 1). Therefore, assuming that the matrix H′H^{\prime} has at least one non-zero element in each row, one way to identifying the outliers would be to

Extract r+tr+t columns from the matrix MM using Algorithm 1,

Compute the corresponding optimal abundance matrix FF, and

Select the rr columns corresponding to rows of FF with the largest sum,

see Algorithm 2. (Note that Algorithm 2 requires to solve a convex quadratic program, hence it is computationally much more expensive than Algorithm 1.)

It is easy to check that Algorithm 2 will recover the rr columns of WW because the optimal solution GG computed at the second step is unique and equal to FF (since [W,T][W,T] is full rank), hence ∣∣G(j,||G(j,:)∣∣1>1)||_{1}>1 for the indices corresponding to the columns of WW while ∣∣G(j,||G(j,:)∣∣1=1)||_{1}=1 for the outliers; see Equation (14).

In the noisy case, a stronger condition is necessary: the sum of the entries of each row of H′H^{\prime} must be larger than some bound depending on the noise level. In terms of hyperspectral imaging, it means that for an endmember to be distinguishable from an outlier, its abundance in the image should be sufficiently large, which is perfectly reasonable.

and JJ be the index set of cardinality rr extracted by Algorithm 2. If

then there exists a permutation PP of {1,2,…,r}\{1,2,\dots,r\} such that

By Theorem 3, the columns extracted at the first step of Algorithm 2 correspond to the columns of WW and TT up to error ϵˉ\bar{\epsilon}. Let then W+NWW+N_{W} and T+NTT+N_{T} be the columns extracted by Algorithm 1 with K(NW),K(NT)≤ϵˉK(N_{W}),K(N_{T})\leq\bar{\epsilon}.

At the second step of Algorithm 2, the matrix GG is equal to

up to the permutation of its rows. It remains to show that

so that the last step of Algorithm 2 will identify correctly the columns of WW among the ones extracted at the first step. We are going to show that

More precisely, we are going to prove the following lower (resp. upper) bounds for the entries of the first rr (resp. last tt) rows of GG:

For 1≤i≤r1\leq i\leq r, Gij≥max⁡(0,Fij−2ϵˉ+ϵσs(B))G_{ij}\geq\max\left(0,F_{ij}-2\frac{\bar{\epsilon}+\epsilon}{\sigma_{s}(B)}\right) for all jj.

For r+1≤i≤r+tr+1\leq i\leq r+t, Gij≤min⁡(1,Fij+2ϵˉ+ϵσs(B))G_{ij}\leq\min\left(1,F_{ij}+2\frac{\bar{\epsilon}+\epsilon}{\sigma_{s}(B)}\right) for all jj.

Therefore, assuming (a) and (b) hold, we obtain

which proves the result. It remains to prove (a) and (b). First, we have that

since G(:,j)G(:,j) leads to the best approximation of mj′m^{\prime}_{j} over Δ\Delta (see step 2 of Algorithm 2) and fj∈Δf_{j}\in\Delta.

Then, let us prove the upper bound for the block of matrix GG at position (2,1)(2,1), that is, let us prove that

(Note that 0≤G≤10\leq G\leq 1 by construction, hence some of the bounds are trivial, e.g., for the block (1,2).) The derivations necessary to obtain the bounds for the other (non-trivial) blocks are exactly the same and are then omitted here. Let r+1≤i≤tr+1\leq i\leq t and 1≤j≤r1\leq j\leq r and denote Gij=δG_{ij}=\delta, and let also I={1,2,…,r+t}\{i}I=\{1,2,\dots,r+t\}\backslash\{i\}. We have

The first inequality follows from K(N)≤ϵK(N)\leq\epsilon, K([NW,NT])≤ϵˉK([N_{W},N_{T}])\leq\bar{\epsilon} and G:j∈Δr+tG_{:j}\in\Delta^{r+t}, while the second inequality follows from the fact that wjw_{j} is a column of B(:,I)B(:,I). The last inequality follows from the fact that the projection of any column of BB onto the subspace spanned by the other columns is at least σs(B)\sigma_{s}(B). Finally, using Equations (17) and (18), we have ϵˉ+ϵ≥δσs(B)−ϵˉ−ϵ\bar{\epsilon}+\epsilon\geq\delta\sigma_{s}(B)-\bar{\epsilon}-\epsilon, hence Gij=δ≤2ϵˉ+ϵσs(B)G_{ij}=\delta\leq 2\frac{\bar{\epsilon}+\epsilon}{\sigma_{s}(B)}. ∎

Choices for f𝑓f and Related Methods

In this section, we discuss several choices for the function ff in Algorithm 1, and relate them to existing methods.

According to our derivations (see Theorem 3), using functions ff whose strong convexity parameter μ\mu is equal to the Lipschitz constant LL of its gradient is the best possible choice (since it minimizes the error bounds). The only function satisfying Assumption 2 along with this condition is, up to a scaling factor, f(x)=∣∣x∣∣22=∑i=1mxi2f(x)=||x||_{2}^{2}=\sum_{i=1}^{m}x_{i}^{2}. In fact, Assumption 2 implies μ2∣∣x∣∣22≤f(x)≤L2∣∣x∣∣22\frac{\mu}{2}||x||_{2}^{2}\leq f(x)\leq\frac{L}{2}||x||_{2}^{2}; see Equation (1). However, depending on the problem at hand, other choices could be more judicious (see Sections 4.2 and 4.3). It is worth noting that Algorithm 1 with f(x)=∣∣x∣∣22f(x)=||x||_{2}^{2} has been introduced and analyzed by several other authors:

Successive Projection Algorithm. Araújo et al. proposed the successive projection algorithm (SPA), which is equivalent to Algorithm 1 with f(x)=∣∣x∣∣22f(x)=||x||_{2}^{2}. They used it for variable selection in spectroscopic multicomponent analysis, and showed it works better than other standard techniques. In particular, they mention ‘SPA seems to be more robust than genetic algorithms’ but were not able to provide a rigorous justification for that fact (which our analysis does). Ren and Chang rediscovered the same algorithm, which was referred to as the automatic target generation process (ATGP). It was empirically observed in to perform better than other hyperspectral unmixing techniques (namely, PPI and VCA ). However, no rigorous explanation of their observations was provided. In Section 5, we describe these techniques and explain why they are not robust to noise, which theoretically justifies the better performances of Algorithm 1. Chan et al. analyzed the same algorithm (with the difference that the data is preprocessed using a linear dimensionality reduction technique). The algorithm is referred to as the successive volume maximization algorithm (SVMAX). They also successfully use Algorithm 1 as an initialization for a more sophisticated approach which does not take into account the pure-pixel assumption.

Greedy Heuristic for Volume Maximization. Çivril and Magdon-Ismail showed that Algorithm 1 with f(x)=∣∣x∣∣22f(x)=||x||_{2}^{2} is a very good greedy heuristic for the following problem: given a matrix MM and an integer rr, find a subset of rr columns of MM whose convex hull has maximum volume. More precisely, unless P=NP\mathcal{P}=\mathcal{NP}, they proved that the approximation ratio guaranteed by the greedy heuristic is within a logarithmic factor of the best possible achievable ratio by any polynomial-time algorithm. However, the special case of separable matrices was not considered. This is another advantage of Algorithm 1: even if the input data matrix MM is not approximately separable, it identifies rr columns of MM whose convex hull has large volume. For the robust algorithms from discussed in Section 2.4, it is not clear whether they will be able to produce a meaningful output in that case; see also Section 5.2 for some numerical experiments.

This choice limits the impact of large entries in xx, hence would potentially be more robust to outliers. In particular, as α\alpha goes to zero, f(x)f(x) converges to ∣∣x∣∣1||x||_{1} while, when α\alpha goes to infinity, it converges to ∣∣x∣∣22α\frac{||x||_{2}^{2}}{\alpha} (in any bounded set).

is strongly convex with parameter μ=2α2(α+K)3\mu=\frac{2\alpha^{2}}{(\alpha+K)^{3}} and its gradient is Lipschitz continuous with constant L=2αL=\frac{2}{\alpha}.

hence μ=2α2(α+K)3\mu=\frac{2\alpha^{2}}{(\alpha+K)^{3}}, and L=2αL=\frac{2}{\alpha}. ∎

For example, one can choose α=K\alpha=K for which we have Lμ=2\frac{L}{\mu}=2, which is slightly larger than one but is less sensitive to large, potentially outlying, entries of MM. Let us illustrate this on a simple example:

One can check that, for any ϵ≤0.69\epsilon\leq 0.69, Algorithm 1 with f(x)=∣∣x∣∣22f(x)=||x||_{2}^{2} recovers the first two columns of MM, that is, the columns of WW. However, using f(x)=∑ixi21+∣xi∣f(x)=\sum_{i}\frac{x_{i}^{2}}{1+|x_{i}|}, Algorithm 1 recovers the columns of WW for any ϵ≤1.15\epsilon\leq 1.15. Choosing appropriate function f(x)f(x) depending on the input data matrix and the noise model is a topic for further research.

The condition that the gradient of ff must be Lipschitz continuous in Assumption 2 can be relaxed to the condition that the gradient of ff is continuously differentiable. In fact, in all our derivations, we have always assumed that ff was applied on a bounded set (more precisely, the ball {x ∣ ∣∣x∣∣2≤K(W)}\{x\ |\ ||x||_{2}\leq K(W)\}). Since g∈C1g\in\mathcal{C}^{1} implies that gg is locally Lipschitz continuous, the condition f∈C2f\in\mathcal{C}^{2} is sufficient for our analysis to hold. Similarly, the strong convexity condition can be relaxed to local strong convexity.

For 1<p≤21<p\leq 2, f(x)f(x) is strongly convex with parameter 2(p−1)2(p-1) with respect to the norm ∣∣.∣∣p||.||_{p} [22, Section 4.1.1], while its gradient is locally Lipschitz continuous (see Remark 3). For 2≤p<+∞2\leq p<+\infty, the gradient of f(x)f(x) is Lipschitz continuous with respect to the norm ∣∣.∣∣p||.||_{p} with constant 2(p−1)2(p-1) (by duality), while it is locally strongly convex. Therefore, ff satisfies Assumption 2 for any 1<p<+∞1<p<+\infty in any bounded set, hence our analysis applies. Note that, for p=1p=1 and p=+∞p=+\infty, the algorithm is not guaranteed to work, even in the noiseless case (when points are on the boundary of the convex hull of the columns of WW): consider for example the following separable matrices

Numerical Experiments

In the first part of this section, we compare Algorithm 1 with several fast hyperspectral unmixing algorithms under the linear mixing model and the pure-pixel assumption. We first briefly describe them (computational cost and main properties) and then perform a series of experiments on synthetic data sets in order to highlight their properties. For comparisons of Algorithm 1 with other algorithms on other synthetic and real-world hyperspectral data sets, we refer the reader to since Algorithm 1 is a generalization of the algorithms proposed in ; see Section 4.

In the second part of the section, we compare Algorithm 1 with the Algorithm of Bittorf et al. .

Algorithm 1 with f(x)=∣∣x∣∣22f(x)=||x||_{2}^{2}. We will only test this variant because, according to our analysis, it is the most robust. (Comparing different variants of Algorithm 1 is a topic for further research.) The computational cost is rather low: steps 3 and 5 are the only steps requiring computation, and have to be performed rr times. We have

Step 3. Compute the squared norm of the columns of RR, which requires nn times 2m2m operations (squaring and summing the elements of each column), and extract the maximum, which requires nn comparisons, for a total of approximately 2mn2mn operations.

Step 5. It can be compute in the following way

where computing xT=ujTRx^{T}=u_{j}^{T}R requires 2mn2mn operations, y=uj∣∣uj∣∣22y=\frac{u_{j}}{||u_{j}||_{2}^{2}} mm operations, and R−yxTR-yx^{T} 2mn2mn operations, for a total of approximately 4mn4mn operations.

The total computational cost of Algorithm 1 is then about 6mnr6mnr operations, plus some negligible terms.

If the matrix MM is sparse, RR will eventually become dense which is often impractical. Therefore, RR should be kept in memory as the original matrix MM minus the rank-one updates.

It is not robust to noise. In fact, linear functions can be maximized at any vertex of the convex hull of a set of points. Therefore, in the noisy case, as soon as a column of the perturbed matrix M′M^{\prime} is not contained in the convex hull of the columns of WW, it can be identified as a vertex. This can occur for arbitrarily small perturbation, as will be confirmed by the experiments below.

If not enough linear functions are generated, the algorithm might not be able to identify all the vertices (even in the noiseless case). This is particularly critical in case of ill-conditioning because the probability that some vertices maximize a randomly generated linear function can be arbitrarily low.

If the input noisy data matrix contains many columns close to a given column of matrix WW, the score of these columns will be typically small (they essentially share the score of the original column of matrix WW), while an isolated column which does not correspond to a column of WW could potentially have a higher score than these columns, hence be extracted. This can for example be rather critical for hyperspectral images where there typically are many pixels close to pure pixels (i.e., columns of MM corresponding to the same column of WW). Moreover, for the same reasons, PPI might extract columns of MM corresponding to the same column of WW.

Vertex Component Analysis (VCA) . The first step of VCA is to preprocess the data using principal component analysis which requires O(nm2+m3)O(nm^{2}+m^{3}) . Then, the core of the algorithm requires O(rm2)O(rm^{2}) operations (see below), for a total of O(nm2+m3)O(nm^{2}+m^{3}) operationsThe code is available at http://www.lx.it.pt/~bioucas/code.htm.. Notice that the preprocessing is particularly well suited for data sets where m≪nm\ll n, such as hyperspectral images, where mm is the number of hyperspectral images with m∼100m\sim 100, while nn is the number of pixels per image with n∼106n\sim 10^{6}. The core of VCA is very similar to Algorithm 1: at each step, it projects the data onto the orthogonal complement of the extracted column. However, instead of using a strictly convex function to identify a vertex of the convex hull of MM (as in Algorithm 1), it uses a randomly generated linear function (that is, it selects the column maximizing the function f(x)=cTxf(x)=c^{T}x where cc is randomly generated, as PPI does). Therefore, for the same reasons as for PPI, the algorithm is not robust. However, it solves the second and third pitfalls of PPI (see point (b) and (c) above), that is, it will always be able to identify enough vertices, and a cluster of points around a vertex are more likely to be extracted than an isolated point. Note that, in the VCA implementation, only one linear function is generated at each step which makes it rather sensitive to this choice. Finally, the two main differences between VCA and Algorithm 1 are that: (1) VCA uses a pre-processing (although we could implement a version of Algorithm 1 with the same pre-processing), and (2) VCA uses randomly generated linear functions to pick vertices of the convex hull of the columns of MM (which makes it non-robust to noise, and also non-deterministic).

Simplex Volume Maximization (SiVM) . SiVM recursively extracts columns of the matrix MM while trying to maximize the volume of the convex hull of the corresponding columns. Because evaluating the volumes induced by adding a column not yet extracted to the previously selected ones is computationally expensive, the function is approximated via a heuristic, for a total computational cost of O(mnr)O(mnr) operations (as for Algorithm 1). The heuristic assumes that the columns of WW are located at the same distance, that is, ∣∣wi−wj∣∣2=∣∣wk−wl∣∣2||w_{i}-w_{j}||_{2}=||w_{k}-w_{l}||_{2} for all i≠ji\neq j and k≠lk\neq l. Therefore, there is not guarantee that the algorithm will work, even in the noiseless case; this will be particularly critical for ill-conditioned problems, which will be confirmed by the experiments below.

We now generate several synthetic data sets allowing to highlight the properties of the different algorithms, and in particular of Algorithm 1. We are going to consider noisy separable matrices generated as follows.

The matrix WW will be generated in two different ways :

The matrices HH and NN will be generated in two different ways as well :

where wˉ\bar{w} is the average of the columns of WW (geometrically, this is the vertex centroid of the convex hull of the columns of WW). This means that we move the columns of MM toward the outside of the convex hull of the columns of WW. Hence, for any δ>0\delta>0, the columns of M′M^{\prime} are not contained in the convex hull of the columns of WW (although the rank of M′M^{\prime} remains equal to 20).

Finally, we construct the noisy separable matrix M′=WH+NM^{\prime}=WH+N in four different ways, see Table 2, where WW, HH and NN are generated as described above for a total of four experiments.

For each experiment, we generate 100 matrices for 100 different values of δ\delta and compute the percentage of columns of WW that the algorithms were able to identify (hence the higher the curve, the better); see Figure 1. (Note that we then have 10000 matrices generated for each experiment.)

Algorithm 1 is the most robust algorithm as it is able to identify all the columns of WW for the largest values of the perturbation δ\delta for all experiments; see Table 3 and Figure 1.

In Exp. 1, PPI and SiVM perform relatively well, the reason being that the matrix WW is well-conditioned (see Table 2) while VCA is not robust to any noise. In fact, as explained in Section 5.1, VCA only uses one randomly generated linear function to identify a column of WW at each step, hence can potentially extract any column of MM since they all are vertices of the convex hull of the columns of MM (the last columns of MM are the middle points of the columns of WW and are perturbed toward the outside of the convex hull of the columns of WW).

In Exp. 2, the matrix WW is well-conditioned so that SiVM still performs well. PPI is now unable to identify all columns of MM, because of the repetition in the data set (each column of WW is present twice as a column of MM)For δ=0\delta=0, we observe that our implementation of the PPI algorithm actually recovers all columns of WW. The reason is that the first columns of MM are exactly equal to each other and that the MATLAB max(.) function only outputs the smallest index corresponding to a maximum value. This is why PPI works in the noiseless case even when there are duplicates.. VCA now performs much better because the columns of MM are strictly contained in the interior of the convex hull of the columns of WW.

In Exp. 3 and 4, SiVM performs very poorly because of the ill-conditioning of matrix WW.

In Exp. 3, as opposed to Exp. 1, PPI is no longer robust because of ill-conditioning, although more than 97% of the columns of WW are perfectly extracted for all δ≤10−3\delta\leq 10^{-3}. VCA is not robust but performs better than PPI, and extracts more than 97% of the columns of WW for all δ≤10−2\delta\leq 10^{-2} (note that Algorithm 1 does for δ≤0.05\delta\leq 0.05).

In Exp. 4, PPI is not able to identify all the columns of WW because of the repetition, while, as opposed to Exp. 2, VCA is not robust to any noise because of ill-conditioning.

Algorithm 1 is the fastest algorithm although PPI and SiVM have roughly the same computational time. VCA is slower as it uses PCA as a preprocessing; see Table 4.

These experiments also show that the error bound derived in Theorem 3 is rather loose, which can be partly explained by the fact that our analysis considers the worst-case scenario (while our experiments use either a structured noise or Gaussian noise). Recall that the value of ϵ\epsilon in Theorem 3 is the smallest value such that ∣∣ni∣∣2≤ϵ||n_{i}||_{2}\leq\epsilon for all ii; see Equation (9). Table 2 gives the average value of the maximum norm of the columns of NN for each experiment. Based on these values, the first row of Table 5 shows the average upper bound for δ\delta to guarantee recovery; see Theorem 3.

2 Comparison with the Algorithm of Bittorf et al. [6]

In this section, we compare the Algorithm of Bittorf et al. (BRRT) (Algorithm 3 in ; see also Algorithm 2 in )We do not perform a comparison with the algorithm of Arora et al. as it is not very practical (the value of α\alpha has to be estimated, see Section 2.4) and has already been shown to perform similarly as BRRT in . with Algorithm 1. BRRT has to solve a linear program with O(n2)\mathcal{O}(n^{2}) variables which we solve using CVX . Therefore we are only able to solve small-scale problems (in fact, CVX uses an interior-point method): we perform exactly the same experiments as in the previous section but for m=10m=10 and r=5r=5 for all experiments, so that

n=5+(52)=15n=5+\binom{5}{2}=15 for the first and third experiments (the last ten columns of MM are the middle points of the five columns of WW).

n=5+5+10=20n=5+5+10=20 for the second and fourth experiments (we repeat twice each endmember, and add 10 points in the convex hull of the columns of WW).

The average running time for BRRT on these data sets using CVX is about two seconds while, for Algorithm 1, it is less than 10−310^{-3} seconds. (Bittorf et al. propose a more efficient solver than CVX for their LP instances. As mentioned in Section 2.4, even with their more efficient solver, Algorithm 1 is much faster for large nn.) Figure 2 shows the percentage of correctly extracted columns with respect to δ\delta, while Table 6 shows the robustness of both algorithms.

Quite surprisingly, Algorithm 1 performs in average better than BRRT. Although BRRT is more robust in two of the four experiments (that is, it extracts correctly all columns of WW for a larger value of δ\delta), the percentage of columns it is able to correctly extract decreases much faster as the noise level increases. For example, Table 7 shows the maximum value of δ\delta for which 99% percent of the columns of WW are correctly extracted. In that case, Algorithm 1 always performs better.

A possible explanation for this behavior is that, when the noise is too large, the condition for recovery are not satisfied as the input matrix is far from being separable. However, using Algorithm 1 still makes sense as it extracts columns whose convex hull has large volume while it is not clear what BRRT does in that situation (as it heavily relies on the separability assumption). Therefore, although BRRT guarantees perfect recovery for higher noise levels, it appears that, in practice, when the noise level is high, Algorithm 1 is preferable.

Conclusion and Further Work

In this paper, we have introduced and analyzed a new family of fast and robust recursive algorithms for separable NMF problems which are equivalent to hyperspectral unmixing problems under the linear mixing model and the pure-pixel assumption. This family generalizes several existing hyperspectral unmixing algorithms, and our analysis provides a theoretical framework to explain the better performances of these approaches. In particular, our analysis explains why algorithms like PPI and VCA are less robust against noise compared to Algorithm 1.

Many questions remain open, and would be interesting directions for further research:

Is it possible to provide better error bounds for Algorithm 1 than the ones of Theorem 3? In other words, is our analysis tight? Also, can we improve the bounds if we assume specific generative and/or noise models?

How can we choose appropriate functions f(x)f(x) for Algorithm 1 depending on the input data matrix?

Can we design other robust and fast algorithms for the separable NMF problem leading to better error bounds?

Acknowledgments

The authors would like to thank the reviewers for their feedback which helped improve the paper significantly.

References