summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md2
-rwxr-xr-xbin/analyze-kconfig.py2
-rwxr-xr-xexamples/busybox.sh2
-rw-r--r--lib/loader/kconfig.py2
4 files changed, 4 insertions, 4 deletions
diff --git a/README.md b/README.md
index 73e8dc9..de9d078 100644
--- a/README.md
+++ b/README.md
@@ -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(