Recovery of Sparse 1-D Signals from the Magnitudes of their Fourier Transform

Kishore Jaganathan, Samet Oymak, Babak Hassibi

Introduction

Signal extraction from the autocorrelation, or equivalently, from the magnitude of the Fourier Transform is known as phase retrieval. This problem fundamentally arises in many practical systems such as X-ray crystallography , astronomical imaging , channel estimation, speech recognition etc, and has attracted a considerable amount of attention from researchers over the last few decades . Various algorithms have been proposed to retrieve phase information and a comprehensive survey of them can be found in .

For one-dimensional signals, since the mapping from signals to autocorrelation is not one-to-one, unique recovery is not possible in general. For any given Fourier transform magnitude, every possible phase corresponds to a different signal. Hence, additional prior information on the signal is required to limit the number of valid phase combinations. uses multiple structured illuminations, in which several patterns using different masks are collected to guarantee uniqueness.

We assume that the signal is sparse, i.e., the number of non-zero entries in the signal is much less compared to the length of the signal. This constraint greatly limits the number of possible phase combinations, and research has been done recently to exploit this feature . In many applications of phase retrieval, the signals encountered are naturally sparse. For example, astronomical imaging deals with the locations of the stars in the sky, electron microscopy deals with the density of electrons, and so on.

In this work, we prove that signals can be recovered from their autocorrelation with arbitrarily high probability under certain conditions. We prove this using dimension counting, based on the ideas used in for multidimensional signals. We also propose two non-iterative recovery algorithms to extract sparse signals from their autocorrelation. Note that the phase recovery problem is inherently non-convex, and relaxations similar to the ones used in are used to develop a convex-optimization based framework.

The paper is organized as follows. In Section 2, we discuss some properties of autocorrelation and spectral factorization which we use for signal extraction. In Section 3, we prove that signals can be recovered from their autocorrelation with very high probability under certain conditions. Non-iterative recovery algorithms are proposed for extraction of the signal from their autocorrelation in Section 4. Section 5 presents the simulation results and concludes the paper.

Theory

Let x=(x0,x1,....xn−1)\mathbf{x}=(x_{0},x_{1},....x_{n-1}) be a real-valued signal of length nn. Its autocorrelation, denoted by a=(a0,a1,....an−1)\mathbf{a}=(a_{0},a_{1},....a_{n-1}), is defined as

where A(z)A(z) and X(z)X(z) are the zz-transforms of a\mathbf{a} and x\mathbf{x} respectively. Since x\mathbf{x} is real valued, X(z)X(z) is a polynomial in zz with real coefficients and hence its zeros occur in conjugate pairs. Also, since A(z)=A(z−1)A(z)=A(z^{-1}), if z0z_{0} is a zero of A(z)A(z), then z0−1z_{0}^{-1} is also a zero. Hence, the zeros of A(z)A(z) appear in quadruples of the form (z0,z0⋆,z0−1,z0−⋆)(z_{0},z_{0}^{\star},z_{0}^{-1},z_{0}^{-\star}).

The extraction of x\mathbf{x} from a\mathbf{a}, or equivalently X(z)X(z) from A(z)A(z), is known as spectral factorization and deals with the distribution of these quadruples between X(z)X(z) and X(z−1)X(z^{-1}). For every quadruple (z0,z0⋆,z0−1,z0−⋆)(z_{0},z_{0}^{\star},z_{0}^{-1},z_{0}^{-\star}), we can either assign (z0,z0⋆)(z_{0},z_{0}^{\star}) to X(z)X(z) and (z0−1(z_{0}^{-1},z0−⋆)z_{0}^{-\star}) to X(z−1)X(z^{-1}), or assign (z0−1(z_{0}^{-1},z0−⋆)z_{0}^{-\star}) to X(z)X(z) and (z0,z0⋆)(z_{0},z_{0}^{\star}) to X(z−1)X(z^{-1}). The total number of different valid factorizations hence is exponential in the number of such quadruples.

