SIMCA分类法中主成分分析算法探究

SIMCA分类法中主成分分析算法探究   摘要:模式识别是研究用计算机模拟人的识别能力,对不同类型形式的数据进行描述、分类、识别等有关的理论和方法。SIMCA方法是基于主成分分析之上的一种模式识别方法,本文对SIMCA分类法中主成分分析的算法进行了比较研究,并在MATLAB中进行了模拟和结果比较

关键词:模式识别;SIMCA分类法;主成分分析

中图分类号:R965; O6204 文献标识码:A 文章编号:1007-9416(2017)04-0145-02

1 基于主成分分析的SIMCA分类法[1]

SIMCA(Soft Independent Modeling Class Analog)是由瑞典化学家Wold于1976年提出的一种基于主成分分析(PCA,Principal component analysis)的分类方法。它利用先验分类知识,对每一种类别建立一个PCA模型,然后利用这些建立的模型判断未知样本的归属。SIMCA方法是通过F检验设定分类的置信区间,针对每个类,其F检验的两个维度的自由度分别为:(M-A)和(n-A-1)(M-A),其中M为变量数(变量数对每类应该是一样的),A为该类的有效主成分数,n为该类的样本数。对化学测量来说,一般样本数n都远远小于测量变量数M,为使每个维度的自由度大于0,请注意样本数、变量数和选择的主成分数之间的关系

1.1 原理

SIMCA方法是一种建立在主成分分析基?A上的模式识别方法,其基本思路是先利用PCA分析建立每个类别的模型,然后计算未知样本与PCA模型的距离,根据距离判别方法判别分析,以确定其属于哪一类或不属于哪一类

1.2 计算过程

SIMCA方法的计算过程流程图如图1所示, 通过图示过程,可以看出SIMCA分类法是多次使用主成分分析方法,首先利用PCA分析得到整个样本的分类,然后,为每一个类建立PCA模型,最后用它们来判别未知样本的类别

从上述讨论可知,在整个SIMCA方法的计算过程中,每一类样本进行了主成分建模,因此主成分分析方法对结果起决定作用

2 主成分分析

主成分分析(Principal components analysia)是由Hotelling于1933年首先提出的。PCA是将多个指标的数据进行降维化为少数几个指标的一种方法,它在尽可能保留原有信息的基础上将样本指标数压缩,使数据矩阵简化,降低维数,由少数几个原始变量线性组合的“有效”特征成分来揭示数据结构特征,提取主要信息

2.1 主成分分析基本原理

人们在对具体事物进行研究时,为了更详细全面的了解事物的特性,常常会涉及到多指标问题,为获取可靠信息,往往考虑尽可能相关的多个指标去观测,而在实际问题中多指标也增加了问题的复杂度,指标之间总是有一定的相关性及信息重叠,我们希望用较少的指标反映事物的特征。基于此,就产生了主成分分析,主成分分析是通过分析可观测的指标,提取几个较少的综合指标以揭示原来变量绝大多数信息的一种多元统计方法[2,3,4]

综上所述,利用PCA得到的主成分与原始变量的关系可以归结如下:

(1)每一个主成分都是原始变量的线形组合(2)主成分的数目明显小于原始变量的数目

(3)主成分带有原始变量的大部分信息(4)各主成分之间互不相关

2.2 主成分分析算法[5-14]

2.2.1 特征值分解

对数据进行预处理,得到矩阵X,又通过计算得到协方差矩阵Z,最后根据协方差矩阵得到特征值和特征矢量,这种计算过程称为特征值分解方法。计算过程在MATLAB语言环境中,用一个语句[V,D]=eig(X)就可得到特征值对角阵D和满秩正交矢量阵V,且XV=VD

2.2.2 奇异值分解

奇异值分解是另一种对数据矩阵进行求解的方法,它更稳定用途广泛。利用MATLAB语言对数据矩阵Xnm作奇异值分解,[U,S,V]=svd(X),可得

式中,U、S和V的大小分别为n×r、r×r和m×r,且U′U=Ir×r,V′V=Ir×r,X′X=VS2V′, XX′=US2U′

与下节中的X=TP相比,可知T=US,P=V′且λ=S2,即实数矩阵的特征值等于相应奇异值的二次方。由于svd性能优异且表示简洁,已被广泛采用

2.2.3 NIPALS法

计算主成分的方法还有非线性迭代偏最小二乘法(nonlinear iterative partial least squires,NIPALS)。这一方法以所需计算机内存少、易于实现著称

以对m个变量的n次观测值组成一个矩阵为例

X=

