问题标签 [eigenvector]

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.

0 投票
0 回答
485 浏览

c - 特征向量(光谱)分解(带有序特征值和特征向量)

可能的重复:
特征向量(光谱)分解

我正在尝试在 C 代码中找到一个程序,该程序将允许我计算方阵的特征值(谱)分解。我特别想找到最高特征值(以及因此它的相关特征值)位于第一列中的代码。

我需要按此顺序输出的原因是因为我正在尝试计算特征向量中心性,因此我只需要计算与最高特征值相关联的特征向量。提前致谢!

0 投票
3 回答
9776 浏览

lapack - 我可以使用 Lapack 计算大型稀疏矩阵的特征值和特征向量吗?

如果我有一个 1,000 x 1,000 的方阵,Lapack 是否可以计算该矩阵的特征向量和特征值?如果可以的话,需要多长时间?另外,对于 10,000 x 10,000 矩阵,甚至 1,000,000 x 1,000,000 矩阵又如何呢?

请注意,这些将是主要由 0 填充的稀疏矩阵(矩阵将是表示社交网络的图)。Lapack 中是否有处理稀疏矩阵的特殊程序?我看到了 Arpack 的建议。但这是否允许计算非常大的矩阵?

0 投票
2 回答
3459 浏览

opencv - 如何提高特征脸算法的准确率

我在 C# 上使用 EmguCV 库(openCV 包装器)来使用 Eigenface 算法实现人脸检测和人脸识别

我发现了很多准确率的错误,例如最小距离不是训练集中的同一个人,训练集中不存在的人但与训练集中有良好距离的人匹配等。

请帮我。

谢谢你。

附加信息: - 我在训练集中每 1 人使用 1 张面部图像(直面部图像,无方向) - 现在,我在训练集中使用大约 10-20 人进行测试

0 投票
2 回答
3084 浏览

c++ - 查找协方差矩阵的特征向量以创建 3D 边界球

我目前正在编写一个函数来为 3D 空间中的一组点找到一个“精确”的边界球。到目前为止,我认为我对这个过程有一个不错的理解,但我陷入了困境。

这是我正在使用的内容:A) 3D 空间中的点 B) 存储在 4x4 矩阵类中的 3x3 协方差矩阵(由单元格 m0、m1、m2、m3、m4 等引用;而不是行和列)

我已经找到了点的协方差矩阵的 3 个特征值,并且我已经设置了一个函数来通过高斯消元将矩阵转换为简化的行梯形 (rref)。

我已经根据我在网上找到的示例中的数字测试了这两个功能,它们似乎工作正常。

下一步是使用以下等式找到特征向量: (M - λ*I)*V

... 其中 M 是协方差矩阵,λ 是特征值之一,I 是单位矩阵,V 是特征向量。

但是,在 rref 之前,我似乎没有正确构造 4x3 矩阵,因为在运行 rref 之前和之后应该计算特征向量分量的最右边的列是 0。我理解为什么它们之后为零(没有任何常数,线性方程组的最简单解决方案是所有系数为零),但我不知道该放什么。

这是到目前为止的功能:

3x3 协方差矩阵作为 M 传递,特征值作为 eval 传递。Matrix(IDENTITY) 返回一个单位矩阵。m3、m7 和 m11 对应于 4x3 矩阵的最右列。

这是我用来测试函数的示例 3x3 矩阵(存储在 4x4 矩阵类中):

我正确(?)从我的其他函数中获取 2.097、0.3055、0.09756 的特征值。

上面的 eigenVector() 正确地从对角线 (0,0 1,1 2,2) 中减去传递的特征值

rref() 后的矩阵 A:

对于 rref() 函数,我使用的是在这里找到的翻译后的 python 函数:http: //elonen.iki.fi/code/misc-notes/python-gaussj/index.html

我传递给 rref() 的矩阵应该是什么样子才能得到一个特征向量?

谢谢

0 投票
2 回答
1595 浏览

matlab - MATLAB中矩阵指数形式W * diag(S) * W'的矩阵的特征分解

W是一个又高又瘦的实值矩阵,diag(S)是一个对角矩阵,由对角线组成+1-1在对角线上。A = W * diag(S) * W'我想要单引号表示转置的特征分解。主要问题是它A相当大。由于A是对称的,秩不足,而且我实际上知道A(from W) 的最大秩,我认为我应该能够有效地做到这一点。知道如何解决这个问题吗?

A我的最终目标是在不使用 MATLAB 的情况下计算矩阵指数,expm这对于大矩阵来说非常慢,并且没有利用秩不足。如果A = U * diag(Z) * U'是特征分解,exp(A) = U * diag(exp(Z)) * U'

在找到一个看起来很有希望有一个简单算法的正交UW * diag(S) * W' = U' * diag(Z) * U',我需要一些线性代数的帮助。

0 投票
1 回答
1677 浏览

c++ - 如何在 C++ 中计算列随机矩阵的特征向量

我有一个列随机矩阵 A 并想在 C++ 中求解以下方程:Ax=x

我假设我需要找出特征值设置为 1 的特征向量 x(对吗?),但我无法在 C++ 中弄清楚。到目前为止,我已经检查了一些数学库,例如 Seldon、CPPScaLapack、Eigen ......其中,Eigen 似乎是一个不错的选择,但我不明白如何利用它们中的任何一个来解决上面的方程。

你能给我一些建议/代码片段或想法来解决这个等式吗?非常感谢任何帮助。

谢谢。

编辑:A 是 n×n 实数非负矩阵。

0 投票
2 回答
5928 浏览

.net - 使用 C# 中的高级矩阵库计算 C# 中的特征向量。网

好的,我正在使用以下库: http: //www.codeproject.com/KB/recipes/AdvancedMatrixLibrary.aspx

我希望计算我拥有的某些矩阵的特征向量。我不知道如何制定代码。

到目前为止,我已经尝试过:

但是它说最好的重载方法匹配有一些无效的参数。我知道该库有效,但我只是不知道如何制定我的 c# 代码。

任何帮助都会很棒!

0 投票
2 回答
1054 浏览

opencv - OpenCV CalcPca 输入数据

我正在尝试使用“eigenfaces”通过opencv实现人脸识别训练功能。我有示例数据,但找不到有关 CalcPCA 函数参数的任何信息。我所知道的是它需要数据矩阵,对平均特征面矩阵的引用,对特征向量的引用和对特征值矩阵的引用。

我的问题是,我应该如何将来自几个测试图像矩阵的数据传递到 CalcPCA 的第一个参数中,以便获得平均特征面和向量?

0 投票
1 回答
304 浏览

python - f 在 MATLAB 代码中似乎总是为正,但在我的 Python 代码中,f 也得到负值

如何将以下 MATLAB代码转换为 Python?这是我的解决方案,但它不会产生相同的结果。例如,f在 MATLAB 代码中似乎总是正值,但在我的 Python 代码中,f也得到负值。

任何想法如何修复程序?

大多数情况下,我关心这些:
MATLAB:

Python:

MATLAB:

Python:

MATLAB:

Python:

MATLAB:

Python:

那些是等价的吗?如果是,那么为什么它们不产生完全相同的结果呢?

0 投票
2 回答
2472 浏览

opencv - 特征脸算法

我正在使用 OpenCV 编写人脸识别程序。

生成特征面时:

  • 我需要使用未知面孔的大型数据库吗?
  • 我是否只需要使用我希望我的系统识别的人的照片?
  • 我需要同时使用吗?

我说的是特征脸生成,这是“学习”步骤。

我需要使用多少张照片才能获得不错的准确性?更像是 20 还是 2000 ?

谢谢