class_docstr: The class wrapper the PGL graph, the class involve the funtions to implement struc2vec algorithm.
code: def __init__(
      self, graph, nodes, opt1, opt2, opt3, depth, num_walks, walk_depth
  ):
      self.graph = graph
      self.nodes = nodes
      self.opt1 = opt1
      self.opt2 = opt2
      self.opt3 = opt3
      self.num_walks = num_walks
      self.walk_depth = walk_depth
      self.tag = args.tag
      self.degree_list = dict()
      self.degree2nodes = dict()
      self.node2degree = dict()
      self.distance = dict()
      self.degrees_sorted = None
      self.layer_distance = dict()
      self.layer_message = dict()
      self.layer_norm_distance = dict()
      self.sample_alias = dict()
      self.sample_events = dict()
      self.layer_node_weight_count = dict()
      if opt3 == True:
          self.depth = depth
      else:
          self.depth = 1000
  
imports: import argparse
  import math
  import random
  import numpy
  import pgl
  from pgl import graph
  from pgl.graph_kernel import alias_sample_build_table
  from pgl.sample import alias_sample
  from data_loader import EdgeDataset
  from classify import train_lr_model
  from sklearn_classify import train_lr_l2_model
label_desc: Use image node_id 1 to create a new StrucVecGraph object  with example: obj = StrucVecGraph(graph, nodes, opt1, opt2, opt3, depth, num_walks, walk_depth)