Changelog
0.13.1
Major changes
Add
digits.npz
as package data insetup.py
. (#221)
0.13.0
Major changes
Switch from TravisCI to CircleCI. (#218)
Add
datasets.load_random_sequences
for generating an arbitrarily sized dataset of sequences. (#216)Remove
DeepGRU
andclassifier.rnn
module. (#215)Add
sequentia.datasets
module. (#214)Added
return_scores
argument toKNNClassifier.predict()
to return class scores. (#213)Return
self
infit()
functions. (#213)Update to
hmmlearn
v0.2.7. (#201)Update
HMMClassifier
structure to matchKNNClassifier
. (#200)Remove
'uniform'
KNNClassifier
weighting option. (#192)Fix major
KNNClassifier
label scoring bug - thanks @manisci. (#187)
Minor changes
Update
CONTRIBUTING.md
CI instructions. (#219)Update HMM tests to use
datasets
module. (#217)Add
tslearn
as a core dependency. (#216)Remove
torchaudio
,torchvision
andtorchfsdd
dependencies. (#214)Add playable audio to notebooks via
play_audio
helper. (#214)Update
README.md
and documentation. (#202)Add
Jinja2
dependency for RTD. (#188)
0.12.1
KNNClassifier
has a major bug in all versions prior to and including v0.12.1 resulting in inaccurate predictions (see #186).
GMMHMM
andHMMClassifier
have a major bug in all versions prior to and including v0.12.1 as a result of two bugs in theGMMHMM
class inhmmlearn
versions before v0.2.7 (see #193).⚠️ Please use version v0.13.0 or later.
Major changes
Remove
requirements.py
due to import error. (#182)
0.12.0
Major changes
Rework preprocessing module (see #177). (#179)
Add
Custom
transformation.Rename
Preprocess
toCompose
.Don’t validate observation sequences after each transformation in
Compose
.Remove progress bars and
verbose
parameter.Stop unnecessarily copying each observation sequence before transformations.
Change
transform()
function onTransform
objects to accept a single observation sequence.Remove
_apply()
function onTransform
objects.Make
_is_fitted()
public onTransform
objects (change tois_fitted()
).Use
__str__
instead of_describe()
for transformation descriptions.
Remove need to send
DeepGRU
to device explicitly, so we can now doDeepGRU(..., device=device)
instead ofDeepGRU(..., device=device).to(device)
. (#178)Add
dev
,test
,docs
andnotebooks
extras. (#174)Remove
Equalize
transform as it goes against the point of variable-length sequence classification. (#172)Change
TrimZeros
transform toTrimConstants
, allowing any constant-valued observation to be trimmed. (#172)Add DeepGRU classifier implementation. (#169)
Add
sequentia[torch]
extra for optionaltorch
CPU installation. (#169)
Minor changes
Keep batch lengths on CPU (pytorch/pytorch#43227). (#178)
Remove
docs/requirements.txt
and specifydocs
extra in.readthedocs.yml
. (#176)Move Sphinx extensions from
docs/conf.py
torequirements.py
. (#176)Bump development status classifier to beta. (#175)
Move package dependency specifications to
requirements.py
. (#174)Add
docs/README.md
,notebooks/README.md
andlib/test/README.md
. (#174)Update HMM classifier diagram. (#173)
Add build status to
README.md
. (#171)Fix patch description in
CONTRIBUTING.md
. (#170)
0.11.1
Major changes
Fix validation for univariate sequences. (#164)
Minor changes
0.11.0
Major changes
Add trailing underscore to variables containing trainable parameters (see #154). (#158)
Add properties for GMM emission distribution parameters (see #153). (#156)
Add selective
GMMHMM
parameter freezing/unfreezing (see #150). (#155)Fix random transition matrix initialization for
_LeftRightTopology
(see #149). (#151)
Minor changes
Add access to Baum-Welch algorithm convergence monitor (see #139). (#162)
Prefix
_Validator
functions withis_
(see #159). (#161)Add validation for checking fitted parameters (see #157). (#160)
Clean up
__repr__
forGMMHMM
,HMMClassifier
andKNNClassifier
. (#160)Add classifier documentation links to
README.md
. (#152)Simplify random transition matrix initialization for
_LinearTopology
and_LeftRightTopology
. (#151)
0.10.3
Major changes
Minor changes
Add @Prhmma as a contributor for #145. (#146)
0.10.2
Major changes
Minor changes
0.10.1
Minor changes
0.10.0
Major changes
Switch out ``pomegranate` <https://github.com/jmschrei/pomegranate>`_ HMM backend to ``hmmlearn` <https://github.com/hmmlearn/hmmlearn>`_. (#105)
Remove separate HMM and GMM-HMM implementations – only keep a single GMM-HMM implementation (in the
GMMHMM
class) and treat multivariate Gaussian emission HMM as a special case of GMM-HMM. (#105)Support string and numeric labels by using label encodings (from ``sklearn.preprocessing.LabelEncoder` <https://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.LabelEncoder.html>`_). (#105)
Add support for Python v3.6, v3.7, v3.8, v3.9 and remove support for v3.5. (#105)
Switch from approximate DTW algorithm (``fastdtw` <https://github.com/slaypni/fastdtw>`_) to exact implementation (``dtaidistance` <https://github.com/wannesm/dtaidistance>`_) for
KNNClassifier
. (#106)
Minor changes
Switch to use duck-typing for iterables instead of requiring lists. (#105)
Rename ‘strict left-right’ HMM topology to ‘linear’. (#105)
Switch
m2r
tom2r2
, asm2r
is no longer maintained. (#105)Change
covariance
tocovariance_type
, to matchhmmlearn
. (#105)Use
numpy.random.RandomState(seed=None)
as default instead ofnumpy.random.RandomState(seed=0)
. (#105)Switch
KNNClassifier
serialization from HDF5 to pickling. (#106)Use ``intersphinx` <https://www.sphinx-doc.org/en/master/usage/extensions/intersphinx.html>`_ for external documentation links, e.g. to
numpy
. (#108)Change
MinMaxScale
bounds to floats. (#112)Add
__repr__
function toGMMHMM
,HMMClassifier
andKNNClassifier
. (#120)Use feature-independent warping (DTWI). (#121)
Ensure minimum Sakoe-Chiba band width is 1. (#126)
0.7.2
Major changes
Stop referring to sequences as temporal, as non-temporal sequences can also be used. (#103)
0.7.1
Major changes
Fix deserialization for
KNNClassifier
. (#93)Sort HDF5 keys before loading as
numpy.ndarray
s.Pass
weighting
function into deserialization constructor.
0.7.0
Major changes
Fix
pomegranate
version to v0.12.0. (#79)Add serialization and deserialization support for all classifiers. (#80)
HMM
,HMMClassifier
: Serialized in JSON format.KNNClassifier: Serialized in [HDF5](https://support.hdfgroup.org/HDF5/doc/H5.intro.html) format.
Finish preprocessing documentation and tests. (#81)
(Internal) Remove nested helper functions in
KNNClassifier.predict()
. (#84)Add strict left-right HMM topology. (#85)
Note: This is the more traditional left-right HMM topology.Implement GMM-HMMs in the
GMMHMM
class. (#87)Implement custom, uniform and frequency-based HMM priors. (#88)
Implement distance-weighted DTW-kNN predictions. (#90)
Rename
DTWKNN
toKNNClassifer
. (#91)
Minor changes
v0.7.0a1
Major changes
Minor changes
Fix typos and update preprocessing information in
README.md
. (#76)
0.6.1
Major changes
Remove strict requirement of Numpy arrays being two-dimensional by using
numpy.atleast_2d
to convert one-dimensional arrays into 2D. (#70)
Minor changes
As the HMM classifier is not a true ensemble of HMMs (since each HMM doesn’t really contribute to the classification), it is no longer referred to as an ensemble. (#69)
0.6.0
Major changes
Add package tests and Travis CI support. (#56)
Remove Python v3.8+ support. (#56)
Rename
normalize
preprocessing method tocenter
, since it just centers an observation sequence. (#62)Add
standardize
preprocessing method for standardizing (standard scaling) an observation sequence. (#63)Add
trim_zeros
preprocessing method for removing zero-observations from an observation sequence. (#67)
Minor changes
0.5.0
Major changes
Add
Preprocess.summary()
to display an ordered summary of preprocessing transformations. (#54)Add mean and median filtering preprocessing methods. (#48)
Use median filtering and decimation downsampling by default. (#52)
Modify preprocessing boundary conditions (#51):
Use a bi-directional window for filtering to resolve boundary problems.
Modify downsampling method to downsample residual observations.
Minor changes
0.4.0
Major changes
Re-add
euclidean
metric asDTWKNN
default. (#43)
Minor changes
Add explicit labels to
evaluate()
inHMMClassifier
example. (#44)
0.3.0
Major changes
Add proper documentation, hosted on Read The Docs. (#40, #41)
0.2.0
Major changes
Add multi-processing support for
DTWKNN
predictions. (#29)Rename the
fit_transform()
function inPreprocess
totransform()
since there is nothing being fitted. (#35)Modify package classifiers in
setup.py
(#31):Set development status classifier to
Pre-Alpha
.Add Python version classifiers for v3.5+.
Specify UNIX and macOS operating system classifiers.
Minor changes
0.1.0
Major changes
Nothing, initial release!