当输入数值属性有不同的尺度,比如有的属性变化范围为-1到1,而有的属性变化范围为1到1000,机器学习算法通常不会表现的很好,因而需要对数值属性进行特征缩放。
有两个常用的方法可以使得所有的属性有相同的尺度, min-max scaling 和 standardization。
- MinMaxXScale 也称 normalization
class sklearn.preprocessing.MinMaxScaler(feature_range=(0, 1), copy=True)
独立的缩放每一列特征,将特征值缩放到给定的范围内。
转换公式:
X_std = (X - X.min(axis=0)) / (X.max(axis=0) - X.min(axis=0))
X_scaled = X_std * (max - min) + min
其中,min, max = feature_range
参数:
- fature_range : tuple(min, max), default=(0,1)
决定了特征值的缩放范围,从转换公式的第二行就很明显的看出了。 - copy: boolean, opetional dafault True
如果copy=False, 执行的是行正则化,并且是在原数据上操作
from sklearn.

在机器学习中,由于数值属性尺度差异可能导致算法性能下降。常用的特征缩放方法包括min-max scaling(归一化)和standardization(标准化)。MinMaxScaler将数据缩放到指定范围,如(0, 1),而StandardScaler实现零均值和单位方差,对异常值具有更强的鲁棒性。这两个方法在Python的sklearn库中都有实现。"
112019655,10295243,SHTTPD 源码分析:初识 Web 服务器内嵌示例,"['Web服务器', '嵌入式开发', 'HTTP协议', 'C语言', '源码解析']
最低0.47元/天 解锁文章
9447

被折叠的 条评论
为什么被折叠?



