4

私は多変量回帰を使用してバスケットボールを試しています。具体的には、X、Y、ターゲットからの距離に基づいて、ピッチ、ヨー、キャノンの強さを予測する必要があります。私は出力パラメータのそれぞれにマルチ変数を使って多変量回帰を使用することを考えていました。これを行うより良い方法はありますか?複数パラメータ予測のための特別なタイプの多変量回帰がありますか?

また、私は最適なフィットのために直接解決するか、または勾配降下を使用する必要がありますか?

+1

FYI、あなたがしようとしていることは、*多変量*回帰と呼ばれます。 HTH。 –

+0

@ larsmans:だから – Glycan

答えて

1

多変量回帰は、入力変数セットの共分散の逆を行うのと同じです。行列を反転する解決策がたくさんあるので(次元数がそれほど高くない場合は、千は大丈夫です)、勾配降下の代わりに最適なフィットを直接行ってください。

nはサンプル数、mは入力変数の数、kは出力変数の数です。

X be the input data (n,m) 
Y be the target data (n,k) 
A be the coefficients you want to estimate (m,k) 

XA = Y 
X'XA=X'Y 
A = inverse(X'X)X'Y 

X'あなたは行列乗算だけのカップルと出力変数の任意の数の係数を計算することができますX'Xの逆を見つけたら、あなたは、見ることができるようにX.

の転置です。

これを解決するための簡単な数学ツール(MATLAB/R/Python ..)を使用してください。

+0

入力変数セットの共分散の逆数を少し良く説明できますか? – Glycan

+0

@GLycan更新されたソリューションを参照してください。 – ElKamina

+0

@GLycan Xに1の余分な列を追加します。そうすることで、定数を得ることができます(y = ax + bのb)。 – ElKamina

2

エルカミナの答えは正しいが、これについては、k個の独立した一般的な最小二乗回帰を行うことと同一であることに注意することが重要である。つまり、Xからピッチまで、Xからヨーまで、Xから強度まで別々の線形回帰を行うのと同じです。これは、出力変数間の相関を利用していないことを意味します。これはアプリケーションにとっては良いかもしれませんが、出力の相関関係を利用する方法の1つにランクリグレッション(a matlab implementation here)が関係しているか、多少関連していますが、y成分を主成分に投射することによって明示的に相関を解消することができます(PCAPCA whiteningの場合は次元数を減らさないためです)。

Izenmanの教科書「Modern Multivariate Statistical Techniques:Regression、Classification、and Manifold Learning」の第6章をかなり推奨します。あなたが大学にいれば、あなたの図書館を通じてオンラインで利用できるかもしれません。

これらの選択肢がうまくいかない場合は、サポートベクトルの回帰、ガウスプロセスの回帰など、複数の出力バージョンを持つ洗練された非線形回帰方法があります(ほとんどのソフトウェアパッケージには多変量の変更はありません)意思決定ツリーの回帰、またはニューラルネットワークであってもよい。

+0

これはかなり興味深い、そして深い答えですが、私が(FRC Montreal)に必要なものは2週間ほど前ですが、とにかくロボットコードを実装する時間がありませんでした。しかし、答えをありがとう! – Glycan

関連する問題