问题标签 [eigenvalue]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 从 R 计算的特征值不同于其他统计包和文献结果
我正在使用 longley 数据的特征值和向量来检测多重共线性。当我从 SPSS 计算特征值时,我发现与 R 语言不同的特征值。我不知道为什么。我计算了标准化 X 矩阵和实际 X 矩阵,但结果不匹配。
以下是 R 语言的结果
以下是SPSS的结果
可能的命令错误是什么?还指导我如何计算比例解释变化。
java - 用java获取特征值pca
我尝试使用 PCA 来减少维度,我使用 jama 来帮助我使用矩阵。但是,我在用 jama 获得特征值时遇到了问题。例如我有 2 个图像尺寸 100x100,然后我创建单个矩阵 2 图像 x (100x100)。有 20.000 像素。以及如何用特征值减少?这是我的代码示例:
当我在这段代码中显示特征值时:
结果是:
nilai n PCA@c3e9e9
可以,你告诉我什么方法可以得到特征值和降维。
python - 计算大型矩阵特征值的最快方法
到目前为止,我使用 numpy.linalg.eigvals 来计算具有至少 1000 行/列的二次矩阵的特征值,并且在大多数情况下,大约五分之一的条目非零(我不知道这是否应该被视为稀疏矩阵)。我发现另一个主题表明 scipy 可能会做得更好。
但是,由于我必须计算数十万个大小不断增加的大型矩阵的特征值(可能多达 20000 行/列,是的,我需要它们的所有特征值),这总是需要很长时间。如果我能加快速度,即使只是最微小的一点,这很可能是值得的。
所以我的问题是:在不将自己限制在 python 的情况下,是否有更快的方法来计算特征值?
multithreading - 并行计算大型矩阵的特征值
我正在尝试使用并行工具箱在 matlab 上计算大矩阵的特征值。我第一次尝试:
代码开始执行:
但是,几分钟后,我收到以下错误:
然后,我尝试应用我在并行工具箱中的教程视频中看到的内容:
但是经过两个小时的计算,我得到了:
我的电脑有 2 Gi 内存和 intel duoCPU (2*2Ghz)
我的问题如下: 1/看第一个错误,我想我的内存不足以解决这个问题。有没有办法可以划分输入数据,以便我的计算机可以处理这个矩阵?2/为什么我的第二个结果是空的?(经过2小时的计算......)
编辑:@pm89
你是对的,执行过程中发生了错误:
java - 稀疏矩阵的内存高效小特征值算法
我正在编写一些 Java 软件,它需要计算正定对称稀疏矩阵的特征值和特征向量。我不需要所有的特征值,但我最感兴趣的是小的。问题是:
1)出于测试目的,我的代码需要在笔记本电脑上运行(四核,4 GB RAM)
2)测试数据涉及大矩阵——一般超过10000乘10000
这两个限制意味着大多数常用的 Java 矩阵包都不足以满足我当前的需求——我什至无法在内存中存储密集的 10000 x 10000 矩阵,更不用说用它们进行计算了。
所以我的问题是:人们在进行矩阵计算时如何解决内存限制?我的矩阵通常非常稀疏 - 通常低于 5% 的条目是非零的。有没有利用这一点的算法?我可以以某种方式将矩阵存储在我的硬盘驱动器上,并且一次只加载它的一部分以减少我的 RAM 上的压力吗?
python - 是否值得将 IPython 与 scipy 的 eig 并行使用?
我正在编写一个必须计算大量特征值问题的代码(典型的矩阵维度是几百个)。我想知道是否可以通过使用IPython.parallel
module. 作为前 MATLAB 用户和 Python 新手,我一直在寻找类似于 MATLAB 的parfor
...
在网上的一些教程之后,我编写了一个简单的代码来检查它是否可以加快计算速度,我发现它并没有而且实际上通常会减慢它的速度(视情况而定)。我认为,我可能遗漏了一点,并且可能scipy.linalg.eig
以这样一种方式实现,即它使用所有可用的内核并通过尝试并行化它来中断引擎管理。
这是“并行”代码:
非并行变体:
两者的 CPU 时间差异非常微妙。如果在特征值问题之上,并行化函数必须进行更多矩阵运算,它开始永远持续下去,即至少比非并行化变体长 5 倍。
我对特征值问题并不真正适合这种并行化是对的,还是我错过了重点?
非常感谢!
2013 年 7 月 29 日编辑;英国夏令时 12:20
按照 moarningsun 的建议,我尝试在eig
使用mkl.set_num_threads
. 对于 500×500 矩阵,最少 50 次重复设置如下:
除了一个线程情况之外,没有实质性差异(也许 50 个样本有点小......)。我仍然认为我没有抓住重点,可以做很多事情来提高性能,但不确定如何做。这些是在启用了超线程的 4 核机器上运行的,提供 4 个虚拟内核。
感谢您的任何意见!
numpy - 将平面拟合到点 - 我怎么知道它是否正确?
我正忙于研究点云简化算法。
下面是计算点邻域的法线的代码。我使用了主成分分析。
我想知道我是否正确计算了点的法线和曲率?
我知道法线是无方向的,我的下一步是使用网络 x 创建一个图(从每个点到最近的邻居的边),用 1-|ni*ni+1| 对每条边进行加权 . 然后创建一个最小生成树,然后通过从最高 z 值点开始并在 ni*ni+1=-1 时翻转 ni+1 的方向来启动深度搜索。我将使用 networkx ,这样我就可以实现全球一致的方向。这是最好的方法吗?
谢谢
python - Numpy 的特征值/向量不正确
我试图找到以下矩阵的特征值/向量:
使用代码:
我得到这个答案:
但是,我相信以下应该是答案。
也就是说,特征值-特征向量问题表明以下应该成立:
r - 相关矩阵的特征值分解
我有一个相关矩阵:
我尝试做特征值分解:
或者
在这两种情况下,我都会收到错误:
我究竟做错了什么?
matlab - matlab并行特征值分解
我一直在尝试提出一种并行特征值分解的算法,但是我尝试的算法中没有一个可以击败 matlab 的 eig 算法,那么有谁知道 matlab 使用哪种算法来处理 eig 函数?或者有人可以建议我一个很好的特征值分解并行算法吗?