什么是凸函數及如何判斷一個函數是否是凸函數


t元j

一、什么是凸函數

 對於一元函數\(f(x\)),如果對於任意\(t\epsilon[0,1]\)均滿足:\(f(tx_1 + (1-t)x_2) \leq tf(x_1) + (1-t)f(x_2)\),則稱\(f(x)\)為凸函數(convex function)

 如果對於任意\(t\epsilon(0,1)\)均滿足:\(f(tx_1 + (1-t)x_2) < tf(x_1) + (1-t)f(x_2)\),則稱\(f(x)\)為嚴格凸函數(convex function)

 我們可以從幾何上直觀地理解凸函數的特點,凸函數的割線在函數曲線的上方,如圖1所示:

 上面的公式,完全可以推廣到多元函數。在數據科學的模型求解中,如果優化的目標函數是凸函數,則局部極小值就是全局最小值。這也意味着我們求得的模型是全局最優的,不會陷入到局部最優值。例如支持向量機的目標函數\(||w||^2/2\)就是一個凸函數。

 

二、如何來判斷一個函數是否是凸函數呢?

 對於一元函數\(f(x)\),我們可以通過其二階導數\(f''(x)\) 的符號來判斷。如果函數的二階導數總是非負,即\(f''(x) \geq 0\) ,則\(f(x)\)是凸函數

 對於多元函數\(f(X)\),我們可以通過其Hessian矩陣(Hessian矩陣是由多元函數的二階導數組成的方陣)的正定性來判斷。如果Hessian矩陣是半正定矩陣,則是\(f(X)\)凸函數

 

三、Jensen不等式

 對於凸函數,我們可以推廣出一個重要的不等式,即Jensen不等式。如果 f 是凸函數,X是隨機變量,那么\(f(E(X)) \leq  E(f(X))\),上式就是Jensen不等式的一般形式

 我們還可以看它的另一種描述。假設有 n 個樣本\(\{x_1,x_2,...,x_n\}\)和對應的權重\(\{\alpha_1,\alpha_2,...,\alpha_n\}\),權重滿足\(a_i \geqslant 0,\sum\alpha_i = 1\),對於凸函數 f,以下不等式成立:

\(f(\sum_{i=1}^{n}\alpha_ix_i) \leq \sum_{i=1}^{n}\alpha_if(x_i)\)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM