参考論文は以下の通りです:
Robbins, Herbert, and Sutton Monro. "A stochastic approximation method." The annals of mathematical statistics (1951): 400-407.
問題定義#
関数 M(x) の表現は不明です。与えられた x 値に対して、対応する M(x) の正確な値を観測することはできません。なぜなら、私たちの観測にはしばしばノイズが含まれているからです。これをランダムと呼びます:
y=M(x)+ε
私たちは、ノイズがあっても得られた観測値 y には追跡可能なパターンがあると考えています。これは確率分布 Y=Y(x) に従います。その累積分布関数(または確率分布関数、分布関数)は次のように表されます:
H(y∣x)=Pr(Y(x)≤y)
そして、確率変数 Y(x) の期待値は真の値 M(x) と等しいことが満たされます:
M(x)=∫−∞∞y dH(y∣x)
関数 M(x) の正確な表現が不明であるにもかかわらず、私たちはしばしば方程式 M(x)=α の根(ここで α は定数)を求める必要があります。
便宜上、関数 M(x) が単調であると仮定します。これにより、方程式 M(x)=α には唯一の根が存在し、これを x=θ と記します。 M(x) が不明であるため、θ も私たちにとっては未知です。
Robbins - Monro アルゴリズムは、既存の観測値を利用して、逐次的な反復近似を通じて「曲線救国」を実現し、根を求める最終目的を達成します。
方程式の根を求める問題は、関数の零点問題に容易に変換できます。
Robbins - Monro アルゴリズムの核心的な考え方は、現在の関数の値を利用して関数の零点の位置を推測することです。
Robbins - Monro アルゴリズム#
Robbins - Monro アルゴリズムは反復的な根を求めるアルゴリズムです。M(x) が不明であるため、ニュートン法を使用することはできません。たとえ M′(x) の表現がわかっても、ニュートン法を適用しても収束するとは限りません。
アルゴリズムの結論を紹介する前に、重要な前提を示します:観測値 y は有界であること。これはアルゴリズムが成立する基礎です。実際の使用において、この前提は一般的に満たされます。
数学的に表現すると、確率分布 Y(x) に対して、Pr(∣Y(x)∣≤C)=∫−cc dH(y∣x)=1 が常に成り立ちます。
Robbins - Monro アルゴリズムの反復公式を直接示します
xn+1=xn+an(α−yn)
注意すべきは、定数 α=0 の場合、反復公式は xn+1=xn−anyn と書けることです。
では、反復系列 {an} はどのように選択すべきでしょうか?
反復ステップ長系列 {an} は非負の系列であるべきで、次の条件を満たす必要があります:
i→∞limai=0,i=1∑∞ai=∞,i=1∑∞ai2<∞
これにより、アルゴリズムが収束し、誤差が制御可能であることが保証されます。
私たちは an=n1 を上記の条件を満たす系列として選びます。実際、すべての形が nc′≤an≤nc′′ である系列も条件を満たします。ここで c′, c′′ は正の実数定数です。このような系列を、n1 型系列と呼びます。
定理:もし系列 {an} が n1 型系列であり、M(x) が単調非減少で、方程式 M(x)=α が唯一の根 θ を持ち、導関数 M′(θ)>0 が成り立つならば、Robbins-Monro アルゴリズムは有効です。反復近似によって得られた根 xn は確率的に真の根 θ に収束します。
直感的理解#
前述のように、方程式の根を求める問題は関数の零点問題に変換でき、Robbins - Monro アルゴリズムは現在の関数の値を利用して関数の零点の位置を推測します。
もし関数が非減少関数で、関数の値が正であれば、次の反復では負の修正が必要です(関数の値が 0 に近づくように)。逆に、関数の値が負であれば、正の修正が必要です。
関数の値は最終的に 0(零点)に近づく必要があるため、反復ステップも徐々に小さくなり、最終的には 0 に近づく必要があります。また、収束を確保するために、累積の分散は有限であるべきです。
アルゴリズムの証明#
アルゴリズムが成立するためには、反復で得られた根 xn が確率的に真の根 θ に収束する必要があります。
数学的に表現すると、n→∞ のとき、P(∣xn−θ∣<ε∣xn−1)→1 または P(∣xn−θ∣>ε∣xn−1)→0 であり、ここで ε は任意の正の実数です。
確率的収束の十分条件から始めます。 limn→∞E(xn−θ)2=0 は確率的収束の一つの十分条件です。
二次モーメントの極限が 0 であるとき、分散の非負性と結びつけると、Var(xn−θ)=E(xn−θ)=0 となります。そしてチェビシェフの不等式により、確率的収束の条件が成立することが保証されます。
十分条件と必要条件:
A があれば B がある、したがって A は B の十分条件です。
A がなければ B がない、したがって A は B の必要条件です。
チェビシェフの不等式 Chebyshev's Inequality
P(∣X−E[X]∣≥b)≤b2Var[X]
したがって、私たちはただ limn→∞E(xn−θ)2=0 を証明すればよいのです。
反復方程式に基づいて、次のように列挙します:
E[(xn+1−θ)2]=E[E[(xn+1−θ)2∣xn]]=E[∫−∞∞(xn+an(α−y)−θ)2 dH(y∣xn)]=E[∫−∞∞((xn−θ)2+2(xn−θ)an(α−yn)+an2(α−yn)2) dH(y∣xn)]=E[(xn−θ)2]−2anE[(xn−θ)(M(xn)−α)]+an2E[∫−∞∞(α−y)2 dH(y∣xn)]
ここで E(E(X))=E(X)
上式の記号をいくつか置き換え、式を簡略化します。
bn=E[(xn−θ)2]dn=E[(xn−θ)(M(xn)−α)]en=E[∫−∞∞(α−y)2 dH(y∣xn)]
したがって、上式は bn+1−bn=2andn−an2en と書けます。
私たちは M(x) が単調であると仮定しました。さらに進めて、単調非減少であるとしましょう。
容易に得られます:
dn=E[(xn−θ)(M(xn)−α)]=(xn−θ)(M(xn)−α)>0
観測値 y は有界であるため、en も有界です。
en≤(C+∣α∣)2<∞
bn+1−bn=2andn−an2en を合計すると、次のようになります。
bn+1=b1+j=1∑naj2ej−2j=1∑najdj
bn+1=E[(xn+1−θ)2]≥0 であるため、
j=1∑najdj≤21(b1+j=1∑nan2en)<∞
したがって、正項級数 ∑1∞andn は収束します。
したがって、極限 limn→∞bn=limn→∞E(xn−θ)2 は必ず存在します。
補題 1 非負定数系列 {kn} が dn≥knbn,∑n=1∞ankn=∞ を満たすならば limn→∞E(xn−θ)2=0 が成り立ちます。
すでに証明したように、 ∑n=1∞andn は収束し、また ∑n=1∞andn≥∑n=1∞anknbn が成り立つため、級数 ∑n=1∞anknbn は収束するはずです。しかし、 ∑n=1∞ankn は発散するため、必ず limn→∞bn=0 となります。
Robbins-Monro アルゴリズムの再帰公式 xn+1−xn=an(α−yn) に基づき、観測値が有界であることを考慮し、再帰公式を結びつけて定義します。
∣xn−θ∣≤An=∣x1−θ∣+(C+∣α∣)(a1+a2+⋯+an−1)
得られるのは Pr(∣xn−θ∣≤An)=1 です。次に
kn=inf{x−θM(x)−α},for0<∣x−θ∣≤An
前述のように、関数が単調非減少であると仮定したため、 kn≥0 が成り立ちます。したがって
dn=∫∣x−θ∣≤An(x−θ)(M(x)−α) dPn(x)≥∫∣x−θ∣≤Ankn(x−θ)2 dPn(x)=knbn
仮定:正常数 K に対して、n が十分大きいとき
- kn≥AnK,かつ
- ∑n=2∞(a1+⋯+an−1)an=∞
明らかに得られるのは:∑1∞an=∞ したがって、n が十分大きいとき:
An=∣x1−θ∣+(C+∣α∣)(a1+a2+⋯+an−1)≤2(C+∣α∣)(a1+a2+⋯+an−1)
証明できますが、n が十分大きいとき
ankn≥anAnK≥2(C+∣α∣)(a1+a2+⋯+an−1)anK
すなわち ∑n=1∞ankn=∞ が発散します。補題 1 から導きます:
補題 2 もし正常数 K が存在し、n が十分大きいとき、{kn} と {an} が次の仮定を満たすならば
- kn≥AnK,かつ
- ∑n=2∞(a1+⋯+an−1)an=∞
必ず limn→∞bn=0 が成り立ちます
前述のように、an=n1 は条件を満たす {an} 系列です。私たちはただ仮定条件を満たす {kn} が存在することを証明すればよいのです。
直感的に言えば、反復式中に kn の表現形式は存在しませんが、結論が明示的に kn に依存しないようにすることが重要です。補題 2 の導出過程で、kn を M(x) と関連付けたため、自然に M(x) の性質に要求を提出することになります。
定理 1 {an} が n1 型系列であり、M(x) が次の条件を満たすとき:
M(x){≤α−δ≥α+δfor x<θfor x>θfor some δ>0.
必ず limn→∞bn=0 が成り立ちます
補題 2 を用いてこの結論を証明できます。なぜなら
x−θM(x)−α≥Anδ,for 0<∣x−θ∣≤An
したがって kn≥Anδ となり、K=δ を取ると補題 2 が成立します。
定理 1 における M(x) の制限条件は比較的強い(満たすのが難しい)ため、より緩やかな条件(満たしやすい条件)を得たいと考えています。
定理 2 関数 M(x) が次の条件を満たすとき:
- M(x) は単調非減少である
- M(θ)=α
- M′(θ)>0
必ず limn→∞bn=0 が成り立ちます
私たちは同様に補題 2 を用いて証明します。
まず:
M(x)−α=(x−θ)(M′(x)+o(x−θ))
ここで o(x−θ) は高次の無限小であり、仮定条件に基づき、関数のグラフを考慮すると容易に理解できます: o(x−θ)≥0。明らかに、∣x−θ∣≤δ のとき、常数 δ>0 が存在し、 o(x−θ)≥−21M′(θ) となります。
したがって:
x−θM(x)−α⎩⎨⎧≥AnM(θ+δ)−α≥2AnδM′(θ)=θ−xα−M(x)≥Anα−M(θ−δ)≥2AnδM′(θ)for θ+δ≤x≤θ+Anfor θ−An≤x≤θ−δ
K=2δM′(θ)>0 を取ると、補題 2 が成立します。
これにより、定理が証明されました。