我正在与MinMaxScaler。所以下面的输入:
data = [[-1, 2], [-0.5, 6], [0, 10], [1, 18]]
将在范围(0,1)中转换如下:
[[ 0. 0. ]
[ 0.25 0.25]
[ 0.5 0.5 ]
[ 1. 1. ]]
现在如何转换单个输入?在传递单个输入时,例如:
data = [[1,18]]
将转换如下:
[[0.,0.]]
原因是,没有Min也没有Max,因此缩放到0。但是,如果我只有一个输入并希望将其传递给机器学习模型(在缩小输入和输出后进行训练)作为输入,我该怎么办?无论缩放前数据中的差异如何,所有输出都是相同的。这绝对是不对的。我能在这里做什么?有什么方法可以将单个输入表示为不是一系列的0.?
这是我在培训过程中所做的:
X_scaler = MinMaxScaler(feature_range=(0, 1))
Y_scaler = MinMaxScaler(feature_range=(0, 1))
# Scale both training inputs and outputs
X_scaled_training = X_scaler.fit_transform(X_training)
Y_scaled_training = Y_scaler.fit_transform(Y_training)
X_scaled_testing = X_scaler.transform(X_testing)
Y_scaled_testing = Y_scaler.transform(Y_testing)
在训练过程中,我按如下所示反转了模型中的值,以获得最终的输出分数:
Y_predicted = Y_scaler.inverse_transform(Y_predicted_scaled)
相关分类