class_docstr: The subnet with the architecture of PFLD. 
docstr: Parameters
  ----------
  x : tensor
      input image
  
  Returns
  -------
  output: tensor
      the predicted landmarks
  output: tensor
      the intermediate features
docstr_tok: ["Parameters","--","--","--","--","--","x",":","tensor","input","image","Returns","--","--","--","-","output",":","tensor","the","predicted","landmarks","output",":","tensor","the","intermediate","features"]
code: def forward(self, x):
      """
      Parameters
      ----------
      x : tensor
          input image
  
      Returns
      -------
      output: tensor
          the predicted landmarks
      output: tensor
          the intermediate features
      """
      x, y1 = self.stem(x)
      out1 = x
  
      x = self.block4_1(x)
      for i, block in enumerate(self.blocks):
          x = block(x)
          if i == 1:
              y2 = x
          elif i == 4:
              y3 = x
  
      y1 = self.avg_pool1(y1)
      y2 = self.avg_pool2(y2)
      multi_scale = torch.cat([y3, y2, y1], 1)
  
      y = self.block6_1(multi_scale)
      y = self.block6_2(y)
      y = self.block6_3(y)
      y = self.conv7(y)
      landmarks = self.fc(y)
  
      return landmarks, out1
  
file_path: nni/examples/nas/legacy/oneshot/pfld/lib/subnet.py
imports: from __future__ import absolute_import, division, print_function
  import torch
  import torch.nn
  from lib.ops import MBBlock, SeparableConv, SingleOperation, StemBlock, conv_bn
  from torch.nn import init
label_desc: Use image node_id 3 for calling the PFLDInference obj's underlying member method code with example usage: obj.forward(x) and returns: landmarks,  out1