《Two-Dimensional PCA: A New Approach to Appearance-Based Face Representation and Recognition》

本人机器学习的论文阅读部分学习了2D-PCA的原始文献《Two-Dimensional PCA: A New Approach to Appearance-Based Face Representation and Recognition》以下是自己通过阅读整理出的PCA和2D-PCA的相关知识,供参考嘻嘻~

一、PCA理解

  • PCA作用:降维
    一般情况下,在机器学习中数据被表示为向量,如(a, b, c, d, e)T称为一条记录,当记录的维度成千上万时会带来大量的计算。实际发现记录中的每一列存在相关性,当删去时对结果的影响很小甚至几乎为0,因此可对数据进行降维,而降维意味着数据丢失,我们的目的是在降维的同时将信息的损失尽量降低。(引入投影概念,若将每条记录以坐标的形式投影到一条直线上,重合的数据即为丢失的信息)

  • 投影:*(a,b)=|a|*|b|cosθ
    笛卡尔坐标系的坐标其实就是x坐标和y坐标在x轴正方向和y轴的正方向上的投影,这里默认x和y轴为单位向量,即当(a,b)=|a|*|b|*cosθ公式中当|a|为1,即是单位向量时,b在a上的投影就是b的坐标值如下图。这就将坐标转换成了投影,我们要获得不重合的坐标,就要保证投影的向量是尽量不相关的。

  • 将二维推广到多维,我们降维的目标就变成了找n维向量在互相正交的向量下的投影坐标。由此目标转换为找到d个相互正交的向量,由此联想到矩阵的特征向量。

    其中我们的输入是M个n维列向量,我们将输入由R个相互正交的向量表示,此时这R个向量是标准正交化后的单位向量,由上面我们推论过的若向量是单位化的,则做乘积后就是原向量在该单位向量上的坐标,所以我们做乘积,获得新的坐标。(RN)(NM)=(RM),原始矩阵大小为NM,获得的转换后的矩阵为RM,若R<N,则降维的目的实现。此时目标就是找到R个相互正交的标准化后的单位向量。

  • 如何确定R个标准正交化的向量-SVD分解
    首先引入方差、协方差的概念:

    首先将原问题等价为求最大方差->协方差为0->协方差矩阵对角化,最后我们就要找到协方差矩阵的对角化形式。

    这里之所以将特征值按从大到小排列的原因是因为我们要使得方差(即对角线)最大,从另一个角度,我们要找到R个线性无关的特征向量,而矩阵的大部分特征基本上排列在前k大的特征向量中,在论文中也有验证,所以我们要将其按顺序排列。
    接下来就要找矩阵的特征值和特征向量(类似于矩阵的SVD分解)。

  • 至此PCA的相关原理就解释完毕,总结思路就是:

    而2D-PCA与PCA的不同之处就是2D-PCA输入的是矩阵而不是一维向量,以人脸识别为例,2D-PCA输入的是图像,而PCA是将图像转变为一维向量之后再进行接下来的处理,当图片很大时,处理成本较高,所以就出现了2D-PCA。

二、2D-PCA

-解题思路是一样的,只不过在获得投影向量时使用矩阵而不是向量,在进行原图像在投影向量上的投影时输入的是图像矩阵而不是一维向量。在这篇论文中,他们的输入、协方差矩阵分别如下:

三、论文涉及的实验

  • 实验内容:使用三个人脸数据库对人脸进行识别和重构
    包括特征提取、人脸重构等

    人脸重构就是通过提取出的人脸图像的特征向量,在此基础上重构回原始的人脸图像,即用局部还原总体。

  • 实验一(ORL人脸数据库)


    在这一部分作者验证了使用前k大个特征向量作为人脸识别和重构的合理性,从图中可以看到图像的大部分信息都集中在前几个大的特征值中。
    作者还与其他实验进行了对比实验,结果2D-PCA基本上都比当时其他识别方法要好。

  • 实验二(AR人脸数据库)

  • 实验三(Yale人脸数据库)

写在最后

写给自己看~
(这篇博客主要从数学原理层面解释了PCA的原理,是本人的第一篇博客,希望以后可以养成写博客的好习惯,梳理思路的同时也可以为别人提供一丢丢帮助,开森。~ 写博客也是受到了男朋友的启发和鼓励,他是一个很有魅力很优秀的男生,我也要跟上他的脚步。虽是异地,会遇到很多问题,比如自己会想到无法参与彼此的生活呀,不能牵着彼此的手靠着彼此的肩膀呀,不能实际参与到Ta的点点滴滴的生活呀,这些有时会让人很失落,但是彼此在一起的回忆就显得更美好,更值得珍惜了呀嘻嘻,要开心快乐地过好自己的生活,我们都会陪着彼此哒。我坚信我们可以长长久久、一直一直牵手走下去的~)

