matlab的pca图像去噪程序,PCA实现过程梳理以及降噪处理

本文介绍了PCA(主成分分析)在高深度测序CNV分析中的应用,特别是在创建PoN和降噪过程中的角色。通过对比R语言中的prcomp和princomp函数,详细阐述PCA的实现思路,包括特征值分解和奇异值分解。通过实例展示了PCA如何降噪,以MNIST数据集为例,分析不同主成分对数据集降噪的影响,并通过图像展示降噪前后的效果。
摘要由CSDN通过智能技术生成

现在CNV分析方法有很多,但是随着NGS成本的降低,高深度的测序下背景下,read count(depth)方法逐渐变为各个分析软件的主流。最近在看GATK的CNV分析方法,其中在创建PoN(PanelofNormals)和denoise过程都使用了PCA(Principal Component Analysis)的奇异值分解(Singular Value Decomposition, SVD)方法,因此有比较对PCA思路做个梳理以及了解下常见的如何使用PCA来降噪(denoise) R语言中,PCA一般常用的基础函数是prcomp和princomp,两者有些差别:

prcomp适用于R mode和Q mode,而princomp只适用于R mode

prcomp基于奇异值分解(SVD),求最小二乘的优化解(最小化的结果要求寻找一个正交矩阵AB,记作H[q],H[q]为投影矩阵,把每个点X[i]投影到q维结构H[q]x[i],这是由V[q]的列限定的x[i]的正交投影)

princomp是基于相关系数矩阵的特征值分解,方差最大化方法(本质上是求原始变量协方差/相关系数矩阵的特征值和特征向量,第i主成分对应着协方差的第i大特征值,投影方向为该特征值对应的特征向量,而特征值等于相应主成分的方差,因此代表着对应主成分分解原始信息的多少)

prcomp在参数中如果设定了scale=T,那么如果princomp结果想与prcomp保持一致,则princomp函数需加上cor=T参数(其实原因在于cor和cov之间刚好相差了一个scale)

R mode是指基于variable分析,一般来研究variable之间的关系,当数据集的observation数目大于variable时;Q mode是指基于ob

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值