Report how well the base coefficients are identified
The base layer (loss, heat, bias) showed values only, so a zone with weeks of samples looked equally trustworthy whether or not the data ever varied its inputs. Each base coefficient now reports a confidence from its own posterior variance, as the extended and ventilation layers already did: it stays at 0 for `heat` while the relay never cycles and below 0.8 for `loss` and `bias` while the indoor-outdoor difference is steady. Readiness is unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
26c415fa6c
commit
a44163a57d
4 files changed
+47
-2
No files matched your search
@@ -785,6 +785,11 @@ class BoundaryTests(unittest.IsolatedAsyncioTestCase):
|
||||
self.assertEqual(details['model_in_use'], 'extended')
|
||||
self.assertGreater(details['contributions_c_per_h']['internal'], 0.2)
|
||||
self.assertTrue(details['coefficients']['extended']['internal']['identified'])
|
||||
# The base layer reports how well each coefficient is pinned down too.
|
||||
base = details['coefficients']['base']
|
||||
self.assertEqual(set(base), {'loss', 'heat', 'bias'})
|
||||
self.assertEqual(base['heat']['confidence'], data['models']['office']['confidence']['heat'])
|
||||
self.assertGreater(base['heat']['confidence'], 0.8)
|
||||
# Replayed against what happened, the electrical term removes most of the base error.
|
||||
accuracy = data['forecast_accuracy'][60]
|
||||
self.assertLess(accuracy['mae'], 0.06)
|
||||
|
||||
Reference in new issue
Block a user