class_docstr: A trained model that is ready to use for sound classification or to export to CoreML.
  
  This model should not be constructed directly.
  
  See Also
  ----------
  create
class_docstr_tok: ["A","trained","model","that","is","ready","to","use","for","sound","classification","or","to","export","to","CoreML",".","This","model","should","not","be","constructed","directly",".","See","Also","--","--","--","--","--","create"]
docstr: Evaluate the model by making predictions of target values and comparing
  these to actual values.
  
  Parameters
  ----------
  dataset : SFrame
      Dataset to use for evaluation, must include a column with the same
      name as the features used for model training. Additional columns
      are ignored.
  
  metric : str, optional
      Name of the evaluation metric.  Possible values are:
  
      - 'auto'             : Returns all available metrics.
      - 'accuracy'         : Classification accuracy (micro average).
      - 'auc'              : Area under the ROC curve (macro average)
      - 'precision'        : Precision score (macro average)
      - 'recall'           : Recall score (macro average)
      - 'f1_score'         : F1 score (macro average)
      - 'log_loss'         : Log loss
      - 'confusion_matrix' : An SFrame with counts of possible
                             prediction/true label combinations.
      - 'roc_curve'        : An SFrame containing information needed for an
                             ROC curve
  
  verbose : bool, optional
      If True, prints progress updates and model details.
  
  batch_size : int, optional
      If you are getting memory errors, try decreasing this value. If you
      have a powerful computer, increasing this value may improve performance.
  
  Returns
  -------
  out : dict
      Dictionary of evaluation results where the key is the name of the
      evaluation metric (e.g. `accuracy`) and the value is the evaluation
      score.
  
  See Also
  ----------
  classify, predict
  
  Examples
  ----------
  .. sourcecode:: python
  
    >>> results = model.evaluate(data)
    >>> print results['accuracy']
