矩阵分解

主成分分析(PCA)原理详解

我的未来我决定 提交于 2019-12-10 10:07:52
个人分类: 机器学习与Python 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhongkelee/article/details/44064401 转载请声明出处: http://blog.csdn.net/zhongkelee/article/details/44064401 一、PCA简介 1. 相关背景 上完陈恩红老师的《机器学习与知识发现》和季海波老师的《矩阵代数》两门课之后,颇有体会。最近在做主成分分析和奇异值分解方面的项目,所以记录一下心得体会。 在许多领域的研究与应用中,往往需要对反映事物的多个变量进行大量的观测,收集大量数据以便进行分析寻找规律。多变量大样本无疑会为研究和应用提供了丰富的信息,但也在一定程度上增加了数据采集的工作量,更重要的是在多数情况下,许多变量之间可能存在相关性,从而增加了问题分析的复杂性,同时对分析带来不便。如果分别对每个指标进行分析,分析往往是孤立的,而不是综合的。盲目减少指标会损失很多信息,容易产生错误的结论。 因此需要找到一个合理的方法,在减少需要分析的指标同时,尽量减少原指标包含信息的损失,以达到对所收集数据进行全面分析的目的。由于各变量间存在一定的相关关系,因此有可能用较少的综合指标分别综合存在于各变量中的各类信息。主成分分析与因子分析就属于这类降维的方法。 2. 问题描述

主成分分析(PCA)原理总结

穿精又带淫゛_ 提交于 2019-12-10 04:13:48
    主成分分析(Principal components analysis,以下简称PCA)是最重要的降维方法之一。在数据压缩消除冗余和数据噪音消除等领域都有广泛的应用。一般我们提到降维最容易想到的算法就是PCA,下面我们就对PCA的原理做一个总结。 1. PCA的思想     PCA顾名思义,就是找出数据里最主要的方面,用数据里最主要的方面来代替原始数据。具体的,假如我们的数据集是n维的,共有m个数据$(x^{(1)},x^{(2)},...,x^{(m)})$。我们希望将这m个数据的维度从n维降到n'维,希望这m个n'维的数据集尽可能的代表原始数据集。我们知道数据从n维降到n'维肯定会有损失,但是我们希望损失尽可能的小。那么如何让这n'维的数据尽可能表示原来的数据呢?     我们先看看最简单的情况,也就是n=2,n'=1,也就是将数据从二维降维到一维。数据如下图。我们希望找到某一个维度方向,它可以代表这两个维度的数据。图中列了两个向量方向,$u_1$和$u_2$,那么哪个向量可以更好的代表原始数据集呢?从直观上也可以看出,$u_1$比$u_2$好。     为什么$u_1$比$u_2$好呢?可以有两种解释,第一种解释是样本点到这个直线的距离足够近,第二种解释是样本点在这个直线上的投影能尽可能的分开。     假如我们把n'从1维推广到任意维,则我们的希望降维的标准为

矩阵分解

