数据挖掘学习笔记(一)

数据预处理

《清华大学-数据挖掘》网络课程的笔记,错误之处劳烦指出,万分感谢!

一、数据缺失

数据缺失可能的原因

  • 设备的问题:例如医院的CT机在某个时间段出现故障,导致该时间段内体检的人数据出现缺失;
  • 数据未提供:例如某类收入较为复杂的人群,可能不愿意提供其月收入和来源;
  • Not Applicable不适用的情况:例如询问学生群体月收入,他们可能无法提供回答,这是题目出现了问题。这是非常容易被忽略的情况!

数据缺失的类型

  • 完全随机的缺失:例如老师拿着100张试卷走在路上,突然狂风暴雨吹走了40份卷子,这时每份卷子缺失的概率相同,那么就成为“完全随机”缺失;
  • 有条件的缺失:一个不完全恰当的例子,女孩子们可能不愿意透露自己的体重,那么体重属性的缺失和性别属性相关,即当对象是女生时(条件),可能发生缺失。这种缺失是由和该属性相关的另一个属性的值而决定的,叫有条件的缺失。
  • 非随机缺失:和上文那个特殊收入群体的例子一样,在该对象的收入值比较特殊时,他们可能不愿意填。这种缺失和该属性本身的值相关,那就是非随机缺失。

数据缺失的处理

  • 忽略:当缺失值只占整个数据集的一小部分(2%-3%)时可以适当的忽略
  • 手动填空缺失值:可以利用该领域的知识去填空缺值,或者对缺失部分重新进行采样
  • 自动填空缺失值:可以所有空缺值用同一个值填空,这个值也许是均值或者中位数,也可以是最有可能的数值。在填值的时候可以根据概率论,让填写的值符合正态分布,这样更为合理。
    总之这个部分的处理比较“玄学”

outliers和anomaly

outliers是离群点anomaly是异常点,很多人并没有加以区分,但这是两个不一样的概念。

举例说明:在一群170-180cm的人群中,姚明2m+的身高应该是离群点,就是说虽然他和大家不太一样,但是他也是正常人;同样在一群170-180cm的人群中,有一个患有巨人症的3m+的人(我可能夸张了),他属于异常点,因为他的身高是因为生病所导致和群体不同。

在《Outlier Analysis》(阅读笔记)这本书中说到,数据可能会包含噪声,噪声带来了数据的偏差,但噪声并不是数据分析师关心的,只有显著且感兴趣的偏差才是数据分析师所关心的(即异常)。有时候由于噪声存在,数据也会偏离正常。这本书中,用“outlier”指代异常或噪声;而“anomaly”(异常)才是outlier中分析师们感兴趣的那一类。
所以可以理解成,outliers是包括了anomaly,异常点本身就是离群点,离群点会形成噪音,但当差异非常显著时,就不再是噪音而是异常值了,就正式转为了anomaly。

离群点的检测
这里不说明具体方法,离群点的界定有统计学方法、参数方法等等,详见这篇,但这里要说明的是,判断离群与否是一个相对概念,一定是将A与B之间的距离和B与C的距离相比较,然后再去判断,仅仅是A和B是没有“群”的概念的。如公式三中lrd(b)和lrd(A)有一个相对比较的过程才能判断。
在这里插入图片描述

二、去除重复数据

去除重复的信息
可以使用滑动窗口的方式,将新进入滑动窗口的值与滑动窗口(假设有100条)内的值进行比较,这样可以大大降低计算量,缩短时间。
但是这么做的前提条件是,相似的数据本身排列在一起,所以在滑动窗口之前,还需要进行排序。排序可以根据一个KEY值来进行,不同场景下KEY的设置也非常有讲究。

例如,姓名和身份证号二者选一个KEY,那么明显身份证会更好,因为在中国姓名重复的概率就很高。有以姓与名为例,名作为KEY的效果会更好,因为在中国相同姓氏的人太多,这样增加了查找的难度。但在欧美国家,却恰恰相反,这也说明了KEY的选择要适应不同场景。

三、转化数据类型

计算机只处理0-1的数据,所有的信息都会转换为0-1。如何将连续的、离散的、无序的等数值、文本如:职业、颜色、民族等等进行编码成为了一个问题。如果仅仅是简单的将他们编码成0、1、2、3……,这样会在无意中给他们赋予距离上的意义,但实际中这种含义并不存在。

例如,编码红=1,绿=2,蓝=3,黑=4。在距离上会存在红色和绿色更接近的关系,和蓝色更远离的关系,但实际上这是没有道理的。所以不能简单的如此编码。

这里推荐大家了解一下one-hot编码。

四、正则化

正则化的主要作用是把数值统一转化为【0,1】之间的数,这样会便于计算。那为什么正则不会影响结果呢?因为在计算机计算过程中,本身是没有单位这个概念的,也就是说一个人究竟是170cm,还是17dm,还是1.7m,对于计算机来说有用的输入就是前边的数值,所以将数值统一放大,缩小,对结果没有大的影响。
第一个公式是针对有上下限的数据集做正则化的公式;
第二个是没有明确上下限,需要利用概率论相关知识做正则的公式。
在这里插入图片描述

五、特征的选择

首要明确,并不是特征越多就越好,不相关的特征反而会白白增加计算的维度,变成一种负担,所以我们需要在众多特征中选择真实相关的特征。什么样的特征比较好呢?以二分类问题为例子,我想找一个属性来区分男女生性比,我选择了一个特征为“身高”。
在这里插入图片描述
ClassA为女生身高的分布,ClassB为男生身高的分布,可以看出分布有重合的部分,也就是说单独依靠身高特征是无法分辨出一个人的性别的。如果有一个属性可以使两种分布完全不重合,那么就是非常完美的“特征”,但是这样的特征往往不好寻找

信息熵(Entropy)

熵描述的是无序的程度,而信息熵可以理解成你不确定地程度,当二分类问题中,二者的可能性为0.5时,信息熵为1,不确定性最大。因为如果是0.6-0.4,那么我们都可以在二者中选择概率更大的一个0.6,反而五五开增加了不确定性。

如果我在一个男女比例为1:1的区域告诉你,我刚刚在路上遇见了一个人,让你猜测TA的性别?你会因为男女比例1:1而不好猜测,这时的不确定性最大。而如果我在男女比例为3:1的区域,那么你更有把握猜测我遇见了男生。

图中一个公式即计算信息熵的公式,第二个公式为二者概率皆为0.5时计算出的信息熵。
在这里插入图片描述
现在假设:
1.总人群中男女比例都是0.5
2.在不吸烟的人群中女:男=0.8:0.2
3.在吸烟的人群总女:男=0.05:0.95

接着上一个男女比例1:1的环境举例,我告诉你这个人抽烟。你会有更大的把握猜测他是男生。

这是根据第7行公式描述的正是:因为条件2、3而使信息熵减少的程度,也就是不确定性下降的程度,叫做信息增益
这个例子的详细描述可以看这篇

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值