code: def classification_metrics(self, y_test, model_predict):
      # Acuracy_score
      acuracy_score = metrics.accuracy_score(y_test, model_predict)
  
      # Log Loss
      y_probs = model.predict_proba(X_test)
      LogLoss = log_loss(y_test, y_probs, labels=model.classes_)
  
      # Explained Variance Score
      explained_variancescore = explained_variance_score(
          y_test, model_predict
      )
  
      fpr, tpr, thresholds = metrics.roc_curve(
          y_test, model_predict, pos_label=2
      )
      auc = metrics.auc(fpr, tpr)
  
      # MAE
      mae = mean_absolute_error(y_test, model_predict)
      # MSE
      mse = mean_squared_error(y_test, model_predict)
      # RMS
      rms = sqrt(mse)
  
      # Precision, Recall, F1-score, Support
      report = classification_report(
          y_test, model_predict, output_dict=True
      )
      report_dataframe = pd.DataFrame(report)
      report_dataframe = report_dataframe.transpose()
  
      # Confusion Matrix
      matrix = confusion_matrix(y_test, model_predict)
      matrix_dataframe = pd.DataFrame(matrix)
  
      # Make DataFrames
      metric = [
          "Accuracy Score",
          "Cross-Entropy Loss",
          "Area Under Curve",
          "MAE",
          "MSE",
          "RMS",
      ]
      values = [acuracy_score, LogLoss, auc, mae, mse, rms]
      metrics_dataframe = pd.DataFrame(
          {"metric": metric, "values": values}
      )
      metrics_dataframe.set_index("metric", inplace=True)
  
      return metrics_dataframe, report_dataframe, matrix_dataframe
  
label_desc: Use image node_id 2 for calling the calculate_metrics obj's underlying member method code with example usage: obj.classification_metrics(y_test, model_predict) and returns: metrics_dataframe,  report_dataframe,  matrix_dataframe