假定Xn×m的秩为r[r   (1)从Xn×m中任取一向量,将其赋值给,;(2)计算,即;(3)将归一化,即;(4)计算

simca算法 matlab,SIMCA分类法中主成分分析算法探究.doc相关推荐

  1. a*算法matlab代码_导向滤波算法及其matlab代码实现

    导向滤波同样是一种平滑滤波算法,其与最小二乘滤波和双边滤波相比,同样是一种具有边缘保持的功能的图形滤波算法,可以用于处理图形噪点较多的图像,而且此种滤波算法与最小二乘滤波和双边滤波相比,有其独特的特点 ...

  2. 分类算法matlab实例,数据挖掘之分类算法---knn算法(有matlab例子)

    knn算法(k-Nearest Neighbor algorithm).是一种经典的分类算法.注意,不是聚类算法.所以这种分类算法 必然包括了训练过程. 然而和一般性的分类算法不同,knn算法是一种懒 ...

  3. 操作系统hpf算法事例_操作系统中常见算法汇总

    一.常见作业调度(高级调度)算法 1.先来先服务调度算法(FCFS):就是按照各个作业进入系统的自然次序来调度作业.这种调度算法的优点是实现简单,公平.其缺点是没有考虑到系统中各种资源的综合使用情况, ...

  4. 阵列算法matlab,阵列信号处理的常见算法

    阵列处理算法常用程序 AR argamse.m armaorder.m lsar.m lsarma.m myprogramme.m mywarma.m yulewalker.m ESPRIT TAM算 ...

  5. 斗牛怎么玩法算法_游戏开发中的算法

    游戏技术这条路,可深可浅.你可以满足于完成GamePlay玩法层面的东西,你也可以满足于架构和框架设计层面的东西,你也可以醉心于了解某一游戏引擎带来的掌控感.但是,我们不该止步于此,止步与目前所见或所 ...

  6. python的算法是指_python中的算法

    算法定义 算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制.也就是说,能够对一定规范的输入,在有限时间内获得所要求的输 ...

  7. matlab 函数优化问题,matlab求解最优化问题 Matlab在最优化问题中的应用举例.doc

    matlab求解最优化问题 Matlab在最优化问题中的应用举例 导读:就爱阅读网友为您分享以下"Matlab在最优化问题中的应用举例"的资讯,希望对您有所帮助,感谢您对92的支持 ...

  8. 计算机在应用化学专业中的应用,计算机辅助教学在应用化学专业教学中的应用探究.doc...

    计算机辅助教学在应用化学专业教学中的应用探究 论文关键词:计算机辅助教学应用化学专业 论文摘要:本文论述了计算机辅助教学在应用化学专业课教学中的必要性和优越性,介绍了计算机辅助教学在应用化学专业教学中 ...

  9. 物流企业对计算机网络技术的投资,计算机网络技术在现代物流中的应用探究.doc...

    计算机网络技术在现代物流中的应用探究 计算机网络技术在现代物流中的应用探究 摘要:现代物流产业的发展,离不开计算机网络.该文通过阐述计算机网络在现代物流各方面的应用技术,分析技术细节,构建物流网络化体 ...

最新文章

  1. 今晚8点直播 | 详解微软小冰全双工语音对话技术
  2. Guava API学习之Multimap
  3. 科大星云诗社动态20210416
  4. CSS3常用属性及用法
  5. selenuim自动化爬取汽车在线谷米爱车网车辆GPS数据爬虫
  6. ubuntu安装配置jdk
  7. 查询linux版本信息 sp,查看Linux系统版本和内核信息
  8. Python的函数式编程--从入门到⎡放弃⎦
  9. 王者荣耀女性机器人面世;深圳中院受理金立破产案;Firefox 64 发布 | 极客头条...
  10. 《数学之美》—信息的度量和作用
  11. 尚硅谷谷粒商城项目介绍
  12. c语言自学教程——字符函数和字符串函数
  13. 微波遥感——微波与大气
  14. ITween插件学习记录
  15. r语言和pythonjava_python和R语言有什么区别?
  16. Ubuntu返回上级目录快捷键
  17. android修改图标
  18. Android 高级面试
  19. centos查看显卡型号时出现 NVIDIA Corporation
  20. selenium + bs4 +requests 爬取全国电动汽车充电站数据

热门文章

  1. 免费的sql工具_免费SQL工具
  2. 从苏宁电器到卡巴斯基(后传)第05篇:聊聊我对WannaCry产生的感慨
  3. “火焰”病毒侵伊朗截屏录音后自毁 卡巴斯基:破解“火焰”或需十年
  4. win10如何快速创建一个记事本,可通过后缀改格式来达到自己的目的
  5. 巧用10行python 代码让JMETER实现动态验证码登录
  6. 企业名录种类有哪些 企业名录作用
  7. 蓝宝石超频软件测试,帧数提高60% 蓝宝石黑科技TRiXX Boost
  8. 运放芯片哪个最好_老师,请问哪个投影机品牌最好?今天影院君来讲讲这个话题...
  9. matlab实验报告实验6函数文件,南昌大学matlab实验报告.docx
  10. mysqli数据库连接