TSC refactor
See original GitHub issueTime series classifiers should be refactored according to the new extension template.
If you would like to work on this: please post here and which classifier you are taking on, to avoid duplication of work. A core dev will then add your name to the classifier under refactor and/or link the PR.
Checklist of classifiers:
-
BaseColumnEnsembleClassifier
-
ComposableTimeSeriesForestClassifier
-
BOSSEnsemble
,IndividualBOSS
https://github.com/alan-turing-institute/sktime/pull/1544 -
ContractableBOSS
https://github.com/alan-turing-institute/sktime/pull/1295 -
MUSE
https://github.com/alan-turing-institute/sktime/pull/1359 -
TemporalDictionaryEnsemble
,IndividualTDE
https://github.com/alan-turing-institute/sktime/pull/1357 -
WEASEL
https://github.com/alan-turing-institute/sktime/pull/1544 -
MUSE
https://github.com/alan-turing-institute/sktime/pull/1544 -
ElasticEnsemble
#1584 -
ProximityForest
,ProximityStump
,ProximityTree
#1584 -
ShapeDTW
https://github.com/alan-turing-institute/sktime/pull/1554 -
(inherits from _KNeighborsClassifier and calls a version of self._fit in its current fit)KNeighborsTimeSeriesClassifier
-
Catch22Classifier
#1487 -
MatrixProfileClassifier
https://github.com/alan-turing-institute/sktime/pull/1545 -
SignatureClassifier
https://github.com/alan-turing-institute/sktime/pull/1545 -
TSFreshClassifier
#1473 -
HIVECOTEV1
#1504 -
CanonicalIntervalForest
https://github.com/alan-turing-institute/sktime/pull/1269 -
DrCIF
https://github.com/alan-turing-institute/sktime/pull/1269 -
(bit complicated, involves the series_as_features base class)TimeSeriesForestClassifier
-
RandomIntervalSpectralForest
#1583 -
SupervisedTimeSeriesForest
#1583 -
Arsenal
https://github.com/alan-turing-institute/sktime/pull/1305 -
ROCKETClassifier
https://github.com/alan-turing-institute/sktime/pull/1239 -
(deprecated)MrSEQL
-
ShapeletTransformClassifier
#1490
A general recipe for the refactor is as follows:
- go through all the public methods,
fit
,predict
, etc, and change them to the new private version_fit
,_predict
, etc - remove input checks (e.g.,
check_X
) and output operations (e.g., set cutoff) from the private version; make sure these are already all present in theBaseClassifier
. - if there’s an input or output check/operation that looks like it should be in
BaseClassifier
but isn’t, add a note to your PR and make it very explicit; consider adding it toBaseClassifier
but make sure @TonyBagnall and @fkiraly are aware of such a change (ping in PR and ask for review). - make sure all the tests pass. Don’t change any of the tests. (unless there is a really good reason, in which case please explain)
- if there’s an inheritance tree (not just a single class) downstream from
BaseClassifier
, make sure you do the above for all nodes in the inheritance tree - move any “properties” or “capabilities” fields to the
_tags
dictionary. - If new tags are added, ensure they are added to the tag registry. Look up the classifier tags (using
registry.all_tags
) before you add any new ones. Ensure @TonyBagnall and @fkiraly are aware of changes to the tag registry (ping in PR and ask for review).
Issue Analytics
- State:
- Created 2 years ago
- Comments:18 (13 by maintainers)
Top Results From Across the Web
TSC refactor · Issue #1146 · sktime/sktime · GitHub
Time series classifiers should be refactored according to the new extension template. If you would like to work on this: please post here...
Read more >[v7,5/6] KVM: x86: Refactor tsc synchronization code - Patchwork
Refactor kvm_synchronize_tsc to make a new function that allows callers to specify TSC parameters (offset, value, nanoseconds, etc.) explicitly for the sake ...
Read more >How to save typescript compiler errors in json file?
To export your errors into a file, you can use the > -Syntax: tsc .\src\main.ts --pretty > errors.json. Share. Share a link to...
Read more >One way of refactoring untested code
You need to change code that's not tested. How do you know you didn't break something? Here is one concrete way to tackle...
Read more >7-ryan braun brewers lot +2017 topps chrome refactor 26 tsc ...
Julio Rodriguez 2020 Topps Bowman Chrome Top 100 Refactor ... 7-ryan braun brewers lot +2017 topps chrome refactor 26 tsc gold 47 more....
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Hi, sure no problem, can you do it relatively soon? @MatthewMiddlehurst can you leave distance based for now?
Both the hybrid Catch22ForestClassifier and the signature_based package were deprecated and moved to feature_based already. This was done a while back, should be fine to remove the old files now.