标签: eigenvector

使用mathematica计算特征值的问题

基本上我试图找到矩阵的特征值,大约需要12个小时.当它完成时,它说它找不到所有的特征向量(实际上几乎没有),而且我对它找到的那些特征向量持怀疑态度.我所能做的就是发布我的代码,我希望有人可以向我提出一些建议.我对mathematica不太熟悉,也许运行时间慢,结果不好与我有关,而不是mathematica的能力.感谢任何回复的人,我真的很感激.

cutoff = 500; (* set a cutoff for the infinite series *)
numStates = cutoff + 1; (* set the number of excited states to be printed *)
If[numStates > 10, numStates = 10];

    $RecursionLimit = cutoff + 256; (* Increase the recursion limit to allow for the specified cutoff *)
(* set the mass of the constituent quarks *)
m1 := mS; (* just supposed to be a constant *)
m2 := 0;

(* construct the hamiltonian *) …
Run Code Online (Sandbox Code Playgroud)

wolfram-mathematica eigenvalue eigenvector

5
推荐指数
1
解决办法
2627
查看次数

在python中计算图像的特征向量

我正在尝试将2D高斯拟合到图像中.噪音非常低,所以我的尝试是旋转图像,使两个主轴不共同变化,找出最大值并计算两个维度的标准偏差.选择的武器是python.

2d或多或少的高斯分布

然而,我一直在寻找图像的特征向量 - numpy.linalg.py假定离散数据点.我想过将这个图像作为一个概率分布,对几千个点进行采样,然后根据该分布计算特征向量,但我确信必须有一种找到特征向量的方法(即,半主和半 - 直接来自该图像的高斯椭圆的短轴.有任何想法吗?

非常感谢 :)

python numpy image-processing eigenvector

5
推荐指数
1
解决办法
5532
查看次数

如何在GPU上计算k个最大特征值?

我正在研究用于光谱聚类的并行算法,我需要计算K个最大特征值.我正在使用Jacket插件进行Matlab,但遗憾的是它不支持matlab中的EIGS函数(它无法计算K个特征值)并行)任何人都可以建议一些其他工具/库在GPU上完成这项任务吗?或者我还可以在GPU辅助的Matlab中做到这一点吗?

cuda eigenvalue eigenvector jacket

5
推荐指数
1
解决办法
2143
查看次数

python scipy eigs:无论收敛容差如何,在最大迭代次数后返回特征向量

我想获得稀疏对称矩阵的特征向量,在给定时间内具有最佳精度。
目前我使用以下内容scipy.sparse.eigsh

evals, evecs = eigsh(MyMatrix, 2,which='LM' ,tol=1.e-15, maxiter=1000000)
Run Code Online (Sandbox Code Playgroud)

如果它没有tol通过迭代收敛到精度maxiter,则会产生一个ArpackNoConvergence错误,其中包含已收敛的特征向量/值,但不包含未收敛的特征向量/值。然而,我更喜欢拥有精确的向量,1.e-141.e-15不是根本没有向量。有没有办法强制返回尚未收敛的特征向量(也许使用另一个库)?
就像在 Matlab 中一样,eigs函数无论如何都会返回特征向量,如果未达到所需的精度,则只会发出额外的警告。

谢谢 !

python scipy sparse-matrix eigenvector arpack

5
推荐指数
1
解决办法
1872
查看次数

在 Python 中绘制相关圆

我一直在做一些几何数据分析(GDA),例如主成分分析(PCA)。我想绘制一个相关圆......这些看起来有点像这样:

1]

基本上,它允许测量变量的特征值/特征向量与数据集的主成分(维度)相关的扩展。

任何人都知道是否有绘制此类数据可视化的python包?

python eigenvalue eigenvector correlation pca

5
推荐指数
2
解决办法
9747
查看次数

使用networkx计算特征向量中心性

我正在尝试使用networkx来计算我的图的特征向量中心性:

import networkx as nx
import pandas as pd
import numpy as np

a = nx.eigenvector_centrality(my_graph)
Run Code Online (Sandbox Code Playgroud)

但我得到错误:

NetworkXError: eigenvector_centrality():
power iteration failed to converge in %d iterations."%(i+1))
Run Code Online (Sandbox Code Playgroud)

我的图表有什么问题?

图形可视化

python eigenvector networkx

5
推荐指数
1
解决办法
4505
查看次数

特征值/特征值:mingw-w64的部分过多

