⚡️ `mgm-hurry` - Automatically fix HyperOpt result output if `precision` is used
Rikj000 opened this issue · comments
With the current implementation of the precision setting the output of the HyperOpt results won't be corrected with a precision
different from 1.
Which leads to the users having to run the Importance Calculator manually with --precision-used
to manually fix their results.
See: Docs - FAQ
Example of what's wrong
With a min
search space value of 10,
and a max
search space value of 100,
and a precision
value of 0.2
Then the actual min
search space value will be 2 (min
x precision
),
and the actual max
search space value will be 20! (max
x precision
)
While HyperOpting, MGM will automatically divide the values with the precision
parameter again,
so the actually used min
search space value is still 10 (2 / 0.2)
so the actually used max
search space value is still 100 (20 / 0.2).
Which is a bit hard to grasp, but it effectively allows us to modify the step size of the HyperOpt.
However since in reality the search space is only between 2 - 20,
the HyperOpt output won't be divided again with the precision
parameter
Proposed fix
🔲 In MoniGoManiConfig
's function we can make the save_weak_strong_signal_overrides()
function fetch the precision
from mgm_config_files['mgm-config']
and then override the found value if the precision
is different from 1.
The override values would be new_value = found_value / precision
.
🔲 However we will need to check in MasterMoniGoManiHyperStrategy
if this would not mess up HO2s when the corrected values are loaded in.
🔲 Once this is implemented then we can scrap --precision-used
from the signal importance calulator & update the documentation.