首先,對於簡單的凸函數的相加,凸函數求最大值,都是能夠保證函數的凸性的,相比而言,複合函數就較爲複雜了。
給定函數f:Rk→R以及g:Rn→Rk,我們定義複合函數f=h⋅g:Rn→R爲:
f(x)=h(g(x)),domf={x∈domg∣g(x)∈domh}
我們考慮當複合函數保持凸性或者凹性時,兩個函數分別應該滿足什麼樣的條件。
標量
對標量而言,上述方程我們直接求二階導進行判定即可,複合函數的二階倒數爲
f′′(x)=h′′(g(x))g′(x)2+h′(g(x))g′′(x)
如果這個值恆大與0,那麼函數就滿足凸函數的性質,那麼我們有以下結論:
Genaral Case
注意上述結論成立的條件:g,h都是二次可微的,而且他們的定義域都是R。事實上,對於更一般的情況,n>1,不再侷限於一維空間,也不再假設g,h可微或者domg∈Rn,domh∈R,一些相似的複合規則仍然成立。
這裏需要用到函數的拓展,將函數的定義域拓展到整個Rn空間顯然會使得我們的分析更加簡單。h即h函數的拓展,如果點g(x)不在定義域中,而且h是凸函數,那麼對其賦值爲∞(保持h的凸性)。反之如果h是凹函數,那麼對其賦值爲−∞。可以看到,這裏和上面唯一的不同就在於,我們對h函數進行了擴展,使其在整個空間內非增或者非減。
函數擴展的注意事項
需要注意的是,函數的擴展非常重要,我們需要h在整個空間內有單調性,而不只是在定義域內
考慮如下函數:
顯然在定義域內h是不增不降的,既是凸函數也是凹函數,如果我們根據上述條件,只考慮h在定義域內的單調性的話,顯然複合函數即可以使用第一條性質也可以使用第二條性質,但是實際上,這個函數既不是凸函數,也不是凹函數,因爲他連定義域都不是凸的:
而且當我們對他進行函數擴展時可以發現無論是進行凸擴展還是凹擴展,他的h始終是不具有單調性的,因此該函數既沒有凸性,也沒有凹性。Again,h必須在整個空間內具有單調性。
Simple Example
- 函數h(x)=logx,定義域爲domh=R++,其在x≤0處擴展爲−∞,可以得到h非減,且h(x)爲凹函數。
- 函數h(x)=x1/2,定義域爲domh=R+,其在x<0處擴展爲−∞,可以得到h非減,且h(x)爲凹函數。
- 函數h(x)=x3/2,定義域爲domh=R+,如果其在x<0處擴展爲∞,可以得到h(x)爲凹函數,但是不滿足h非減的條件,
- 函數h(x)=x3/2,定義域爲domh=R+,如果其在x<0處擴展爲0,可以得到h(x)爲凹函數,而且滿足h非減的條件,
簡單的復合結論