最近幾年,流形優化方法(或者叫黎曼優化)算是比較熱門的,它提供了一個新的角度去求解和分析一類特殊的約束優化問題,也就是流形約束優化問題。算法
這篇文章的目的是讓你們對這個方向有個大概的理解。詳細的入門書籍建議看【1】【2】app
另外綜述文章看【3】還有一些博士論文:【4】【5】.ide
一句話歸納就是:傳統的優化方法是在歐式空間考慮問題,而流形優化是在黎曼流形中考慮問題,這個黎曼流形哪來的呢?約束給的!也就是把歐式空間的約束當作是一個流形。函數
1、流形約束問題
1.問題闡述flex
流形約束優化問題是指一類特殊的約束優化問題,它的約束具備流形結構。考慮通常的問題:優化
其中
表示流形約束。這個問題你能夠簡單的把它當作是約束問題,而後用傳統的一些針對約束優化問題的優化方法去求,好比罰方法,增廣拉格朗日方法等等。爲何有了這些方法還有去弄個流形優化方法出來,由於首先流行約束一般非凸,收斂性很難保證,其次這些方法不能保證迭代點老是知足約束,最後,流形約束是有結構的,這些方法沒有去探索這些結構信息。以上說的三點正是流形優化的三個優勢:url
- 全部迭代點保持約束可行性,也就是老是在流形
上。
- 流形優化將問題(1)理解爲流形上的無約束優化問題,便於分析收斂性。
- 利用了流形約束自己的結構信息。
2.流形約束的例子spa
接下來介紹一下常見的 有哪些設計
- Stiefel manifold:
- Grassmann manifold:
:all
-dimensional subspaces of
- Symmetric positive definite manifold:
- Fixed-rank manifold:
3.問題的例子3d
- 稀疏主成分分析
- Finding the sparsest vector in subspace
- 典型相關性分析
- 魯棒低秩矩陣恢復
2、預備知識
在歐式空間中的優化方法已經很成熟,對於在流形上設計優化方法,一切在歐式空間中看起來理所應當的東西在黎曼流形上卻不成立,所以咱們須要從新定義。
1.黎曼流形
引用wen huang的一句話解釋:
"Roughly, a Riemannian manifold is a smooth set with a smoothly-varying inner product on the tangent spaces."
2.黎曼梯度
由於咱們要設計優化方法,梯度是最重要的,咱們要定義流形上的梯度,稱爲黎曼梯度,而且限制在切空間上。
Riemannian Gradient: is denoted as the unique tangent vector satisfying
爲何要在切空間上考慮梯度,由於切空間是線性子空間,性質好。能夠將切空間理解爲流形在某個點的線性逼近,所以只要鄰域足夠小,切空間和流形的差能夠獲得控制。
3.收縮算子
有了負梯度,接下來是怎麼往前走一步,假設咱們有了 ,和該點的黎曼梯度:
,咱們如何獲得
,若是是像歐式空間同樣:
這不能保證迭代點還在流形上,也就是說不知足約束條件。所以咱們定義流形上的」加法「:
Retraction:A retraction on a manifold is a smooth mapping
with the following properties. Let
denote be the restriction of $R$ to
:
, where
the zero element of
,where
is the identity mapping on
對於不一樣的流形有不一樣的收縮算子,而且對於某個流形能夠有多個算子。在歐式空間中,收縮算子就是傳統意義下的加法。
有了這兩個定義,咱們就能夠很輕鬆的設計出黎曼梯度方法,基本迭代爲:
咱們來比較下傳統梯度和黎曼梯度的區別:


4.向量轉移算子
在黎曼流形中,不一樣點的梯度位於該點的切空間上,那麼問題來了,不一樣點的黎曼梯度如何去比較?好比 和
,這兩個不在同一個切空間上。這裏的解決方案是,咱們把其中一個」平移「到另外一個的切空間上。因而有了這個算子:


這個算子在共軛梯度方法中會用到。


3、流形優化方法
1.黎曼梯度方法
和傳統梯度方法同樣,其中的步長能夠有不一樣的選擇,好比線搜索,BB步長等
2.黎曼共軛梯度
注意到第二步,由於 和
不在同一個切空間上,沒辦法做比較,因此咱們對
用了向量轉移算子,使得他們保持在同一個切空間。
二階方法比較複雜一點,下次再補上。
4、總結
流形優化用於求解一類約束優化問題,將歐式空間中的約束優化問題轉化爲黎曼流形上的無約束優化問題。關於歐式空間下優化理論的不少東西都能擴展過來,好比函數的凸性,光滑性等等。
- 流形優化方法並不能求解全部的約束優化,只限於那些能夠當作是黎曼流形的約束,好比前面提到的正交約束,對稱正定約束,低秩約束等等。
- 歐式空間的臨近類算法不太好擴展到黎曼流形,至少在計算方面,由於在歐式空間下「臨近友好」這個性質擴展到黎曼流形下就沒有了。

參考文獻
【1】 Absil, P-A., Robert Mahony, and Rodolphe Sepulchre.Optimization algorithms on matrix manifolds. Princeton University Press, 2009.
【2】Nicolas Boumal. An introduction to optimization on smooth manifolds. 2020.
【3】Hu, Jiang, Xin Liu, Zai-Wen Wen, and Ya-Xiang Yuan. "A brief introduction to manifold optimization."Journal of the Operations Research Society of China(2019): 1-50.
【4】Zhang, Hongyi. "Topics in non-convex optimization and learning." PhD diss., Massachusetts Institute of Technology, 2019.
【5】Huang, Wen. "Optimization algorithms on Riemannian manifolds with applications." (2013).