机器学习10-特征缩放

特征缩放 的目的是确保不同特征的数值范围相近 ,使得模型在训练过程中更加稳定,加速模型收敛,提高模型性能。具体而言,零均值单位方差的目标有以下几点好处:

1. 均值为零(Zero Mean):通过减去特征的均值,可以使特征分布的中心位于零点。这样做有助于消除不同特征之间的偏差,确保模型不会在某些特征上过度拟合。如果某个特征的均值远离零,模型可能会更关注那些数值较大的特征。

2. 单位方差(Unit Variance):通过除以特征的标准差,可以将特征的尺度统一为相似的范围。这是因为不同特征可能具有不同的数值范围,如果某个特征的值较大,它可能会在模型中占据主导地位,而忽略其他特征。通过保持单位方差,确保了所有特征对模型的贡献相对均衡。

总的来说,零均值和单位方差的特征更容易被模型理解和处理,有助于提高模型的性能和泛化能力。特征缩放通常对那些使用距离度量或梯度下降等优化算法的模型尤为重要,如支持向量机、k最近邻、神经网络等。

单位方差指的是数据的方差被标准化为 1。

在特征缩放中,我们通常使用 StandardScaler 来实现单位方差。StandardScaler 通过减去均值并除以标准差的方式,将数据的分布调整为均值为 0,标准差为 1。

下面是一个简单的例子,演示如何使用 StandardScaler 实现单位方差:

python 复制代码
import numpy as np
from sklearn.preprocessing import StandardScaler

# 创建一组示例数据
data = np.array([[1, 2, 3],
                 [4, 5, 6],
                 [7, 8, 9]])

# 初始化 StandardScaler
scaler = StandardScaler()

# 计算均值和标准差,并进行缩放
scaled_data = scaler.fit_transform(data)

# 输出缩放后的数据
print("原始数据:")
print(data)
print("\n缩放后的数据(单位方差):")
print(scaled_data)

结果:

缩放后的数据(单位方差):

[[-1.22474487 -1.22474487 -1.22474487]

[ 0. 0. 0. ]

[ 1.22474487 1.22474487 1.22474487]]

解释:

在这个例子中,我们创建了一个 3x3 的矩阵作为示例数据。然后,使用 StandardScaler 对数据进行缩放。输出中的缩放后数据的每个特征都具有零均值和单位方差。这是通过 fit_transform 方法完成的,该方法计算数据的均值和标准差,并将数据进行相应的缩放。

在实际应用中,特征缩放是机器学习中的一项常见预处理步骤,有助于确保不同特征之间的尺度不同不会影响模型的性能。

这段程序使用了`StandardScaler`类进行数据的标准化,标准化是一种特征缩放的方法。下面是这段程序的数学运算步骤

1. 计算均值(Mean):

对每个特征,计算其在所有样本上的平均值。对于示例数据,每一列的均值分别是

2. 计算标准差(Standard Deviation):

对每个特征,计算其在所有样本上的标准差。标准差是每个数据点与均值的偏差的平方的平均值的平方根。对于示例数据,可以计算每列的标准差。

3. 进行缩放操作:

使用标准化公式进行缩放。对于每个特征,将其减去均值,然后除以标准差。这样可以确保每个特征的均值为0,标准差为1。

对于示例数据,缩放后的值可以通过以下公式计算:

其中, x 是原始数据中的每个数据点, mean 是均值, std 是标准差。

结论:

这样,经过标准化处理 后,每个特征的均值为0,标准差为1,即实现了单位方差

相关推荐
HPC_fac1305206781610 分钟前
RTX 4090 系列即将停产,RTX 5090 系列蓄势待发
服务器·人工智能·gpu算力
xuehaisj1 小时前
论文内容分类与检测系统源码分享
人工智能·分类·数据挖掘
大耳朵爱学习1 小时前
大模型预训练的降本增效之路——从信息密度出发
人工智能·深度学习·机器学习·自然语言处理·大模型·llm·大语言模型
loongloongz2 小时前
联合条件概率 以及在语言模型中的应用
人工智能·语言模型·自然语言处理·概率论
lijfrank2 小时前
情感计算领域期刊与会议
人工智能·人机交互
sp_fyf_20242 小时前
计算机人工智能前沿进展-大语言模型方向-2024-09-18
人工智能·语言模型·自然语言处理
sp_fyf_20242 小时前
计算机人工智能前沿进展-大语言模型方向-2024-09-14
人工智能·语言模型·自然语言处理
ybdesire2 小时前
nanoGPT用红楼梦数据从头训练babyGPT-12.32M实现任意问答
人工智能·深度学习·语言模型
AI极客菌2 小时前
Stable Diffusion绘画 | 生成高清多细节图片的各个要素
人工智能·ai·ai作画·stable diffusion·aigc·midjourney·人工智能作画
FOUR_A2 小时前
【机器学习导引】ch2-模型评估与选择
人工智能·机器学习