def setUp(self):
     super(ModelFactoryTest, self).setUp()
     self.addCleanup(mock.patch.stopall)
     mock.patch.object(utils,
                       'fetch_explanation_metadata',
                       return_value=explain_metadata.ExplainMetadata(
                           inputs=[], framework='xgboost')).start()
Example #2
0
 def get_metadata(self):
     """Returns the current metadata as a dictionary."""
     current_md = explain_metadata.ExplainMetadata(
         inputs=list(self._inputs.values()),
         outputs=list(self._outputs.values()),
         framework=explain_metadata.Framework.TENSORFLOW2,
         tags=[constants.METADATA_TAG])
     return current_md.to_dict()
Example #3
0
 def get_metadata(self):
     """Returns the current metadata."""
     current_md = explain_metadata.ExplainMetadata(
         inputs=list(self._inputs.values()),
         outputs=list(self._outputs.values()),
         framework='Tensorflow',
         tags=[constants.METADATA_TAG])
     return current_md.to_dict()
    def _create_metadata_dict(self, features_dict, crossed_columns,
                              desired_columns, output_dict):
        """Creates metadata from given tensor information.

    Args:
      features_dict: Dictionary from feature name to FeatureTensors class.
      crossed_columns: A set of crossed column names.
      desired_columns: A list of feature column names. Only the columns in
        this list will be added to input metadata.
      output_dict: Dictionary from tf.feature_columns to list of dense tensors.

    Returns:
      A dictionary that abides to explanation metadata.
    """
        return explain_metadata.ExplainMetadata(
            inputs=self._create_input_metadata(features_dict, crossed_columns,
                                               desired_columns),
            outputs=self._create_output_metadata(output_dict),
            framework='Tensorflow',
            tags=[constants.METADATA_TAG]).to_dict()
  def _create_metadata_dict(
      self,
      features_dict: Dict[Text, List[monkey_patch_utils.FeatureTensors]],
      crossed_columns: Set[Text],
      desired_columns: List[Text],
      output_dict: Dict[Text, tf.Tensor],
      drop_duplicate_features: bool = False,
      group_duplicate_features: bool = False) -> Dict[Text, Any]:
    """Creates metadata from given tensor information.

    Args:
      features_dict: Dictionary from feature name to FeatureTensors class.
      crossed_columns: A set of crossed column names.
      desired_columns: A list of feature column names. Only the columns in
        this list will be added to input metadata.
      output_dict: Dictionary from tf.feature_columns to list of dense tensors.
      drop_duplicate_features: If there are multiple inputs for the same
        feature column, then we will drop all but one if drop_duplicate_features
        is True. If False, we will include them all with unique suffix added
        to the input names to disambiguate.
      group_duplicate_features: If there are multiple inputs for the same
        feature column, then we will group them all as one feature group
        if this parameter is set to True.

    Returns:
      A dictionary that abides to explanation metadata.
    """
    return explain_metadata.ExplainMetadata(
        inputs=self._create_input_metadata(
            features_dict,
            crossed_columns,
            desired_columns,
            drop_duplicate_features=drop_duplicate_features,
            group_duplicate_features=group_duplicate_features),
        outputs=self._create_output_metadata(output_dict),
        framework='Tensorflow',
        tags=[constants.METADATA_TAG]).to_dict()