近接作用素
Proximal Operator
上級(大学院レベル)
1. はじめに
現代の最適化では、目的関数が滑らかな項と非滑らかな項の和で書かれることが多い。 Lasso 回帰の $\ell_1$ 正則化、全変動(TV)による画像復元、制約を表す指示関数——いずれも微分できない項を含む。 こうした非滑らかな関数を、勾配のように「一段だけ処理する」道具が近接作用素(proximal operator、しばしば prox(プロックス)と略記される)である。
近接作用素は、勾配ステップ・集合への射影・軟しきい値といった一見別々の操作を、 ただ一つの定義のもとに統一する。本稿では定義と一意性から始め、幾何学的な意味、射影やレゾルベント(陰的勾配ステップ)との関係、 基本性質、代表的な閉形式、そして Moreau 包絡線までを扱う。 最後に、この作用素を部品として用いる近接勾配法(ISTA / FISTA)への橋渡しを示す (アルゴリズムそのものは別記事に譲る)。
2. 定義と一意性
近接作用素
真閉凸関数 $g:\mathbb{R}^n \to \mathbb{R}\cup\{+\infty\}$ とパラメータ $\lambda > 0$ に対して、近接作用素を
$$\operatorname{prox}_{\lambda g}(v) \;=\; \arg\min_{x\in\mathbb{R}^n}\left\{\, g(x) + \frac{1}{2\lambda}\lVert x - v\rVert^2 \,\right\}$$で定義する。$v$ を入力点、$\lambda$ をステップ幅(スケール)と呼ぶ。
右辺の第 1 項 $g(x)$ は「$g$ を小さくしたい」という要求を、第 2 項 $\frac{1}{2\lambda}\lVert x-v\rVert^2$ は「入力点 $v$ から離れたくない」という要求を表す。 近接作用素は、この二つの要求を $\lambda$ で釣り合わせた妥協点を返す写像である。
最小化点の一意性
$g$ が真閉凸関数であれば、上の最小化問題の解はただ一つ存在する。すなわち $\operatorname{prox}_{\lambda g}$ は $\mathbb{R}^n$ 全体で定義された一価の写像である。
証明の要点
目的関数 $h(x) = g(x) + \frac{1}{2\lambda}\lVert x-v\rVert^2$ を考える。二次項 $\frac{1}{2\lambda}\lVert x-v\rVert^2$ は係数 $\frac{1}{\lambda}$ の強凸関数であり、$g$ が凸なので $h$ は $\frac{1}{\lambda}$-強凸である。 さらに $g$ が下に有界な affine 関数で下から抑えられる(真閉凸関数の性質)ため $h$ は強圧的(coercive)かつ閉であり、最小値を達成する。強凸関数の最小化点は高々一つなので、解は一意に存在する。$\blacksquare$
なお $g$ が非凸の場合でも $\lambda$ が十分小さければ最小化点は存在するが一意とは限らず、prox は集合値になりうる。本稿では特に断らない限り $g$ を真閉凸関数とする。
3. 幾何学的解釈
ステップ幅 $\lambda$ を動かすと、二つの要求のどちらを優先するかが変わる。
- $\lambda \to 0^+$:第 2 項が支配的になり、$\operatorname{prox}_{\lambda g}(v) \to v$。ほとんど動かない。
- $\lambda \to \infty$:第 1 項が支配的になり、$\operatorname{prox}_{\lambda g}(v)$ は $g$ の最小化点へ近づく。
すなわち近接作用素は、入力 $v$ と $g$ の最小化点のあいだを補間し、$\lambda$ がその「引き込みの強さ」を決める。 下の図 1 は、この引き込みを 1 変数の代表例 $g(x)=|x|$ で可視化したものである。入力 $v$ を横軸、出力 $\operatorname{prox}_{\lambda g}(v)$ を縦軸にとると、 原点近傍の $[-\lambda,\lambda]$ が丸ごと $0$ に潰れる(軟しきい値)。
図1:入力から出力への写像($g=|x|$ の場合)
破線は「動かさない」恒等写像 $y=v$。実線の軟しきい値は、$|v|\le\lambda$ を $0$ に潰し、それ以外では傾き $1$ のまま原点方向へ $\lambda$ だけ引き戻す。 近接作用素が「$v$ に近く、かつ $g$ が小さい」点を選んだ結果である。
図中の $S_\lambda(v)$ は軟しきい値(soft-thresholding)関数で、$g=\lVert\cdot\rVert_1$ の近接作用素の別名である。成分ごとに
$$S_\lambda(v) = \operatorname{sign}(v)\,\max\bigl(|v|-\lambda,\;0\bigr) = \begin{cases} v-\lambda & (v > \lambda) \\ 0 & (|v| \le \lambda) \\ v+\lambda & (v < -\lambda) \end{cases}$$と定義される。添字の $\lambda$ は閾値の大きさを表すパラメータで、$S_\lambda$ は「閾値 $\lambda$ 版の軟しきい値関数」の意味である。閾値 $\lambda$ の不感帯が小さな成分を $0$ に潰し(スパース化)、残る成分は原点方向へ $\lambda$ だけ縮む。導出は §7 で示す。
4. 射影という特別な場合
近接作用素の最も重要な特別例が直交射影である。凸集合 $C$ に対して指示関数を
$$\iota_C(x) = \begin{cases} 0 & (x \in C) \\ +\infty & (x \notin C) \end{cases}$$と定めると、$\iota_C$ は真閉凸関数であり、その近接作用素は
$$\operatorname{prox}_{\lambda \iota_C}(v) = \arg\min_{x\in C}\; \frac{1}{2\lambda}\lVert x-v\rVert^2 = \arg\min_{x\in C}\; \lVert x-v\rVert^2 = \Pi_C(v)$$すなわち $C$ への直交射影 $\Pi_C$ そのものになる($\lambda$ には依らない)。 指示関数は「$C$ の外に出たら無限大の罰則」を課すので、prox は $v$ に最も近い $C$ 上の点、つまり射影を返す。
図2:指示関数の近接作用素は射影
集合 $C$ の外の点 $v$ から下ろした最近点が射影 $\Pi_C(v)$ である。 近接作用素は、この「制約集合への引き戻し」を、一般の凸関数 $g$ による「柔らかい引き戻し」へと拡張したものと理解できる。
5. レゾルベントと陰的勾配ステップ
近接作用素は、劣微分 $\partial g$ を通して代数的に特徴づけられる。$x = \operatorname{prox}_{\lambda g}(v)$ は目的関数 $g(x)+\frac{1}{2\lambda}\lVert x-v\rVert^2$ の最小化点なので、最適性条件(劣微分に $0$ が含まれる)より
$$0 \in \partial g(x) + \frac{1}{\lambda}(x - v) \quad\Longleftrightarrow\quad v \in x + \lambda\,\partial g(x) = (I + \lambda\partial g)(x).$$両辺を逆に解けば
$$x = (I + \lambda\partial g)^{-1}(v),$$すなわち近接作用素は劣微分作用素 $\partial g$ のレゾルベント $(I+\lambda\partial g)^{-1}$ に等しい。$\partial g$ は一般に集合値・多価だが、そのレゾルベントは一価(前節の一意性)になるところが要点である。
なぜ「後退(陰的)勾配ステップ」なのか
$g$ が滑らかなら $\partial g = \{\nabla g\}$ なので、上の関係は $x = v - \lambda\nabla g(x)$ と書ける。 右辺の勾配が更新後の点 $x$ で評価されている点に注目したい。通常の(前進・陽的)勾配ステップ $x = v - \lambda\nabla g(v)$ が現在点 $v$ で勾配をとるのに対し、 近接作用素は更新後の点で勾配をとる陰的(後退)オイラー・ステップに相当する。陰的スキームゆえに大きな $\lambda$ でも安定で、$g$ が非滑らかでも劣微分を通じて破綻なく定義できる。
6. 基本性質
不動点は $g$ の最小化点
$x^\star$ が $\operatorname{prox}_{\lambda g}$ の不動点であること、すなわち $x^\star = \operatorname{prox}_{\lambda g}(x^\star)$ は、$x^\star$ が $g$ の最小化点であることと同値である。
証明
レゾルベント表示 $x^\star = (I+\lambda\partial g)^{-1}(x^\star)$ は $x^\star \in x^\star + \lambda\partial g(x^\star)$、すなわち $0 \in \partial g(x^\star)$ と同値。これは $x^\star$ が $g$ の(大域)最小化点であるための条件そのものである。$\blacksquare$
この事実は、近接作用素の反復 $x_{k+1}=\operatorname{prox}_{\lambda g}(x_k)$(近接点法)が $g$ の最小化点へ収束する根拠になる。
firm nonexpansive 性
任意の $x, y$ に対して
$$\lVert \operatorname{prox}_{\lambda g}(x) - \operatorname{prox}_{\lambda g}(y)\rVert^2 \;\le\; \bigl\langle \operatorname{prox}_{\lambda g}(x) - \operatorname{prox}_{\lambda g}(y),\; x - y \bigr\rangle.$$とくに Cauchy–Schwarz より $\lVert \operatorname{prox}_{\lambda g}(x) - \operatorname{prox}_{\lambda g}(y)\rVert \le \lVert x-y\rVert$、すなわち近接作用素は非拡大(1-Lipschitz)である。
証明の要点
$u=\operatorname{prox}_{\lambda g}(x)$, $w=\operatorname{prox}_{\lambda g}(y)$ とおく。最適性条件より $\frac{1}{\lambda}(x-u)\in\partial g(u)$, $\frac{1}{\lambda}(y-w)\in\partial g(w)$。 劣微分の単調性 $\langle s_u - s_w,\, u-w\rangle \ge 0$($s_u\in\partial g(u), s_w\in\partial g(w)$)に代入すると $\bigl\langle (x-u)-(y-w),\, u-w\bigr\rangle \ge 0$。展開して整理すれば $\lVert u-w\rVert^2 \le \langle u-w,\, x-y\rangle$ を得る。$\blacksquare$
分離可能なら成分ごと
$g(x)=\sum_{i} g_i(x_i)$ のように座標に分離するとき、近接作用素も成分ごとに作用する:
$$\bigl(\operatorname{prox}_{\lambda g}(v)\bigr)_i = \operatorname{prox}_{\lambda g_i}(v_i).$$$\ell_1$ ノルムの軟しきい値が成分ごとに書けるのは、この性質による。
平行移動・スケールの規則
- 平行移動 $g(x)=h(x-a)$:$\operatorname{prox}_{\lambda g}(v) = a + \operatorname{prox}_{\lambda h}(v-a)$
- スケール $g(x)=h(x/\rho)$($\rho\neq 0$):$\operatorname{prox}_{\lambda g}(v) = \rho\,\operatorname{prox}_{\lambda h/\rho^2}(v/\rho)$
- 線形項 $g(x)=h(x)+\langle b, x\rangle$:$\operatorname{prox}_{\lambda g}(v) = \operatorname{prox}_{\lambda h}(v-\lambda b)$
- 二次項 $g(x)=h(x)+\tfrac{\mu}{2}\lVert x\rVert^2$:$\operatorname{prox}_{\lambda g}(v) = \operatorname{prox}_{\tilde\lambda h}\!\bigl(\tfrac{v}{1+\lambda\mu}\bigr)$、$\tilde\lambda=\tfrac{\lambda}{1+\lambda\mu}$
これらの規則を組み合わせると、複雑な $g$ の近接作用素を既知の閉形式へ帰着できることが多い。
7. 閉形式の一覧
近接作用素が実用的なのは、代表的な正則化項に対して閉形式で計算できるからである。主なものを挙げる。
| 関数 $g(x)$ | $\operatorname{prox}_{\lambda g}(v)$ | 備考 |
|---|---|---|
| $0$ | $v$ | 恒等写像 |
| 定数 $c$ | $v$ | 定数は解に無関係 |
| $\iota_C(x)$(指示関数) | $\Pi_C(v)$ | 集合 $C$ への射影 |
| $\tfrac{1}{2}\lVert x\rVert^2$ | $\dfrac{v}{1+\lambda}$ | 一様な縮小 |
| $\lVert x\rVert_1$ | $S_\lambda(v)$(軟しきい値) | 成分ごと、$0$ 化でスパース |
| $\lVert x\rVert_2$ | $\left(1-\dfrac{\lambda}{\lVert v\rVert_2}\right)_{\!+} v$ | 群軟しきい値(block) |
| $\lVert x\rVert_\infty$ | $v - \Pi_{\lambda B_1}(v)$ | $\ell_1$ 球への射影で計算(Moreau 分解) |
| 箱制約 $\iota_{[l,u]}(x)$ | $\operatorname{clip}(v,\,l,\,u)$ | 成分ごとに $[l,u]$ へ切り詰め |
軟しきい値の導出($g=\lVert\cdot\rVert_1$)
$\ell_1$ ノルムは成分ごとに分離するので、1 変数の問題
$$\min_{x}\; |x| + \frac{1}{2\lambda}(x-v)^2$$を解けばよい。$x \neq 0$ での最適性条件は $\operatorname{sign}(x) + \frac{1}{\lambda}(x-v) = 0$、すなわち $x = v - \lambda\,\operatorname{sign}(x)$。場合分けすると
$$\operatorname{prox}_{\lambda|\cdot|}(v) = S_\lambda(v) = \operatorname{sign}(v)\,\max\bigl(|v|-\lambda,\;0\bigr) = \begin{cases} v-\lambda & (v > \lambda) \\ 0 & (|v| \le \lambda) \\ v+\lambda & (v < -\lambda) \end{cases}$$$|v|\le\lambda$ では $x=0$ が最適($0$ での劣微分 $[-1,1]$ が条件 $\frac{1}{\lambda}(0-v)\in[-1,1]$ を満たす)。 この「小さい成分を $0$ に潰す」働きが、Lasso が解をスパースにする仕組みそのものである。図 1 の実線がこの写像を表す。
Moreau 分解
近接作用素には双対を結ぶ美しい恒等式がある。$g$ の凸共役を $g^*$ とすると、任意の $v$ に対して
$$v = \operatorname{prox}_{\lambda g}(v) + \lambda\,\operatorname{prox}_{g^*/\lambda}\!\bigl(v/\lambda\bigr).$$これを Moreau 分解と呼ぶ。$g=\iota_C$($g^*$ は支持関数)とすれば「点 $=$ 集合への射影 $+$ 極集合への射影」という射影の直交分解に一致する。 上表の $\lVert\cdot\rVert_\infty$ の prox を $\ell_1$ 球への射影で計算できるのも、この分解と $\lVert\cdot\rVert_\infty$ が $\ell_1$ ノルムの共役であることによる。 凸共役については ルジャンドル変換 を参照。
8. Moreau 包絡線
近接作用素の値ではなく、その最小化問題の最小値に着目すると、$g$ を滑らかに丸めた関数が得られる。
Moreau 包絡線
真閉凸関数 $g$ とパラメータ $\lambda>0$ に対して、Moreau 包絡線を
$$M_{\lambda g}(v) = \min_{x}\left\{\, g(x) + \frac{1}{2\lambda}\lVert x-v\rVert^2 \,\right\}$$と定義する。最小値を達成する $x$ がまさに $\operatorname{prox}_{\lambda g}(v)$ である。
主な性質
- $M_{\lambda g}$ は $g$ が非滑らかでも連続的微分可能で、勾配は $$\nabla M_{\lambda g}(v) = \frac{1}{\lambda}\bigl(v - \operatorname{prox}_{\lambda g}(v)\bigr).$$
- この勾配は $\frac{1}{\lambda}$-Lipschitz、すなわち $M_{\lambda g}$ は $\frac{1}{\lambda}$-滑らか。
- 下から $g$ を近似し、$M_{\lambda g}(v) \le g(v)$、$\lambda\to 0^+$ で $M_{\lambda g}(v)\to g(v)$。
- 最小値・最小化点を保つ:$\min_v M_{\lambda g}(v) = \min_x g(x)$、$\arg\min$ も一致。
図3:Moreau 包絡線は角を丸める
$g(x)=|x|$ の Moreau 包絡線は Huber 関数——原点付近では放物線 $\frac{x^2}{2\lambda}$、$|x|>\lambda$ では $|x|-\frac{\lambda}{2}$——になる。 尖った角が滑らかな谷に置き換わり、最小値と最小化点(ともに原点)は保たれる。$\lambda$ を小さくするほど元の V 字に近づく。
近接作用素と包絡線の関係
勾配の式 $\nabla M_{\lambda g}(v)=\frac{1}{\lambda}(v-\operatorname{prox}_{\lambda g}(v))$ を移項すると $\operatorname{prox}_{\lambda g}(v) = v - \lambda\nabla M_{\lambda g}(v)$。 つまり「$g$ に対する近接ステップ」は「滑らかな $M_{\lambda g}$ に対する勾配ステップ」に等しい。 非滑らかな最小化を滑らかな最小化へ橋渡しするのが Moreau 包絡線の役割であり、次節の近接勾配法の理論的な下地でもある。
9. 近接勾配法への橋渡し
近接作用素の主戦場は、合成最小化
$$\min_x\; F(x) = f(x) + g(x)$$である。ここで $f$ は $L$-滑らかな凸関数(例:二乗誤差)、$g$ は非滑らか凸(例:$\ell_1$ ノルム、指示関数)。 $g$ のせいで勾配法をそのまま使えないが、$f$ の勾配ステップと $g$ の近接作用素を交互に適用すれば前進できる:
$$x_{k+1} = \operatorname{prox}_{\lambda g}\!\bigl(x_k - \lambda\nabla f(x_k)\bigr).$$これが近接勾配法(ISTA)であり、外挿を加えた加速版が FISTA である。 本記事の主題は各反復の一段を担う近接作用素そのものなので、アルゴリズムの構成・収束率(ISTA は $O(1/k)$、FISTA は $O(1/k^2)$)・実装上の工夫(backtracking, restart)は次の記事に譲る。
続きを読む
- 近接勾配法とFISTA — 近接写像を部品とする合成最小化のアルゴリズム(ISTA・FISTA)の導出・収束・応用をまとめて扱う。
- 大規模最適化 — 近接勾配法を座標降下法や分解法と並べて扱う。
- 数値最適化の収束率と加速法 — 滑らかな場合の勾配法・Nesterov 加速と収束率の枠組み。
- ルジャンドル変換 — Moreau 分解や双対性の背景となる凸共役。
10. よくある質問
Q1. 近接作用素とは何か
凸関数 $g$ とパラメータ $\lambda>0$ に対して $\operatorname{prox}_{\lambda g}(v)=\arg\min_x\{g(x)+\frac{1}{2\lambda}\lVert x-v\rVert^2\}$ で定義される写像である。 入力 $v$ の近くに留まりつつ $g$ を小さくする妥協点を返す。目的関数が強凸なので最小化点は一意で、prox は空間全体で一価の写像になる。 非滑らかな関数に対する勾配ステップの一般化であり、後退(陰的)勾配ステップとも解釈できる。
Q2. 近接作用素と射影はどう関係するか
凸集合 $C$ の指示関数 $\iota_C$ の近接作用素は、$C$ への直交射影 $\Pi_C$ に一致する($\lambda$ に依らない)。 したがって射影は近接作用素の特別な場合であり、近接作用素は「制約集合への射影」を一般の凸関数へ拡張した操作とみなせる。
Q3. $\ell_1$ ノルムの近接作用素が軟しきい値になるのはなぜか
$\lVert x\rVert_1$ は成分ごとに分離するので、各成分で $|x|+\frac{1}{2\lambda}(x-v)^2$ を最小化すればよい。 最適性条件 $0\in\operatorname{sign}(x)+\frac{1}{\lambda}(x-v)$ を解くと、$|v|\le\lambda$ で $x=0$、$v>\lambda$ で $x=v-\lambda$、$v<-\lambda$ で $x=v+\lambda$。 まとめると軟しきい値 $S_\lambda(v)=\operatorname{sign}(v)\max(|v|-\lambda,0)$ で、閾値 $\lambda$ の不感帯が小さな成分を $0$ に潰す。これが Lasso のスパース化の源である。
Q4. 近接作用素は近接勾配法とどう関係するか
合成最小化 $\min f(x)+g(x)$($f$ 滑らか、$g$ 非滑らか)に対し、$f$ の勾配ステップと $g$ の近接作用素を交互に適用する反復 $x_{k+1}=\operatorname{prox}_{\lambda g}(x_k-\lambda\nabla f(x_k))$ が近接勾配法(ISTA)である。 近接作用素はこの反復の一段を担う部品であり、$g$ の prox が閉形式で計算できるとき 1 反復のコストは通常の勾配法と同等になる。 アルゴリズムの詳細(前進後退分割・収束・応用)は 近接勾配法とFISTA の記事で扱う。
11. 参考資料
- Parikh, N., & Boyd, S. (2014). Proximal Algorithms. Foundations and Trends in Optimization, 1(3), 127–239. Online
- Beck, A. (2017). First-Order Methods in Optimization. SIAM.
- Bauschke, H. H., & Combettes, P. L. (2017). Convex Analysis and Monotone Operator Theory in Hilbert Spaces, 2nd ed. Springer.
- Rockafellar, R. T. (1970). Convex Analysis. Princeton University Press.
- Beck, A., & Teboulle, M. (2009). A Fast Iterative Shrinkage-Thresholding Algorithm for Linear Inverse Problems. SIAM J. Imaging Sciences, 2(1), 183–202.
- Wikipedia: Proximal operator (English)
- Wikipedia: Moreau envelope (English)