Releases: ceholden/yatsm
Yet Another Time Series Model (YATSM): v0.6.2
v0.6.2
Bug fix release v0.6.2
from v0.6.x-maintenance
branch.
Fixed
- Fix missing predictions on pixel plotter (commit
9c07f6cbe436bc5063d930b9e9139036a437a94b
,9c07f6cbe436bc5063d930b9e9139036a437a94b
) - Fix issue with synthetic image predictions in
yatsm map
(commitc33ea1c5fbbe835c4bacd6ecea334886442d1af3
) - Clean up output result files of any Python objects (commit
e2e61542689ff7626681c4dfff8da511eab46127
) - With @valpasq, add "seasonal" symbology option to
yatsm pixel
(commite594ecdb52a54b1664c5d062b362e0f05ac7bc23
) CCDCesque
: Fixed for case when a model refit would try to take place
despite n < p (commit5c27bad3f394e35166ae94e3663692ecd7bcfe43
)
Yet Another Time Series Model (YATSM): v0.6.1
Bug fix release and beginning of v0.6.x
maintenance branch.
v0.6.1 - 2016-05-12
Version v0.6.x
will be backward patched for any bug fixes (for an undetermined amount of time) as version v0.7.0
will introduce backwards incompatible changes in order to enable incorporation of data from multiple sensors and to better link time series models together in a cohesive pipeline.
Fixed
Yet Another Time Series Model (YATSM): v0.6.0
v0.6.0 - 2016-04-22
Changed
CCDCesque
: Optimize algorithm implementation. Performance
estimates show 2x speed gain
#70- CLI: Improve
yatsm pixel
by enabling the plotting of multiple
refit model estimates on the same graph
(commit) - CLI: Improve
yatsm pixel
--embed
option
(commit) - CLI: Add
--verbose-yatsm
to mainyatsm
command so it works with
all programs running a YATSM algorithm
(commit) - Use
setuptools
entry points to point YATSM to available time
series algorithms
(commit)
Added
- Expose
stay_regularized
for segment refitting steps
#74 - Add capability to specify
fit
section for statistical estimators
that are passed to thefit
method of the estimator
#61 CCDCesque
: allow specification ofmin_rmse
per band using an
array or just one value for all bands
#75- Add submodule
yatsm.regression.diagnostics
for regression
diagostics, including RMSE
(commit) - Add new module
yatsm.accel
with decorator (try_jit
) that applies
numba.jit
to functions only ifnumba
is available
#70 - Apply
yatsm.accel.try_jit
to calculation of
yatsm.regression.diagnostics.rmse
,
yatsm.regression.robust_fit.RLM
, and others
#70 - Benchmark algorithm performance across project history using
Airspeed Velocity
#71 - Improve
clean
target in package'ssetup.py
so it deletes built
estimator pickles and.c
/.so
built with Cython
(commit) - Increase test coverage from ~20% to ~80%
- Added documentation to Read the Docs
Fixed
CCDCesque
: Fix bug in calculation ofend
attribute for last
timeseries record
#72CCDCesque
: Fix bug in parsing oftest_indices
if user doesn't
supply any #73- "Packaged" estimator pickles are built on installation of YATSM so
they will work with user versions of libraries
(commit) - Fix
DeprecationWarnings
withscikit-learn>=0.17.0
(commit) yatsm.regression.robust_fit.RLM
: Fix a bug caused by dividing
by zero. This bug only occurs when the number of observations in a
time series segment is approximately equal to the number of
parameters (n ~= k
)
#86- Fix NumPy deprecation warnings and improve
yatsm changemap num
performance #83
Yet Another Time Series Model (YATSM): v0.5.5
v0.5.5 - 2015-11-24
Added
- Abort if config file 'n_bands' looks incorrect (commit)
Changed
- Reorganize long term mean phenology code into generic phenology related submodule.
- Reorganize changemap and map logic to separate module #60
Fixed
- Fix bug with spline EVI prediction in LTM phenology module when data include last day in leap year (366) #56
- Fix bug with phenology half-max calculation that created erroneous transition dates #58
- Fix bug with phenology calculation for 100% masked data pixels #54
- Fix
yatsm pixel
to correctly plot designs that include categorical variables (commit) - Fix passing of a list of dataset min/max values within config files instead of 1 number #59
- Add missing
phenology
module tosetup.py
(commit)
Yet Another Time Series Model (YATSM): v0.5.4
Fixed
- Fix multiple bugs encountered when running phenology estimates #49
Changed
- Metadata from
yatsm line
runs are now stored inmetadata
sub-file of NumPy compressed saved files #53 - Algorithm configurations must now declare subsections that match estimator methods (e.g.,
init
andfit
) #52 - Refactored
yatsm.phenology
to makeLongTermMeanPhenology
estimator followscikit-learn
API #50
Added
- Add
--num_threads
option toyatsm
CLI. This argument sets various environment variables (e.g.,OPENBLAS_NUM_THREADS
orMKL_NUM_THREADS
) before beginning computation to set or limit multithreaded linear algebra calculations within NumPy #51 - Add a changelog!
Yet Another Time Series Model (YATSM): v0.5.3
Bug fixes from v0.5.0
and onward:
Changes:
v0.5.3
- Fix bug when running on real datasets with 100% missing data in timeseries (e.g., in corners) #47 #48
- Fix
yatsm train
andyatsm classify
forv0.5.0
+ releases - Update config file parsing to
sklearn
classifiers foryaml
usage. Delete intermediate 'helper' classes that were used to type-checkini
config file
v0.5.2
:
- Catch
TSLengthException
soyatsm line
can continue running #43 - Allow refit methods to be from distributed pickles #44
- Fix references to old variable names in
yatsm.algorithms.postprocess
#45
v0.5.1
:
- Use environment variables in configuration files #42
- Pre-package a set of pickled regressions using
package_data
fromsetuptools
#41
Breaks:
- Need to update classifier YAML configuration files. See example RandomForest configuration file here
Yet Another Time Series Model (YATSM): v0.5.0
Very backwards incompatible release required to redefine project objectives and use better technology (click & YAML) for command line interface. See milestone v0.5.0 for individual tickets.
Highlights include:
- CLI conversion to use
click
#28- All sub-commands listed with
yatsm
command for better visibility
- All sub-commands listed with
- Redefine
YATSM
as baseclass & addCCDCesque
implementation #29 - Specify prediction algorithm using pickles to set hyperparameters #26
- Configuration file using YAML for easier organization & more sustainable parsing #30
- Refactored
robust
fit into more generalizedrefit
step. User canrefit
using specified prediction algorithms #33 - Addressed requirement file organization and documentation, including adding
conda
install instructions #32 - Tests now use
py.test
fixtures for better code reuse; test coverage decrease unfortunate side effect
Inevitable bugs will be fixed in v0.5.1.
Yet Another Time Series Model (YATSM): v0.4.1
CCDC style model now includes a "slope test" for stability of training period (see #22).
Enable the "slope test" by adding the following to your model configuration file:
[YATSM]
...
slope_test = True
A True
boolean value will enable the "slope test" as shown in Zhu and Woodcock, 2014
. Specifying a float
value instead will enable the "slope test" but use the specified float
value as the test threshold instead of the default value specified by threshold
.
Yet Another Time Series Model (YATSM): v0.4.0
Model specification improvement and dataset caching improvements. Tasks include:
- Updating cache files with new data
- "cache_yatsm.py" cache dataset updater
- Model design matrix specification using Patsy syntax
- QA/QC for
yatsm_map.py
Move to Patsy style model specification (see #25) makes previous results incompatible with release.