If two distinct finite-length real-valued signals f1\mathbf{f}_{1} and f2\mathbf{f}_{2} have the same autocorrelation, then there exists finite-length real-valued signals g\mathbf{g} and h\mathbf{h} such that

Let F1(z)F_{1}(z), F2(z)F_{2}(z), G(z)G(z) and H(z)H(z) be the zz-transforms of the signals f1\mathbf{f}_{1}, f2\mathbf{f}_{2}, g\mathbf{g} and h\mathbf{h} respectively. Since f1\mathbf{f}_{1} and f2\mathbf{f}_{2} have the same autocorrelation, (2) gives us

where A(z)A(z) is the zz-transform of the autocorrelation of f1\mathbf{f}_{1} and f2\mathbf{f}_{2}. For every quadruple (z0z_{0},z0⋆z_{0}^{\star},z0−1z_{0}^{-1},z0−⋆z_{0}^{-\star}) which are zeros of A(z)A(z), (z0,z0⋆)(z_{0},z_{0}^{\star}) has to be assigned to F1(z)F_{1}(z) or F1(z−1)F_{1}(z^{-1}), and F2(z)F_{2}(z) or F2(z−1)F_{2}(z^{-1}). Let P1(z)P_{1}(z), P2(z)P_{2}(z) and P3(z)P_{3}(z) be the polynomials constructed from such conjugate pairs of zeros which are assigned to (F1(z),F2(z))(F_{1}(z),F_{2}(z)) and (F1(z),F2(z−1))(F_{1}(z),F_{2}(z^{-1})) and (F1(z−1),F2(z))(F_{1}(z^{-1}),F_{2}(z)) respectively. Note that P2(z)=P3(z−1)P_{2}(z)=P_{3}(z^{-1}). We have

and hence F1(z)F_{1}(z) and F2(z)F_{2}(z) can be written as

where G(z)=P1(z)G(z)=P_{1}(z) and H(z)=P2(z)H(z)=P_{2}(z), or equivalently

Unique Recovery

In this section, we establish the fact that within the class of signals with non-uniform support (defined later), there is a one-to-one mapping between signals and their autocorrelation almost surely.

If f:A→Bf:\mathcal{A}\rightarrow\mathcal{B} is a map from A\mathcal{A} to B\mathcal{B}, where A\mathcal{A} is a manifold of dimension dad_{a} and B\mathcal{B} is a manifold of dimension dbd_{b}, then the image of ff is measure zero in B\mathcal{B} if da<dbd_{a}<d_{b}.

Note that any signal of length nn can be represented as a vector in Rn\mathcal{R}^{n}. Let f\mathbf{f} be a finite-length real-valued signal of length nn. Let II represent its support, defined as the set of locations where the f\mathbf{f} can have non-zero entries. We say that a signal f\mathbf{f} has uniform support if the indices of the elements belonging to the support are periodic, i.e., in an arithmetic progression. The size of the set II denotes the sparsity of f\mathbf{f}. Let Fk\mathcal{F}_{k} denote the set of signals with sparsity kk. Observe that Fk\mathcal{F}_{k} is a manifold of dimension kk.

Suppose g\mathbf{g} and h\mathbf{h} are finite-length real-valued signals with support set IgI_{g} and IhI_{h} of sparsity kgk_{g} and khk_{h} respectively. If Fgh\mathcal{F}_{gh} denotes the set of signals g∗h\mathbf{g}*\mathbf{h}, and IghI_{gh} its support. Then

The set Fgh\mathcal{F}_{gh} is a manifold of dimension kg+kh−1k_{g}+k_{h}-1.

IghI_{gh} has sparsity kgh≥kg+kh−1k_{gh}\geq k_{g}+k_{h}-1, with equality iff g\mathbf{g} and h\mathbf{h} have uniform support.

If f=g∗h\mathbf{f}=\mathbf{g}*\mathbf{h}, where II, the support of f\mathbf{f}, is a subset of IghI_{gh} with sparsity kk. The set of such f\mathbf{f} is a manifold of dimension kg+kh−1−γk_{g}+k_{h}-1-\gamma, where γ=kgh−k\gamma=k_{gh}-k.

