最小二乗法

提供: testwiki
2024年8月23日 (金) 02:22時点におけるimported>誤用学社による版
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動
データセットを4次関数で最小二乗近似した例

テンプレート:回帰分析 最小二乗法(さいしょうにじょうほう、さいしょうじじょうほう;最小自乗法とも書く、テンプレート:Lang-en-short)は、誤差を伴う測定値の処理において、その誤差の二乗の和を最小にするようにし、最も確からしい関係式を求める方法である。測定で得られた数値の組を、適当なモデルから想定される1次関数対数曲線など特定の関数を用いて近似するときに、想定する関数が測定値に対してよい近似となるように、残差平方和を最小とするような係数を決定する方法[1][2][3]、あるいはそのような方法によって近似を行うことである[1][2][3]

歴史

1805年アドリアン=マリ・ルジャンドルが出版したのが初出である。しかし、1809年カール・フリードリヒ・ガウスが出版した際に1795年には最小二乗法を考案済みだったと主張したことで、最小二乗法の発明者が誰であるかについては不明になっている。

計算の概要

前提条件

最小二乗法では測定データ y はモデル関数 f(x) と誤差 ε の和で

y=f(x)+ε

と表せるとする。物理現象の測定データには、誤差が含まれ、それは系統誤差偶然誤差を含んでいる。この内、偶然誤差は、測定における信号経路の微視的現象に由来するならば、正規分布であると期待されることが多い。また、社会調査などの誤差理由の特定が困難な場合でも誤差が正規分布になると期待する考え方もある。

誤差が正規分布に従わない場合、最小二乗法によって得られたモデル関数はもっともらしくないことに注意する必要がある。偶然誤差が正規分布していない場合、系統誤差が無視できない位大きくそれをモデル関数に含めていない場合、測定データに正規分布から大きく外れた外れ値を含む場合などが該当する。

上記を含め、最小二乗法の理論的基盤には次のような前提が設けられている[1][2][3]

  • 測定値の誤差には偏りがない。すなわち誤差の平均値は 0 である。
  • 測定値の誤差の分散は既知である。ただし測定データごとに異なる値でも良い。
  • 各測定は互いに独立であり、誤差の共分散は 0 である。
  • 誤差は正規分布する。
  • m 個のパラメータ[注釈 1](フィッティングパラメータ)を含むモデル関数 f が知られていて、測定量の真の値を近似誤差なく再現することのできるパラメータが存在する。

基礎的な考え方

話を簡単にするため、測定値は x,y の二次元の平面に分布するものとし、想定される分布(モデル関数)が y=f(x) の形である場合を述べる。想定している関数 f は、既知の関数 g(x)線型結合で表されていると仮定する。すなわち、

テンプレート:Indent

例えば、 gk(x)=xk1 は、多項式近似であり、特に m=2 の時は f(x)=a1+a2x という直線による近似(線形回帰)になる。

今、測定で得られた、次のような数値の組の集合があるとする。

テンプレート:Indent

これら (x,y) の分布が、y=f(x) というモデル関数に従うと仮定した時、想定される理論値は

テンプレート:Indent

ということになり、実際の測定値との残差は、各 i につき |yif(xi)| ということになる。

この残差の大きさは、xy 平面上での (xi,yi)(xi,f(xi)) との距離でもある。

ここで、理論値からの誤差の分散の推定値は残差の平方和

テンプレート:Indent

で与えられるから、J が最小になるように想定分布 f を(すなわち ak を)、定めればよいということになる。

それには、上式は ak を変数とする関数と見なすことができるので、Jak について偏微分したものを 0 と置く。こうして得られた m 個の連立方程式(正規方程式)を解き、ak を決定すればよい。

一次方程式の場合

さらに簡単な例として、モデル関数を1次関数とし、

f(x)=ax+b

とおくと、a,b は次式で求められる。

a=nk=1nxkykk=1nxkk=1nyknk=1nxk2(k=1nxk)2
b=k=1nxk2k=1nykk=1nxkykk=1nxknk=1nxk2(k=1nxk)2

解法例

当てはめたい関数 f は、 テンプレート:Indent と表すことができる。上付き添字 T は転置行列を表す。最小にすべき関数 J

J(𝒂)=(G𝒂𝒚)T(G𝒂𝒚)=([G𝒚][𝒂1])T([G𝒚][𝒂1])

と表される。ここに G は、Gij=gj(xi) なる成分を持つ n×m 行列、𝒚=(y1,y2,,yn)T、係数𝒂=(a1,a2,,am)T である。

これの最小解 𝒂 は、[G𝒚]T[G𝒚]=R~TR~ を満たす上三角行列R~の計算を経て、解 𝒂 を得ることができ、全体の計算量に無駄が少ない。下記の表式を用いると R~=[RQT𝒚0Tα] が得られ、R𝒂=QT𝒚 から係数解 𝒂 を求める[注釈 2]

また前節で述べたように J𝒂のそれぞれの成分で偏微分して 0 と置いた m 個の式(正規方程式)は行列を用いて、

テンプレート:Indent

と表される。これを正規方程式テンプレート:Lang-en-short)と呼ぶ。この正規方程式を解けば係数解 𝒂 が求まる。

係数解 𝒂 の解法には以下のようないくつかの方法がある。

  • 逆行列で正規方程式を解く
    行列 GTG正則行列(つまりフルランク)である場合は、解 𝒂=(GTG)1GT𝒚 は一意に求まる。ただし GTG の逆行列を明示的に求めることは通常は良い方法ではない。
