无监督学习——降维
1 简介
维度灾难
随着数据空间维度的增长,数据点越来越分散,其数学特征开始变得不明显
例如:数据在二维的时候 $\frac{最大距离}{最小距离}$ 可以达到很大,但当维度增大后,这个比值就越来越小,以至于无法进行区分
对于其他方法,例如余弦相似度也有相同的结论
维度灾难影响范围
- 当算法需要用到聚类和相似性计算的时候
- 尤其是聚类和K近邻算法
- 特征冗余的时候,模型复杂
- 算法的计算和存储复杂度成为难题
数据降维或嵌入
将高维数据映射到低维空间
实质: 高度冗余的数据通常是可以被压缩的
- 高维复杂的数据其内在的维度可能比较小,或者和任务相关的维度较小
降维方法
- 维度选择(直接砍掉): 选择已有维度的一个子集
- 维度抽取(组合保留):通过组合已有的维度构建新的维度
降维算法
维度选择
采样
从$d$维中随机选择$d′$维
优点:简单, 流行, 具有较好泛化性能
缺点:没有精度保证. 差的例子上错误很大 (重尾分布). 稀疏数据上大多数是0
手工:手工移除特征
- 冗余的(多重共线性/方差膨胀引子VIFs)
- 不相关(文本挖掘中的停用词)
- 质量差的特征 (值的缺失比例超过50%)
监督方法:
- 为每个特征打分:
- 训练或者交叉验证单特征分类器
- 估计每个特征和分类label的互信息
- 用$χ2$ 统计量度量每个特征和类别之间的独立性
- 搜索有用的特征子集
- 前向
- 从零个特征开始
- 一遍式(one pass)或者迭代式(iterative)地选择
- 后向
- 从所有特征开始
- 一遍式或迭代式地选择
- 前向