最小二乗法によるa,b,cの値の求め方

このQ&Aのポイント
  • 最小二乗法を使用して、y=ax^2+bx=cの式からa、b、cの値を求める方法を教えてください。
  • 最小二乗法を適用するために、S=Σ(yi-(axi^2 + bxi + c))^2という式を定義します。
  • aΣxi^4 + bΣxi^3 + cΣxi^2 = Σxi^2yi、aΣxi^3 + bΣxi^2 + cΣxi = Σxiyi、aΣxi^2 + bΣxi + cΣ = Σyiといった方程式を解くことで、a、b、cの値を求めることができます。
回答を見る
  • ベストアンサー

最小二乗法において

y=ax^2+bx=c とおいたとき、最小自乗法から a,b,cの値を求めるには?という問題で、 S=Σ(yi-(axi^2 + bxi + c))^2 とおき、 ∂S/∂a=-2Σxi^2(yi-(axi^2 + bxi + c)) ∂S/∂b=-2Σxi(yi-(axi^2 + bxi + c)) ∂S/∂c=-2Σ(yi-(axi^2 + bxi + c)) となり、 aΣxi^4 + bΣxi^3 + cΣxi^2 = Σxi^2yi aΣxi^3 + bΣxi^2 + cΣxi = Σxiyi aΣxi^2 + bΣxi + cΣ = Σyi というとこまでは出来たのですが、ここから先と誤差の求め方がわかりません。 初心者なので出来ればわかりやすく教えて下さい。

質問者が選んだベストアンサー

  • ベストアンサー
  • nadja
  • ベストアンサー率33% (5/15)
回答No.2

このSという関数は今はa,b,cの関数ですね。 たとえば高校で、「極値」というものをならったのではないでしょうか? 復習をすると、ある変数で微分して、微分係数=0が極値の条件でしたね。 もし2次元平面にxの関数y=f(x)を書いたとき、極小値のところも、微分係数は0になりますね。 それをつかってa,b,cの関係を出しているのです。 ではなぜ極小値がほしいのか、、、、、それを考えてみてください。 もしなぜ平均2乗誤差を計算しないといけないのかを知りたければ、「正規分布」、「中心極限定理」、「大数の法則」、「統計」を検索してみてください。

Higetyan
質問者

お礼

ありがとうございます。検索してみます。

その他の回答 (1)

  • nadja
  • ベストアンサー率33% (5/15)
回答No.1

平均2乗誤差Sを各変数で微分するのはどうしてかわかりますか?

Higetyan
質問者

お礼

正直言うとわかってません。 他の式の最小二乗法の解き方をみると、S=の形にした後に微分していたので真似してやっている状態です。

