• 締切済み

指数関数のまま最小自乗法を適応し、推定量を求める

y=ae^bxにおいて 指数関数のまま、最小自乗法を適応して係数の推定量 a" b" を求めよ。 ただし、それぞれ初期値を13.52、1.544とし、ニュートン法を用いて求めよ。 がわかりません。 解説をお願いします。

みんなの回答

  • alice_44
  • ベストアンサー率44% (2109/4759)
回答No.1

データが無いとできません。問題を読み直してください。 (x,y) のサンプル (x_k,y_k) k=1,2,…,n があるとして、 x から y を推定する式 y = a e^(b x) の誤差二乗和 E = Σ[k=1~n] {y_k - a e^(b x_k)}^2 を最小にする a, b を求めよう というのが、「最小二乗法」です。 E の極小値を求めるために、E を微分して、 ∂E/∂a = ∂E/∂b = 0 となる a, b を求める。 この方程式の近似解を得るのに、二次元のニュートン法を使え という話なんでしょうね。 f(a,b) = ∂E/∂a, g(a,b) = ∂E/∂b と置いて ベクトル関数 w = (f,g) のヤコビ行列を H とすると、 二次元テーラー展開から w(a+u,b+v) ≒ w(a,b) + (u,v)H です。 w(a+u,b+v) ≒ 0 とすると、(u,v) ≒ - w(a,b)(H^-1) を得ます。 (次の(a,b)) = (a+u,b+v) = (a,b) - w(H^-1) で漸化するのが、ニュートン法。…[*] w や H は、(a,b) の値毎に違うので、毎回再計算が必要です。 問題文中の「初期値」というのは、この (a,b) の初期値のことでしょうね。 これを、手計算でやるのは大変です。 式変形は、H を a, b, x_k, y_k の式で書き下すところくらいまで にして、後はコンピュータのプログラムでやるほうがいいでしょう。 要は、[*] の漸化式を実装することです。

関連するQ&A