2

私は機械学習が初めてで、多変量​​非線形回帰を実装したかったのですが、良い C++ ライブラリが見つからないようです (例: データ)。

    y        x1         x2       x3          x4       x5         x6      
4.52e+005  8.32e+000 4.10e+001 8.801e+002 1.29e+002 3.22e+002 1.26e+002 
3.585e+005 8.30e+000 2.10e+001 7.099e+003 1.10e+003 2.40e+003 1.13e+003 
3.521e+005 7.25e+000 5.20e+001 1.467e+003 1.91e+002 4.96e+002 1.77e+002 
3.413e+005 5.64e+000 5.20e+001 1.274e+003 2.35e+002 5.58e+002 2.19e+002 
3.422e+005 3.84e+000 5.20e+001 1.627e+003 2.81e+002 5.65e+002 2.59e+002 

特定の入力変数 (x1、x2、x3、x4、x5、x6) の出力を予測するために、非線形回帰モデルが必要です

4

1 に答える 1

2

これについて、カーネル リッジ回帰やサポート ベクター回帰を試してみます。どちらもおそらく非常にうまく機能します。

dlib C++ ライブラリには、これら両方のメソッドの使いやすい実装があります。詳細については、サポート ベクター回帰またはカーネル リッジ回帰のサンプル プログラムを参照してください。これらの例は 1 つの入力変数のみを示していますが、入力ベクトルの次元を 1 以外に変更するだけでよいことに注意してください。したがって、例では、行を変更するだけです。

typedef matrix<double,1,1> sample_type;

typedef matrix<double,6,1> sample_type;

そして、それらは6つの入力変数で機能します。

于 2013-03-24T12:33:53.100 に答える