劣モジュラ関数
From Wikipedia, the free encyclopedia
定義
劣モジュラ関数の例
ここでは劣モジュラ関数の例として、単調関数、非単調関数、対称関数、及び非対称関数について述べる。 以下、 を劣モジュラ関数の台集合とする。
単調関数
劣モジュラ関数 が全ての に対して を満たすとき単調と呼ぶ。以下、単調関数の例である。
- 線形関数
- という形で表せる全ての集合関数。
この場合、なら単調。
非単調関数
単調関数でない劣モジュラ関数。
対称な劣モジュラ関数
任意の に対して を満たす劣モジュラ関数を対称であるという。 以下、対称な劣モジュラ関数の例である。
- カット関数( はグラフの頂点集合)
- 任意の に対して、 が、 を満たす辺 の数を返す関数となるとき をカット関数と呼ぶ。
上記の条件を満たす辺重みの合計を返すような関数として定義する場合がある。 辺重み無しの場合を上記で考える場合、重み 1: 辺が存在する、重み 0: 辺が存在することを表す。
- 相互情報量( は確率変数の集合)
- 任意の に対して、(は相互情報量)となる関数。
非対称な劣モジュラ関数
単調でも対称でもない劣モジュラ関数。 以下、非対称な劣モジュラ関数の例である。
- 有向グラフのカット関数( は有向グラフの頂点集合)
- この集合 に対して定義されたカット関数は非対称な劣モジュラ関数である。
出る辺に関するカット関数と、入る辺に関するカット関数は対称でないことからこのことが分かる。
連続関数への拡張
劣モジュラ関数の連続化として、ロバース拡張や多重線形拡張がある。
ロバース拡張
ベクトル であって、各要素が となるものに対し、 で定義される関数を集合関数 のロバース拡張(Lovász extension)という。この関数は閉区間 上の一様分布から 以上のものを選んだ時の期待値を返すような関数になっており、この関数は凸関数になる。
一般化
- L凸関数
- k劣モジュラ関数
参考文献
- Satoru Fujishige (2005), Submodular Functions and Optimization, Elsevier, ISBN 9780444520869
- 室田 一雄 (2001), 離散凸解析, 共立出版, ISBN 4-320-01690-4
- H.Nagamochi and T.Ibaraki (2008), Algorithmic Aspects of Graph Connectivity, Cambridge University Press, ISBN 0-52187864-0
- 河原吉伸 and 永野清仁 (2015), 劣モジュラ最適化と機械学習, 講談社, ISBN 9784061529090