関連するQ&A

  • 最小二乗法

    n組のデータ (xi, yi) を,特定点(X0, Y0) を通る直線 y = ax+b でフィッティングしたい。最小二乗法で係数a,bを求めるため の式を導きなさい。 という問題で 各データの残差を二乗した和が最小になるときのa,bを求めるのですが 特定点(X0,Y0)を通るにはどうすればよいでしょうか? ただ単に、特定点を通らずフィッティングするやりかたはわかるのですが・・・。 よろしくお願いします。

  • 最小二乗平面

    ある複数の空間座標(x1,y1,z1)~(xn,yn,zn)(nは3以上)から、平面近似式である最小二乗平面の方程式を求める関数を作ろうと考えています。 平面方程式はz=ax+by+c(a,b,cが定数)であらわされ、引数を座標と座標個数n、戻り値をa,b,cにします。 ここ(http://oshiete1.goo.ne.jp/qa2802443.html)を参考に 最小二乗平面の連立方程式を解くコードを書いたのですが、 どうも答えが合いません。どなたかご教授願えないでしょうか? 開発環境はC++Builder2007です。 ↓の数式をコードにしましたが、コードが間違っているのか、 数式自体がダメなのかさっぱりわかりません。 //与えられるn個の3次元座標(xi,yi,zi)から平面方程式を求める //平面方程式:z = ax + by + c //最小二乗平面を求める連立方程式は下記のようになる。 // aΣxi^2 + bΣxiyi + cΣxi = Σxizi // aΣxiyi + bΣyi^2 + cΣyi = Σyizi // aΣxi + bΣyi + cn = Σzi //これを行列で解く // |Σxi^2 Σxiyi Σxi | |a| = |Σxizi| // |Σxiyi Σyi^2 Σyi | |b| = |Σyizi| // |Σxi Σyi n | |c| = |Σzi | //ここで // |Σxi^2 Σxiyi Σxi | // A = |Σxiyi Σyi^2 Σyi | // |Σxi Σyi n | // // |Σxizi| // B = |Σyizi| // |Σzi | // // |a| // C = |b| // |c| // //とすると // // C = B・A^-1 // //で求めることができる

  • 最小二乗法とデータのばらつきを除去

    実験データに最小二乗法を適用して近似関数(y=ax+b)を求めたいです。 しかし,実験データにはばらついた値があり,得られた近似関数も それらの値によって,おおきくずれてしまいます。 そこで,何らかの方法でばらついた値を排除していき, 信頼できる近似関数を求めたいと思います。 聞いたところ,正規分布か何らかの方法で, 信頼区間(95%)以外のデータを除去すれば良いと のことですが,具体的な方法が分かりません。 実験データyi,xiと最小二乗法でy(=a*xi+b)から どのような処理をすればよいのか教えてください。 よろしくお願いします。

  • 最小2乗

    (1) (x,y)=(-3,4),(-2,1),(-1,0),(0,-1),(1,1),(2,2),(3,3)を 方程式 y = ax^2 + bx + c で最小2乗法に当てはめたときの a,b,cを求める (2) 要素(x,y,z)=(1,3,2),(2,1,1),(3,2,4),(4,5,3),(5,4,5)が z = ax + by + p とモデル化されるとき、残差の2乗Σp^2 が 最小になるように定式化して、最小となるa,bを求める という問題です。 これらを行列を用いて解きたいのですが、どのようにすればよいか分かりません。よろしくお願いします。

  • 2次の最小二乗法

    1次(ax+b)の最小二乗法は、 http://szksrv.isc.chubu.ac.jp/lms/lms1.html に載っている通りに求めるのですが、 2次(ax^2+bx+c)のa,b,cを求める式はどうなるのですか?

  • 最小二乗法

    こんばんは 最小二乗法についてなのですが Q(a,b)=Σ{Yi-(a+bXi)}(Σの上にはn下には1)とおき、Q(a,b)をaで微分したものとbで微分してそれぞれを =0としたときに a,bについての連立方程式を解くのですが 数学が苦手なのでさっぱりです Σが入った微分なんてやったことがないので・・・ どなたか助けてください お願いします

  • 東工大 物理問題 教えて 最小二乗法

    y=ax xを変えながら測定を行い、N組の測定値xi,yiを得た 最小二乗法を用いてaの最確値を表す式を求めよ x、yの各測定における測定誤差は等しいとする

  • 最小二乗法の分散の求め方

    http://oshiete1.goo.ne.jp/qa3077638.htmlに関連しての質問です。 例えば、y=Xβ+εに関して最小二乗解を求めると b = [ nΣ(xi yi) - (Σxi) (Σyi)]/[ nΣ(xi^2) - (Σxi)^2 ] となります。ここから分散を求めるためにはどうすればよいのでしょうか?教科書を引っ張ってみると求め方の行列の式しか書いていなくいまいちピンときません(確かに計算すれば正しい結果を得られるようですが)。具体的にこの式だけを使って分散を求めるということはできないのですか?

  • 最小自乗法の勾配を推定する式

    原点を通る直線の最小自乗法において、 勾配aを推定する式を導出して下さい。 ここで、  yi=axi+εi (i=1~n) とします。

  • 最小二乗法について

    最小二乗法では二乗和の誤差 Σ[i=1~n]{Yi-(α+βXi )}^2 (iは添え字です) を最小化するα,βを推定することを考えますが、 これは単純にα,βで偏微分してそれを0とおいて 連立方程式を解くだけでよいのですか? といいますのも、2変数関数の極値を求める場合、 Hessianを計算して判別しますよね? ただ一階偏導関数が0になるからといって、 そこで極値をとるとは限らない気がしたので… それとも最小二乗法の場合は必ずとるようになっているのでしょうか? 手元の本には、 「この二乗和は非負値なので、αとβで偏微分したものを0とするα,βが上式を最小にする値である」 とあるのですが、一般に非負値だとこの ようなことが言えるのでしょうか?