非凸優化1:非凸優化及其研究背景
隨着數據量的不斷增大,硬件設備處理能力不斷提升,現實場景需求不斷增多,各領域的學習算法處理數據的維度也在不斷的增大。例如,電子商務普及,推薦系統算法需要向數以億計的用戶推薦數千萬的產品;各種視覺識別任務,需要處理的視覺特徵也呈現出較高的維度;在生物信息學中,蛋白質預測、基因檢測等,所有這些都呈現出類似的高維數據。處理此類高維數據的一種方法是從數據估計的角度出發,對問題施加一定的結構性約束條件,這種結構性約束常常是非凸的。同時,學習任務的目標函數也往往是非凸函數。例如,深度神經網絡和張量分解問題。
非凸目標函數和約束條件能夠更加準確地對問題進行建模,但是此類問題的求解通常給算法設計人員帶來巨大挑戰。與凸優化問題不同,非凸優化問題很難解決,該類問題是NP難問題,並且求解近似問題也是NP難問題。下面給出非凸優化的一般形式和一些示例。
優化問題的一般形式如下所示:
其中是問題的變量,是約束集合,是目標函數。
如果目標函數是一個凸函數,並且約束集合也是一個凸集,則稱該優化問題是凸優化問題。如果具有非凸目標函數或具有非凸約束集,或同時具有這兩個非凸條件的優化問題,稱爲非凸優化問題。在機器學習中使用時,算法研究人員通過設計目標函數對問題的行爲和預期結果進行建模,例如針對具體問題設計相應的損失函數去擬合訓練數據;通過添加約束條件對模型進行限制,例如,對訓練參數和對模型大小進行限制,預防過擬合現象,增強模型的泛化能力。在現實問題中時常遇到下面幾個非凸優化問題的領域。
稀疏迴歸:線性迴歸是學習一個線性模型去響應變量對預測結果的影響。 例如,根據家庭成員的教育程度,其年薪和其他相關指標來預測一個家庭的平均支出,揭示受教育水平如何影響支出,進一步支持經濟政策決策。同時每一個家庭都具有很多特徵,例如,受教育程度、年薪、家庭人口規模、是夠有未成年子女、眼睛的顏色、房屋編號的奇偶性等。可以發現在這些特徵中,有一些特徵對研究目標問題的結果關聯性較弱,如果將這些維度的特徵也加入到模型中去將會影響模型的預測效果。此時對問題添加一個約束限制最終影響模型變量的個數將會取得更好的預測結果。下面給出稀疏迴歸的最小二乘形式:
此問題目標函數是凸函數,但是約束條件是非凸的,解決稀疏迴歸問題是NP難問題。
推薦系統:互聯網搜索引擎、電子商務網站、娛樂服務網站等利用推薦系統向用戶提供內容服務和產品列表。在提供服務的同時,這些平臺通常提供產品反饋渠道,以期望獲得用戶準確的建議,爲用戶提供更優質的服務,例如用戶可以對歌曲電影進行評分。然而,在龐大的產品庫中,例如歌曲往往數以百萬計,而每個用戶僅對其中少數的幾首進行評分,這就需要有效利用這些用戶反饋信息,找出其中的潛在因素拓展到其他產品中去,爲用戶推薦更多喜歡的內容。
矩陣分解是一種有效的處理機制:對於 個用戶, 個產品,可以得到一個 維的矩陣 ,元素 代表用戶 對產品 的喜好程度。矩陣中,每個用戶只對少量產品進行了明確的喜好程度評分,此時希望預測出其餘的產品偏好程度,即補全此矩陣。常規做法是求解一個低秩矩陣來近似原始的稀疏矩陣。此問題與推薦系統中流行的協作過濾技術緊密相關,問題可以形式化描述如下:
上述問題也具有凸目標函數,但受到非凸秩約束,也可以證明是NP難的。針對此問題,可以通過間接施加低秩約束來得出另一種表述。假設評級矩陣的秩最高爲r等於假設矩陣 可以寫成 ,此時:
上面的兩個示例,展示了非凸優化在建模中和實際問題處理中的效用。但是,很多非凸問題都是很難精確求解的NP難問題。在下一篇博客的討論中,將簡要介紹一些用於解決此類非凸優化問題的方法。
Jain P, Kar P. Non-convex optimization for machine learning[J]. Foundations and Trends® in Machine Learning, 2017, 10(3-4): 142-336.
Boyd S, Vandenberghe L. Convex optimization[M]. Cambridge university press, 2004.