code: def main(unused_argv):
      del unused_argv
  
      model = snt.Sequential(
          [
              snt.Conv2D(32, 3, 1),
              tf.nn.relu,
              snt.Conv2D(32, 3, 1),
              tf.nn.relu,
              snt.Flatten(),
              snt.Linear(10),
          ]
      )
  
      optimizer = snt.optimizers.SGD(0.1)
  
      train_data = mnist("train", batch_size=128)
      test_data = mnist("test", batch_size=1000)
  
      for epoch in range(5):
          train_loss = train_epoch(model, optimizer, train_data)
          test_metrics = test_accuracy(model, test_data)
          print(
              "[Epoch %d] train loss: %.05f, test acc: %.02f%% (%d wrong)"
              % (
                  epoch,
                  train_loss,
                  test_metrics["accuracy"],
                  test_metrics["incorrect"],
              )
          )
  
file_path: sonnet/examples/simple_mnist.py
imports: from typing import Dict
  from absl import app
  import sonnet
  import tensorflow
  import tensorflow_datasets
label_desc: Use image node_id 5 for calling a global function with example usage: main(unused_argv) without return types