次模函數

前言

本篇小記要介紹一個解析函數上面的概念——次模函數(Submodular Function)。
次模函數也稱作“子模函數”或“亞模函數”,具有次模型(Submodularity),也稱“子模性”或“亞模性”,它是經濟學上的概念——邊緣收益遞減 的形式化描述。次模函數在現實世界中有非常廣泛的應用。本篇小記要說的就是次模函數的概念以及相關的性質。

定義 次模函數

對於一個集合函數f:2VR+ ,若AV,BAeVA,s.t.f({e}A)f(A)f({e}B)f(B) ,那麼f(x) 就是次模函數(Submodular Function),也稱子模函數或亞模函數.
說明:次模函數用來描述邊緣效益遞減現象(Diminishing Marginal Return),邊緣效益遞減現象廣泛存在於現實世界中。舉個例子:施肥,農民給作物施肥,開始時的施一定量的肥料可以產生效益:作物成長。以後每施一定量的肥料,作物就會生長一定的量,但是不能沒有節制的生長,因此,當農民施到某一次肥料時,作物不再按照原先的長勢生長,反而會逆勢生長,這種現象就是邊緣效益遞減現象。(若函數二階可導,那麼邊緣收益遞減現象就是二階導數小於零的意思。可以通俗地這麼理解。)

次模函數的性質

通過我多方面的查閱文獻,得到兩種關於次模性在計算機領域應用時所具有的性質:

單調且非負的次模函數

首先介紹一個NP-Hard的問題:
對於一個次模函數f ,如果給定一個限制條件C ,找出一個滿足條件C 的集合S ,使得f(S) 的值最大。
對於上述NP-Hard問題,可以採取貪心算法求得近似解,貪心算法的核心迭代過程可以試每次迭代地在解中加入增益最大且滿足條件C 的元素,那麼第i 次迭代時解Si 爲:

Si=Si1{argmaxeΔ{e|Si1}}

其中,Δ{e|Si1}=f(Si1{e})f(Si1) .

單調且非負的次模函數的性質:如果一個次模函數是單調且非負的,即對於eS,f({e}S), 且對於SV,f(S)0 ,那麼上面的貪心算法找到的近似解Sapprox 相對於最優解Soptimization 滿足

f(Sapprox)(11e)f(Soptimization)

這裏的11e 稱爲近似因子

非單調的次模函數

非單調的次模函數的性質:對於最大化一個非單調的次模函數使得其滿足一個劃分擬陣約束,存在一個局部搜索算法來解決這一問題,使得近似因子爲:1(4+ε) ,其中ε>0 .參見文獻[2].
至於擬陣約束在後面的文章中會有所介紹,參見下一篇文章《擬陣理論和貪心算法淺析》

參考文獻

[1] A Krause,C Guestrin, Beyond Convexity – Submodularity in Machine Learning,2008.
[2] J. Lee, V. S. Mirrokni, V. Nagarajan, and M. Sviridenko. Maximizing nonmonotone submodular functions under matroid or knapsack constraints. SIAM J. Discrete Math., 23(4):2053–2078, 2010.
[3] A Krause, Submodularity in Machine Learning and Vision, British Machine Vision Conference, 2013:2.1-2.1

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章