我不明白为什么在训练诸如MLPRegressor(SKLearn)之类的机器学习算法时没有人缩放目标数据?
我总是看到这样的东西:
# separate array into input and output components
X = array[:,0:8]
Y = array[:,8]
scaler = StandardScaler().fit(X)
StandardX = scaler.transform(X)
但是会期望这样:
# separate array into input and output components
X = array[:,0:8]
Y = array[:,8]
StandardX = StandardScaler().fit_transform(X)
Standardy = sc_y.fit_transform(y.values.reshape(-1, 1))
答案 0 :(得分:0)
无需缩放目标变量。这里也有类似的问题: https://stats.stackexchange.com/questions/111467/is-it-necessary-to-scale-the-target-value-in-addition-to-scaling-features-for-re
来自我的评论:我很少这么做。例如,用于可视化复杂且学习时间长的DNN的学习曲线。图片变得更漂亮了。