壓縮感知 Compressive Sensing CS 是一種新興的取樣方法，相比長久以來被使用的奈奎斯特取樣定理 Nyquist Sampling Theorem，能更高效的方式取樣訊號。壓縮感知最主要利用訊號的稀疏性來尋找欠定線性系統的稀疏解，因此能從較少的取樣樣本中還原訊號。近幾年有許多文獻提出了許多有效的演算法，大多是透過迭代的方式找到係數並還原訊號，相較同時找到最大係數的方式，能更精確的還原訊號。 然而，壓縮感知的運作機制是建立於可同時獲得取樣後的樣本振幅與相位資訊的前提下，方能完美重建原始稀疏訊號，因此在一些現實的應用情境中，例如 X 射線晶體學、全像攝影、量子光學、毫米波無線通訊 等，若其佈署的感測元件或系統無法取得樣本的相位資 訊時 或相位資訊不可靠，則會嚴重影響壓縮感知訊號重建的效果。為了克服此難題，近幾年許多研究致力於將建立線上性測量模型 Linear measurement model 下的壓縮感知理論與相關的訊號重建技術開發延伸至非線性測量系統模型；特別是針對只知道線性量測資料的振幅資訊這類的非線性模型進行深入探討。由於是在不知道量測值的相位資訊條件下完成稀疏訊號還原，因此這類的研究課題被稱為壓縮相位回復 Compressive phase retrieval。許多高能源效益的稀疏訊號還原方法相繼被提出，例如基於凸最佳化理論所開發的 PhaseLift 與 PhaseCut 還原方法，或是 GESPAR 以及 SPARTA 等貪婪式演演算法 Greedy algorithms。 還原演演算法 對於壓縮感知中的稀疏訊號還原有很多不同型別的演演算法，這些演算法大致可以被分為六類，以下將詳細敘述各型別演演算法的特色。 凸鬆弛 Convex Relaxation 這類演算法最主要透過線性規劃方式求解凸最佳化的問題來對訊號進行還原。 雖然要精確地還原訊號所需的測量數量很少，但是這些方法在計算上是較複雜的。主要代表的演演算法有基追蹤 Basis Pursuit BP、抗噪基追蹤 Basis Pursuit Denoising BPDN、最小角度回歸 Least Angle Regression LARS。 基追蹤最佳化公式：min_x x_1 quad mbox subject to quad y Ax 抗噪基追蹤最佳化公式：min_x frac 12yAx2_2lambdax_1 貪婪迭代演演算法 Greedy Iterative Algorithm 這類演算法主要是透過迭代的方式逐步找到答案來還原訊號。這型別的演演算法在每次迭代中，以貪婪的方式選擇感測矩陣 Theta 中與 Y 做內積最大的列，也就是選出與感測矩陣中最相關的列，接著該列對 Y 的貢獻將會從 Y 中被減去，並且對相減之後的結果進行迭代，直到識別出正確的列集合。相比之下，最小平方誤差的方法則是在每次迭代中最小化誤差。這類演演算法的優點在於運算複雜度低，還原速度快，常見的演演算法有正交匹配追蹤 Orthogonal Matching Pursuit OMP、隨機梯度追蹤 Stochastic Gradient PursuitSGP、正則化正交匹配追蹤 Regularized OMP、壓縮取樣匹配追蹤 Compressive Sampling Matching Pursuit CoSaMP 和子空間追蹤 Subspace PursuitSP。 正交匹配追蹤 Orthogonal Matching Pursuit OMP FileOrthogonal Matching Pursuitpng 正交匹配追蹤 OMP 演演算法 一開始會有一個空集合 Lambda_0，以及剩餘的部分 r_0，每次疊代都會從 overline Lambda _l1 找出一個 A 矩陣投影到剩餘 r_l1 有最大值的位置，把這個位置加到 Lambda_l 之中，並從 overline Lambda _l 當中移除，最後再更新剩餘 r_l。利用疊代的方式，不斷地找出 x 向量當中最有可能非零的位置，直到達到演演算法停止條件。 隨機梯度追蹤 Stochastic Gradient PursuitSGP 可視為是正交匹配追蹤的改良版，在面對雜訊的環境下也能更好地還原。整體演演算法都與正交匹配追蹤相同，除了用最小二乘法 least squareLS 那一項。 最小二乘法可以用零強制線性均衡 zero forcing linear equalizationZFLE 來實現： x_ZFA_Omegadagger y A_Omegadagger AxnxA_OmegaT A_Omega A_OmegaT1 nn 為雜訊 但是零強制線性均衡的缺點可以直接從上式看出，會造成放大雜訊的影響。為瞭解決雜訊的問題，可以利用最小均方誤差 minimum mean square errorMMSE 均衡器來最小化整體的誤差 x_MMSEA_OmegaT A_Omega A_OmegaTfrac sigma_n2sigma_xOmega2 I1 y 和零強制線性均衡相比，在反矩陣內部多增加了額外的項，可直接視為雜訊專案。雖然最小均方誤差方法的正交匹配追蹤更能夠對抗雜訊幹擾，但是 sigma_xOmega2 和 sigma_n2 並不適用壓縮感知的眾多應用上，所以並不能直接套用在壓縮感知的還原演演算法上。 因為最小均方 least mean squareLMS 在不斷地迭代後的平衡值會接近最小均方誤差，因此隨機梯度追蹤利用最小均方來取代最小二乘法。最小均方的迭代將根據預估誤差來調整 support 係數，而預估誤差可表示為： e_lambday_lambda tilde A_lambdatilde x_lambda 因此最小均方的梯度下降遞迴 gradient decent recursion 可以表示為： tilde x_lambda1tilde x_lambdamu e_lambda A_OmegaT，mu 為 step size 總結來說隨機梯度追蹤演演算法裡麵包含了兩個迭代迴圈。一個大的迭代是由正交匹配追蹤所形成，而小的迴圈則被大的迭代所包含，是由最小均方所形成，不斷地迭代來更新 tilde x_lambda 的值。 壓縮取樣匹配追蹤 Compressive Sampling Matching Pursuit CoSaMP 在進行該還原演演算法前需要額外的輸入引數 稀疏性數量 K 訊號非零項的數量。和一般的貪婪迭代演演算法一樣，整個還原過程同樣是由 1 匹配追蹤 找出內積最大的列、2 還原值估計 透過最大內積列來估計還原值、3 剩餘值 residual 更新 透過估計還原值來更新誤差 不停地迭代組成。 和正交匹配追蹤不同的是正交匹配追蹤在每次迭代的匹配追蹤上只尋找並增加一個內積最大的列；而壓縮取樣匹配追蹤則在每次迭代的匹配追蹤上尋找並增加 2K 個內積最大的列。 壓縮取樣匹配追蹤過程： 引數定義：π 為相關向量、r t 為在第 t 次迭代的剩餘值 residual、ω 為在 π 裡面最大的值、Ω 為 support 的集合 初始化，x 0 0_Px1r 0yOmega 0emptysett0 計算相關向量 π π ATr t 從相關向量 π 裡面尋找出 2K 個最高 correlation 值的 supports ω equivunderset omegain Parg max x πω 把找到的 support 加入 support 集合裡面 Ω Ω ᑌ supp T π2K，T π2K 為在 π 裡面 2K 個最高的值、supp T π2K 為 T π2K 的索引集合 因為初始 Ω 裡面含有 K 個 supports，所以在經過 3 後的 Ω 裡面將含有 2K 至 3K 個 supports 挑出需要運算的矩陣 A A_Omega vec theta_j jinOmega，vec theta_j 為第 j 列的矩陣 A 利用最小二乘法 least squareLS 計算出 x_iOmegat1 x_iOmegat1 A_Omegadagger y A_OmegaTA_Omega1 A_OmegaTy x_iOmegaCt1 0 以每一列絕對值的大小排列 Ω 裡面的每一列，並只保留前 K 個最大的 supports，把剩餘的刪去 Ω supp T x_iOmegat1K，x_iOmegaCt1 0 剩餘值 residual 更新 r t1 y Ax t1 如達到終止條件，結束該還原，返還 x t；否則回到 1 繼續。 終止條件： lVert r t rVert_2 leq THR 或者 tIter_max 子空間追蹤 Subspace PursuitSP 子空間追蹤還原演演算法和壓縮取樣匹配追蹤還原演演算法相似，它們之間只有三個主要的差別。 只從相關向量 π 裡面尋找出 K 個最高 correlation 值的 supports，而不是 K 個。 Ω Ω ᑌ supp T πK 在把 K 個 supports 移除過後，再進行一次最小二乘法，讓預估計算的值更精準。 終止條件的更改。因為壓縮取樣匹配追蹤還原演演算法需要額外定義的 THR 來當做終止條件，故子空間追蹤用前一次迭代的剩餘值 residual 來取代 THR。 lVert r_past rVert_2 leq lVert r rVert_2 利用剩餘值 residual 是否有在迭代過程在降低來當成迴圈終止條件，因此使得子空間追蹤收斂的速度比壓縮取樣匹配追蹤來的更快。 迭代閾值演演算法 Iterative Thresholding Algorithm 相較於凸鬆弛演演算法，迭代方法在壓縮感知還原訊號的速度更快。對於這類演算法，主要透過過軟閾值或硬閾值來正確的重建訊號，而閾值的大小則會根據迭代次數進行調整。 最近提出了擴充套件匹配追蹤 Expander Matching Pursuits、稀疏匹配追蹤 Sparse Matching Pursuit 和序列稀疏匹配追蹤 Sequential Sparse Matching Pursuits，實現了近線性還原時間。 迭代閾值演算法是從 Relaxation Method 啟發而來，Relaxation Method 是用於解決具有稀疏性的線性系統。 在迭代閾值演算法中，問題一樣是被定義為：min x_1 subject to yAx blockquote 而在此演算法中，每一次的迭代主要分成兩部分：1、尋找新的解 xt1 。2、更新殘值 rt 。 Step 1 主要是利用投影的方式找到更新的向量方向，再透過取閾值的方式來進行最佳化。 xt1eta_thrxtmathcal Ktimes ATrt blockquotediv 而 mathcal K 是 relaxation parameter，且 mathcal Kin 01 。 而 eta_thr 就是閾值函式 thresholding function，主要就是為了使迭代的過程中，逐漸逼近具有稀疏性性質的解，而目前主要有兩大類取閾值的方式：硬閾值函式 Hard Thresholding Function 與軟閾值函式 Soft Thresholding Function。 硬閾值函式就是將小於閾值 thr 的解，一律通透過濾成 0。 eta_thrH xbegin cases x text ifxthr0text otherwise end cases 軟閾值函式則是使用較為平滑的方式，將值逼近於稀疏性的解 eta_thrS xsgn xxthr_text wherez_ztimesmathbb Izgeq0 ，而 mathbb I 是指示函式 Step 2 利用新算出來的 xt1 來進行殘差更新 rt1yAxt1 之後一直等到規定的迴圈數抵達即完成還原。 而此演算法是 Landweber iteration 的變形，若沒有加入閾值函式的話，就會收斂到 min yAx_22 。 組合 次線性演演算法 CombinatorialSublinear Algorithms 這類演算法透過分組測試來還原稀疏訊號。與凸鬆弛演演算法或貪婪演演算法相比，它們有高速和高效的好處，然而對於測量矩陣 Phi 有特定模式稀疏的要求。代表性的演演算法有傅裡葉取樣演算法 Fourier Sampling Algorithm 和鍊式追蹤 Chaining Pursuits。 非凸最小化演演算法 Non Convex Minimization Algorithms 非凸區域性最小化技術透過用 l_p 規範替換 l_1 規範來從更少的測量中恢復 CS 訊號，其中 pleq1。非凸最佳化主要應用於醫學影像斷層掃描、網路狀態推斷、資料串流壓縮。文獻中提出了許多使用這種技術的演演算法，例如聚焦欠定系統解法 Focal Underdetermined System Solution FOCUSS、迭代重新加權最小平方法 Iterative Reweighted Least Squares、稀疏貝葉斯學習演算法 Sparse Bayesian Learning Algorithms、基於蒙特卡羅 MonteCarlo based Algorithms 的演演算法。 布里格曼迭代演演算法 Bregman Iterative Algorithm 這些演算法提供了一種解決最小化問題的簡單而有效的方法。文獻給出了一個新的想法，它透過布里格曼迭代正則化方法產生一系列無約束子問題給出約束問題的精確解。當應用於壓縮感知問題時，使用布里格曼的迭代方法能在四到六次的迭代中實現還原。與其他現有演演算法相比，這些演算法的計算速度特別吸引人。 複雜度比較 各型別壓縮感知還原演演算法複雜度比較 種類 演演算法 複雜度 最小測量次數 凸鬆弛 基追蹤 O n3 O slog n 貪婪迭代演演算法 正交匹配追蹤 O smn O slog n 貪婪迭代演演算法 正則化正交匹配追蹤 O smn O slog2 n 貪婪迭代演演算法 壓縮取樣匹配追蹤 O mn O slog n 迭代閾值演演算法 擴充套件匹配追蹤 O nlog ns O nlog ns 組合 次線性演演算法 鍊式追蹤 O slog2 nlog2s O slog2 n 參考資料 E J Candes T Strohmer and V Voroninski PhaseLift Exact and Stable Signal Recovery from Magnitude Measurements via Convex Programming Commun Pure Appl Math vol 66 no 8 pp 12411274 2013 I Waldspurger A dAspremont and S Mallat Phase Recovery MaxCut and Complex Semidefinite ProgrammingMath Program A vol 149 no 1 pp4781 2015 Y Shechtman A Beck and Y C Eldar GESPAR Efficient Phase Retrieval of Sparse Signals IEEE Trans Signal Processing vol 62 no 4 pp 928938 Feb 2014 G Wang L Zhang G B Giannakis M Akcakaya and J Chen Sparse Phase Retrieval via Truncated Amplitude Flow IEEE Trans Signal Processing vol 66 no 2 pp 479491 Jan 2018