逆問題

逆問題（ぎゃくもんだい、英: inverse problem）とは、数学・物理学の一分野であり、入力（原因）から出力（結果、観測）を求める問題を順問題（じゅんもんだい、英: direct problem）と呼び、その逆に出力から入力を推定する問題や入出力の関係性を推定する問題を逆問題と呼ぶ。 逆関数の問題であると解釈すると、紀元前から扱われている問題である。しかし歴史的には物理において順問題と逆問題は今の使われ方とは異なっていた。例えばニュートンの時代では物体の動きからその作用する力を導くことが順問題だとされ、作用する力から物体の軌道を導くことが逆問題だとされていた。順問題と逆問題の定義は実際曖昧で、時代や学問分野によって異なることが多い。一般的には1820年代にニールス・アーベルがヤコビの逆問題を研究したのが、逆問題の最初の研究とされる。アーベルは方程式の解の公式の研究でも有名だが、方程式の解の公式自体も逆問題である。1929年にヴィクトル・アンバルツミャンも逆問題に関する論文を発表している。第二次世界大戦中に、弾道計算やレーダー探査など軍事上の目的により急速に発展した。現在では、非破壊検査や医療を目的とした利用も盛んに研究されている。 順問題と逆問題は対になる概念であり、どちらが順でどちらが逆かというのは相対的な問題である。しかし対称的ではない。一般に、古くから問題として認識され研究が行われている方向のプロセスによるものを順問題とし、その逆方向のプロセスで解く方法は自明ではないのだが、それを解くことで何らかの工学的・その他の利用ができるような問題のことを逆問題と言う。 単純な順問題・逆問題の例を示す。f(x) = x2 という関数について考える。f(2) や f(3) を計算して 4 や 9 と求めるのが順問題である。逆問題は2通りある。1つ目は、f(x) = 25 という問題で、x = 5 と解く問題である。2つ目は、関数が未知で、f(1) = 1, f(2) = 4, f(3) = 9 という情報から、f(x) が何になるか推測する問題である。 この例において、特にひとつめは逆関数 f-1(x) = √x によって容易に得られる。しかし、一般には逆関数が容易にはわからない関数も多く、そういった場合を特に扱うのがこの分野である。 逆問題は入力を求める、と一口に言っても、ここでの「入力」とは単に入力信号のようなものだけを指すのではない。例えば、物理学・工学で材料に関する問題においては、扱う材料に作用している外力を求める逆問題だけでなく、 材料の境界・領域形状を求める 材料を支配している方程式を求める 材料についての境界値あるいは初期値を求める 材料の物性値を求める といった、複数の逆問題が存在する。様々な問題設定があるように、様々な有益な用途があり、理論・実用の両面から研究が行われている。 逆問題としては、以下の2つのパターンがある。 既知：モデル（関数）と出力 未知：入力 既知：入力と出力 未知：モデル（関数） 順問題は、入力とモデル（関数）が既知で、出力が未知である。 逆問題を解く際によく問題になるのが適切性 (良設定問題、英: well-posedness) である。次の3つの条件が満たされるとき、アダマールの意味で適切であるという。 解の存在性： 解が存在すること 解の一意性： 解がただ一つであること 解の安定性： 入力に微小な変動を与えたときに、出力の変動も微小であること 上に挙げた f(1) = 1, f(2) = 4, f(3) = 9 から f(x) を推測する例で、逆問題の答えとしては f ( x ) = x 2 {\displaystyle f(x)=x^{2}} のほか、例えば f ( x ) = x 3 − 5 x 2 + 11 x − 6 {\displaystyle f(x)=x^{3}-5x^{2}+11x-6} も解となり、解の一意性が満たされない。よって、非適切 (ill-posed) な問題といえる。 その他、微分方程式、積分方程式などに関する逆問題では解の安定性が得られず非適切な問題となることが多い。 非適切な問題の近似解を得る手法として最もよく使われるのがティホノフの正則化法 (英: Tikhonov regularization method) である。 線形有界作用素 K : X→Y についての方程式 Kx = y の近似解を得るために、ティホノフ汎関数： J α ( x ) = ‖ K x − y ‖ 2 + α ‖ x ‖ 2 {\displaystyle J_{\alpha }(x)=\|Kx-y\|^{2}+\alpha \|x\|^{2}} 　　for x∈X　　α：正則化パラメータ を導入し、これを最小にする xα∈X を求める。 近似解を真の解に近づけるためには、正則化パラメータ α を誤差 η = (δ, h) に応じて次のように設定すればよいといわれている： μ η ( K h , y δ ) = inf x ∈ D ‖ K h x − y δ ‖ Y {\displaystyle \mu _{\eta }(K_{h},y_{\delta })=\inf _{x\in D}\|K_{h}x-y_{\delta }\|_{Y}} という汎関数を設定し、 ρ η κ ( α ) = ‖ K h x η α − y δ ‖ Y 2 − ( δ + h ‖ x η α ‖ X ) 2 − μ η κ ( K h , y δ ) 2 {\displaystyle \rho _{\eta }^{\kappa }(\alpha )=\|K_{h}x_{\eta }^{\alpha }-y_{\delta }\|_{Y}^{2}-(\delta +h\|x_{\eta }^{\alpha }\|_{X})^{2}-\mu _{\eta }^{\kappa }(K_{h},y_{\delta })^{2}} について、ρηκ (α*) = 0 となるような α* (η) を選ぶ。 関連項目： ヒルベルト空間、コンパクト ここでは、モデルと出力が既知で、入力が未知の問題を扱う。モデルは線形モデルである。N 個の誤差のある観測値（出力） y1, y2, … {\displaystyle \dotsc } , yN から、M 個のパラメタ（入力） x1, x2, … {\displaystyle \dotsc } , xM を推定するという問題を扱う。 観測不可能な真の値 xi と、観測値 yμ は、線形の関係がある（線形モデル）と仮定する。 y i = ∑ μ K i μ x μ + n i {\displaystyle y_{i}=\sum _{\mu }K_{i\mu }x_{\mu }+n_{i}} ここで、Kiμ は分かっているものとする。ノイズ ni は観測不可能だが、その統計的性質として平均 0 と、共分散 S i j = E ( n i n j ) {\displaystyle S_{ij}=\mathrm {E} (n_{i}n_{j})} は分かっているものとする。ここで、E() は統計平均を取る操作。 もし、観測が全て独立でその数 N が、パラメタの数 M より多ければ、最小自乗法で x の推定値を求めることができる。しかし、観測が独立でなかったりその数がパラメタの数より少ないとき、x を求める問題は劣決定となり、上記適切性のうち解の一意性が満たされない非適切な問題となる。よって、その問題に即した適当な正則化を行って、解を求める必要がある。 式で書けば、ノイズを最小にするには J = ∑ i = 1 N ∑ j = 1 N n i S i j − 1 n j {\displaystyle J=\sum _{i=1}^{N}\sum _{j=1}^{N}n_{i}S_{ij}^{-1}n_{j}} あるいは、行列表示して（上付き添字 ⊺ {\displaystyle \intercal } は転置行列を表す） J = n ⊺ S − 1 n = ( K x − y ) ⊺ S − 1 ( K x − y ) {\displaystyle J={\boldsymbol {n}}^{\intercal }{\boldsymbol {S}}^{-1}{\boldsymbol {n}}=({\boldsymbol {K}}{\boldsymbol {x}}-{\boldsymbol {y}})^{\intercal }{\boldsymbol {S}}^{-1}({\boldsymbol {K}}{\boldsymbol {x}}-{\boldsymbol {y}})} なる J を最小にする x を決める問題になるが、行列 K は行より列が多く、Kx=y の解が無数にあるという状況になる。そのため、正則化を行って解をひとつに定める。以下にいくつかの正則化の方法を紹介する。以下の議論で本質的に重要でないため、ノイズは分散 1 でそれぞれ無相関なものとする（つまりSは単位行列）。 正則化パラメタ α を用いて、 J = ( K x − y ) ⊺ ( K x − y ) + α x ⊺ x {\displaystyle J=({\boldsymbol {K}}{\boldsymbol {x}}-{\boldsymbol {y}})^{\intercal }({\boldsymbol {K}}{\boldsymbol {x}}-{\boldsymbol {y}})+\alpha {\boldsymbol {x}}^{\intercal }{\boldsymbol {x}}} と取る。つまり、無数の解のうち x の大きさを小さくにするものを推定値として採用する。α が小さいとき、これは Kx=y を特異値分解で解いた解と一致する。パラメタ α の取り方は問題設定によって異なる。一例としては、観測誤差が正規分布に近いと期待される場合、第一項は自由度 N のカイ二乗分布となることが期待され、その平均値は N となる。よって、第一項が N に近くなるように α を調整する。 x の大きさより、滑らかさが重要なときは、 x i + 1 − x i {\displaystyle x_{i+1}-x_{i}} を第二項にした J = ( K x − y ) ⊺ ( K x − y ) + α ( B x ) ⊺ B x {\displaystyle J=({\boldsymbol {K}}{\boldsymbol {x}}-{\boldsymbol {y}})^{\intercal }({\boldsymbol {K}}{\boldsymbol {x}}-{\boldsymbol {y}})+\alpha ({\boldsymbol {Bx}})^{\intercal }{\boldsymbol {Bx}}} を最小にするような x を定める。 ここに、B は [ − 1 1 0 … 0 0 − 1 1 … 0 ⋮ ⋱ ⋮ 0 0 … − 1 1 ] {\displaystyle {\begin{bmatrix}-1&1&0&\ldots &0\\0&-1&1&\ldots &0\\\vdots &&\ddots &&\vdots \\0&0&\ldots &-1&1\end{bmatrix}}} なる成分を持つ。 同様に x が線形に増加すると期待されるとき、x が二次関数的に増加すると期待されるとき、なども適当な B を設定することで解くことができる。 上の二つの正則化もそうであったが、x の推定値 x