We refer the readers to for the proof of (i)(i) and (iii)(iii). (ii)(ii) directly follows from the properties of convolution. ∎

Suppose f=g∗h\mathbf{f}=\mathbf{g}*\mathbf{h}, with f\mathbf{f} having non-uniform support where as g\mathbf{g} and h\mathbf{h} have uniform support, also has the additional property that f′\mathbf{f}^{\prime} has non-uniform support. Then, the set of such signals is a manifold of dimension strictly lesser than kg+kh−1−γk_{g}+k_{h}-1-\gamma.

The idea of the proof is similar to , based on dimension counting. We saw in Lemma 3.2 that the set of signals f\mathbf{f} which can be represented as g∗h\mathbf{g}*\mathbf{h} with sparsity kk can be written as a manifold of dimension kg+kh−1−γk_{g}+k_{h}-1-\gamma. The new set of constraints introduced by terms in f′\mathbf{f}^{\prime} being result in a further reduction in dimension. Hence the set of such signals belong to a manifold of dimension strictly lesser than kg+kh−1−γk_{g}+k_{h}-1-\gamma.

Signals can be uniquely recovered from their autocorrelation, or equivalently, from the magnitudes of their Fourier Transforms almost surely iff they have non-uniform support.

Let Fk′\mathcal{F}^{\prime}_{k} be the set of all signals f\mathbf{f} with non-uniform support of sparsity kk which have another signal f′\mathbf{f}^{\prime} with non-uniform support and same autocorrelation. Note that Fk′\mathcal{F}_{k}^{\prime} is the set of signals of sparsity kk which cannot be recovered uniquely from their autocorrelation. Lemma 2.1 showed the existence of signals g\mathbf{g} and h\mathbf{h} such that

From Lemma 3.2, we note that the dimension of Fk′\mathcal{F}^{\prime}_{k} is less than or equal to kg+kh−1−γk_{g}+k_{h}-1-\gamma

Suppose f\mathbf{f} or f′\mathbf{f}^{\prime} have uniform support, there will be no additional reduction in dimension. This case is equivalent to recovering a one-dimensional signal uniquely with no additional constraints, which is almost surely not possible. ∎

Recovery Algorithms

In this section, we develop two non-iterative recovery algorithms for the extraction of sparse signals from their autocorrelation.

Algorithm 1 is based on combinatorial analysis. We propose a method to recover the support of the signal from the support of the autocorrelation, and prove that recovery is possible with very high probability if the sparsity of the signal is o(n1/3)o(n^{1/3}). Using this support knowledge, we show that signals can be recovered from the autocorrelation with very high probability.

Suppose x\mathbf{x} is a signal of length nn such that each element in x\mathbf{x} belongs to the support with a probability sn\frac{s}{n}, where s=nα,α≤1s=n^{\alpha},\alpha\leq 1, independent of each other. Let a\mathbf{a} denote its autocorrelation, kk denote its sparsity and D={d1,d2,.....dk}D=\{d_{1},d_{2},.....d_{k}\} be the set of indices of the elements belonging to the support. Also, let dijd_{ij} be defined as ∣di−dj∣|d_{i}-d_{j}| for (i,j)={1,2,....k}(i,j)=\{1,2,....k\}. If AA is the set of indices of elements belonging to the support of the autocorrelation, then A={⋃i,jdij}A=\{\bigcup_{i,j}{d_{ij}}\}. Note that di,i+1d_{i,i+1} is a geometric random variable with parameter sn\frac{s}{n}. Without loss of generality, let us assume dk−1,k≥d12d_{k-1,k}\geq d_{12}, otherwise we could just flip the signal and consider the flipped signal. Define A1={dij−d12∣dij∈A}A_{1}=\{d_{ij}-d_{12}|d_{ij}\in A\} and A2={dij−dk−1,k∣dij∈A}A_{2}=\{d_{ij}-d_{k-1,k}|d_{ij}\in A\}.

