code: def learn_embedding(self):
      graph = self.g.G
      graph = graph.to_undirected()
      t1 = time()
      A = nx.to_scipy_sparse_matrix(graph)
      # print(np.sum(A.todense(), axis=0))
      normalize(A, norm="l1", axis=1, copy=False)
      I_n = sp.eye(graph.number_of_nodes())
      I_min_A = I_n - A
      print(I_min_A)
      u, s, vt = lg.svds(I_min_A, k=self._d + 1, which="SM")
      t2 = time()
      self._X = vt.T
      self._X = self._X[:, 1:]
      return self._X, (t2 - t1)
  
file_path: OpenNE/src/openne/lle.py
imports: from time import time
  import networkx
  import numpy
  import scipy.io
  import scipy.sparse
  import scipy.sparse.linalg
  from .None import graph
  from sklearn.preprocessing import normalize
label_desc: Use image node_id 2 for calling the LLE obj's underlying member method code with example usage: obj.learn_embedding() and returns: self,  unknown