code: def compute_loss(label: DataFrame, pred: DataFrame):
      loss_col = label.create_frame()
      label_pred = DataFrame.hstack([label, pred])
      sample_num = len(label)
      loss_col["loss"] = label_pred.apply_row(
          lambda s: -np.log(s[1][int(s[0])]), with_label=True
      )
      loss_col["loss"].fillna(1)
      reduce_loss = loss_col["loss"].sum() / sample_num
      return reduce_loss
  
imports: import numpy
  import pandas
  import torch
  from fate.arch.dataframe import DataFrame
  from scipy.special import expit
  from fate.ml.utils.predict_tools import BINARY, MULTI, REGRESSION
label_desc: Use image node_id 4 for calling the CELoss obj's underlying member method code with example usage: obj.compute_loss(label, pred) and returns: reduce_loss