加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

数据预处理之 标准化/正则化 处理

发布时间:2020-12-14 00:43:32 所属栏目:百科 来源:网络整理
导读:标准化(Scale)和正则化(Normalization)是两种常用的数据预处理方法,其作用是让数据变得更加“规范”一些 。 在文本聚类等任务中使用的比较多。 针对某数据,如果不适用数据标准化、正则化,展示的情况如下图 1.数据标准化 公式为:(X-mean)/std 计算时

标准化(Scale)和正则化(Normalization)是两种常用的数据预处理方法,其作用是让数据变得更加“规范”一些在文本聚类等任务中使用的比较多。

针对某数据,如果不适用数据标准化、正则化,展示的情况如下图

1.数据标准化

公式为:(X-mean)/std 计算时对每个属性/每列分别进行。将数据按期属性(按列进行)减去其均值,并处以其方差。得到的结果是,对于每个属性/每列来说所有数据都聚集在0附近,方差为1。经过数据标准化的数据如下图:可以看到有些特征被凸显出来了。


2.数据正则化

正则化的过程是将每个样本缩放到单位范数(每个样本的范数为1),如果后面要使用如二次型(点积)或者其它核方法计算两个样本之间的相似性这个方法会很有用。

Normalization主要思想是对每个样本计算其p-范数,然后对该样本中每个元素除以该范数,这样处理的结果是使得每个处理后样本的p-范数(l1-norm,l2-norm)等于1。

p-范数的计算公式:||X||p=(|x1|^p+|x2|^p+...+|xn|^p)^1/p

该方法主要应用于文本分类和聚类中。例如,对于两个TF-IDF向量的l2-norm进行点积,就可以得到这两个向量的余弦相似性。


在sklearn中有三种正则化方法,l1范数、l2范数、max范数。

使用这三种范数生成的结果如下图所示:

在肉眼上很难看出有什么区别,不过还是能看出l2范数的结果相对更好,即能尽可能的削弱“强势”特征,将一些数值较小但是比较有特点的特征“凸显”出来。

使用方法参照sklearn官方文档就可以了,非常简单:

http://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.scale.html#sklearn.preprocessing.scale

http://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.normalize.html#sklearn.preprocessing.normalize

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读