【PCA】2D-PCA原始文献《Two-Dimensional PCA》理解相关推荐

  1. PCA、碎石图、PCA+正确的维度个数、增量PCA(IncrementalPCA)、随机PCA(Randomized PCA)、KernelPCA

    PCA.碎石图.PCA+正确的维度个数.增量PCA(IncrementalPCA).随机PCA(Randomized PCA).KernelPCA 目录 PCA

  2. pca python sklearn_用Python (scikit-learn) 做PCA分析

    原始图像(左)保留不同数量的方差 我的上一个教程讨论了使用Python的逻辑回归( 为了理解使用PCA进行数据可视化的价值,本教程的第一部分介绍了应用PCA后对IRIS数据集的基本可视化.第二部分使用 ...

  3. pca 累积方差贡献率公式_初识PCA数据降维

    PCA要做的事降噪和去冗余,其本质就是对角化协方差矩阵. 一.预备知识 1.1 协方差分析 对于一般的分布,直接代入E(X)之类的就可以计算出来了,但真给你一个具体数值的分布,要计算协方差矩阵,根据这 ...

  4. pandas 提取数字_经验轻松提取Meta原始文献特征

    经验|轻松提取Meta原始文献特征 Python 办公小助手:读取 PDF 中表格并重命名 日常工作中,我们或多或少都会接触到 Excel 表格.Word 文档和 PDF 文件.偶尔来个处理文件的任务 ...

  5. pca主成分分析_降维:主成分分析(PCA)

    用于降维的PCA算法的设计原理及其从头开始在Python中的实现 介绍 借助高性能CPU和GPU的可用性,几乎可以使用机器学习和深度学习模型解决所有回归,分类,聚类和其他相关问题.但是,在开发此类模型 ...

  6. python pca降维_协方差矩阵的计算、PCA

    python默认矩阵X每一行是一个向量,因此一共有m行个数据,对于每一个数据有统计的维度个数为列数n,因此无偏估计用的是对于某个维度的1/(m-1)来归一化得到矩阵A,然后用的是A转置矩阵乘A得到协方 ...

  7. 主成分分析(Principle Component Analysis)PCA的核心思想是什么?PCA算法的优缺点?增量PCA模型, 随机PCA, 模型、 核化PCA分别是什么?使用时如何选择?

    主成分分析(Principle Component Analysis)PCA的核心思想是什么?增量PCA模型, 随机PCA, 模型. 核化PCA分别是什么?使用时如何选择? 主成分分析(Princip ...

  8. pca主成分分析结果解释_SKLEARN中的PCA(Principal Component Analysis)主成分分析法

    PCA(Principal Component Analysis)主成分分析法是机器学习中非常重要的方法,主要作用有降维和可视化.PCA的过程除了背后深刻的数学意义外,也有深刻的思路和方法. 1. 准 ...

  9. Python机器学习:PCA与梯度上升:008使用PCA对数据进行降噪

    PCA还可以对数据进行降噪 首先引入相关包 import numpy as np import matplotlib.pyplot as plt X = np.empty((100,2)) X[:,0 ...

最新文章

  1. 糟糕!复工后,最让人担心的问题又又又来了!
  2. jenkins安装环境搭建(3)
  3. ngnix 映射路径配置_MyBatis Config(三)映射文件mappers标签
  4. 登陆126邮箱 出现 403 Forbidden 腾达路由器问题
  5. UnityShader10:CG标准函数库
  6. JAVA Map集合类简介
  7. mybatis中xml文件的#{param1}和#{属性名},比如#{id}的使用环境以及使用的时机情况
  8. C语言关键字浅析-_Bool
  9. Oracle项目管理系统P6 EPPM企业级规划方案
  10. python开根_python如何开根号
  11. python语言的运行效率高吗_为什么python运行效率低?原来因为它!
  12. 解决 CodeLite 中文乱码的问题,并支持C++11特性
  13. 2018年结婚大数据来了:深圳离婚率高居第三,原因竟然是……
  14. 为你的树莓派WI-FI配置加密密码
  15. LabVIEW在无线设备中的应用
  16. echarts或vcharts的X轴设置
  17. 项管(十六)——文档管理、配置管理、知识管理、变更管理
  18. 匿名认证(Anonymous Authentication)
  19. 《黄金时代-王小波》
  20. 200万像素网络摄像机一天要多少容量

热门文章

  1. 重建 nextcloud 索引,通过非 nextcloud 客户端(手机、PC、网页端)途径放入 nextcloud 目录的文件
  2. 为什么SimpleDateFormat线程不安全? 侵立删
  3. IP地址分类,涉及子网掩码
  4. c语言 输入职工工资资料,通过结构体的数组来进行操作 报告,c语言课程设计报告-职工工资管理系统...
  5. 哈尔滨工程大学计算机硕士分数线,数说黑龙江高考:从历年投档分数线看,哈工程的哪些专业最难考?...
  6. 基于CycleGAN的图像风格转换
  7. PHP 开发基础知识笔记
  8. 做一个php 框架 书,开发自己的php框架
  9. 唯品会Java开发手册
  10. 自助入住,智慧酒店必备——刷脸支付系统