1.前言

如果输入样本x的维数增加的话,不论是什么机器学习算法,其学习时间都会增加,学习过程也会变得更加困难。例如,假设在一维空间的{0,1}区间里有5个训练样本。以相同的密度在d次维空间里配置相同种类的训练样本的话,最终的样本数目就达到了5^d个。如下图所示:
高维空间的一个例子。当维数d很大的时候,收集并计算多达5^d个的训练样本是相当
困难的。因此,在高维空间中,训练样本也经常已悉数的方式进行配置
即便维数d=10 ,样本总数也已经高达5^10(≈10000000)了。收集并计算这么多的训练样本,是一件相当困难的事情。因此,在高维空间里,训练样本也经常以稀疏的方式加以配置。
另外,高维空间也不如低维空间那样容易给人直观的直觉。
综上,高维数据的处理是相当困难的,一般称为维数灾难。为了使机器学习算法从维数灾难中解放出来,一般采用的有效方法是保持输入数据中包含的所有信息,对其维数进行削减。
本篇博客着眼于无监督的降维方法。

2.线性降维原理

无监督降维的目的,是把高维的训练输入样本{xi}变换为低维的训练样本{zi},并在降维后还能尽可能的保持其原本包含的信息。通过xi的线性变换求解zi的时候,即使用维数为m*d的投影矩阵T求解zi。公式为:
线性降维,使用长方形的矩阵T进行降维,与向局部线性空间的投影相对应
为了简便起见,假定训练输入样本{xi}的平均值为0.
如果平均值不是零的话,则预先减去平均值,使训练输入样本的平均值保持为零。(中心化)
数据的中心化

3.主成分分析

