diff options
-rw-r--r-- | README.md | 2 | ||||
-rwxr-xr-x | bin/analyze-kconfig.py | 2 | ||||
-rwxr-xr-x | examples/busybox.sh | 2 | ||||
-rw-r--r-- | lib/loader/kconfig.py | 2 |
4 files changed, 4 insertions, 4 deletions
@@ -130,7 +130,7 @@ The following variables may be set to alter the behaviour of dfatool components. | `DFATOOL_XGB_REG_LAMBDA` | 0 .. **1** .. *n* | XGBoost L2 regularization term on weight. | | `OMP_NUM_THREADS` | *number of CPU cores* | Maximum number of threads used per XGBoost learner. A limit of 4 threads appears to be ideal. Note that dfatool may spawn several XGBoost instances at the same time. | | `DFATOOL_KCONF_IGNORE_NUMERIC` | **0**, 1 | Ignore numeric (int/hex) configuration options. Useful for comparison with CART/DECART. | -| `DFATOOL_KCONF_IGNORE_STRING` | **0**, 1 | Ignore string configuration options. Useful for comparison with CART/DECART. | +| `DFATOOL_KCONF_IGNORE_STRING` | 0, **1** | Ignore string configuration options. These often hold compiler paths and other not really helpful information. | | `DFATOOL_FIT_LINEAR_ONLY` | **0**, 1 | Only consider linear functions (a + bx) in regression analysis. Useful for comparison with Linear Model Trees / M5. | | `DFATOOL_REGRESSION_SAFE_FUNCTIONS` | **0**, 1 | Use safe functions only (e.g. 1/x returnning 1 for x==0) | | `DFATOOL_DTREE_NONBINARY_NODES` | 0, **1** | Enable non-binary nodes (i.e., nodes with more than two children corresponding to enum variables) in decision trees | diff --git a/bin/analyze-kconfig.py b/bin/analyze-kconfig.py index e17e383..7714fdc 100755 --- a/bin/analyze-kconfig.py +++ b/bin/analyze-kconfig.py @@ -225,7 +225,7 @@ def main(): with open(args.model, "r") as f: observations = json.load(f) - if bool(int(os.getenv("DFATOOL_KCONF_IGNORE_STRING", 0))) or bool( + if bool(int(os.getenv("DFATOOL_KCONF_IGNORE_STRING", 1))) or bool( int(os.getenv("DFATOOL_KCONF_IGNORE_NUMERIC", 0)) ): attributes = KConfigAttributes(args.kconfig_path, None) diff --git a/examples/busybox.sh b/examples/busybox.sh index f1baff1..a53ca3f 100755 --- a/examples/busybox.sh +++ b/examples/busybox.sh @@ -105,7 +105,7 @@ Once everything is done, you have various options for generating a kconfig-webco To do so, call bin/analyze-kconfig.py from the data directory. For example, to generate a CART: -> DFATOOL_DTREE_SKLEARN_CART=1 DFATOOL_PARAM_CATEGORIAL_TO_SCALAR=1 DFATOOL_KCONF_IGNORE_STRING=1 DFATOOL_KCONF_WITH_CHOICE_NODES=0 ~/var/ess/aemr/dfatool/bin/analyze-kconfig.py --force-tree --skip-param-stats --export-webconf /tmp/busybox-cart.json ../busybox-1.35.0/Kconfig . +> DFATOOL_DTREE_SKLEARN_CART=1 DFATOOL_PARAM_CATEGORIAL_TO_SCALAR=1 DFATOOL_KCONF_WITH_CHOICE_NODES=0 ~/var/ess/aemr/dfatool/bin/analyze-kconfig.py --force-tree --skip-param-stats --export-webconf /tmp/busybox-cart.json ../busybox-1.35.0/Kconfig . By adding the option "--cross-validation kfold:10", you can determine the model prediction error. diff --git a/lib/loader/kconfig.py b/lib/loader/kconfig.py index e979ddf..8a5605e 100644 --- a/lib/loader/kconfig.py +++ b/lib/loader/kconfig.py @@ -45,7 +45,7 @@ class KConfigAttributes: accepted_symbol_types.remove("int") accepted_symbol_types.remove("hex") - if bool(int(os.getenv("DFATOOL_KCONF_IGNORE_STRING", 0))): + if bool(int(os.getenv("DFATOOL_KCONF_IGNORE_STRING", 1))): accepted_symbol_types.remove("string") self.symbol_names = sorted( |