《西瓜书》笔记10:降维与度量学习(一)
来源:互联网 发布:js数组的length方法 编辑:程序博客网 时间:2024/05/22 14:07
1.kNN学习
1.1 kNN概述
给定测试样本,基于某种距离度量找出训练集中与其最靠近的k个训练样本,基于k个邻居的信息进行预测。
分类:投票法。
回归:均值法。
加权:基于距离远近做加权平均或投票,距离越近权重越大。
明显不足:没有显式的训练过程。属于懒惰学习。而在训练阶段就学习处理的方法为急切学习。
k是一个重要参数,不同值导致不同分类结果。另外,采用不同的距离计算方式,找出的近邻或不同,也会导致不同结果。
1.2 最近邻分类器的性能讨论
k=1时,在二分类问题上的性能做一个简单讨论。
给定测试样本x,若最近邻样本为z,则最近邻分类器出错的概率就是x与z类别标注不同的概率,即:
假设样本独立同分布,且对任意x和任意小正数
令
结论:最近邻分类器虽然简单,但其泛化错误率不超过贝叶斯最优分类器的错误率的两倍!
2. 低维嵌入
2.1 维数灾难
上节讨论基于重要假设:任意测试样本附近任意小的距离内总可找到一个训练样本,即训练样本的采样密度足够大。
现实很难满足。满足密采样所需的样本数目是无法达到的天文数字。此外,很多学习方法涉及距离计算,高维空间给距离计算带来麻烦。当维数很高时连计算内积都不再容易。
事实上高维空间下出现的数据样本稀疏(满足不了密采样)、距离计算等困难的问题,是所有ML方法面临的共同障碍,被称为“维数灾难”。
缓解维数灾难的一个重要途径是降维。通过某种数学变换将原始高维空间转变为一个低维的子空间。在子空间中样本密度大幅度提高,距离计算容易。
为什么可以降维?
答:人们收集到的样本虽是高维的,但与学习任务密切相关的也许仅是某个低维分布,即高维空间中的一个低维嵌入。
2.2 多维缩放
如果要求原始空间中样本之间的距离在低维空间中能够保持,即可得到“多维缩放”降维法。
其原理是根据降维前后的欧式距离相等,由保持不变的距离矩阵求出内积矩阵,对该矩阵进行特征值分解,求出降维后的空间表示。
具体过程待填坑。
2.3 降维:线性变换
一般的,欲获得低维子空间,最简单的对原始高维空间进行线性变换,给定d维空间中的样本
W可看作d-个d维基向量。Zi就是第i个样本与这d-个基向量分别做内积而得到的d-维属性向量。Zi是原属性向量Xi在新坐标系
分析:原来是100维向量,现在搞了10个100维基向量,每个做内积,得到10个值,组成一个新的10维向量,代表原向量降维结果。
显然,新空间中的属性是原空间属性的线性组合。
基于线性变换来进行降维的方法:线性降维法。均符合
对降维效果评估:比较降维前后学习期的性能。性能若提升说明有效果。若降维至2-3维,则可通过可视化直观看效果。
- 《西瓜书》笔记10:降维与度量学习(一)
- 《西瓜书》笔记10:降维与度量学习-PCA(二)
- 《西瓜书》笔记10:降维与度量学习(三)
- 西瓜书《机器学习》课后答案——chapter10 降维与度量学习
- 西瓜书学习笔记(一)
- 西瓜书机器学习总结(一)
- 机器学习----降维与度量学习(等度量映射和度量学习)
- 西瓜书学习笔记(二)
- 机器学习入门(西瓜书笔记)
- 机器学习-学习笔记 降维与度量学习
- 【西瓜书】数据集分割与性能度量
- 西瓜书-机器学习《一》
- 降维与度量学习
- 降维与度量学习
- 西瓜书总结与回顾(一)------体系与方法
- 周志华《Machine Learning》学习笔记(12)--降维与度量学习
- 周志华《Machine Learning》学习笔记(12)--降维与度量学习
- 西瓜书学习笔记——(2)模型评估与选择
- hibernate 用法
- FlexboxLayout-----Android弹性布局
- 解雇IE补丁操作方法
- Jetson TX2板载相机opencv调用打开
- Android apk签名原理
- 《西瓜书》笔记10:降维与度量学习(一)
- Hadoop-HBase各版本兼容矩阵-20170814
- 2017年Java开发岗位面试题归类
- TWaver可视化编辑器(三)Doodle编辑器
- Java8 如何正确使用Optional
- 一个完整的软件研发流程是怎样的?
- 项目管理学习总结(7)——阿里云架构师:技术高手转向管理体会
- Android自定义View的三种实现方式
- Java+OpenCV3.0的配置和使用说明