• ベストアンサー
  • 困ってます

多変数の最小二乗法

Y=AX+Bという形で(Y,X)の組から係数A,Bを推定する方法が最小二乗法かと思います。(そのような整理が妥当であるか、意味があるか、についてはデータの分布形状や変動係数などで別途検証する必要がありますがここでは不問として) さて、その次ですが、YY=AX+BY+CZという関数で表示しようと考えたとします。(YY,X,Y,Z)というデータ系列があり、係数(A,B,C)を求めるというような解析です。(前述のようにそれが妥当かどうかは不問として。)係数A,B,Cを最小二乗法のようにできるだけ妥当に求める方法を教えていただきたいのですが。 1)たとえば、YY=AX+CCとして最小二乗法でAを求めたあと、残差CCについてCC=BY+CZとおいて再度最小二乗法でBを求めるというような手法を何度も行うとか? これだと解く順番に依存するようなので全部の順番でやって平均値を取るとか? 下手な考え休むに似たりのようですが。 2)カルマンフィルタ、ニューラルネットワークの手法で解析するということもあるでしょうか。その場合、YY=AX+BY+CZという枠組みではなくなりますが、それでもよいと言えばよいです。 このような問題を解く方法について解説されている本とか分野の名称(数理統計学とか?)などを教えて頂けると探索する手がかりとなります。今は手がかりすらはっきりしていないのです。 最小二乗法についてはその程度だったら専門分野ではなく、各分野で個別に解説されているようで込み入った問題になったときにどこを捜索したらよいかわからないもので質問しました。よろしくお願いします。

共感・応援の気持ちを伝えよう!

  • 回答数4
  • 閲覧数5438
  • ありがとう数12

みんなが選んだベストアンサー

  • ベストアンサー
  • 回答No.3
  • f272
  • ベストアンサー率46% (5809/12598)

Y(i)とA*X(i)+Bの差の2乗和を最小にするのがY=AX+Bという形での最小二乗法ですよね。 そのためにf(A,B)=Σ(Y(i)-A*X(i)+B)^2のA,Bに関する偏微分を計算し、 df/dA=0とdf/dB=0を連立させてA,Bを求めるとOKというものです。 YY=AX+BY+CZという形でもやることは同じです。 g(A,B,C)=Σ(YY(i)-A*X(i)-B*Y(i)-C*Z(i))^2として、A,B,Cに関する偏微分が0になる点を求めます。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

なるほど。 gをA,B,Cでそれぞれ偏微分してゼロとなるようなA,B,Cを求めるということですね。いわれて見ればそういうことかと思いますが。 これは非線形となると話が違ってくるでしょうか。x^2, xy, y^2というような項が出てくるということですが。展開する関数に直交性があれば、それでも良いのかなとは思いますが。 回答ありがとうございました。

その他の回答 (3)

  • 回答No.4
  • info22
  • ベストアンサー率55% (2225/4034)

解き方の計算法は #3さんの方法で良いですね。 実際に最小二乗法を解くのは手計算では大変ですので エクセルやfree-softの「gnuplot」の中の関数fitting機能 を使います。 僕は後者のソフトを利用しています。データのファイルを読み込んで簡単にfittingによりA,B,Cを計算してくれます。 参考URL http://ayapin.film.s.dendai.ac.jp/~matuda/Gnuplot/gnuplot43-ja/node90.html gnuplotダウンロード先 ↓

参考URL:
http://www.gnuplot.info/

共感・感謝の気持ちを伝えよう!

質問者からのお礼

回答ありがとうございます。 gnuplotはインストールしてあります。これはグラフ作成ツールという風に位置づけておりますが、このような計算機能もあるということですね。関数フィッティング機能ということは裏でそのような作業をやっているということ推察できます。エクセルもそうだと思いますが。 他にもたとえばRとかmaximaなどのフリーソフトにもそのような機能がありそうですね。 このようなフリー系の数理解析ソフト群はかなり進んできたように思います。ただ、使いこなすのが大変で1つに秀でたらかなり役に立つとは思いますが、目先があちこちに動いてなかなか習得できないでいます。

  • 回答No.2
  • dieci
  • ベストアンサー率10% (1/10)

