标准化缩放器和最小最大化缩放器都是常用的特征缩放方法,用于将数据转换到相同的尺度范围,以便于模型的训练和预测。然而,在人工神经网络中,标准化缩放器不起作用,而最小最大化缩放器起作用的原因是因为神经网络的激活函数的范围对输入的尺度非常敏感。
以下是使用标准化缩放器和最小最大化缩放器的代码示例:
from sklearn.preprocessing import StandardScaler
# 创建一个标准化缩放器对象
scaler = StandardScaler()
# 假设有一个特征矩阵 X,包含多个特征
X = [[1, 2], [3, 4], [5, 6]]
# 使用标准化缩放器对特征矩阵进行标准化缩放
X_scaled = scaler.fit_transform(X)
print(X_scaled)
输出结果:
[[-1.22474487 -1.22474487]
[ 0. 0. ]
[ 1.22474487 1.22474487]]
from sklearn.preprocessing import MinMaxScaler
# 创建一个最小最大化缩放器对象
scaler = MinMaxScaler()
# 假设有一个特征矩阵 X,包含多个特征
X = [[1, 2], [3, 4], [5, 6]]
# 使用最小最大化缩放器对特征矩阵进行最小最大化缩放
X_scaled = scaler.fit_transform(X)
print(X_scaled)
输出结果:
[[0. 0. ]
[0.5 0.5]
[1. 1. ]]
需要注意的是,在使用这两种缩放器时,通常需要先对训练数据进行拟合(fit),然后再对训练数据进行转换(transform)。对于测试数据或预测数据,只需要进行转换,不需要再进行拟合过程。