code: def main(dataset, lr, bias, n_epochs, weight_decay):
      data = load_data(dataset)
      print(describe_data(data))
  
      g = data[0]
      X = g.ndata["feat"]
      y = g.ndata["label"]
  
      model = SGC(g=g, num_classes=data.num_classes, bias=bias)
  
      loss = tf.losses.SparseCategoricalCrossentropy(from_logits=True)
      optimizer = tfa.optimizers.AdamW(weight_decay, lr)
      accuracy = tf.metrics.SparseCategoricalAccuracy(name="accuracy")
  
      model.compile(optimizer, loss, metrics=[accuracy])
      model.fit(x=X, y=y, epochs=n_epochs, validation_data=(X, y))
  
      y_pred = model.predict(X, batch_size=len(X))
      test_mask = g.ndata["test_mask"]
      test_accuracy = accuracy(y[test_mask], y_pred[test_mask])
      print(f"Test Accuracy: {test_accuracy:.1%}")
  
imports: import argparse
  import textwrap
  import tensorflow
  import tensorflow_addons
  from dgl.data import CiteseerGraphDataset, CoraGraphDataset, PubmedGraphDataset
  from dgl.nn.tensorflow.conv import SGConv
label_desc: Use image node_id 4 for calling a global function with example usage: main(dataset, lr, bias, n_epochs, weight_decay) without return types