code: def call(self, user_id, item_id, label):
      user_vec = self.user_latent_factor(user_id)
      item_vec = self.item_latent_factor(item_id)
      item_bias = self.item_bias(item_id)
  
      loss = self.pointwise_mse_loss(
          user_vec=user_vec,
          item_vec=item_vec,
          item_bias=item_bias,
          label=label,
      )
  
      l2_loss = tf.nn.l2_loss(user_vec) + tf.nn.l2_loss(item_vec)
  
      return loss, l2_loss
  
file_path: openrec/openrec/tf2/recommenders/wrmf.py
imports: import tensorflow
  from tensorflow.keras import Model
  from openrec.tf2.modules import LatentFactor, PointwiseMSELoss
label_desc: Use image node_id 2 for calling the WRMF obj's underlying member method code with example usage: obj.call(user_id, item_id, label) and returns: loss,  l2_loss