docstr_tok: ["Evaluate","the","model","by","making","predictions","of","target","values","and","comparing","these","to","actual","values",".","Parameters","--","--","--","--","--","dataset",":","SFrame","Dataset","to","use","for","evaluation",",","must","include","a","column","with","the","same","name","as","the","features","used","for","model","training",".","Additional","columns","are","ignored",".","metric",":","str",",","optional","Name","of","the","evaluation","metric",".","Possible","values","are",":","-","'auto","'",":","Returns","all","available","metrics",".","-","'accuracy","'",":","Classification","accuracy","(","micro","average",")",".","-","'auc","'",":","Area","under","the","ROC","curve","(","macro","average",")","-","'precision","'",":","Precision","score","(","macro","average",")","-","'recall","'",":","Recall","score","(","macro","average",")","-","'f1_score","'",":","F1","score","(","macro","average",")","-","'log_loss","'",":","Log","loss","-","'confusion_matrix","'",":","An","SFrame","with","counts","of","possible","prediction\/true","label","combinations",".","-","'roc_curve","'",":","An","SFrame","containing","information","needed","for","an","ROC","curve","verbose",":","bool",",","optional","If","True",",","prints","progress","updates","and","model","details",".","batch_size",":","int",",","optional","If","you","are","getting","memory","errors",",","try","decreasing","this","value",".","If","you","have","a","powerful","computer",",","increasing","this","value","may","improve","performance",".","Returns","--","--","--","-","out",":","dict","Dictionary","of","evaluation","results","where","the","key","is","the","name","of","the","evaluation","metric","(","e.g",".","`","accuracy","`",")","and","the","value","is","the","evaluation","score",".","See","Also","--","--","--","--","--","classify",",","predict","Examples","--","--","--","--","--","..","sourcecode",":",":","python",">",">",">","results","=","model.evaluate","(","data",")",">",">",">","print","results","[","'accuracy","'","]"]
code: def evaluate(
      self, dataset, metric="auto", verbose=True, batch_size=64
  ):
      """
      Evaluate the model by making predictions of target values and comparing
      these to actual values.
  
      Parameters
      ----------
      dataset : SFrame
          Dataset to use for evaluation, must include a column with the same
          name as the features used for model training. Additional columns
          are ignored.
  
      metric : str, optional
          Name of the evaluation metric.  Possible values are:
  
          - 'auto'             : Returns all available metrics.
          - 'accuracy'         : Classification accuracy (micro average).
          - 'auc'              : Area under the ROC curve (macro average)
          - 'precision'        : Precision score (macro average)
          - 'recall'           : Recall score (macro average)
          - 'f1_score'         : F1 score (macro average)
          - 'log_loss'         : Log loss
          - 'confusion_matrix' : An SFrame with counts of possible
                                 prediction/true label combinations.
          - 'roc_curve'        : An SFrame containing information needed for an
                                 ROC curve
  
      verbose : bool, optional
          If True, prints progress updates and model details.
  
      batch_size : int, optional
          If you are getting memory errors, try decreasing this value. If you
          have a powerful computer, increasing this value may improve performance.
  
      Returns
      -------
      out : dict
          Dictionary of evaluation results where the key is the name of the
          evaluation metric (e.g. `accuracy`) and the value is the evaluation
          score.
  
      See Also
      ----------
      classify, predict
  
      Examples
      ----------
      .. sourcecode:: python
  
        >>> results = model.evaluate(data)
        >>> print results['accuracy']
      """
      from turicreate.toolkits import evaluation
  
      # parameter checking
      if not isinstance(dataset, _tc.SFrame):
          raise TypeError("'dataset' parameter must be an SFrame")
  
      avail_metrics = [
          "accuracy",
          "auc",
          "precision",
          "recall",
          "f1_score",
          "log_loss",
          "confusion_matrix",
          "roc_curve",
      ]
      _tk_utils._check_categorical_option_type(
          "metric", metric, avail_metrics + ["auto"]
      )
  
      if metric == "auto":
          metrics = avail_metrics
      else:
          metrics = [metric]
  
      if _is_deep_feature_sarray(dataset[self.feature]):
          deep_features = dataset[self.feature]
      else:
          deep_features = get_deep_features(
              dataset[self.feature], verbose=verbose
          )
      data = _tc.SFrame({"deep features": deep_features})
      data = data.add_row_number()
      missing_ids = data.filter_by([[]], "deep features")["id"]
  
      if len(missing_ids) > 0:
          data = data.filter_by([[]], "deep features", exclude=True)
          # Remove the labels for entries without deep features
          _logging.warning(
              "Dropping %d examples which are less than 975ms in length."
              % len(missing_ids)
          )
          labels = dataset[[self.target]].add_row_number()
          labels = data.join(labels, how="left")[self.target]
      else:
          labels = dataset[self.target]
      assert len(labels) == len(data)
  
      if any([m in metrics for m in ("roc_curve", "log_loss", "auc")]):
          probs = self.predict(
              data["deep features"],
              output_type="probability_vector",
              verbose=verbose,
              batch_size=batch_size,
          )
      if any(
          [
              m in metrics
              for m in (
                  "accuracy",
                  "precision",
                  "recall",
                  "f1_score",
                  "confusion_matrix",
              )
          ]
      ):
          classes = self.predict(
              data["deep features"],
              output_type="class",
              verbose=verbose,
              batch_size=batch_size,
          )
  
      ret = {}
      if "accuracy" in metrics:
          ret["accuracy"] = evaluation.accuracy(labels, classes)
      if "auc" in metrics:
          ret["auc"] = evaluation.auc(
              labels, probs, index_map=self._class_label_to_id
          )
      if "precision" in metrics:
          ret["precision"] = evaluation.precision(labels, classes)
      if "recall" in metrics:
          ret["recall"] = evaluation.recall(labels, classes)
      if "f1_score" in metrics:
          ret["f1_score"] = evaluation.f1_score(labels, classes)
      if "log_loss" in metrics:
          ret["log_loss"] = evaluation.log_loss(
              labels, probs, index_map=self._class_label_to_id
          )
      if "confusion_matrix" in metrics:
          ret["confusion_matrix"] = evaluation.confusion_matrix(
              labels, classes
          )
      if "roc_curve" in metrics:
          ret["roc_curve"] = evaluation.roc_curve(
              labels, probs, index_map=self._class_label_to_id
          )
  
      return ret
  
imports: from __future__ import print_function
  from __future__ import division
  from __future__ import absolute_import
  import logging
  from math import ceil
  import numpy
  import six
  import turicreate
  import turicreate.toolkits._internal_utils
  from turicreate.toolkits._main import ToolkitError
  from turicreate.toolkits._model import CustomModel
  from turicreate.toolkits._model import PythonProxy
  from turicreate.toolkits import _coreml_utils
  from turicreate._deps.minimal_package import _minimal_package_import_check
label_desc: Use image node_id 10 for calling the SoundClassifier obj's underlying member method code with example usage: obj.evaluate(dataset, metric, verbose, batch_size) and returns: ret