The algorithm for signal recovery is described below. In what follows, we give a sequence of lemmas to justify various steps of the algorithm.

The sparsity kk of the signal satisfies (1−ϵ)s≤k≤(1+ϵ)s(1-\epsilon)s\leq k\leq(1+\epsilon)s with very high probability for any ϵ>0\epsilon>0, n>n(ϵ)n>n(\epsilon).

For three independent random variables X1X_{1}, X2X_{2} and X3X_{3} where X1X_{1} and X2X_{2} are geometric random variables with parameter sn\frac{s}{n} , P(X1−pX2=qX3)≤snP(X_{1}-pX_{2}=qX_{3})\leq\frac{s}{n} if s=nα,α<1s=n^{\alpha},\alpha<1 for n>n(ϵ)n>n(\epsilon), where pp and qq are integers.

P(dk−1,k−d12∈A)≤(1+ϵ)s3nP(d_{k-1,k}-d_{12}\in A)\leq(1+\epsilon)\frac{s^{3}}{n} for any ϵ>0\epsilon>0, n>n(ϵ)n>n(\epsilon).

Note that the dijd_{ij}’s for i≠1,j≠ki\neq 1,j\neq k are independent of d12d_{12} and dk−1,kd_{k-1,k}. Hence Lemma 4.2 can be applied and each term in the first summation can be upper bounded by sn\frac{s}{n}. Since dk−1,k<dikd_{k-1,k}<d_{ik} and d12>0d_{12}>0, all the terms in the second summation are zero. The terms in the third summation can be equivalently written as P(dk−1,k−2d12=d2j)P(d_{k-1,k}-2d_{12}=d_{2j}), and Lemma 4.2 can be used to upper bound every term by sn\frac{s}{n}. Since d1kd_{1k} is the largest sum, we need not consider it in the summation. Hence, we get

d12d_{12} and dk−1,kd_{k-1,k} can be recovered from the autocorrelation with very high probability if s=o(n1/3)s=o(n^{1/3}).

The first and second highest terms in AA are d1kd_{1k} and d2kd_{2k} respectively since d12≤dk−1,kd_{12}\leq d_{k-1,k}. Note that d1k−d2k=d12d_{1k}-d_{2k}=d_{12}, hence d12d_{12} can be recovered from the autocorrelation. The only terms that can be higher than d1,k−1d_{1,k-1} in AA are {d3k,d4k,.....dk−1,k}\{d_{3k},d_{4k},.....d_{k-1,k}\}. Note that d2k−dik=d2id_{2k}-d_{ik}=d_{2i}, which belongs to AA for all i={3,.....k−1}i=\{3,.....k-1\}. So if d2k−d1,k−1d_{2k}-d_{1,k-1} doesn’t belong to AA, we can recover d1,k−1d_{1,k-1} by considering the highest term which when subtracted from d2kd_{2k} produces a value which doesn’t belong to AA. The probability of failure can hence be written as P(dk−1,k−d12∈A)P(d_{k-1,k}-d_{12}\in A) which goes to zero if s=o(n13)s=o(n^{\frac{1}{3}}), as seen in Lemma 4.3. Hence both d12d_{12} and dk−1,kd_{k-1,k} can be recovered with very high probability if s=o(n1/3)s=o(n^{1/3}). ∎

With the knowledge of d12d_{12} and dk−1,kd_{k-1,k}, we can construct the sets A1A_{1} and A2A_{2}. Consider the intersection of AA and A1A_{1}. All entries of the form d2id_{2i} for i={3,4,...k}i=\{3,4,...k\} will survive trivially for any signal. Similarly, all entries of the form di,k−1d_{i,k-1} for i={1....k−2}i=\{1....k-2\} will survive the intersection of AA and A2A_{2} for any signal. If we subtract the survivors of the intersection of AA and A2A_{2} from d2,k−1d_{2,k-1}, we get d2id_{2i} for i={3,4,...k−1}i=\{3,4,...k-1\}. Hence the elements d2id_{2i} for i={3,4,...k−1}i=\{3,4,...k-1\} will survive (A∩A1)∩(d2,k−1−(A∩A2))(A\cap A_{1})\cap(d_{2,k-1}-(A\cap A_{2})).

