公众号: 数据小斑马,关注即可获得价值1000元的数据分析学习资料
数据分析目录:
一、Excel系列——四大常用函数及十大高级图表
二、SQL系列——性能优化/多表关联/窗口分析函数等
三、统计学系列——概率论/置信区间/相关/抽样等
四、Pandas系列——数据读取/清洗/规整/分析实战等
五、Python做图系列——箱型图/散点图/回归图/热力图等
六、业务积累系列——流水预测/精细化运营/排序算法等
七、Kmeans系列——原理/评价指标/RFM实战等
八、决策树系列——算法原理/调参/python实现/项目实战
九、贝叶斯系列——算法原理/3种模型/文本分类实战
十、神经网络系列——BP算法原理/最小二乘法/项目实战
在进行机器学习之前,经常需要对训练数据进行标准化/归一化/正则化,为什么呢?(**文末有大礼赠送**
)
1、去除量纲的影响,将有量纲的数值变成无量纲的纯数值;
2、解决各特征之间数值差异过大的问题,比如一个向量(uv:10000, rate:0.03,money: 20),如果要与其它向量一起计算欧氏距离或者余弦相似度时,会向uv倾斜非常严重,导致其余2个特征对模型的贡献度非常低
3、提升训练的速度,防止过拟合
一、Z-score标准化
公众号: 数据小斑马,关注即可获得价值1000元的数据分析学习资料
Z-score标准化是将数据变成均值为0,标准差为1的分布,此方法比较适合于本身较符合正太分布的数据集。有2种方法,1是基于python本身函数计算,如下:
import pandas as pd
data = pd.read_csv('chat.csv',encoding='gbk')
df = data.values
x = df[:,:4]
print(x[:3])
通过调用x.mean和x.std(),可以看到均值为0,标准差为1
x = (x-x.mean())/x.std()
print(x.mean(),x.std())
print(x[:3])
另1种是直接调用sklearn库
from sklearn import preprocessing
t= preprocessing.StandardScaler().fit(x)
x