排序test_mql总闭包对比偏差
This commit is contained in:
1 parent
eaafe5eafc
commit
3951bc372c
2 files changed
+30
-1
No files matched your search
@@ -53,6 +53,20 @@ class TestMqlFullStateComparisonRun:
|
||||
def signal_count(self) -> int:
|
||||
return len(self.output.data_paths)
|
||||
|
||||
def metrics_by_max_abs_error(self):
|
||||
return tuple(
|
||||
sorted(
|
||||
self.comparison.metrics,
|
||||
key=lambda metric: metric.max_abs_error,
|
||||
reverse=True,
|
||||
)
|
||||
)
|
||||
|
||||
@property
|
||||
def largest_abs_error_metric(self):
|
||||
metrics = self.metrics_by_max_abs_error()
|
||||
return metrics[0] if metrics else None
|
||||
|
||||
|
||||
@dataclass(frozen=True)
|
||||
class TestMqlFullStateComparisonPathConfig:
|
||||
@@ -175,7 +189,14 @@ def format_test_mql_full_state_comparison_summary(
|
||||
f"Max absolute error: {run.comparison.max_abs_error}",
|
||||
f"Max relative error: {run.comparison.max_rel_error}",
|
||||
]
|
||||
for metric in run.comparison.metrics:
|
||||
largest_metric = run.largest_abs_error_metric
|
||||
if largest_metric is not None:
|
||||
lines.append(
|
||||
"Largest absolute error: "
|
||||
f"{largest_metric.data_path}={largest_metric.max_abs_error}"
|
||||
)
|
||||
lines.append("Metrics by max absolute error:")
|
||||
for metric in run.metrics_by_max_abs_error():
|
||||
lines.append(
|
||||
f" - {metric.data_path}: max_abs_error={metric.max_abs_error}, "
|
||||
f"final_abs_error={metric.final_abs_error}"
|
||||
|
||||
Reference in new issue
Block a user