class_docstr: ConvNCF is a a new neural network framework for collaborative filtering based on NCF.
  It uses an outer product operation above the embedding layer,
  which results in a semantic-rich interaction map that encodes pairwise correlations between embedding dimensions.
  We carefully design the data interface and use sparse tensor to train and test efficiently.
  We implement the model following the original author with a pairwise training mode.
class_docstr_tok: ["ConvNCF","is","a","a","new","neural","network","framework","for","collaborative","filtering","based","on","NCF",".","It","uses","an","outer","product","operation","above","the","embedding","layer",",","which","results","in","a","semantic-rich","interaction","map","that","encodes","pairwise","correlations","between","embedding","dimensions",".","We","carefully","design","the","data","interface","and","use","sparse","tensor","to","train","and","test","efficiently",".","We","implement","the","model","following","the","original","author","with","a","pairwise","training","mode","."]
code: def forward(self, user, item):
      user_e = self.user_embedding(user)
      item_e = self.item_embedding(item)
  
      interaction_map = torch.bmm(
          user_e.unsqueeze(2), item_e.unsqueeze(1)
      )
      interaction_map = interaction_map.unsqueeze(1)
  
      cnn_output = self.cnn_layers(interaction_map)
      cnn_output = cnn_output.sum(axis=(2, 3))
  
      prediction = self.predict_layers(cnn_output)
      prediction = prediction.squeeze(-1)
  
      return prediction
  
file_path: RecBole/recbole/model/general_recommender/convncf.py
imports: import torch
  import torch.nn
  import copy
  from recbole.model.abstract_recommender import GeneralRecommender
  from recbole.model.layers import MLPLayers, CNNLayers
  from recbole.model.general_recommender.bpr import BPR
  from recbole.utils import InputType
label_desc: Use image node_id 2 for calling the ConvNCF obj's underlying member method code with example usage: obj.forward(user, item) and returns: prediction