参考URLを書き忘れていました ソルバーはすべてのエクセルにもとから実装してある機能ではないので、使用されるときは参考URLを参考にしてください

参考URL:
http://homepage1.nifty.com/gfk/square_solver.htm

共感・感謝の気持ちを伝えよう!

  • 回答No.1
  • dieci
  • ベストアンサー率10% (1/10)

私は以前はYY=AX+BY+CZなどの関数の係数を求める解析にはエクセルのソルバー機能を使って求めていました。 ソルバー機能はある目的のセルの値が最小になるように変数をエクセルが自動的に変化させ最適な値を求めてくれるという機能です。 f(x)=AX+BY+CZとしてA,B,Cをまず適当に定めて、各X,Y,Zにおいて(YY-F(X))^2を求めその合計値が最小になるようにすると最適なA,B,Cが求まったことになりますよね

共感・感謝の気持ちを伝えよう!

関連するQ&A

  • 最小二乗法でa、bを求める公式を教えてください

    最小二乗法について良くわからないのですが、教えてください! y=a/(x+b)の場合で、n個のx、yのデータがあります。 最小二乗法で、aとbを求める。 という問題なのですが、aとbを求める公式を教えてください!

  • y=a/(x-b)+cの最小二乗法

    y=a/(x-b)+cの最小二乗法 y=a/(x-b)+c という、反比例の式をx方向に+b、y方向に+c平行移動したような曲線の係数a,b,cを求めるための最小二乗法の方法を教えていただけないでしょうか。 工夫してみたのですが、なかなかうまくいきませんでした。 すみませんが、力を貸してください。

  • 最小二乗法

    工学部の大学生です。 この前 エクセルを用いて、 非線形最小二乗法によるNMRのスピンー格子緩和時間解析 についてのレポートがだされてしまいました。。 全然わかりません。。 (1)非線形最小二乗法と線形最小二乗法の違い (2)スピンー格子緩和時間とは?? (3)NMRとは?? についてわかる方教えていただけるとありがたいです。

  • 最小二乗法について

     y=ax+b+c/x という式での最小二乗法の求め方を 教えてください。

  • 最小二乗法

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

  • 最小二乗法

    レポートで最小二乗法を使おうとしているのですが、Y=aX+b を求める時X、Y、X^2、XYをグラフでまとめたのですが、桁数がバラバラです。有効数字を設定すべきでしょうか?それとも正確性を求めてしない方がよいのでしょうか?教えてください。

  • 最小二乗法について

    xは操作条件で、yは実験結果のプロットに対して、 最小二乗法でy=ax+bという回帰直線を引きました。 すると、aとbでは、aのほうが信頼性があるというのですが、 これはどういうことなのでしょうか?

  • 最小二乗法とラグランジュの未定乗数法

    ラグランジュの未定乗数法って最小二乗法の手法の一つですか?

  • 最小二乗法 楕円放物面

    数千のxyz座標データを、最小二乗法を用いて、ax^2+by^2+2cz=1の楕円放物面に近似したいのですが、どのようにしたらいいですか? ご存知の方教えてください。 宜しくお願いします。

  • 最小二乗法において・・・ bの分散って何でしょう?

    最小二乗法の過程で疑問が出来ました。 重回帰モデルが y=Xβ+ε で与えられるとき、最小二乗法を施すと βの期待値bが求まり、bの分散も求めることが出来るようですが、 bの分散という意味が、いまいちピンと来ません。 未知係数の分散?どういうことなんでしょう? 具体的に教えていただけないでしょうか? ちなみに分散は小さいほうが良いようなのですが、この意味も教えていただけると助かります。 よろしくお願いします。