3

Python 2.7 と Scikit-learn を使用して、乗算線形回帰を使用してデータセットに適合させていsklearn.linear_models.Ridgeます。

だから代わりに

y = c1 * X1 + c2 * X2 + c3 * X3 + ...

私たちは必要

y = c1 * X1 * c2 * X2 * c3 * X3...

Python と Sklearn を有効にして、このような乗法/ヘドニック回帰モデルを適合させ、予測できるようにすることはできますか?

4

2 に答える 2

4

入力データセット(データマトリックス)を操作することにより、通常の線形回帰でこれを行うことができるはずだと思います。

回帰 y ~ c1 * X1 * c2 * X2 *... は、y ~ k * (X1 * X2 *...) と同等です。ここで、k は何らかの定数です。

したがって、計画行列のすべての値を掛け合わせて回帰すると、これができるはずです。

つまり、データ マトリックス X が機能 X1、X2、X3、および X4 を持つ 4 x 1000 の場合、前処理手順を使用して新しいマトリックス X_new を作成します。これは、1 つの列が X1 * X2 * に等しい 1 x 1000 です。 X3 * X4、フィット y ~ X_new (clf = LinearRegression(), clf.fit(X_new,y))

于 2013-08-18T17:56:09.640 に答える
0

必要なものは次のとおりです。X は、すべての X 値の行列です。

Y は、すべての Y 値の行列またはベクトルです。

次数は、式に許可する最高次数です。X^2 の次数は 2 ですが、X1^2 * X2^3 の次数は 5 です。これは自分で決める必要があります。

from sklearn.preprocessing import PolynomialFeatures
from sklearn import linear_model

poly = PolynomialFeatures(degree=degree)
X_ = poly.fit_transform(X)
model = linear_model.LinearRegression(fit_intercept=True)
model.fit(X_, Y)
于 2015-07-08T20:33:25.270 に答える