時間 t に対するデータ列 yi (i=1, 2, …) に
最小二乗法を用いて
ガウス関数 y(t) = a + b exp( -(t-c)^2 / 2σ^2 ) を
当てはめたいのです。
これまでは、エクセルなどのソフトを用いて
未知数 a, b, c, σを求めていたのですが、
これをソフトなどを用いずに理論式で解くにはどうすれば良いでしょうか?
ひとつのやり方として、
ガウス関数の右辺の a を左辺に移行して、両辺の対数を取り
対数データ列 ln(yi - a) との誤差を求めて最小二乗法…
という手を考えたのですが、
これだと、誤差の総和を求める際、Σの中にパラメータの a が
ln(yi - a) という形で残ってしまい、
誤差の偏微分で得られるパラメータに関する方程式が、
非線形な連立方程式となって解くことができません。
(説明が分かり難くて申し訳ありません)
その他にもいろいろ考えたのですが、
どうにもうまくいきません。
とにかく、パラメータの a が邪魔で、
これを b, c, σを用いずに先に求める、
という方向で考えているのですが、
何か良い方法がありましたら、よろしくお願いします。
No.1ベストアンサー
- 回答日時:
最小化したいのは
E=Σ(yi-y(t))^2
ですね。パラメータをベクトルで
p=(a,b,c,σ)
と書くことにします。
どうやっても非線形で、反復計算が必要です。「理論式」という観点で言い換えるなら、「最小二乗解pに収束する漸化式」を作るところまでしか出来ない、ってことです。
その漸化式は、たとえば「第n回目の反復で得られたパラメータの推定値p[n]を使って、(∂E/∂p)(p[n])を係数とするpの一次式でEを近似し、これを使ってp[n]よりも最小二乗解に近いp[n+1]を計算する」というものですから、「適切な初項を与えれば最小二乗解に収束する漸化式」でしかありません。(他にもアプローチはありますが、初項が必要なのは同じ。)
ここで「適切な初項」というのは、「初項で決まるガウス曲線がもしデータとかけ離れていたら、漸化式が収束しない」ってことです。では初項が「適切」かどうかを予め判定する手段はというと、これまた一般にはありませんで、計算してみて収束していくかどうかを見るしかない。そういう事情です。
なので、実地に計算するには、漸化式の初項(つまりpの最初の推測値)を決める方法が必要。これはイロイロ工夫するしかありません。
以下は「適切な初項を決める手段」の話なので、現段階ではご興味ないのかも知れませんが:
「パラメータaをなんとか推定したうえで、対数を取って線形最小二乗法でb,c,σを出す」というのは一つの方法です。ただしこのままだと
F=Σ(ln(yi)-ln(y(t)))^2
を最小化することになり、Eの最小化とはかなり違います。むしろ
G=Σ(yi (ln(yi)-ln(y(t)))^2
でEをよく近似できます。( ln(1+x)≒x を使っています。)
もちろん、これは飽くまで初項を推定する方法であって、それを使って「Eを最小化する漸化式」で反復計算をすることになります。
別の手段として、もしデータyiによくフィットする曲線y(t)が存在する(データがほぼ綺麗にガウスカーブになっている)なら、データの最大値付近に放物線をフィッティングするなどしてcの推測値を決め、さらに直線
y=(最大値-最小値)/2
とデータの折れ線グラフとの交点の間隔2w(半値幅)からσを推定して、線形最小二乗法でa,bを決める、などなど。
この回答への補足
> 「最小二乗解pに収束する漸化式」を作るところまでしか出来ない
いろいろ調べているのですが、やはり反復法などが多くヒットしますね。
やはり、理論的に解くというのは厳しいものなのか…。
その「漸化式を作る」というのを、もう少し詳しく解説して貰えないでしょうか?
それから、E を最小化する p と F を最小化する p は違う解になるのですか?
よく理解していませんので、自分的には同じになると思っておりましたが。
ご回答どうもありがとうございました。
頂いた回答を参考にしつつ、いろいろ調べた結果、
なんとか、解法に辿り着きました。
どうもありがとうございました。
No.2
- 回答日時:
必ずしも良く理解しているわけではないのですが確率密度関数としてガウス分布を仮定するならば
a=0, c=Σyi/n, b=1/(2π)^.5σ、σ=Σ(yi-c)^2/n
でデータから一義的に来ますと思いますが、データセットが違うのでしょうか。
この回答への補足
データは、その両端において必ずしも 0 に収束しません。
両端では、ある値(正か負)付近で振動しているようなデータです。
ですので、a は必ずしも 0 になりません。
ご回答どうもありがとうございました。
頂いた回答を参考にしつつ、いろいろ調べた結果、
なんとか、解法に辿り着きました。
どうもありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 物理学 量子力学 球面調和関数 導出 方位角成分 微分方程式の解 2 2022/07/02 13:40
- JavaScript 最小二乗法 2 2023/01/01 20:57
- 高校 方程式の証明 5 2022/05/12 09:29
- 数学 数学の問題の解き方を教えてください! 3 2022/11/02 17:32
- 物理学 微分方程式の物理現象への適用について 3 2023/05/14 12:22
- 統計学 t検定について教えてください 2 2023/02/23 16:35
- 数学 2階非線形微分方程式の右辺が{e^(-x)}√xになってしまったのですが特殊解はどのように見つけたら 1 2022/11/14 22:04
- 統計学 t統計量とF統計量について 9 2023/01/05 14:23
- 数学 モデルのパラメータの定義がいまいちわかりません。 3 2022/10/11 15:16
- 物理学 誤差の問題についでです。 yがy=A+Bxの上に乗ると予想でき、以下の4個の測定値 (2,3.2±1 2 2023/04/25 00:54
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
なんで、等比数列の和で、r(公...
-
展開の問題で項の順番が逆でも...
-
数Ⅰの問題について教えてくださ...
-
高1 数学です (因数分解) a(b...
-
等差数列の証明
-
数列の一般項はどこまで簡単に?
-
y=a(x-p)2乗+qの形にする...
-
等比数列の問題です。 第4項が2...
-
(2x^2-1/2x)^6の展開式でx^3の...
-
数2の二項定理の問題です!教え...
-
等差数列、等比数列
-
数列{an}の初項から第n項ま...
-
定数項は「0」か「なし」か?
-
等比数列の逆数の和について
-
等比数列
-
等比数列の一般項について この...
-
困っています。
-
Cnの一般項を求めよ
-
数学の問題
-
漸化式について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
なんで、等比数列の和で、r(公...
-
定数項は「0」か「なし」か?
-
( )内に指定された項の係数を求...
-
等比数列の問題です。 第4項が2...
-
xの多項式(x+1)(x+2)(x+3)(x+4)...
-
展開の問題で項の順番が逆でも...
-
数列3,7,13,21,31,43,57,・・・の...
-
数学の数列において一般項Anに...
-
この数列の解き方を教えてください
-
【至急】 公文の数学です!中3...
-
数2の二項定理の問題です!教え...
-
高1 数学です (因数分解) a(b...
-
数学の問題
-
数学Bの等比数列の問題
-
(2x+3y+z)(x+2y+3z)(3x+y+2z)を...
-
等比数列の逆数の和について
-
いろいろな数列の和 n≧2のとき...
-
2x²-3xy-2y²-5x+5y+3 =2x...
-
等差数列の証明
-
(x-2y+3z)^2 を展開せよ。 これ...
おすすめ情報