文本挖掘之降维之特征抽取之主成分分析(PCA)

原创 2016年03月02日 10:49:22

PCA(主成分分析)

作用:

1、减少变量的的个数

2、降低变量之间的相关性,从而降低多重共线性。

3、新合成的变量更好的解释多个变量组合之后的意义

PCA的原理:

样本X和样本Y的协方差(Covariance):

协方差为正时说明X和Y是正相关关系,协方差为负时X和Y是负相关关系,协方差为0时X和Y相互独立。

Cov(X,X)就是X的方差(Variance).

当样本是n维数据时,它们的协方差实际上是协方差矩阵(对称方阵),方阵的边长是。比如对于3维数据(x,y,z),计算它的协方差就是:

,则称是A的特征值,X是对应的特征向量。实际上可以这样理解:矩阵A作用在它的特征向量X上,仅仅使得X的长度发生了变化,缩放比例就是相应的特征值

当A是n阶可逆矩阵时,A与P-1Ap相似,相似矩阵具有相同的特征值。

特别地,当A是对称矩阵时,A的奇异值等于A的特征值,存在正交矩阵Q(Q-1=QT),使得:

对A进行奇异值分解就能求出所有特征值和Q矩阵。

     D是由特征值组成的对角矩阵

由特征值和特征向量的定义知,Q的列向量就是A的特征向量。

实现步骤:


具体实例:

首先我们有N个P维的向量要区分,X1,X2...Xn。P比较大,则处理所有向量的数据量较大,我们将其降至d维(d<P)。首先构造矩阵S=[X1,X2...Xn],算出协方差矩阵C(P维方阵),求出C的特征值T和特征向量V。将特征值按从大到小排列取出前d个特征值,并将这些特征值对应的特征向量构成一个投影矩阵L。使用S*L则得到降维后的提出主成分的矩阵。下面附上自己做的小实验。

  X1 = [1,2,4]   X2 = [10,4,5]  X3 = [100,8,4]

  根据经验上述3维向量中,第一维和第二维是区分的要素且第一维比第二维区分度更大。于是我们构造矩阵S,

 1) S = [1,2,4;10,4,5;100,8,5]

  2)计算出S的协方差矩阵C = COV(S),

  C =

  1.0e+003 *

    2.9970    0.1620    0.0180
    0.1620    0.0093    0.0013
    0.0180    0.0013    0.0003

  求出协方差矩阵C的特征值T和特征向量V,[T,V] = eig(C)

 V =

   -0.0235    0.0489   -0.9985
    0.5299   -0.8464   -0.0540
   -0.8478   -0.5303   -0.0060


  T=

  1.0e+003 *

   -0.0000         0         0
         0    0.0008         0
         0         0    3.0059

  取出第3个和第2个特征值以及相对应的特征向量构成投影矩阵L(实际上可以只取第三维)

  L =

   -0.9985    0.0489
   -0.0540   -0.8464
   -0.0060   -0.5303

  使用S*L则得到新的降维后的矩阵N

  N =

   -1.1305     -3.7651
  -10.2310    -5.5481
  -100.3120   -4.5327

  则提取出了可以用于区分的二维。





版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

文本特征提取

文本挖掘模型结构示意图 1. 分词 分词实例:        提高人民生活水平:提高、高人、人民、民生、生活、活水、水平 分词基本方法:         最大匹配法、最大概率法分词、最短路径分词...

文本分类之降维技术之特征抽取之LDA线性判别分析

特征抽取方法则可以看作从测量空间到特征空间的一种映射或变换,一般是通过构造一个特征评分函数,把测量空间的数据投影到特征空间,得到在特征空间的值,然后根据特征空间中的值抽取最高的若干个特征。     常...

数据挖掘 NLP 之 文本挖掘 文本处理 通用流程

数据挖掘 NLP 之 文本挖掘 文本处理 通用流程   数据挖掘中的文本挖掘不论是对于企业应用,还是研究者工作,或者是参与数据竞赛项目,都是基础的工作。通过前面的一些实践工作,现总结出文本...

文本分类学习笔记(3)- 特征提取

#coding=utf-8 import os import nltk from nltk.corpus import wordnet as wn from numpy import * from m...

PCA降维 C++实现

这是本人在学习PCA降维的过程中,根据算法写成的C++代码。 PCA是模式识别中常见的特征降维的算法,其大体步骤可以分为以下几个部分: (1)原始特征矩阵归一化处理 (2)求取归一化处理后特征矩阵的协...

文本挖掘分类算法--BP神经网络的一个具体的案例

文档的词频-反向文档频率(TF-IDF)计算

TF-IDF计算: TF-IDF反映了在文档集合中一个单词对一个文档的重要性,经常在文本数据挖据与信息 提取中用来作为权重因子。在一份给定的文件里,词频(termfrequency-TF)指的是某...

Spark词频-逆文档频率

(文章主要来自于学习整理,好记心不如烂笔头,欢迎大家指正交流) 词频-逆文档频率(TF-IDF),是广泛应用于文本挖掘的用来反映一个词对于语料库中文档的重要性的生成特征向量的方法,用t来表示...

文本分类算法之--单层感知器的神经网络

http://www.cnblogs.com/wengzilin/archive/2013/04/24/3041019.html 一、感知器的学习结构 感知器的学习是神经网络最典型的学...

文本挖掘之降维技术之特征选择

1、为什么要进行降维处理?     目前大多数使用向量空间模型对文本表示成为向量形式,而向量的属性则有可能涉及到中文中的所有词汇,其向量的维数是非常巨大的,同时考虑到一篇文章只不过包含极少数词语(比如...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)