Deadly 提交于 2019-12-09 22:31:27
目录 矩阵的奇异值分解(Singular Value Decomposition): 分解步骤(SVD): 几何意义(SVD): 矩阵的奇异值分解(Singular Value Decomposition): 定义:设矩阵 A ∈ C r m × n A \in C_r^{m\times n} A ∈ C r m × n ​ , λ i \lambda _i λ i ​ 是 A A H ( A H A ) AA^H(A^HA) A A H ( A H A ) 的非零特征值,则称 σ i = λ i \sigma _i=\sqrt{\lambda _i} σ i ​ = λ i ​ ​ 为 A A A 的奇异值, i = 1 , 2 , ⋯   , r i=1,2,\cdots,r i = 1 , 2 , ⋯ , r 定理:设矩阵 A ∈ C r m × n A \in C_r^{m\times n} A ∈ C r m × n ​ ,则存在 U ∈ U m × m U \in U^{m\times m} U ∈ U m × m , V ∈ U n × n V \in U^{n\times n} V ∈ U n × n ,使得 A = U [ Δ 0 0 0 ] V H A=U \left [ \begin{matrix} \Delta &0\\ 0&0\end{matrix}

Python中的图像处理

有些话、适合烂在心里 提交于 2019-12-08 03:00:03
http://www.ituring.com.cn/tupubarticle/2024 第 1 章 基本的图像操作和处理 本章讲解操作和处理图像的基础知识,将通过大量示例介绍处理图像所需的 Python 工具包,并介绍用于读取图像、图像转换和缩放、计算导数、画图和保存结果等的基本工具。这些工具的使用将贯穿本书的剩余章节。 1.1 PIL:Python图像处理类库 PIL(Python Imaging Library Python,图像处理类库)提供了通用的图像处理功能,以及大量有用的基本图像操作,比如图像缩放、裁剪、旋转、颜色转换等。PIL 是免费的,可以从 http://www.pythonware.com/products/pil/ 下载。 利用 PIL 中的函数,我们可以从大多数图像格式的文件中读取数据,然后写入最常见的图像格式文件中。PIL 中最重要的模块为 Image 。要读取一幅图像,可以使用: from PIL import Image pil_im = Image . open ( 'empire.jpg' ) 上述代码的返回值 pil_im 是一个 PIL 图像对象。 图像的颜色转换可以使用 convert() 方法来实现。要读取一幅图像,并将其转换成灰度图像,只需要加上 convert('L') ,如下所示: pil_im = Image . open (

典型关联分析(CCA)原理总结

核能气质少年 提交于 2019-12-07 16:17:48
原文地址: https://www.cnblogs.com/pinard/p/6288716.html 典型关联分析(Canonical Correlation Analysis,以下简称CCA)是最常用的挖掘数据关联关系的算法之一。比如我们拿到两组数据,第一组是人身高和体重的数据,第二组是对应的跑步能力和跳远能力的数据。那么我们能不能说这两组数据是相关的呢?CCA可以帮助我们分析这个问题。 1. CCA概述     在数理统计里面,我们都知道相关系数这个概念。假设有两组一维的数据集X和Y,则相关系数 ρ ρ 的定义为: ρ ( X , Y ) = c o v ( X , Y ) D ( X )−−−−−√ D ( Y )−−−−−√ ρ(X,Y)=cov(X,Y)D(X)D(Y)     其中 c o v ( X , Y ) cov(X,Y) 是X和Y的协方差,而 D ( X ) , D ( Y ) D(X),D(Y) 分别是X和Y的方差。相关系数 ρ ρ 的取值为[-1,1],  ρ ρ 的绝对值越接近于1,则X和Y的线性相关性越高。越接近于0,则X和Y的线性相关性越低。     虽然相关系数可以很好的帮我们分析一维数据的相关性,但是对于高维数据就不能直接使用了。拿上面我们提到的,如果X是包括人身高和体重两个维度的数据,而Y是包括跑步能力和跳远能力两个维度的数据

典型关联分析(CCA)原理总结

不想你离开。 提交于 2019-12-07 16:16:52
原文地址: https://www.cnblogs.com/pinard/p/6288716.html 典型关联分析(Canonical Correlation Analysis,以下简称CCA)是最常用的挖掘数据关联关系的算法之一。比如我们拿到两组数据,第一组是人身高和体重的数据,第二组是对应的跑步能力和跳远能力的数据。那么我们能不能说这两组数据是相关的呢?CCA可以帮助我们分析这个问题。 1. CCA概述     在数理统计里面,我们都知道相关系数这个概念。假设有两组一维的数据集X和Y,则相关系数 ρ ρ 的定义为: ρ ( X , Y ) = c o v ( X , Y ) D ( X )−−−−−√ D ( Y )−−−−−√ ρ(X,Y)=cov(X,Y)D(X)D(Y)     其中 c o v ( X , Y ) cov(X,Y) 是X和Y的协方差,而 D ( X ) , D ( Y ) D(X),D(Y) 分别是X和Y的方差。相关系数 ρ ρ 的取值为[-1,1],  ρ ρ 的绝对值越接近于1,则X和Y的线性相关性越高。越接近于0,则X和Y的线性相关性越低。     虽然相关系数可以很好的帮我们分析一维数据的相关性,但是对于高维数据就不能直接使用了。拿上面我们提到的,如果X是包括人身高和体重两个维度的数据,而Y是包括跑步能力和跳远能力两个维度的数据

论文阅读笔记(六)【TCSVT2018】:Semi-Supervised Cross-View Projection-Based Dictionary Learning for Video-Based Person Re-Identification

╄→尐↘猪︶ㄣ 提交于 2019-12-07 15:27:32
Introduction (1)Motivation: ① 现实场景中,给所有视频进行标记是一项繁琐和高成本的工作,而且随着监控相机的记录,视频信息会快速增多,因此需要采用半监督学习的方式,只对一部分的视频进行标记. ② 不同的相机有着不同的拍摄条件(如设备质量、图片尺寸等等),不同设备间的差异影响匹配的性能. (2)Contribution: ① 提出一个半监督视频行人重识别方法(semi-supervised video-based person re-id approach). ② 设计了一个半监督字典学习模型(semi-supervised cross-view projection-based dictionary learning, SCPDL),学习特征投影矩阵(降低视频内部的变化)和字典矩阵(降低视频之间的变化). ③ 采用iLIS-VID和PRID2011数据集验证方法. The proposed approach (1)问题定义: X = [X L , X U ]:相机1中的视频, Y = [Y L , Y U ]:相机2中的视频, 其中 X L (p*n1)、Y L (p*n3) 为标记的训练视频,X U (p*n 2 )、Y U (p*n 4 ) 为未标记的训练视频,n 1 、n 2 、n 3 、n 4 为视频中包含的样本数,p 为样本的维数. P 1 (p

矩阵特征值分解与奇异值分解含义解析及应用

ぃ、小莉子 提交于 2019-12-06 22:03:10
特征值与特征向量的几何意义 矩阵的乘法是什么,别只告诉我只是“前一个矩阵的行乘以后一个矩阵的列”,还会一点的可能还会说“前一个矩阵的列数等于后一个矩阵的行数才能相乘”,然而,这里却会和你说——那都是表象。 矩阵乘法真正的含义是变换,我们学《线性代数》一开始就学行变换列变换,那才是线代的核心——别会了点猫腻就忘了本——对,矩阵乘法 就是线性变换,若以其中一个向量A为中心,则B的作用主要是使A发生如下变化: 1、伸缩 clf; A = [0, 1, 1, 0, 0;... 1, 1, 0, 0, 1]; % 原空间 B = [3 0; 0 2]; % 线性变换矩阵 plot(A(1,:),A(2,:), '-*');hold on grid on;axis([0 3 0 3]); gtext('变换前'); Y = B * A; plot(Y(1,:),Y(2,:), '-r*'); grid on;axis([0 3 0 3]); gtext('变换后'); 从上图可知,y方向进行了2倍的拉伸,x方向进行了3倍的拉伸,这就是B=[3 0; 0 2]的功劳,3和2就是伸缩比例。请注意,这时B除了对角线元素为各个维度的倍数外,非正对角线元素都为0,因为下面将要看到,对角线元素非0则将会发生切变及旋转的效果。 2、切变 clf; A = [0, 1, 1, 0, 0;... 1, 1, 0

矩阵论学习笔记五:特征值的估计及对称矩阵的极性

痴心易碎 提交于 2019-12-06 21:51:47
参考书:《矩阵论》第3版,程云鹏 张凯院 徐仲编著 西北工业大学出版社 1. 特征值的估计 1)特征值估计的意义:复数域上矩阵的特征值的计算一般比较困难;在大量应用中,往往不需精确计算特征值,只需估计出它们所在的范围;所以从矩阵的元素出发,若能用较简便的运算给出矩阵特征值的范围,将有着十分重要的意义 2)特征值的界 a)估计矩阵特征值的模的上界的方法 定理5.1:实矩阵的特征值虚部模值范围 定理5.1推论:实对称矩阵的特征值都是实数 引理1 定理5.2:复矩阵特征值的模、实部模、虚部模范围;证明据特征方程和引理1 定理5.2推论:Hermite矩阵的特征值都是实数,反Hermite矩阵的特征值为零或纯虚数 b)估计矩阵特征值之乘积的模的界的方法 矩阵按行严格对角占优、按行(弱)对角占优的定义(定义5.1):Rr(A) 矩阵按列严格对角占优、按列(弱)对角占优的定义(定义5.2): 定理5.3:A为n*n的复矩阵,若A按行严格对角占优,...;s>r时,A的(s,j)元素值为零时,等号成立 定理5.4(Hadamard's inequality):A为n*n复矩阵 估计矩阵按模最小特征值的上界 c)估计矩阵特征值模之平方和的上界的方法 定理5.5(Schur"s inequality):n*n的复矩阵A的特征值为a1,...,an,则有A特征值模值平方之和 <= A元素模值平方直和

python3(五)无监督学习

拟墨画扇 提交于 2019-12-06 16:45:46
无监督学习 目录 1 关于机器学习 2 sklearn库中的标准数据集及基本功能 2.1 标准数据集 2.2 sklearn库的基本功能 3 关于无监督学习 4 K-means方法及应用 5 DBSCAN方法及应用 6 PCA方法及其应用 7 NMF方法及其实例 8 基于聚类的“图像分割” 正文 回到顶部 1 关于机器学习    机器学习是实现人工智能的手段, 其主要研究内容是如何利用数据或经验进行学习, 改善具体算法的性能      多领域交叉, 涉及概率论、统计学, 算法复杂度理论等多门学科      广泛应用于网络搜索、垃圾邮件过滤、推荐系统、广告投放、信用评价、欺诈检测、股票交易和医疗诊断等应用   机器学习的分类      监督学习 (Supervised Learning)       从给定的数据集中学习出一个函数, 当新的数据到来时, 可以根据这个函数预测结果, 训练集通常由人工标注      无监督学习 (Unsupervised Learning)       相较于监督学习, 没有人工标注      强化学习 (Reinforcement Learning,增强学习)       通过观察通过什么样的动作获得最好的回报, 每个动作都会对环境有所影响, 学习对象通过观察周围的环境进行判断      半监督学习 (Semi-supervised Learning)