summaryrefslogtreecommitdiff
path: root/lib/model.py
AgeCommit message (Collapse)AuthorLines
2021-03-16move codependent parameter detection to Model / ModelAttributeDaniel Friesel-1/+4
Still TODO: Ignore codependent parameters when partitioning data for analytic modeling / regression
2021-03-08model.assess: remove superfluous "by_name" indirectionDaniel Friesel-11/+8
2021-03-08add dataref exportDaniel Friesel-0/+42
2021-03-05promote sub-state models to a first-class modeling citizenDaniel Friesel-64/+23
get_fitted_sub is no longer present, sub-state models are part of get_fitted now
2021-03-04Restore --export-energymodelDaniel Friesel-2/+1
2021-03-03Remove ModelInfo; add info to ModelFunction insteadDaniel Friesel-4/+4
2021-03-02ModelAttribute + sub-classes: add to_json methodDaniel Friesel-3/+14
2021-03-02PTAModel: Turn states, transitions, and states_and_transitions into attributesDaniel Friesel-33/+24
2021-03-02AnalyticModel, PTAModel: refactor assess()Daniel Friesel-21/+9
2021-03-02ModelAttribute: remove get_fitted(), use .model_function, .model_info insteadDaniel Friesel-6/+7
2021-03-02Move ParallelParamFit to a separate moduleDaniel Friesel-322/+3
2021-03-02move ModelAttribute to parameters moduleDaniel Friesel-247/+6
2021-03-01Set DFATOOL_NO_PARAM to disable parameter fittingDaniel Friesel-0/+2
2021-03-01get_fitted: also provide information on static (sub)modelsDaniel Friesel-2/+5
2021-02-26refactor param_info, show splits in analyze-archive outputDaniel Friesel-28/+17
2021-02-26add simple decisiontree testDaniel Friesel-1/+1
2021-02-25kinda proper dtree support (todo: refactoring)Daniel Friesel-7/+30
2021-02-25pelt_refine: Fix "no sub-states" handlingDaniel Friesel-1/+1
2021-02-25Adjust ParamStats interface in preparation for decision-tree modelsDaniel Friesel-23/+166
2021-02-24cluster and re-fit sub-statesDaniel Friesel-72/+91
2021-02-24lut_median_getter: handle param tuples, not just listsDaniel Friesel-1/+4
2021-02-24do not hard-code substate namesDaniel Friesel-8/+11
2021-02-24treat last sub state as tail / default stateDaniel Friesel-7/+16
use application-provided total state duration instead of model to determine duration of last sub-state in get_fitted_sub
2021-02-23draft for clustering of parameter-independent sub-statesDaniel Friesel-91/+96
2021-02-23analyze-archive: show substate model quality in tableDaniel Friesel-1/+15
2021-02-22add simple sub-state model accessor and evaluationDaniel Friesel-2/+34
2021-02-22properly handle static submodel attributesDaniel Friesel-27/+36
TODO: fitting and submodel usage in parent
2021-02-22PELT: Increase parallelismDaniel Friesel-9/+13
2021-02-19start modeling of individual sub-statesDaniel Friesel-16/+93
2021-02-18refactor model generation from Analytic/PTAModel into ModelAttribute classDaniel Friesel-309/+210
Iteration over states/transitions and model attributes is no longer hardcoded into most model generation code. This should make support for decision trees and sub-states much easier.
2021-02-15debug outputDaniel Friesel-2/+4
2021-02-15Limit PELT via --with-substates=name_filter=state_or_transition_nameDaniel Friesel-12/+12
2021-02-12PELT: use variable penalty for benchmark repetationsDaniel Friesel-9/+22
Previously, the first measurement of each by_param entry determined its penalty, and all subsequenc measurements in it were analyzed with this penalty. This lead to some of them coming up with a different number of sub-states and being ignored. Now, all by_param entries are passed to the kneedle / plateau algorithm, and each gets its own penalty. In most cases, this leads to all entries rporting the same number of sub-states, so far less need to be ignored.
2021-01-11evaluate E = P*t model. Seems slightly better in some casesDaniel Friesel-0/+16
TODO: Fix send duration model generation for cc1200, should improve eval
2021-01-08model transition power, not energyDaniel Friesel-0/+2
in contrast to duration/energy, duration/power are independent
2020-11-04wipDaniel Friesel-0/+44
2020-11-03analyze number of substates per stateDaniel Friesel-21/+86
2020-11-02Do not pass the entirety of by_nane/by_param to subprocessesDaniel Friesel-41/+27
This should speed up analysis quite a bit and also reduce memory usage significantly
2020-11-02Simplify PELT usage. remove kneedle, refactor codeDaniel Friesel-10/+18
2020-10-09add sub-state generationDaniel Friesel-1/+6
2020-10-08BA Janis import: working detection of optimal number of changepointsDaniel Friesel-2/+23
2020-07-15Allow state-only PTAModel to be converted to JSON without underlying PTADaniel Friesel-2/+6
2020-07-09Remove unimplemented discard-outliers optionsDaniel Friesel-9/+0
2020-07-06Remove co-dependent parameter detection codeDaniel Friesel-25/+0
It doesn't work and is not methodically sound. Decision/Regression Trees seem to be the way to go
2020-07-06Move ParamFit, PTAModel, AnalyticModel to model.py moduleDaniel Friesel-0/+1186