我想基于本征的一般特征值求解器(本征3.3.3)来编译以下示例:

#include <iostream>
#include <Eigen/Eigenvalues>

int main()
{
    Eigen::Matrix4f A;
    A << -0.75, 0, -1.5, -1,
         -1.25, 0, -1.5, -1,
         -0.75, 0, -1,   -1,
         -0.25, 0, -1.5, -1;

    Eigen::Matrix4f G;
    G << 1, 0, 0, 0,
         0, 1, 0, 0,
         0, 0, 1, 0,
         0, 0, 0, 0;

    std::cout << "A = " << A << std::endl;
    std::cout << "G = " << G << std::endl;

    Eigen::GeneralizedEigenSolver<Eigen::Matrix4f> sol;

    sol.compute(A.transpose()*A, G); // compute generalized eigenvalues

    std::cout << "alphas = " << …
Run Code Online (Sandbox Code Playgroud)

eigenvalue eigenvector eigen mingw-w64 eigen3

5
推荐指数
0
解决办法
319
查看次数

PageRank 总是比特征向量或 Katz 中心性更好吗?

据我了解,有经典的特征向量中心性,也有诸如 Katz 中心性或 PageRank 之类的变体。我想知道后者是否是特征向量中心性演化的“最新阶段”,因此总是优越的?或者是否存在某些条件,具体取决于哪个人应该使用其中之一。如果可以的话,那需要什么条件呢?

pagerank graph social-networking eigenvector

5
推荐指数
2
解决办法
3196
查看次数

Tensorflow特征值分解极慢

我在 Tensorflow 中使用特征分解,发现它非常慢。下面的代码显示了 Tensorflow 的速度与 numpy 和 scipy 的比较:

import numpy as np
import scipy as sp
import tensorflow as tf
from time import time

A = np.random.randn(400, 400)
A_tf = tf.constant(A)

cur = time()
d, v = sp.linalg.eig(A)
print(f'sp: {time() - cur:4.2f} s')

cur = time()
d, v = np.linalg.eig(A)
print(f'np: {time() - cur:4.2f} s')

cur = time()
d, v = tf.linalg.eig(A_tf)
print(f'tf: {time() - cur:4.2f} s')
Run Code Online (Sandbox Code Playgroud)

这给出了以下输出:

sp: 0.09 s
np: 0.08 s
tf: 5.04 s
Run Code Online (Sandbox Code Playgroud)

对这里有什么想法吗?

python eigenvalue eigenvector tensorflow

5
推荐指数
1
解决办法
565
查看次数

求解广义特征向量和特征值以获得共同的基础

我正在寻找在 Matlab 中解决广义特征向量和特征值问题。为此,我测试了2种方法。

  1. 如果广义问题表述为:

普遍问题

然后,我们可以在每一边乘以 B^(-1),例如:

其他配方

所以,从理论角度来看,这是一个简单而经典的特征值问题。

最后,在 Matlab 中,我简单地使用A=FISH_sp和进行了操作B=FISH_xc

[Phi, Lambda] = eig(inv(FISH_xc)*FISH_sp);
Run Code Online (Sandbox Code Playgroud)

但是,当我在简单的费舍尔综合之后得到的结果不正确(约束太糟糕,而且还出现了nan值。我不知道为什么我没有得到与下面第二个相同的结果。

  1. 第二种方法来自以下论文

总而言之,所使用的算法在第 7 页进行了描述。我已经遵循了该算法的所有步骤,当我进行 Fisher 综合时,它似乎给出了更好的结果。

这里是感兴趣的部分(抱歉,我认为 Stakoverflow 上没有 Latex):

广义特征向量和特征值的描述

这是我的这个方法的小 Matlab 脚本:

% Diagonalize A = FISH_sp and B = Fish_xc
[V1,D1] = eig(FISH_sp);
[V2,D2] = eig(FISH_xc);

% Applying each  step of algorithm 1 on page 7
phiB_bar = V2*(D2.^(0.5)+1e-10*eye(7))^(-1);
barA = inv(phiB_bar)*FISH_sp*phiB_bar;
[phiA, vA] = eig(barA);
Phi = phiB_bar*phiA;
Run Code Online (Sandbox Code Playgroud)

所以最后,我找到了 phi 特征向量矩阵 (phi) 和 lambda …

matlab linear-algebra eigenvalue eigenvector diagonal

5
推荐指数
1
解决办法
580
查看次数