class_docstr: The finetuning module for InfoGraph model
  
  Parameters
  ----------
  encoder: nn.Module
      An encoder to encode input graph data
  fc1: nn.Module
      A fully connected layer
  fc2: nn.Module
      A fully connected layer
  
  Example
  -------
  >>> from deepchem.models.torch_models.infograph import InfoGraphModel
  >>> from deepchem.feat.molecule_featurizers import MolGraphConvFeaturizer
  >>> from deepchem.feat.graph_data import BatchGraphData
  >>> num_feat = 30
  >>> num_edge = 11
  >>> infographmodular = InfoGraphModel(num_feat, num_edge, num_gc_layers=1, task='regression', n_tasks=1)
  >>> smiles = ['C1=CC=CC=C1', 'C1=CC=CC=C1C2=CC=CC=C2']
  >>> featurizer = MolGraphConvFeaturizer(use_edges=True)
  >>> graphs = BatchGraphData(featurizer.featurize(smiles))
  >>> graphs = graphs.numpy_to_torch(infographmodular.device)
  >>> model = infographmodular.model
  >>> predictions = model(graphs)
  
  Reference
  ---------
  .. Sun, F.-Y, et. al, "InfoGraph: Unsupervised and Semi-supervised Graph-Level Representation Learning via Mutual Information Maximization".
code: def __init__(self, encoder, fc1, fc2, init_emb=False):
      super().__init__()
      self.encoder = encoder
      self.fc1 = fc1
      self.fc2 = fc2
      if init_emb:
          self.init_emb()
  
imports: import torch
  import torch.nn
  import torch.nn.functional
  from torch.nn import GRU, Linear, ReLU, Sequential
  from typing import Iterable, List, Tuple, Optional, Dict, Literal
  from deepchem.metrics import to_one_hot
  import deepchem
  from deepchem.models.losses import SoftmaxCrossEntropy
  from deepchem.feat.graph_data import BatchGraphData
  from deepchem.models.losses import GlobalMutualInformationLoss, LocalMutualInformationLoss
  from deepchem.models.torch_models.layers import MultilayerPerceptron
  from deepchem.models.torch_models.modular import ModularTorchModel
label_desc: Use image node_id 1 to create a new InfoGraphFinetune object from inherited base classes: nn with example: obj = InfoGraphFinetune(encoder, fc1, fc2, init_emb)