class_docstr: Class for item-to-item recommendations using DKN.
  See https://github.com/microsoft/recommenders/blob/main/examples/07_tutorials/KDD2020-tutorial/step4_run_dkn_item2item.ipynb
docstr: Evaluate the given file and returns some evaluation metrics.
  
  Args:
      filename (str): A file name that will be evaluated.
  
  Returns:
      dict: A dictionary containing evaluation metrics.
code: def run_eval(self, filename):
      """Evaluate the given file and returns some evaluation metrics.
  
      Args:
          filename (str): A file name that will be evaluated.
  
      Returns:
          dict: A dictionary containing evaluation metrics.
      """
      load_sess = self.sess
      group_preds = []
      group_labels = []
  
      for (
          batch_data_input,
          newsid_list,
          data_size,
      ) in self.iterator.load_data_from_file(filename):
          if batch_data_input:
              step_pred, step_labels = self.eval(
                  load_sess, batch_data_input
              )
              group_preds.extend(step_pred)
              group_labels.extend(step_labels)
  
      res = cal_metric(
          group_labels, group_preds, self.hparams.pairwise_metrics
      )
      return res
  
file_path: recommenders/recommenders/models/deeprec/models/dkn_item2item.py
imports: import numpy
  import tensorflow
  from recommenders.models.deeprec.models.dkn import DKN
  from recommenders.models.deeprec.deeprec_utils import cal_metric
label_desc: Use image node_id 6 for calling the DKNItem2Item obj's underlying member method code with example usage: obj.run_eval(filename) and returns: res