計算量が小さい方法としてコレスキー分解[4]GTG=RTRRm×m三角行列)による三角行列分解を経て、最終的に R𝒂=RTGT𝒚 を解けばよい。
数値的安定性確保のためには、積 GTG を経ない三角行列分解が良い。すなわち以下と同じくQR分解(直交分解)による G=QR から、R𝒂=QT𝒚 を解く。
  • 直交分解で正規方程式を解く
    コレスキー分解の方法よりも計算量が大きいが、数値的に安定かつ汎用な方法として、QR分解特異値分解(SVD)を用いる方法がある[4]。これらの方法では計算の過程で積 GTG を必要としないため数値的安定性が高い。また GTG が正則行列でない(ランク落ちしている)場合は正規方程式の解が不定となるが、その場合でも、これらの手法では解 a のうちノルムが最も小さいものを求めることができる。特異値分解を用いる場合は、特異値のうち極めて小さい値を 0 とみなして計算することで数値計算上の大きな誤差の発生を防ぐことができる(テンプレート:Lang-en-short)[5]
  • 擬似逆行列を使う方法もあるが[6]、計算効率が悪いため、特殊な場合(解析的な数式が必要な場合など)を除いてあまり用いられない。

拡張

多次元

想定される分布が媒介変数 t を用いて (x,y)=(f(t),g(t)) の形(あるいは f,g は複数の媒介変数によって決まるとしても同様)であっても考察される。

すなわち、測定値 (xi,yi) がパラメータ ti に対する (f(ti),g(ti)) を理論値として近似されているものと考えるのである。

この場合、各点の理論値 (f(ti),g(ti)) と測定値 (xi,yi) の間に生じる残差は テンプレート:Indent である。故に、残差平方和

テンプレート:Indent

となるから、この値が最小であるように、f,g を決定するのである。

このように、n 組の (x,y) の測定値 (xi,yi)(i=1,2,...,n)n 組の (x1,x2,...,xm) の測定値 (x1i,x2i,...,xmi)(i=1,2,...,n) に拡張したものも考察することができる。

測定の誤差が既知の場合

n 回の測定における誤差があらかじめ分かっている場合を考える。異なる測定方法で測定した複数のデータ列を結合する場合などでは、測定ごとに誤差が異なることはしばしばある。誤差が正規分布していると考え、その標準偏差 σi(i=1,2,,n) で、誤差の大きさを表す。すると、誤差が大きい測定より、誤差が小さい測定の結果により重みをつけて近似関数を与えるべきであるから、

テンプレート:Indent

を、最小にするように f を定める方がより正確な近似を与える。

毎回の測定が独立ならば、測定値の尤度exp(J) に比例する。そこで、上記の J を最小にする f は、最尤推定値であるとも解釈できる。また、J自由度 nmカイ二乗分布[7]に従うので、それを用いてモデル f の妥当性を検定することもできる。

毎回の測定誤差が同じ場合、J を最小にするのは J を最小にするのと同じ意味になる。

非線形最小二乗法

テンプレート:Main もし、f が、ak の線型結合で表されないときは、正規方程式を用いた解法は使えず、反復解法を用いて数値的に ak の近似値を求める必要がある。例えば、ガウス・ニュートン法[8]レーベンバーグ・マーカート法[9][10][11][12][13]が用いられる。とくにレーベンバーグ・マーカート法(テンプレート:Lang-en-short)は多くの多次元非線形関数でパラメータを発散させずに効率よく収束させる(探索する)方法として知られている[10][11][12]

異常値の除去

前提条件の節で述べたように、測定データを最小二乗法によって近似する場合、外れ値または異常値が含まれていると極端に近似の尤もらしさが低下することがある。また、様々な要因によって異常値を含む測定はしばしば得られるものである。

誤差が正規分布から極端に外れた異常値を取り除くための方法として修正トンプソン-τ法が用いられる[14]

関連項目

テンプレート:Commonscat テンプレート:Wikibooks

脚注

テンプレート:脚注ヘルプ

注釈

  1. m は、測定データの数よりも小さいとする。
  2. α2=minJ(𝒂)GTG は正則行列と仮定。

出典

  1. 1.0 1.1 1.2 テンプレート:Cite
  2. 2.0 2.1 2.2 テンプレート:Cite bookテンプレート:要購読
  3. 3.0 3.1 3.2 テンプレート:Cite book
  4. 4.0 4.1 テンプレート:Cite book
  5. テンプレート:Cite journal テンプレート:要購読
  6. 安川章. (2017). 科学実験/画像変換の近似計算に便利な 「疑似逆行列」 入門 できる人が使っている最小二乗法の一発フィット. インターフェース= Interface, 43(8), 142-146.
  7. Weisstein, Eric W. "Chi-Squared Distribution." From MathWorld--A Wolfram Web Resource. テンプレート:URL
  8. テンプレート:Cite book
  9. Weisstein, Eric W. "Levenberg-Marquardt Method." From MathWorld--A Wolfram Web Resource. テンプレート:URL
  10. 10.0 10.1 テンプレート:Cite journal テンプレート:要購読
  11. 11.0 11.1 Yu, H., & Wilamowski, B. M. (2011). Levenberg-marquardt training. Industrial electronics handbook, 5(12), 1.
  12. 12.0 12.1 テンプレート:Cite journal
  13. テンプレート:Cite journal
  14. Michele Rienzner (2020). Find Outliers with Thompson Tau (テンプレート:URL), MATLAB Central File Exchange. Retrieved May 17, 2020.
  15. Van Huffel, S., & Vandewalle, J. (1991). The total least squares problem: computational aspects and analysis (Vol. 9). SIAM.
  16. テンプレート:Cite journal
  17. Drygas, H. (2012). The coordinate-free approach to Gauss-Markov estimation (Vol. 40). Springer Science & Business Media.
  18. Motulsky, H., & Christopoulos, A. (2004). Fitting models to biological data using linear and nonlinear regression: a practical guide to curve fitting. Oxford University Press.

テンプレート:Authority control