前导小调。。。。。不是肯定的定义

2024-05-01 21:39:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我从pyrca包中得到这个错误:

LinAlgError: the leading minor of order 46 of 'b' is not positive definite. The factorization of 'b' could not be completed and no eigenvalues or eigenvectors were computed.

它来自以下代码行:

cca.train([TCIA_train, TCGA_train])

后面会调用这行代码:

r, Vs = eigh(LH, RH, eigvals=(maxCC - numCC, maxCC - 1))

这最终导致了错误。 打印时的值:

  • 最大立方厘米:59
  • numCC:9个
  • 左侧形状:(59,59)
  • 形状:(59,右侧)

LH: [[  0.           0.           0.         ... -14.70181642 -11.97719127
  -32.68404183]
 [  0.           0.           0.         ...  -5.00595616   8.23628459
  -11.05749337]
 [  0.           0.           0.         ...  42.09480915  12.11597276
   29.5793337 ]
 ...
 [-14.70181642  -5.00595616  42.09480915 ...   0.           0.
    0.        ]
 [-11.97719127   8.23628459  12.11597276 ...   0.           0.
    0.        ]
 [-32.68404183 -11.05749337  29.5793337  ...   0.           0.
    0.        ]]

RH: [[ 5.98249871e+03  5.28188061e+02 -3.75685403e+02 ...  0.00000000e+00
   0.00000000e+00  0.00000000e+00]
 [ 5.28188061e+02  3.84674934e+03  3.45817309e+02 ...  0.00000000e+00
   0.00000000e+00  0.00000000e+00]
 [-3.75685403e+02  3.45817309e+02  2.56407017e+03 ...  0.00000000e+00
   0.00000000e+00  0.00000000e+00]
 ...
 [ 0.00000000e+00  0.00000000e+00  0.00000000e+00 ...  6.00000000e+00
   3.00000000e+00  1.00000000e+00]
 [ 0.00000000e+00  0.00000000e+00  0.00000000e+00 ...  3.00000000e+00
   7.00000000e+00  2.00000000e+00]
 [ 0.00000000e+00  0.00000000e+00  0.00000000e+00 ...  1.00000000e+00
   2.00000000e+00  5.00000000e+00]]

Tags: ofthe代码错误nottrainrh形状