d3m.metadata.problem

class d3m.metadata.problem.PerformanceMetric(value)[source]

Bases: d3m.metadata.problem.PerformanceMetricBase, d3m.utils.Enum

An enumeration.

ACCURACY = 'ACCURACY'[source]
F1 = 'F1'[source]
F1_MACRO = 'F1_MACRO'[source]
F1_MICRO = 'F1_MICRO'[source]
HAMMING_LOSS = 'HAMMING_LOSS'[source]
HITS_AT_K = 'HITS_AT_K'[source]
JACCARD_SIMILARITY_SCORE = 'JACCARD_SIMILARITY_SCORE'[source]
MEAN_ABSOLUTE_ERROR = 'MEAN_ABSOLUTE_ERROR'[source]
MEAN_RECIPROCAL_RANK = 'MEAN_RECIPROCAL_RANK'[source]
MEAN_SQUARED_ERROR = 'MEAN_SQUARED_ERROR'[source]
NORMALIZED_MUTUAL_INFORMATION = 'NORMALIZED_MUTUAL_INFORMATION'[source]
OBJECT_DETECTION_AVERAGE_PRECISION = 'OBJECT_DETECTION_AVERAGE_PRECISION'[source]
PRECISION = 'PRECISION'[source]
PRECISION_AT_TOP_K = 'PRECISION_AT_TOP_K'[source]
RECALL = 'RECALL'[source]
ROC_AUC = 'ROC_AUC'[source]
ROC_AUC_MACRO = 'ROC_AUC_MACRO'[source]
ROC_AUC_MICRO = 'ROC_AUC_MICRO'[source]
ROOT_MEAN_SQUARED_ERROR = 'ROOT_MEAN_SQUARED_ERROR'[source]
R_SQUARED = 'R_SQUARED'[source]
class d3m.metadata.problem.Problem(problem_description=None, *, strict_digest=False)[source]

Bases: dict

A class representing a problem.

copy()[source]
Return type

~P

classmethod from_json_structure(structure, *, strict_digest=False)[source]

For standard enumerations we map them from strings. For non-standard problem description fields we used a reversible conversion.

Return type

~P

classmethod from_simple_structure(structure, *, strict_digest=False)[source]
Return type

~P

get_digest()[source]
Return type

str

classmethod load(problem_uri, *, problem_id=None, problem_version=None, problem_name=None, strict_digest=False, handle_score_split=True)[source]

Tries to load problem from problem_uri using all registered problem loaders.

Parameters
  • problem_uri (str) – A URI to load.

  • problem_id (Optional[str]) – Override problem ID determined by the loader.

  • problem_version (Optional[str]) – Override problem version determined by the loader.

  • problem_name (Optional[str]) – Override problem name determined by the loader.

  • strict_digest (bool) – If computed digest does not match the one provided in metadata, raise an exception?

  • handle_score_split (bool) – Rename a scoring problem to not have the same name as testing problem and update dataset references.

Returns

A loaded problem.

Return type

Problem

classmethod register_loader(loader)[source]

Registers a new problem loader.

Parameters

loader (Loader) – An instance of the loader class implementing a new loader.

Return type

None

classmethod register_saver(saver)[source]

Registers a new dataset saver.

Parameters

saver (Saver) – An instance of the saver class implementing a new saver.

Return type

None

save(problem_uri)[source]

Tries to save dataset to problem_uri using all registered problem savers.

Parameters

problem_uri (str) – A URI to save to.

Return type

None

to_json_structure(*, canonical=False)[source]

For standard enumerations we map them to strings. Non-standard problem description fields we convert in a reversible manner.

Return type

Dict

to_simple_structure(*, canonical=False)[source]
Return type

Dict

loaders: List[d3m.metadata.problem.Loader] = [<d3m.metadata.problem.D3MProblemLoader object>, <d3m.metadata.problem.OpenMLProblemLoader object>][source]
savers: List[d3m.metadata.problem.Saver] = [<d3m.metadata.problem.D3MProblemSaver object>][source]
class d3m.metadata.problem.TaskKeyword(value)[source]

Bases: d3m.metadata.problem.TaskKeywordBase, d3m.utils.Enum

An enumeration.

AUDIO = 'AUDIO'[source]
BINARY = 'BINARY'[source]
CLASSIFICATION = 'CLASSIFICATION'[source]
CLUSTERING = 'CLUSTERING'[source]
COLLABORATIVE_FILTERING = 'COLLABORATIVE_FILTERING'[source]
COMMUNITY_DETECTION = 'COMMUNITY_DETECTION'[source]
FORECASTING = 'FORECASTING'[source]
GEOSPATIAL = 'GEOSPATIAL'[source]
GRAPH = 'GRAPH'[source]
GRAPH_MATCHING = 'GRAPH_MATCHING'[source]
GROUPED = 'GROUPED'[source]
IMAGE = 'IMAGE'[source]
LUPI = 'LUPI'[source]
MISSING_METADATA = 'MISSING_METADATA'[source]
MULTICLASS = 'MULTICLASS'[source]
MULTIGRAPH = 'MULTIGRAPH'[source]
MULTILABEL = 'MULTILABEL'[source]
MULTIPLE_INSTANCE_LEARNING = 'MULTIPLE_INSTANCE_LEARNING'[source]
MULTIVARIATE = 'MULTIVARIATE'[source]
NESTED = 'NESTED'[source]
NONOVERLAPPING = 'NONOVERLAPPING'[source]
OBJECT_DETECTION = 'OBJECT_DETECTION'[source]
OVERLAPPING = 'OVERLAPPING'[source]
REGRESSION = 'REGRESSION'[source]
RELATIONAL = 'RELATIONAL'[source]
REMOTE_SENSING = 'REMOTE_SENSING'[source]
SEMISUPERVISED = 'SEMISUPERVISED'[source]
SPEECH = 'SPEECH'[source]
TABULAR = 'TABULAR'[source]
TEXT = 'TEXT'[source]
TIME_SERIES = 'TIME_SERIES'[source]
UNIVARIATE = 'UNIVARIATE'[source]
VERTEX_CLASSIFICATION = 'VERTEX_CLASSIFICATION'[source]
VERTEX_NOMINATION = 'VERTEX_NOMINATION'[source]
VIDEO = 'VIDEO'[source]