tbp.monty.frameworks.models.mixins#

tbp.monty.frameworks.models.mixins.no_reset_evidence#

class HypothesesUpdaterChannelTelemetry(hypotheses_updater: dict[str, Any], evidence: npt.NDArray[np.float64], rotations: npt.NDArray[np.float64], pose_errors: npt.NDArray[np.float64]) None[source]#

Bases: object

Telemetry from HypothesesUpdater for a single input channel.

__init__(hypotheses_updater, evidence, rotations, pose_errors)#
evidence: npt.NDArray[np.float64]#

The hypotheses evidence scores.

hypotheses_updater: dict[str, Any]#

Any telemetry from the hypotheses updater.

pose_errors: npt.NDArray[np.float64]#

Rotation errors relative to the target pose.

rotations: npt.NDArray[np.float64]#

Rotations of the hypotheses.

Note that the buffer encoder will encode those as euler “xyz” rotations in degrees.

class TheoreticalLimitLMLoggingMixin[source]#

Bases: object

Mixin that adds theoretical limit and pose error logging for learning modules.

This mixin augments the learning module with methods to compute and log:
  • The maximum evidence score for each object.

  • The theoretical lower bound of pose error on the target object, assuming Monty had selected the best possible hypothesis (oracle performance).

  • The actual pose error of the most likely hypothesis (MLH) on the target object.

These metrics are useful for analyzing the performance gap between the model’s current inference and its best achievable potential given its internal hypotheses.

Compatible with:
  • EvidenceGraphLM

HypothesesUpdaterGraphTelemetry#

HypothesesUpdaterChannelTelemetry indexed by input channel.

alias of Dict[str, HypothesesUpdaterChannelTelemetry]

HypothesesUpdaterTelemetry#

HypothesesUpdaterGraphTelemetry indexed by graph ID.

alias of Dict[str, Dict[str, HypothesesUpdaterChannelTelemetry]]