数据预处理
数据挖掘的最重要的一环:数据预处理。算法则是其次。
Data Preprocessing:
Data Cleaning:
- Fill in missing values
- Correct inconsistent data
- Identify outliters and noisy data
Data Integration:
- Combine data from different sources
Data Transformation:
- Normalization
- Aggregation
- Type Conversion
Data Reduction:
- Feature Selection
- Sampling
在保护用户隐私的前提下获取所需的信息(demo)
问卷调查的两个问题:
A我吸大麻
B我不吸大麻
问题的回答:
回答A问题的概率p
回答B问题的概率1-p
所有的回答中,假设20%的人p*(true)回答了true,但是是A问题的true还是B问题的true呢?
p(true) 是真正吸大麻的人 p(false) 指真正不吸大麻的人。
算法的选择
experience,经验十分重要。先用一些简单的方法,如果是聚类可以用k-means,分类就用knn(例如)。选择能解决问题的算法为首,往往越是简单的越好,解释性强。
数据的缺失忽略问题
当部分数据不可避免地有缺失,若其权重不大,在缺失2%~5%可以忽略。
可以考虑该数据的均值
不存在的数据考虑用0存储
猜数据:概率分布
数据类型(所有数据归根到底都是0与1)
包括连续型数据、离散型、序数型、文本数据。
如何合适的编码数据?
避免人为的去设置编码,不同的编码方式可能会造成问题结构上的不同,或是数据在空间上结构的不同。
例如:
4种颜色怎么编码?
可将不同颜色取4位,这样的话不同颜色就会“等距”
数据一定要细化麽?
不一定,原始数据集进性采样,不同类型数据选择不同比例。
数据集不平衡怎么办?
整体的准确率不适用于不平衡数据集
两个分类器A与B,都会做右上角的分类工作(LHS:left hand side, RHS : right hand side)即判定线左侧为红色右侧为蓝色,上图例子可知:A分类器判断右手边为蓝色的准确率为95%,而B分类器判断右手边为蓝色的准确率肯定是100%,左手边有10%的误判率因为B认为左侧均为红色。A将所有样本均分为蓝色,然而实际中可能更重要的是那红色的5%;而A的准确率比B高,但是B从实际上看更符合要求。
此时需要新的度量模式:
f-measure是一种统计量,F-Measure又称为F-Score,F-Measure是Precision和Recall加权调和平均,是IR(信息检索)领域的常用的一个评价标准,常用于评价分类模型的好坏。g-mean在数据不平衡的时候,这个指标很有参考价值。
数据采样
若红色数据远远多于蓝色数据而要进行数据采样该如何?可直接复制蓝色数据来弥补缺失,保证分类准确性,比例更加平衡,当然不是完全克隆,而是利用差值从原始点来生成新的点
边缘采样
往往百万级的数据利用复杂的算法是很难跑得动的,如下:
此时可能边缘数据的价值是最大的。
数据标准化
一般方式为映射到0-1区间,详细可参考:
数据相关,参考:
Entropy熵
衡量系统的不确定性,例如让你猜一个人是男是女,各种可能性各占50%,这时候熵就最高
一条信息的信息量大小和它的不确定性有直接的关系,一般用于量化不确定性。例如是男人还是女人的情况熵就是1,代表最不确定取哪个值。、
上图表述何为information gain(信息增益),当新的属性(或数据)加入到你的集合中,会对系统的不确定性降低多少。该值越大越好,说明属性效率越高,一般会在决策树中使用。
PCA(降维)
PCA(Principal Component Analysis,主成分分析) 是一种常见的数据分析方式,常用于高维数据的降维,可用于提取数据的主要特征分量。
从高维映射到低维,不同的映射方式结果差别很大,因为会有不同的信息损失。例如
两个影子倒退原始物体,推导的结果可能不同。
PCA的问题:它不分类
如上图,PCA会根据红色延13象限方向去做映射,因为PCA不识别类,这样做会使所有映射的数据重叠。
如果是有标签的数据使用LDA(Linear Discriminant Analysis)
它在降维时,会表示出类的区分信息
在投影中,第二幅图的投影方式很好的解决了不同类数据的分类问题。
不同类的数据,数据之间要尽可能远;而同类的数据之间要尽可能短,这很重要,这就是区分。
数据可视化问题
若是一维数据可使用饼图,matlab等工具展示
若是二维数据,表图,matlab
三维数据,matlab
四维?五维呢?
可以利用Box Plots(from matlab)展示数据的分布,但是丧失了数据各各维数之间的关联。
Parallel Coorinaties(High Dimensional)
软件可用:CiteSpace Gephi
特征选择
属性的选择问题:属性是不是越多越好,越多的属性往往意味着维数越高,若数据量过于庞大,会导致计算过程十分缓慢甚至不见得会有很好的结果(组合爆炸)。
属性的挑选该怎么做?利用Branch and Bound(分支界限)思想:
分支界限法,类似于回溯法,是一种在问题的解空间树T上搜索问题解的算法,在一般情况下,分支界限法和回溯法求解目标不同。回溯法求解目标是找出T中满足约束条件的所有解,而分支界限法的求解目标则是找出满足约束条件的一个解,或是在满足约束条件的解中找出使某一目标函数值达到极大或极小的解,即在某种意义下的最优解。