No other dijd_{ij} will survive (A∩A1)∩(d2,k−1−(A∩A2))(A\cap A_{1})\cap(d_{2,k-1}-(A\cap A_{2})) and hence the support can be recovered with very high probability if s=o(n1/3)s=o(n^{1/3})

Suppose you choose dijd_{ij} such that ii and jj are picked at random. The probability that dijd_{ij} is a particular value can be upper bounded by 1n\frac{1}{n}. For a non-trivial dijd_{ij} in AA to survive A⋂A1A\bigcap A_{1}, dij+d12d_{ij}+d_{12} has to be in AA. Similarly, d2k−dijd_{2k}-d_{ij} and d2,k−1−dijd_{2,k-1}-d_{ij} has to be in A for it to survive d2k−A⋂A2d_{2k}-A\bigcap A_{2}. Using union bounds, we see that the probability of survival of some other dijd_{ij} goes to when s=o(n1/3)s=o(n^{1/3}). Note that we have information about dk−1,kd_{k-1,k} upto s=o(n1/3)s=o(n^{1/3}).

If no other elements survive, from d2id_{2i} for i={3,4,...k−1}i=\{3,4,...k-1\}, we can extract di,i+1d_{i,i+1} for i={3,4,...k−2}i=\{3,4,...k-2\} and since we already know d12d_{12} and dk−1,kd_{k-1,k}, we have the support of the signal.

Suppose we have the support of the signal, D={d1,d2,.....dk}D=\{d_{1},d_{2},.....d_{k}\} being the indices of the elements belonging to the support. Define a pair (di,dj)(d_{i},d_{j}) as a good pair if they are the only pair separated by ∣di−dj∣|d_{i}-d_{j}|. Note that for such a pair, a∣di−dj∣=xdixdja_{|d_{i}-d_{j}|}=x_{d_{i}}x_{d_{j}}

Consider a graph GG with kk vertices, each vertex representing an element of the support. Draw a weighted edge between every good pair, the weight being the value of the corresponding autocorrelation. If the graph GG has an odd cycle and is connected, then the signal can be extracted from the autocorrelation upto a global sign.

Consider an odd cycle with 2r−12r-1 vertices i1,i2,...i2r−1{i_{1}},{i_{2}},...i_{2r-1}. The term xi1i2xi3i4....xi2r−1i1xi2i3...xi2r−2i2r−1\frac{x_{i_{1}i_{2}}x_{i_{3}i_{4}}....x_{i_{2r-1}i_{1}}}{x_{i_{2}i_{3}}...x_{i_{2r-2}i_{2r-1}}} gives xi12x_{i_{1}}^{2}, from which xi1x_{i_{1}} can be extracted upto a sign, and from it the other terms in the odd cycle can be extracted using the weight corresponding to the edges. Since the graph is connected, all the other terms can be calculated.

The graph GG has an odd cycle and is connected with very high probability for s=o(n1/3)s=o(n^{1/3}).

Pick any three vertices randomly. Choose any path of length k−3k-3 from one of those vertices to cover all the remaining vertices randomly. If all the edges exists between the three vertices and the chosen k−3k-3 length path exists, we are through. If any of the kk edges doesn’t exist, it implies that the distance between that pair of vertices occurs more than once. Since there are less than k2k^{2} pairs, the probability of a pair of vertices not having an edge can be union bounded by k2n\frac{k^{2}}{n}. Since there are kk edges to be considered, the probability of failure can be upper bounded by k3n\frac{k^{3}}{n}. Hence if s=o(n1/3)s=o(n^{1/3}), any chosen triangle and path exists with very high probability.

2 Algorithm 2

Algorithm 2 is developed using a convex optimization based framework. Semidefinite relaxation is used to convert the non-convex constraints into a set of convex constraints. We break the problem into two stages. First, the support of the signal is recovered from the autocorrelation and then we solve for the signal in the support.

