Matlab中的降维

     2023-03-12     98

关键词:

【中文标题】Matlab中的降维【英文标题】:Dimensionality reduction in Matlab 【发布时间】:2015-08-01 22:08:31 【问题描述】:

我想在 MATLAB 中将数据的维度减少到 ndim 维度。我正在使用pcares 来减少维度,但结果(即残差,重构)与数据具有相同的维度,而不是ndim。如何仅将残差投影到 ndim 维度。

[residuals,reconstructed] = pcares(X,ndim)

示例代码

MU = [0 0];
SIGMA = [4/3 2/3; 2/3 4/3];
X = mvnrnd(MU,SIGMA,1000);
[residuals,reconstructed] = pcares(X,1)

现在我希望残差有 1 个维度,即数据 X 投影到主要分量,因为我将其指定为 pcares(X,1)。但是这里的残差和重构的都​​是2。

【问题讨论】:

您能否发布一个最低限度的工作示例,以便我们最终构建问题?用ndim 调用pcares 应该给你ndim 投影向量来重建你的数据。让它与原始数据的维度相同似乎很奇怪。 @rayryeng 请检查示例代码。我希望将数据沿主成分投影到一维。 【参考方案1】:

pcares 正在做它的工作。如果你读过documentation,你会这样调用函数:

[RESIDUALS,RECONSTRUCTED] = pcares(X,NDIM);

RESIDUALS 通过保留数据的第一个 NDIM 维度返回每个数据点的残差,RECONSTRUCTED 是使用第一个 NDIM 主成分重构的数据。

如果您想要 实际 投影矢量,则需要改用 pca。你可以这样称呼它:

[coeff,score] = pca(x);

事实上,这就是pcares 在幕后所做的,但它也使用上述输出为您重建数据。 coeff 返回数据的主要系数,而 score 返回实际投影向量本身。 score 使得每个 column 都是一个单一的投影向量。应该注意的是,这些是按照您对 PCA 所期望的优势排序的......所以第一列是最主要的方向,第二列是第二主要方向,等等。

一旦您调用上述方法,您只需索引coeffscore 即可保留您想要的任何组件。在你的情况下,你只需要第一个组件,所以这样做:

c = coeff(1);
s = score(:,1);

如果你想在给定投影向量的情况下重建数据,参考倒数第二行代码,很简单:

[coeff,score] = pca(x);
n = size(X,1);
ndim = 1; %// For your case
reconstructed = repmat(mean(X,1),n,1) + score(:,1:ndim)*coeff(:,1:ndim)';

以上内容基本上是pcares 在幕后所做的。

【讨论】:

【参考方案2】:

尝试使用squeeze 命令 - 请参阅此处的参考:http://uk.mathworks.com/help/matlab/ref/squeeze.html

【讨论】:

100% 错误。这个问题要求对数据进行降维。 squeeze 消除了数据中的单一维度。不是一回事。 很公平。但是,如果问题一开始就明确表达出来,那么你只能是 100% 错误...... 这个问题措辞明确。我为听起来刺耳而道歉,但这个答案具有潜在的危险性和误导性。 squeeze 绝不会在数据方面进行降维。它减少了单例维度。我上面的评论并不是要告诉你你错了,而是警告那些在这种情况下尝试使用squeeze 的人。

sklearn中的降维算法pca和svd

sklearn中的降维算法PCA和SVD  1概述    1.1从什么叫“维度”说开来    1.2sklearn中的降维算法  2PCA与SVD    2.1降维究竟是怎样实现?    2.2重要参数n_components      2.2.1迷你案例:高维数据的可... 查看详情

机器学习实战基础(二十六):sklearn中的降维算法pca和svd附录

          查看详情

白面机器学习-降维

...,全局的降维方法。最大方差理论:3、PCA旨在找到数据中的主成分,用这些主成分表征原始数据,达到降维的目的。信号具有较大的方差,噪声具有较小的方差,信噪比越大意味着数据的质量越好,信噪比越小图像质量越差,PC... 查看详情

矩阵 TFIDF 的降维

】矩阵TFIDF的降维【英文标题】:dimensionreductionofmatrixTFIDF【发布时间】:2011-07-2516:21:43【问题描述】:我计算了TFIdf(词频,逆文档频率),我发现在这一步之后,有必要使用LSI、卡方检验等方法来减少MyMatrix的维数...,我不知... 查看详情

使用 PCA 进行文本分类的降维

】使用PCA进行文本分类的降维【英文标题】:DimensionalityreductionusingPCAfortextclassification【发布时间】:2018-04-1502:21:28【问题描述】:我正在对文档进行文本分类,我有大约4k个类别和110万个数据样本。我正在构建包含每个文档中单... 查看详情

