RuntimeError: Factor is exactly singular

Viewed 599

I trying to find vertex similarities using random walk approach, in this work a transition matrix is used. Each time when I tried to run the code implemented using python I get this error. I also read similar question but no specific answer. Can you help me on how to solve this problem, Your help is really appreciated.

---------------------------------------------------------------------------
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 Answers
Related