class_docstr: SAGE model for distributed train and evaluation.
  
  Parameters
  ----------
  in_feats : int
      Feature dimension.
  n_hidden : int
      Hidden layer dimension.
  n_classes : int
      Number of classes.
  n_layers : int
      Number of layers.
  activation : callable
      Activation function.
  dropout : float
      Dropout value.
class_docstr_tok: ["SAGE","model","for","distributed","train","and","evaluation",".","Parameters","--","--","--","--","--","in_feats",":","int","Feature","dimension",".","n_hidden",":","int","Hidden","layer","dimension",".","n_classes",":","int","Number","of","classes",".","n_layers",":","int","Number","of","layers",".","activation",":","callable","Activation","function",".","dropout",":","float","Dropout","value","."]
code: def __init__(
      self, in_feats, n_hidden, n_classes, n_layers, activation, dropout
  ):
      super().__init__()
      self.n_layers = n_layers
      self.n_hidden = n_hidden
      self.n_classes = n_classes
      self.layers = nn.ModuleList()
      self.layers.append(dglnn.SAGEConv(in_feats, n_hidden, "mean"))
      for _ in range(1, n_layers - 1):
          self.layers.append(dglnn.SAGEConv(n_hidden, n_hidden, "mean"))
      self.layers.append(dglnn.SAGEConv(n_hidden, n_classes, "mean"))
      self.dropout = nn.Dropout(dropout)
      self.activation = activation
  
file_path: dgl/examples/distributed/graphsage/node_classification.py
imports: import argparse
  import socket
  import time
  import dgl
  import dgl.nn.pytorch
  import numpy
  import torch
  import torch.nn
  import torch.nn.functional
  import torch.optim
  import tqdm
label_desc: Use image node_id 1 to create a new DistSAGE object from inherited base classes: nn with example: obj = DistSAGE(in_feats, n_hidden, n_classes, n_layers, activation, dropout)