class_docstr: PUBDEV-2980: deeplearning return the field model._model_json['output']['scoring_history'].cell_values
  with different lengths.  Normally, it is length 3.  Sometimes, it is length 2.
  
  
  This class is created to train a deeplearning model with different parameters settings and re-create two
  models with different field length for debugging purposes.
docstr: test_deeplearning_fieldnames performs the following:
  a. build a deeplearning model with good parameters in good_params_list and good_model_params;
  b. build a deeplearning model with bad parameters in bad_params_list and bad_model_params;
  c. look at the length of the field in _model_json['output']['model_summary'].cell_values
  d. print out the two fields.
docstr_tok: ["test_deeplearning_fieldnames","performs","the","following",":","a.","build","a","deeplearning","model","with","good","parameters","in","good_params_list","and","good_model_params",";","b.","build","a","deeplearning","model","with","bad","parameters","in","bad_params_list","and","bad_model_params",";","c.","look","at","the","length","of","the","field","in","_model_json","[","'output","'","]","[","'model_summary","'","]",".cell_values","d.","print","out","the","two","fields","."]
code: def test_deeplearning_fieldnames(self):
      """
      test_deeplearning_fieldnames performs the following:
      a. build a deeplearning model with good parameters in good_params_list and good_model_params;
      b. build a deeplearning model with bad parameters in bad_params_list and bad_model_params;
      c. look at the length of the field in _model_json['output']['model_summary'].cell_values
      d. print out the two fields.
      """
  
      print(
          "*******************************************************************************************"
      )
      h2o.cluster_info()
      good_params_list = {
          "epochs": 10.0,
          "seed": 1464835583,
          "nfolds": 5,
          "hidden_dropout_ratios": -0.07120188,
          "fold_assignment": "AUTO",
          "hidden": 6,
          "distribution": "gaussian",
      }
      good_model_params = {"max_runtime_secs": 108.65307012692}
  
      good_model = H2ODeepLearningEstimator(**good_params_list)
      good_model.train(
          x=self.x_indices,
          y=self.y_index,
          training_frame=self.training1_data,
          **good_model_params,
      )
  
      bad_params_list = {
          "hidden": 6,
          "epochs": -2.0,
          "seed": 1464825861,
          "fold_assignment": "AUTO",
          "hidden_dropout_ratios": -0.07120188,
          "nfolds": 5,
          "distribution": "gaussian",
      }
      bad_model_params = {"max_runtime_secs": 98.58063693984}
  
      bad_model = H2ODeepLearningEstimator(**bad_params_list)
      bad_model.train(
          x=self.x_indices,
          y=self.y_index,
          training_frame=self.training1_data,
          **bad_model_params,
      )
  
      good_model_len = len(
          good_model._model_json["output"][
              "scoring_history"
          ].cell_values
      )
      bad_model_len = len(
          bad_model._model_json["output"]["scoring_history"].cell_values
      )
  
      print(
          "good_model._model_json['output']['scoring_history'].cell_values length is {0}.  "
          "bad_model._model_json['output']['scoring_history'].cell_values length is "
          "{1}".format(good_model_len, bad_model_len)
      )
  
      if not (good_model_len == bad_model_len):
          self.test_failed = 1
          print("They are not equal for some reason....")
      else:
          print("They are equal.  Good.")
  
      print(
          "Good model cell values is:\n {0}\n  Bad model cell values is:\n "
          "{1}\n".format(
              good_model._model_json["output"][
                  "scoring_history"
              ].cell_values,
              bad_model._model_json["output"][
                  "scoring_history"
              ].cell_values,
          )
      )
  
file_path: h2o-3/h2o-py/dynamic_tests/testdir_algos/deeplearning/pyunit_PUBDEV_2980_deeplearning_badfields_NOPASS.py
imports: import sys
  import os
  from builtins import range
  import h2o
  from tests import pyunit_utils
  from h2o.estimators.deeplearning import H2ODeepLearningEstimator
label_desc: Use image node_id 3 for calling the Test_PUBDEV_2980_deeplearning obj's underlying member method code with example usage: obj.test_deeplearning_fieldnames() without return types