RuntimeError:因子完全是单数

时间:2019-10-11 03:40:08

标签: python graph

我尝试使用随机游走方法查找顶点相似度,在这项工作中,使用了一个过渡矩阵。每当我尝试运行使用python实现的代码时,都会出现此错误。我也读过类似的问题,但没有具体答案。您能帮我解决这个问题吗,真的很感谢您的帮助。

---------------------------------------------------------------------------
RuntimeError                              Traceback (most recent call last)
<ipython-input-259-2639b08a8eb7> in <module>()
     45 
     46 
---> 47     tuple_steps_prob,b=similarities(training_graph,test_edge_list)
     48     print(tuple_steps_prob)
     49    # pre_list_=Precision(tuple_steps_prob, test_edge_list,test_num,b)

<ipython-input-237-e0348fd15773> in similarities(graph, test_edge_list)
     16         prob_vec[0][k] = 1
     17         #print(prob_vec)
---> 18         extracted,prob,y=RandomWalk(graph,nodes,adj,prob_vec)
     19 
     20         j=0

<ipython-input-236-6b0298295e01> in RandomWalk(G, nodes, adj, prob_vec)
     31     beta_=0.1
     32 
---> 33     TM = Transition_Matrix(adj,beta_)
     34 
     35     extracted1=[]

~\Desktop\RW\RW\Transition_Probability_Matrix.py in Transition_Matrix(adj, beta_)
     18 
     19     Iden=np.identity(len(TM))
---> 20 
     21 
     22     Transition=beta_/(1+beta_) * Iden + 1/(1+beta_) * TM

~\Anaconda3\lib\site-packages\scipy\sparse\linalg\matfuncs.py in inv(A)
     72     """
     73     I = speye(A.shape[0], A.shape[1], dtype=A.dtype, format=A.format)
---> 74     Ainv = spsolve(A, I)
     75     return Ainv
     76 

~\Anaconda3\lib\site-packages\scipy\sparse\linalg\dsolve\linsolve.py in spsolve(A, b, permc_spec, use_umfpack)
    196         else:
    197             # b is sparse
--> 198             Afactsolve = factorized(A)
    199 
    200             if not isspmatrix_csc(b):

~\Anaconda3\lib\site-packages\scipy\sparse\linalg\dsolve\linsolve.py in factorized(A)
    438         return solve
    439     else:
--> 440         return splu(A).solve
    441 
    442 

~\Anaconda3\lib\site-packages\scipy\sparse\linalg\dsolve\linsolve.py in splu(A, permc_spec, diag_pivot_thresh, relax, panel_size, options)
    307         _options.update(options)
    308     return _superlu.gstrf(N, A.nnz, A.data, A.indices, A.indptr,
--> 309                           ilu=False, options=_options)
    310 
    311 

RuntimeError: Factor is exactly singular

0 个答案:

没有答案