一、数据清洗 1.数据缺失:①忽视(删除) 仅占比较小(2-3%)时可用②填充——固定填充;根据经验、样本猜测 2.离群点(正常)V.S. 异常点 离群点是相对概念(根据平均距离算) 3.重复数据 ①使用滑动窗口,窗口内两两比较(假设:高度疑似的数据是紧挨的→生成KEY(根据相关知识),按key排序)
二、数据转换 1.类型转换 2.标准化(编码化,需要注意非顺序类的编码化,如果默认按0、1、2编码,则暗含了距离的属性。可用多位表示等间距) (v-min)/(max-min) (new_max - new_min(通常为1、0)) 映射到0-1区间 或(v-μ)/Σ 3.采样 1.数据聚集取平均,数据更稳定 2.调整类别比例(整体准确率不适用于不平衡数据集——用G-mean=(Acc+ * Acc-)^1/2或F-measure) 3.over-sampling向上采样:样本中较少的类别,采用中间距离随机自我复制 4.boundary sampling边界采样:用于数据量太大 三、数据描述 可视化: 1.高维:matlab中的box plots(将数据拆分为每一维)、parallel coordinates(将数据用折线表示,每个维度为一个轴) 2.文本可视化:citespace(显示引用的次数)、Gephi(社交网络) 四、特征选择和提取 算法:PCA LDA 选择: 1.利用熵 H(X)=﹣Σp(x)log(p(x)) 熵(越大说明不确定性越大,最大为1) H(X | S)= P(S = a) H(X | S = a) + P(S = b) H(X | S = b) gain(S,X) = H(S) - H(S | X) 信息增益 2.选择属性 分支定界法:假设S1属性集包含S2,则J(S1)>J(S2)(J为效能) 可得最优解 贪心算法为非最优解但速度较快 提取: 1.边缘检测:差分(做差值,若差值很大则可能为边缘点) 2.主成分分析(PCA):属性的variance就是信息,若v越大则该属性越重要;去中心化;去相关性:Y=PX(旋转)XXT = QDQT (特征分解,D为对角阵)YYT = PQD(PQ)T 则令P=QT 即可将YYT 转化为对角阵(去相关性);投影到一条线上(降维):投影前投影后差距最小(距离) PCA实际上是把特征投影到特征值最大的特征向量上,matlab函数:[V,D] = eig(s) PCA用于非监督学习 3.线性判别分析(LDA):用于监督学习(有标签) 投影降维,还要保证不同组的数据分开(没有重合,距离尽可能大)fisher准则 MAX J = (μ1 - μ2)2 /(S12 +S22 ) Sw = S1 + S2 SB = (μ1 - μ2)*(μ1 - μ2)T w = argmax(wT SB w)/(wT Sw w) = Sw-1 *(μ1 - μ2) (两分类问题)
|