From 7d6d1984b010cd2ddb47f04065c528837b53bfba Mon Sep 17 00:00:00 2001 From: Birte Kristina Friesel <birte.friesel@uos.de> Date: Fri, 28 Jun 2024 16:38:40 +0200 Subject: analyze-log: add --information-gain --- bin/analyze-log.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'bin') diff --git a/bin/analyze-log.py b/bin/analyze-log.py index a394b10..50c0344 100755 --- a/bin/analyze-log.py +++ b/bin/analyze-log.py @@ -124,6 +124,9 @@ def main(): if args.info: dfatool.cli.print_info_by_name(model, by_name) + if args.information_gain: + dfatool.cli.print_information_gain_by_name(model, by_name) + if args.export_csv_unparam: dfatool.cli.export_csv_unparam( model, args.export_csv_unparam, dialect=args.export_csv_dialect @@ -278,6 +281,16 @@ def main(): dref = model.to_dref(static_quality, lut_quality, analytic_quality) for key, value in timing.items(): dref[f"timing/{key}"] = (value, r"\second") + + if args.information_gain: + for name in model.names: + for attr in model.attributes(name): + mutual_information = model.mutual_information(name, attr) + for i, param in enumerate(model.parameters): + dref[f"mutual information/{name}/{attr}/{param}"] = ( + mutual_information[i] + ) + dfatool.cli.export_dataref( args.export_dref, dref, precision=args.dref_precision ) -- cgit v1.2.3