【发布时间】:2017-06-27 00:03:54
【问题描述】:
我正在使用来自 sklearn 的支持向量回归模型并使用 MinMax 来缩放特征来解决回归问题,但是通过使用它我得到了不同的回归结果,这有意义吗?
import pandas as pd
import numpy as np
from sklearn import svm
from sklearn.preprocessing import MinMaxScaler
np.random.seed(0)
X_training = np.random.rand(100,15)*10
Y_training = np.random.rand(100,1)*10
model = svm.SVR()
没有缩放:
model.fit(X_training,Y_training)
print model.predict(X_training)[0:10]
array([ 4.99980599, 6.99479293, 4.9784396 , 5.03911175, 6.99557904,
6.57214885, 6.99454049, 5.60940831, 6.99989978, 5.98628179])
使用 MinMax 缩放器:
scaler = MinMaxScaler()
X_scaled = scaler.fit_transform(X_training)
model.fit(X_scaled,Y_training)
model.predict(X_scaled)[0:10]
array([ 5.63521939, 6.70378514, 5.83393228, 5.33274858, 6.47539108,
5.61135278, 5.7890052 , 5.74425789, 6.15799404, 6.1980326 ])
虽然预测的数量级相同,但两种情况之间存在显着差异。
【问题讨论】:
标签: python machine-learning regression svm