
No.2ベストアンサー
- 回答日時:
データ(x[k], y[k]) (k=1,2,...,N)
が与えられた時に、残差(residue)
r[k] = a/(x[k]-b)+c-y[k]
の二乗和(square sum of residue)
E(a,b,c) = Σ(r[k]^2) (Σはk=1,...,Nについての総和)
を最小にする係数(a,b,c)を求む、というのが「y=a/(x-b)+cの最小二乗法」の意味するところですね。
Eが極値を取る係数(a,b,c)を知るために「Eをa,b,cそれぞれで偏微分したものが0になる」という条件を表す連立方程式
∂E/∂a = 0
∂E/∂b = 0
∂E/∂c = 0
を作ってみますと、左辺を計算すると未知数a,b,cについて一次方程式にはならず、これじゃ解けない。
連立一次方程式にならない場合を「非線形最小二乗法」と(そして、連立一次方程式になってくれる場合を「線形最小二乗法」と)呼びます。非線形最小二乗法では、適当な出発値(a[0], b[0], c[0])から始めて、Eが小さくなるようにちょっとずつ(a,b,c)を改良して行く繰り返し計算が必要です。
改良のための計算方法はいろいろ工夫(Gauss-Newton法、最急降下法、Marquardt法など)されていますが、最も単純でオバカなやり方は、
(1) b,cを定数、aだけを変数と考えてEを最小化する。
(2) a,cを定数、bだけを変数と考えてEを最小化する。
(3) a,bを定数、cだけを変数と考えてEを最小化する。
を順繰りに何度も何度も繰り返すことです。(教科書は「最小二乗法による実験データの解析」(東京大学出版会)をお薦めします。)
案外重要なのが出発値(a[0], b[0], c[0])の選び方。ここで言う「適当な」とは、テキトーじゃ駄目なんで、(本来の意味での)適当な、つまり真の解に十分近い出発値を選ばないと改良の計算が収束しないことがあります。
出発値を選ぶひとつの方法は、「もし残差が0になるようなデータが与えられたならばEに一致して、しかも簡単に計算できる」ような値Fを定義して、Fを最小化する(a,b,c)を(a[0], b[0], c[0])として利用する、というやりかたです。具体的には、
r[k] = a[0]/(x[k]-b[0])+c[0]-y[k]
を
r[k](x[k]-b[0]) = a[0]+(c[0]-y[k])(x[k]-b[0])
と変形しておいて右辺を展開すると、
r[k](x[k]-b[0]) = (a[0]-b[0]c[0])+b[0]y[k]+c[0]x[k]-y[k]x[k]
ここで
A = a[0]-b[0]c[0]
B = b[0]
C = c[0]
とおくと、
r[k](x[k]-b[0]) = A+By[k]+Cx[k]-y[k]x[k]
と書けますから、この右辺を
s[k] = A+By[k]+Cx[k]-y[k]x[k]
と定義して
F(A,B,C) = Σ(s[k]^2) (Σはk=1,...,Nについての総和)
を最小化するA,B,Cを考える。
すると、s[k]はA,B,Cの一次式になっているので、「普通の(線形)」最小二乗法でA,B,Cが決定できます。そしてA,B,Cからa[0],b[0],c[0]が決まる。(もしr[k]が全て0であれば、E(a[0],b[0],c[0])=0 になるのは自明でしょう。)
こうして得たa[0],b[0],c[0]はEを最小化しません(∵r[k]が全て0にならない限り、E≠F)が、もしも「Fが十分小さくできるような旨いa,b,cが存在する」のであれば、そのa,b,cはEも小さくしますから、出発値に利用できる訳です。
言い換えると、もしEが十分小さくなるようなa,b,cが存在する(つまり、モデル y=a/(x-b)+cがデータに良く合う)のであれば、Fを最小化するa,b,cと、Eを最小化するa,b,cとは非常に近い値になる。
なので実用上は、(a[0],b[0],c[0])だけで十分な精度が得られる(改良のための繰り返し計算をしないで済んでしまう)ことも多々あります。
ありがとうございます!
助かりました。
やはりニュートン法などの方法をとるのがベストですよね。
初期値の与え方、すごく勉強になりました。
細かい説明と式展開、非常にわかりやすく、すぐに実践できそうです。
本当にありがとうございました。
No.1
- 回答日時:
こんばんは。
反比例の最小二乗の経験はないですが、やってみます。
あるデータ(xk,yk)に対して、誤差εk を
εk = a/(xk - b) + c - yk
と定義します。
二乗誤差の合計Sは、
S = Σ[k=1→n] εk^2
= Σ[k=1→n]{a/(xk - b) + c - yk }^2
ですので、これを極小にすることを方針とすればよいわけです。
ここで、
εk^2 = {a/(xk - b) + c - yk }^2
= a^2/(xk - b)^2 + c^2 - yk^2 + 2ac/(xk - b) - 2ayk/(xk - b) - 2cyk
であり、これをa、b、cのそれぞれで偏微分すれば、
∂εk^2/∂a = 2a/(xk - b)^2 + 2c/(xk - b) - 2yk/(xk - b) ・・・(あ)
∂εk^2/∂b = -2a^2/(xk - b)^3 - 2ac/(xk - b)^2 + 2ayk/(xk - b)^2 ・・・(い)
∂εk^2/∂c = 2c + 2a/(xk - b) - 2yk ・・・(う)
よって、
∂S/∂a = Σ[k=1→n]{2a/(xk - b)^2 + 2c/(xk - b) - 2yk/(xk - b)} ・・・(あ’)
∂S/∂b = Σ[k=1→n]{-2a^2/(xk - b)^3 - 2ac/(xk - b)^2 + 2ayk/(xk - b)^2} ・・・(い’)
∂S/∂c = Σ[k=1→n]{2c + 2a/(xk - b) - 2yk} ・・・(う’)
最小二乗ということは、Sが極小ということなので、
∂S/∂a=0 かつ ∂S/∂b=0 かつ ∂S/∂c=0
つまり、
0 = Σ[k=1→n]{2a/(xk - b)^2 + 2c/(xk - b) - 2yk/(xk - b)} ・・・(あ’’)
0 = Σ[k=1→n]{-2a^2/(xk - b)^3 - 2ac/(xk - b)^2 + 2ayk/(xk - b)^2} ・・・(い’’)
0 = Σ[k=1→n]{2c + 2a/(xk - b) - 2yk} ・・・(う’’)
式を簡単にすると、
0 = Σ[k=1→n]{a + c(xk - b) - yk(xk - b)} ・・・(あ’’’)
0 = Σ[k=1→n]{a + c(xk - b) - yk(xk - b)} ・・・(い’’’)
0 = Σ[k=1→n]{a + c(xk - b) - yk(xk - b)} ・・・(う’’’)
ここまで来て気づきましたが、3つの式は同じですね。
1本の式で3つの未知数を求める連立方程式はありませんから、
普通の最小二乗法はできないということです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 最小二乗法 2 2023/01/01 20:57
- その他(バイク) 公道走行可のキックボードなどのナンバーについて 1 2023/08/10 11:04
- 物理学 誤差の問題についでです。 yがy=A+Bxの上に乗ると予想でき、以下の4個の測定値 (2,3.2±1 2 2023/04/25 00:54
- 数学 多様体について質問です。 Rを実数全体としてf:S^n={(p_1,…,p_(n+1)∈R^(n+1 2 2023/06/24 00:54
- 数学 ラグランジュの未定乗数法を用いる問題 3 2023/05/15 14:48
- 電車・路線・地下鉄 八王子から秩父へ旅行に行きたいと考えています。 公共交通機関で行こうと思っているのですが、乗り換え案 6 2022/05/09 19:53
- 数学 【 数1 二次関数 グラフの平行移動 】 写真では、x軸方向にp、y軸方向にqだけ平行移動したグラフ 3 2022/06/19 08:34
- 数学 8 件の住宅について, 駅からの徒歩時間 (分) と賃料 (万円) を調べたところ, (徒歩時間, 1 2022/12/18 18:09
- 数学 数学の公式の実践的な使い方を教えてくれるサイトや参考書はありますか? 例えば相加平均と相乗平均は最小 3 2023/06/28 20:24
- 数学 数学?算数の問題です どのような解答になりますか? 2 2022/04/22 04:46
このQ&Aを見た人はこんなQ&Aも見ています
おすすめ情報
このQ&Aを見た人がよく見るQ&A
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
シグマの記号の読み方
-
近似曲線の数式を手計算で出し...
-
Π←これは一体?
-
Σの添え字について
-
Σの上が2n
-
最小二乗法における有効数字に...
-
平面の計算方法
-
Σ(・ω・ノ)ノ の顔文字の意味
-
2重ΣΣのΣ記号は交換可能でしょ...
-
Σk(k+1) k=1 式を教えて下さい ...
-
Σと∫って入れ替えできるんです...
-
エクセルによる近似(回帰)直...
-
2変数関数の近似曲線
-
数列の問題です。次の数列の和...
-
Σの意味ってなんでしたっけ?
-
数学で答えを教えて欲しいので...
-
a1=1,an+1=an+3n-1 この条...
-
漸化式
-
分散を計算する際の、E(X^2)の...
-
Z=e^(x+y)について2変数のマク...
おすすめ情報