class_docstr: MNIST classifier used in the experiments for Counterfactual with Reinforcement Learning. The model consists of two
  convolutional layers having 64 and 32 channels and a kernel size of 2 with ReLU nonlinearities, followed by
  maxpooling of size 2 and dropout of 0.3. The convolutional block is followed by a fully connected layer of 256 with
  ReLU nonlinearity, and finally a fully connected layer is used to predict the class logits (10 in MNIST case).
docstr: Forward pass.
  
  Parameters
  ----------
  x
      Input tensor.
  
  Returns
  -------
  Classification logits.
docstr_tok: ["Forward","pass",".","Parameters","--","--","--","--","--","x","Input","tensor",".","Returns","--","--","--","-","Classification","logits","."]
code: def forward(self, x: torch.Tensor) -> torch.Tensor:
      """
      Forward pass.
  
      Parameters
      ----------
      x
          Input tensor.
  
      Returns
      -------
      Classification logits.
      """
      x = self.dropout1(self.maxpool1(F.relu(self.conv1(x))))
      x = self.dropout2(self.maxpool2(F.relu(self.conv2(x))))
      x = self.flatten(x)
      x = F.relu(self.fc1(x))
      x = self.fc2(x)
      return x
  
imports: import torch
  import torch.nn
  import torch.nn.functional
  from typing import List
  from alibi.models.pytorch.model import Model
label_desc: Use image node_id 2 for calling the MNISTClassifier obj's underlying member method code with example usage: obj.forward(x) and returns: x