From b8cf78631357edaa8b5ccbb9a20fc7cfa1df133e Mon Sep 17 00:00:00 2001
From: Rui Zhang <rui.zhang@cern.ch>
Date: Sat, 15 Oct 2022 12:41:02 +0200
Subject: [PATCH] Switch to obs-exp as active learning target

---
 limitSetting/limitSetting.py | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/limitSetting/limitSetting.py b/limitSetting/limitSetting.py
index 71fdf1f..a7f1787 100644
--- a/limitSetting/limitSetting.py
+++ b/limitSetting/limitSetting.py
@@ -836,18 +836,20 @@ def writeLimitsToCSV( limitDict ):
         for csvLine in csvMetaList: writer.writerow(csvLine)
 
 
-    limit = 0
+    limit_exp, limit_obs = 0
     with open ('limits.csv') as f:
         reader = csv.DictReader(f)
         for row in reader:
             for (k,v) in row.items():
                 if k == 'bestEstimate':
-                    limit = float(v)
+                    limit_obs = float(v)
+                if k == 'expectedLimit':
+                    limit_exp = float(v)
     import json
     import numpy as np
     result = {}
     with open('output.json', 'w') as f:
-        result['loss'] = limit
+        result['loss'] = limit_obs - limit_exp # let active learning searching for excess
         print(result)
         json.dump(result, f, indent=2)
 
-- 
GitLab