主成分分析法,是尽可能地忠实再现原始数据的所有信息的降维方法,如下图:
主成分分析是尽可能地忠实再现原始数据的所有信息的降维方法
具体而言,就是在降维后的输入zi是原始训练输入样本xi的正投影这一约束条件下,设计投影矩阵T。让zi与xi尽可能相似i.zi是xi的正投影这一假设,与投影矩阵T满足T*T'=Im是等价的,其中,Im是指m*m的单位矩阵。
然而,当zi与xi的维度不一样的时候,并不能直接计算其平方误差。因此,一般先把m次维的zi通过T'变换到d次维空间,在计算其与xi的距离所有样本的T'zi(T*T'xi)与xi的平方距离的和,可以通过下式表示:
注意:在线性代数中,一个n×n矩阵A的主对角线上各个元素的总和被称为矩阵A的迹(或迹数),一般记作tr(A)。
其中,C为训练样本的协方差矩阵:
综合以上过程,主成分分析的学习过程可以用下式进行表示:
这里考虑到矩阵C的固定值的问题
将固定值与相对应的固定相良分别表示为λ1≥...≥λd≥0和ξ1≥...≥ξd。
这样主成分分析的阶就可以通过下式求得:
也就是说,主成分分析的投影矩阵,是通过向训练输入样本的协方差矩阵C中的较大的m个固定值所对应的固定相良张成德局部空间正投影而得到的。与此相反,通过把较小的固定值所对应的固定相良进行削减,与原始样本的偏离就可以达到最小。
下面展示的是一个主成分分析的实例:
直线表示的是一维的正投影空间
在本例中,通过把d=2次维的数据降到m=1次维,使得到的结果尽可能地在线了原始数据的所有信息。
另外,我们必须注意的是,主成分分析中求得的低维{zi},其各个元素质检室无关联的,相互独立的,也就是说协方差矩阵是对角矩阵:

4.局部保持投影

局部保持投影利用训练输入样本间的相似度信息。训练输入样本xi与xi'的相似度用Wi,i'表示。当xi与xi'较为相似的时候,Wi,i'为较大的值;当xi与xi'不是那么相似的时候,Wi,i'为较小的值。相似度是对称的。
局部保持投影是能够保护数据中的簇结构的线性降维方法
训练输入样本{xi}间相似度的实例
在局部保持投影中,认为相似度较高的样本对的投影也较为相似,以此来决定投影矩阵T。具体而言,就是计算下式的值最小的时候对应的T:
然而,朝着这个方向求解的话,会得到T=O这样不证自明的结果。
为了避免得到这样退化的解,往往会加一个约束条件:
上式中,X是训练输入样本的矩阵,D是以矩阵W的各行元素只和为对角元素的对角矩阵:
下图表示的是与高斯相似度相对应的局部保持投影的实例。在该例中,同样也是把d=2维的数据降到m=1维,使得结果很好的保留了原始数据簇构造的信息。

5.核函数主成分分析

这里介绍通过在核映射方法里引入主成分分析,来进行非线性降维的核函数的主成分分析法。即把训练集{xi}通过非线性函数进行变换,在变换后的特征空间里进行主成分分析。通过这样的方法,就可以在原始训练样本的特征空间中进行非线性降维操作。
例如,将普通的直角坐标系中的二维输入向量x=(x1,x2)'通过fun()变换为在极坐标系(距原点的距离为r,角度为Θ)中,如下图所示:
使用非线性数据进行非线性主成分分析实例。
X表示的是样本;实线是通过主成分分析求得的一维子空间;O是样本仙子空间的正投影
对原始的二维训练样本直接进行主成分分析,并不能很好滴捕捉到弯曲状的数据分布。而经过变换后,在极坐标系下,数据样本基本上笔直地串联在一起。把特征空间中的主成分分析结果返回到原始的输入,就可以很好的捕捉到原始数据中弯曲状的数据分布。

无监督学习:无监督降维相关推荐

  1. 无监督学习(2) 数据降维简述与Python实现

    为什么要数据降维 大数据时代面临的最大问题是"维度灾难",度量上的不平衡和高维空间的学习复杂度都让机器学习算法在高维数据上很多时候行不通.而且,如果数据超过三维,它们也很难被可视化 ...

  2. CVPR 2022|MLP才是无监督学习比监督学习迁移性能好的关键因素

    ©作者 | 王逸舟 单位 | 浙江大学 研究方向 | 计算机视觉,无监督学习 在这里和大家分享一下我们被 CVPR 2022 录用的工作"Revisiting the Transferabi ...

  3. CVPR 2022 | MLP才是无监督学习比监督学习迁移性能好的关键因素

    点击下方卡片,关注"CVer"公众号 AI/CV重磅干货,第一时间送达 作者:王逸舟   |  已授权转载(源:知乎)编辑:CVer https://zhuanlan.zhihu. ...

  4. 无监督和有监督的区别_干货|全面理解无监督学习基础知识

    一.无监督学习 无监督学习的特点是,模型学习的数据没有标签,因此无监督学习的目标是通过对这些无标签样本的学习来揭示数据的内在特性及规律,其代表就是聚类.与监督学习相比,监督学习是按照给定的标准进行学习 ...

  5. 是时候了解下无监督学习了!

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 前言 当数据集没有任何标签时,该怎么办? 无监督学习是一组机器学习 ...

  6. 监督学习无监督学习_无监督学习简介

    监督学习无监督学习 To begin with, we should know that machine primarily consists of four major domain. 首先,我们应 ...

  7. 机器学习实践—基于Scikit-Learn、Keras和TensorFlow2第二版—第9章 无监督学习技术(Chapter9_Unsupervised_Learning_Techniques)

    机器学习实践-基于Scikit-Learn.Keras和TensorFlow2第二版-第9章 无监督学习技术(Chapter9_Unsupervised_Learning_Techniques) 虽然 ...

  8. 《机器学习实战:基于Scikit-Learn、Keras和TensorFlow第2版》-学习笔记(9):无监督学习技术

    · Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow, 2nd Edition, by Aurélien Géron ...

  9. 【深度学习】有监督学习、无监督学习、半监督学习

    本文目录 有监督学习(Suspervised Learning) 常见的有监督学习 无监督学习(Unsupervised Learning) 常见的无监督学习 半监督学习(Semi-supervise ...

  10. 机器学习概念 — 监督学习、无监督学习、半监督学习、强化学习、欠拟合、过拟合、后向传播、损失和优化函数、计算图、正向传播、反向传播

    1. 监督学习和无监督学习 监督学习 ( Supervised Learning ) 和无监督学习 ( Unsupervised Learning ) 是在机器学习中经常被提及的两个重要的学习方法. ...

最新文章

  1. 企业信息化所面临的问题
  2. “诺奖风向标”--2020年斯隆研究奖公布,其中有16位华人学者获奖!
  3. Request参数值自动去空格
  4. 大数据项目产品选型的五个建议
  5. dos如何修改远程服务器的密码,dos命令登入远程服务器
  6. java调用python_Python教程:17个冷门但实用的小技巧
  7. ffmpeg.exe dos下怎么用 放在哪里
  8. 如何使Xcode占用更少的空间 Xcode占用空间太大解决方法
  9. 云图说|云上应用监控神器——应用性能监控APM2.0
  10. rtsp视频解码-分析-转发http-flv ws-flv webrtc
  11. c语言读取txt第二行数值,c语言读取文件的第二行
  12. Just Speak 论文精读
  13. 华为手机备忘录怎样设置每个月12号短信提醒要做的事
  14. 点击微信公众号菜单按钮 跳转网页授权登录
  15. 用 Async 函数简化异步代码
  16. 工作中遭遇的问题及解决办法
  17. 30 个Python代码实现的常用功能(附案例源码)
  18. Unity检视面板重构(OnInspectorGUI重写)
  19. 如何用光盘安装服务器系统教程,光盘、硬盘怎么安装系统(图文教程)
  20. 计算机外文参考文献2018,2018年英文参考文献格式-推荐word版 (5页)

热门文章

  1. 使用用户自定义类型作为map的key
  2. [翻译]在GridView中插入新记录
  3. HD 1003 Max Sum (最大字段和问题)
  4. 阶乘的精确值大数阶乘
  5. CodeForces 416B
  6. ubuntu16.04 编译opencv4和opencv_contrib
  7. 2048游戏C语言代码
  8. OpenSTF 平台搭建
  9. 小圈子.大社交:利用圈子引爆流行
  10. shell 遍历目录下的所有文件