class_docstr: Implements a 'two-tower' MLP: one for query and one for response
  Used in search pairwise ranking: both pos_response and neg_response
  use the response-MLP
class_docstr_tok: ["Implements","a","'two-tower","'","MLP",":","one","for","query","and","one","for","response","Used","in","search","pairwise","ranking",":","both","pos_response","and","neg_response","use","the","response-MLP"]
code: def forward(self, *x: List[torch.Tensor]) -> List[torch.Tensor]:
      output = []
      assert len(x) == 3
      output.append(self.mlp_for_response(x[0]))
      output.append(self.mlp_for_response(x[1]))
      output.append(self.mlp_for_query(x[2]))
      return output
  
file_path: pytext/pytext/models/decoders/mlp_decoder_query_response.py
imports: from typing import List
  import torch
  import torch.nn
  from pytext.utils.usage import log_class_usage
  from .decoder_base import DecoderBase
label_desc: Use image node_id 3 for calling the MLPDecoderQueryResponse obj's underlying member method code with example usage: obj.forward() and returns: output