docstr: Obtain the reconstruction error for the input ``test_data``.
  
  :param H2OFrame test_data: The dataset upon which the reconstruction error is computed.
  :param bool per_feature: Whether to return the square reconstruction error per feature. Otherwise, return
      the mean square error.
  :returns: the reconstruction error.
  
  :example:
  
  >>> from h2o.grid.grid_search import H2OGridSearch
  >>> from h2o.estimators import H2OAutoEncoderEstimator
  >>> rows = [[1,2,3,4,0]*50,
  ...         [2,1,2,4,1]*50,
  ...         [2,1,4,2,1]*50,
  ...         [0,1,2,34,1]*50,
  ...         [2,3,4,1,0]*50]
  >>> fr = h2o.H2OFrame(rows)
  >>> hyper_parameters = {'activation': "Tanh", 'hidden': [50,50,50]}
  >>> gs = H2OGridSearch(H2OAutoEncoderEstimator(), hyper_parameters)
  >>> gs.train(x=range(4), training_frame=fr)
  >>> gs.anomaly(fr, per_feature=True)
docstr_tok: ["Obtain","the","reconstruction","error","for","the","input","``","test_data","``",".",":","param","H2OFrame","test_data",":","The","dataset","upon","which","the","reconstruction","error","is","computed",".",":","param","bool","per_feature",":","Whether","to","return","the","square","reconstruction","error","per","feature",".","Otherwise",",","return","the","mean","square","error",".",":","returns",":","the","reconstruction","error",".",":","example",":",">",">",">","from","h2o.grid.grid_search","import","H2OGridSearch",">",">",">","from","h2o.estimators","import","H2OAutoEncoderEstimator",">",">",">","rows","=","[","[","1,2,3,4,0","]","*","50",",","...","[","2,1,2,4,1","]","*","50",",","...","[","2,1,4,2,1","]","*","50",",","...","[","0,1,2,34,1","]","*","50",",","...","[","2,3,4,1,0","]","*","50","]",">",">",">","fr","=","h2o.H2OFrame","(","rows",")",">",">",">","hyper_parameters","=","{","'activation","'",":","``","Tanh","''",",","'hidden","'",":","[","50,50,50","]","}",">",">",">","gs","=","H2OGridSearch","(","H2OAutoEncoderEstimator","(",")",",","hyper_parameters",")",">",">",">","gs.train","(","x=range","(","4",")",",","training_frame=fr",")",">",">",">","gs.anomaly","(","fr",",","per_feature=True",")"]
code: def anomaly(self, test_data, per_feature=False):
      """
      Obtain the reconstruction error for the input ``test_data``.
  
      :param H2OFrame test_data: The dataset upon which the reconstruction error is computed.
      :param bool per_feature: Whether to return the square reconstruction error per feature. Otherwise, return
          the mean square error.
      :returns: the reconstruction error.
  
      :example:
  
      >>> from h2o.grid.grid_search import H2OGridSearch
      >>> from h2o.estimators import H2OAutoEncoderEstimator
      >>> rows = [[1,2,3,4,0]*50,
      ...         [2,1,2,4,1]*50,
      ...         [2,1,4,2,1]*50,
      ...         [0,1,2,34,1]*50,
      ...         [2,3,4,1,0]*50]
      >>> fr = h2o.H2OFrame(rows)
      >>> hyper_parameters = {'activation': "Tanh", 'hidden': [50,50,50]}
      >>> gs = H2OGridSearch(H2OAutoEncoderEstimator(), hyper_parameters)
      >>> gs.train(x=range(4), training_frame=fr)
      >>> gs.anomaly(fr, per_feature=True)
      """
      return {
          model.model_id: model.anomaly(test_data, per_feature)
          for model in self.models
      }
  
label_desc: Use image node_id 1 for calling the H2OAutoEncoderGridSearch obj's underlying member method code with example usage: obj.anomaly(test_data, per_feature) and returns: unknown