We have to extract u\mathbf{u} from the autocorrelation of the signal. We will assume that the support of the signal is a subset of the support of the autocorrelation. This is the same as assuming there is no cancellation of support in the autocorrelation, which is a very weak requirement and holds with probability one if the coefficients of the signal are chosen randomly from a non-degenerate distribution. With this assumption, ai=0a_{i}=0 implies that no two elements in the support are separated by a distance ii, and if aia_{i} is non-zero, there is atleast one pair of elements in the support separated by a distance ii, i.e.,

where u\mathbf{u} is the binary support vector. This is clearly non-convex as the constraints are non-convex and u\mathbf{u} is binary. Define S=uuT\mathbf{S}=\mathbf{u}\mathbf{u}^{T}, which is allowed to be positive semidefinite, as it is the smallest convex set containing all rank one matrices. The entries of S\mathbf{S} are allowed to be in $,whichisthebestconvexrelaxationforbinaryvariables.Thetraceof, which is the best convex relaxation for binary variables. The trace of\mathbf{S}isgivenbyis given by\sum_{i}{u_{i}^{2}}=\sum_{i}u_{i}=k,thesparsityofthesignal.Also,notethat, the sparsity of the signal. Also, note that\sum_{i}S_{ij}=\sum_{i}u_{i}u_{j}=u_{j}\sum_{i}u_{i}=ku_{j}=ku_{j}^{2}=kS_{jj}andsimilarlyand similarly\sum_{j}S_{ij}=kS_{ii}.Sinceflippedversionofthesupportalsosatisfiesalltheconstraints,arandommatrix. Since flipped version of the support also satisfies all the constraints, a random matrix\mathbf{V}$ is used to bias the cost. The support estimation problem becomes

Note that we assume apriori knowledge of the sparsity of the signal, i.e., the number of non-zero locations of the signal is known.

2.2 Signal Recovery

Note that the autocorrelation constraints are non-convex. As we did in the support extraction, we use the semidefinite relaxation X=xxT\mathbf{X}=\mathbf{x}\mathbf{x}^{T}. We append nn zeros to the signal so that cyclic indexing scheme can be applied, hence a m=2nm=2n order DFT matrix is required. Suppose Mk\mathbf{M_{k}} is the m×mm\times m matrix defined by Mk=fkfkT\mathbf{M}_{k}=\mathbf{f}_{k}\mathbf{f}_{k}^{T}, where fk\mathbf{f}_{k} is the kthk^{th} column of the DFT matrix for k={0,1,....m−1}k=\{0,1,....m-1\}. The autocorrelation constraints can be written in the Fourier domain as

where Y={∣y0∣2,∣y1∣2,......∣ym−1∣2}\mathbf{Y}=\{|y_{0}|^{2},|y_{1}|^{2},......|y_{m-1}|^{2}\} is the vector containing the squared magnitude of the Fourier transform of x\mathbf{x}. We can solve for the signal using L1-minimization .

Simulation Results

Figure 1 shows the success rate of signal recovery using Algorithm 1 as a function of the sparsity of the signal. We see that signals with s=o(n1/3)s=o(n^{1/3}) are recovered successfully with very high probability. While the algorithm is computationally very cheap, it is not robust to noise due to error propagation.

Figure 2 demonstrates the performance of Algorithm 2 as a function of the sparsity of the signal. Numerical simulations strongly suggest that signals with sparsity upto s=o(n1/2)s=o(n^{1/2}) can be recovered using this algorithm. It is also very robust to noise and hence more practical. We hope to provide theoretical guarantees in a future publication.

Appendix

For a pair of geometric random variables X1X_{1} and X2X_{2} with parameter sn\frac{s}{n} each, P(X1−pX2=c)≤snP(X_{1}-pX_{2}=c)\leq\frac{s}{n} if s=nα,α<1s=n^{\alpha},\alpha<1 for n>n(ϵ)n>n(\epsilon), where pp and cc are integers.

2 Proof of Corollary 4.2

References