机器学习实战基础(二十三):sklearn中的降维算法pca和svdpca与svd之pca中的svd(代码片段)

 PCA中的SVD1PCA中的SVD哪里来?细心的小伙伴可能注意到了,svd_solver是奇异值分解器的意思,为什么PCA算法下面会有有关奇异值分解的参数?不是两种算法么?我们之前曾经提到过,PCA和SVD涉及了大量的矩阵计算,两者都是运... 查看详情

为啥神经元网络的隐藏状态不能提供比原始输入更好的降维结果?

】为啥神经元网络的隐藏状态不能提供比原始输入更好的降维结果?【英文标题】:Whydoesn\'tthehiddenstateofaneuronnetworkprovidebetterdimensionreductionresultthanoriginalinput?为什么神经元网络的隐藏状态不能提供比原始输入更好的降维结果?【... 查看详情

在自然语言处理 (NLP) 中,如何进行有效的降维?

】在自然语言处理(NLP)中,如何进行有效的降维?【英文标题】:Innaturallanguageprocessing(NLP),howdoyoumakeanefficientdimensionreduction?【发布时间】:2015-01-1901:29:30【问题描述】:在NLP中,特征的维度总是非常巨大的。例如,对于手头的一... 查看详情

来个猛的降维工具!

UMAP:强大的可视化&异常检测工具简介数据降维最为重要的是降低数据的维度的同时尽可能保有大量的原始信息,而其中最为大家熟知的是PCA和tSNE,但是这二者都存在一些问题,PCA的速度相对很快,但代价... 查看详情

推荐系统笔记:基于邻居的协同过滤问题中的降维(代码片段)

...间。        此外,与原始评分向量不同,d维中的每一个都是有数值的。        在确定每个用户的这个d维表示后,使用这个d维简化表示计算从目标用户到每个用户的相似度。        查看详情

swintransformer对cnn的降维打击

一、前言一张图告诉你Transformer现在是多么的强!几乎包揽了ADE20K语义分割的前几名!该文章详细解读Swin-transformer的相关内容以及高明之处。看完学不会,你在评论区打我!CNN已然在计算机视觉领域取得了革命性... 查看详情

swintransformer对cnn的降维打击

一、前言一张图告诉你Transformer现在是多么的强!几乎包揽了ADE20K语义分割的前几名!该文章详细解读Swin-transformer的相关内容以及高明之处。看完学不会,你在评论区打我!CNN已然在计算机视觉领域取得了革命性... 查看详情

任务5图像的读取及表示图像的特征图片特征的降维

...://blog.csdn.net/zouxy09/article/details/7929348 三、对图片特征的降维  一种常用的降维工具——PCA(PrincipalComponentAnalysis),它是一种无监督的学习方法,可以把高维的向量映射到低维的空间里。  核心思路:对数据做线性的... 查看详情

基于图嵌入的降维算法——边界流行嵌入marginalmanifoldembedding(mme)

 0、前言        针对MFA算法中样本点所选择的同类近邻点和异类近邻点之间没有必然的联系,和LDSA算法中样本点的近邻只有同类样本的问题,边界流行嵌入算法MME被提出。1、MME算法原理    MME与MFA与LDSA类似,... 查看详情

那些让你觉得自己是个傻b的题目集锦(大神的降维打击合集)(代码片段)

一起过来排好队,进来挨打1.Leetcodetag-LinkList109.convertsortedlisttobinarysearchtree/***Definitionforsingly-linkedlist.*structListNode*intval;*ListNode*next;*ListNode(intx):val(x),next(NULL)*;*//***Definitio 查看详情

这款分布式配置中心,会是微服务的降维打击利器吗?

本文来自1月18日数人云资深工程师在IT大咖说平台的线上直播分享。今天主要探讨这几方面:一、配置中心的定位二、云化的微服务对于配置中心的要求三、微服务配置原则四、数人云分布式配置中心整体架构应DevOps和微服务而... 查看详情

双十一手机大战花开两朵:荣耀的降维攻击和小米的回光返照

文丨朱翊搅动国人神经的2017“双十一”电商促销大节,终于在凌晨时分迎来闭幕。参与大促的各商家纷纷展示了不错的销售成绩。在智能手机领域,荣耀不出意外地摘取了京东+天猫累计销量及销售额的双料冠军,总销售额超40.2... 查看详情

numpy降维方法(代码片段)

title:numpy降维方法numpy中的降维方法numpy中的降维方法:flat():返回一个iterator,然后去遍历flatten():将多维数组拉平,并拷贝一份ravel():将多维数组拉平(一维)squee... 查看详情