Download code/validation/src/metrics.py from lsh9034/ci-net: direct link, hf CLI and curl.
- Browser
- Download file 921 Bytes
-
https://huggingface.co/lsh9034/ci-net/resolve/main/code/validation/src/metrics.py
- Command line
-
hf download hf://lsh9034/ci-net/code/validation/src/metrics.py
-
curl -L -o metrics.py https://huggingface.co/lsh9034/ci-net/resolve/main/code/validation/src/metrics.py
921 Bytes
| """Metric helpers for object-based validation.""" | |
| from __future__ import annotations | |
| def safe_div(num: float, den: float, default: float | None = None) -> float | None: | |
| if den == 0: | |
| return default | |
| return float(num) / float(den) | |
| def compute_scores(hits: int, misses: int, falses: int) -> dict: | |
| """Return POD/FAR/CSI/F1 from hit/miss/false counts.""" | |
| hits = int(hits) | |
| misses = int(misses) | |
| falses = int(falses) | |
| return { | |
| "hits": hits, | |
| "misses": misses, | |
| "falses": falses, | |
| "POD": safe_div(hits, hits + misses, default=None), | |
| "FAR": safe_div(falses, hits + falses, default=None), | |
| "CSI": safe_div(hits, hits + misses + falses, default=None), | |
| "F1": safe_div(2 * hits, 2 * hits + misses + falses, default=None), | |
| } | |
| def leadtime_pod(hits: int, misses: int) -> float | None: | |
| return safe_div(hits, hits + misses, default=None) | |