d3m.primitive_interfaces.distance

class d3m.primitive_interfaces.distance.PairwiseDistanceLearnerPrimitiveBase(*, hyperparams, random_seed=0, docker_containers=None, volumes=None, temporary_directory=None)[source]

Bases: d3m.primitive_interfaces.base.PrimitiveBase[[typing.Inputs, typing.Outputs, typing.Params], typing.Hyperparams], Generic[[typing.Inputs, typing.InputLabels, typing.Outputs, typing.Params], typing.Hyperparams]

A base class for primitives which learn distances (however defined) between two different sets of instances.

Class is parameterized using five type variables, Inputs, InputLabels, Outputs, Params, and Hyperparams.

fit_multi_produce(*, produce_methods, inputs, input_labels, second_inputs, timeout=None, iterations=None)[source]

A method calling fit and after that multiple produce methods at once.

Parameters
  • produce_methods (Sequence[str]) – A list of names of produce methods to call.

  • inputs (~Inputs) – The first set of collections of instances.

  • input_labels (~InputLabels) – A set of class labels for the inputs.

  • second_inputs (~Inputs) – The second set of collections of instances.

  • timeout (Optional[float]) – A maximum time this primitive should take to both fit the primitive and produce outputs for all produce methods listed in produce_methods argument, in seconds.

  • iterations (Optional[int]) – How many of internal iterations should the primitive do for both fitting and producing outputs of all produce methods.

Returns

A dict of values for each produce method wrapped inside MultiCallResult.

Return type

MultiCallResult

multi_produce(*, produce_methods, inputs, second_inputs, timeout=None, iterations=None)[source]

A method calling multiple produce methods at once.

Parameters
  • produce_methods (Sequence[str]) – A list of names of produce methods to call.

  • inputs (~Inputs) – The first set of collections of instances.

  • second_inputs (~Inputs) – The second set of collections of instances.

  • timeout (Optional[float]) – A maximum time this primitive should take to produce outputs for all produce methods listed in produce_methods argument, in seconds.

  • iterations (Optional[int]) – How many of internal iterations should the primitive do.

Returns

A dict of values for each produce method wrapped inside MultiCallResult.

Return type

MultiCallResult

abstract produce(*, inputs, second_inputs, timeout=None, iterations=None)[source]

Computes distance matrix between two sets of data.

Implementations of this method should use inputs_across_samples decorator to mark inputs and second_inputs as being computed across samples.

Parameters
  • inputs (~Inputs) – The first set of collections of instances.

  • second_inputs (~Inputs) – The second set of collections of instances.

  • timeout (Optional[float]) – A maximum time this primitive should take to produce outputs during this method call, in seconds.

  • iterations (Optional[int]) – How many of internal iterations should the primitive do.

Return type

CallResult[~Outputs]

Returns

A n by m distance matrix describing the relationship between each instance in inputs[0] and each instance in inputs[1] (n and m are the number of instances in inputs[0] and inputs[1], respectively), wrapped inside CallResult.

abstract set_training_data(*, inputs, input_labels)[source]

Sets training data of this primitive.

Parameters
  • inputs (~Inputs) – The inputs.

  • input_labels (~InputLabels) – A set of class labels for the inputs.

Return type

None

docker_containers: Dict[str, d3m.primitive_interfaces.base.DockerContainer][source]

A dict mapping Docker image keys from primitive’s metadata to (named) tuples containing container’s address under which the container is accessible by the primitive, and a dict mapping exposed ports to ports on that address.

hyperparams: Hyperparams[source]

Hyperparams passed to the constructor.

logger: ClassVar[logging.Logger][source]

Primitive’s logger. Available as a class attribute. This gets automatically set to primitive’s logger in metaclass.

metadata: ClassVar[d3m.metadata.base.PrimitiveMetadata][source]

Primitive’s metadata. Available as a class attribute. Primitive author should provide all fields which cannot be determined automatically inside the code. In this way metadata is close to the code and it is easier for consumers to make sure metadata they are using is really matching the code they are using. PrimitiveMetadata class updates itself with metadata about code and other things it can extract automatically.

random_seed: int[source]

Random seed passed to the constructor.

temporary_directory: Optional[str][source]

