我试图对25维数据进行回归分析。 我的数据在一个数据框中。 我的最终目标是预测一个分数值,即百分比(0,99,70,22 e.t.c)
1.我需要标准化数据/缩放它还是线性/多项式回归分析处理这个问题?你知道吗
代码如下:
X= colum[D:AC] of spreadsheet
Y= column['Score'] or column ['Match'] in case of logistic regression
poly = PolynomialFeatures(degree=2)
X_ = poly.fit_transform(X)
X_test_ = poly.fit_transform(X_test)
# Instantiate
lg = LinearRegression()
# Fit
lg.fit(X_, y)
# Obtain coefficients
lg.coef_
1.我需要对数据进行标准化/缩放,还是线性/多项式回归分析来处理这个问题?
这“通常”是个好习惯。模型收敛更快。如果您使用的是
sklearn
,那么Linear Regression模块有一个名为normalize
的参数,当设置为True
时,它将在拟合模型之前规范化所有变量<强>2。我应用了多项式回归,虽然它给了我一个很好的r平方值,我看到它返回的结果是负值-342.54,或者像252这样的高范围值(完全不在我给训练的分数范围内)我怎么纠正这个?我还想用其他方法来预测价值吗?
多项式回归的目的是给出介于
-inf
和+inf
之间的值。如果需要百分比值,请通过sigmoid
这样的函数缩放这些变量。您还可以使用Logistic Regression
,predict_proba()
函数将输出介于0和1之间的概率(尽管此模型适用于完全不同的目标)。你知道吗正如@VivekKumar所说的,除非我们有具体的信息,否则我们很难帮助你。你知道吗
相关问题 更多 >
编程相关推荐