An absolute path to a temporary directory a primitive can use to store any files for the duration of the current pipeline run phase. Directory is automatically cleaned up after the current pipeline run phase finishes.

volumes: Dict[str, str][source]

A dict mapping volume keys from primitive’s metadata to file and directory paths where downloaded and extracted files are available to the primitive.

class d3m.primitive_interfaces.distance.PairwiseDistanceTransformerPrimitiveBase(*, hyperparams, random_seed=0, docker_containers=None, volumes=None, temporary_directory=None)[source]

Bases: d3m.primitive_interfaces.transformer.TransformerPrimitiveBase[[typing.Inputs, typing.Outputs], typing.Hyperparams]

A base class for primitives which compute distances (however defined) between two different sets of instances without learning any sort of model.

fit_multi_produce(*, produce_methods, inputs, second_inputs, timeout=None, iterations=None)[source]

A method calling fit and after that multiple produce methods at once.

Parameters
  • produce_methods (Sequence[str]) – A list of names of produce methods to call.

  • inputs (~Inputs) – The first set of collections of instances.

  • second_inputs (~Inputs) – The second set of collections of instances.

  • timeout (Optional[float]) – A maximum time this primitive should take to both fit the primitive and produce outputs for all produce methods listed in produce_methods argument, in seconds.

  • iterations (Optional[int]) – How many of internal iterations should the primitive do for both fitting and producing outputs of all produce methods.

Returns

A dict of values for each produce method wrapped inside MultiCallResult.

Return type

MultiCallResult

multi_produce(*, produce_methods, inputs, second_inputs, timeout=None, iterations=None)[source]

A method calling multiple produce methods at once.

Parameters
  • produce_methods (Sequence[str]) – A list of names of produce methods to call.

  • inputs (~Inputs) – The first set of collections of instances.

  • second_inputs (~Inputs) – The second set of collections of instances.

  • timeout (Optional[float]) – A maximum time this primitive should take to produce outputs for all produce methods listed in produce_methods argument, in seconds.

  • iterations (Optional[int]) – How many of internal iterations should the primitive do.

Returns

A dict of values for each produce method wrapped inside MultiCallResult.

Return type

MultiCallResult

abstract produce(*, inputs, second_inputs, timeout=None, iterations=None)[source]

Computes distance matrix between two sets of data.

Implementations of this method should use inputs_across_samples decorator to mark inputs and second_inputs as being computed across samples.

Parameters
  • inputs (~Inputs) – The first set of collections of instances.

  • second_inputs (~Inputs) – The second set of collections of instances.

  • timeout (Optional[float]) – A maximum time this primitive should take to produce outputs during this method call, in seconds.

  • iterations (Optional[int]) – How many of internal iterations should the primitive do.

Return type

CallResult[~Outputs]

Returns

A n by m distance matrix describing the relationship between each instance in inputs[0] and each instance in inputs[1] (n and m are the number of instances in inputs[0] and inputs[1], respectively), wrapped inside CallResult.

docker_containers: Dict[str, d3m.primitive_interfaces.base.DockerContainer][source]

A dict mapping Docker image keys from primitive’s metadata to (named) tuples containing container’s address under which the container is accessible by the primitive, and a dict mapping exposed ports to ports on that address.

hyperparams: Hyperparams[source]

Hyperparams passed to the constructor.

logger: ClassVar[logging.Logger][source]

Primitive’s logger. Available as a class attribute. This gets automatically set to primitive’s logger in metaclass.

metadata: ClassVar[d3m.metadata.base.PrimitiveMetadata][source]

Primitive’s metadata. Available as a class attribute. Primitive author should provide all fields which cannot be determined automatically inside the code. In this way metadata is close to the code and it is easier for consumers to make sure metadata they are using is really matching the code they are using. PrimitiveMetadata class updates itself with metadata about code and other things it can extract automatically.

random_seed: int[source]

Random seed passed to the constructor.

temporary_directory: Optional[str][source]

An absolute path to a temporary directory a primitive can use to store any files for the duration of the current pipeline run phase. Directory is automatically cleaned up after the current pipeline run phase finishes.

volumes: Dict[str, str][source]

A dict mapping volume keys from primitive’s metadata to file and directory paths where downloaded and extracted files are available to the primitive.