v0.3 coming with new features 😎
Happy New Year, dear friends! 🥳
New features and updated APIs in PyPOTS are brought to you here! In v0.3, we
- added TimesNet as an imputation model;
- simplified the structure of
val_set
. In previous versions, you had to giveindicating_mask
in the dictionaryval_set
that tells PyPOTS to use which values to validate the model. Now you only need to giveX_ori
(i.e.X_intact
before) andX
, both leaving their missing data as NaNs. PyPOTS will handle everything left to evaluate the model for you; - enabled PyPOTS to tune hyperparameters for external models (implemented with the PyPOTS framework but haven't been integrated into PyPOTS);
- updated the package
pypots.data.saving
. Separated the functions for pickle saving and h5py saving, and addedload_dict_from_h5
that can inverse (deserialize) the process ofsave_dict_into_h5
; - fixed some bugs (#255, #263, #266, #280, #282, #286, #289);
What's Changed
- Code refactor by @WenjieDu in #251
- Adding TimesNet as an imputation model by @WenjieDu in #252
- Adding TimesNet, refactoring code, and updating docs by @WenjieDu in #253
- Fixing CSDI gtmask bug by @WenjieDu in #255
- Fixing CSDI
gt_mask
issue, and setting a fixed random seed for testing cases by @WenjieDu in #256 - Making CSDI return all n_sampling_times imputation samples by @WenjieDu in #258
- Adding get_random_seed(), and adding func calc_quantile_crps() by @WenjieDu in #260
- Making CSDI val process same as the original by @WenjieDu in #262
- Fix missing argument attn_dropout in imputation Transformer by @WenjieDu in #263
- Adding visualization functions by @AugustJW in #267
- Add cluster plotting functions in pypots.utils.visualization by @vemuribv in #182
- Fixing unstable nonstationary norm, adding
utils.visual
, and doing some code refactoring by @WenjieDu in #266 - Updating package
pypots.data.saving
by @WenjieDu in #268 - Enabling to tune hyperparameters for outside models implemented with PyPOTS framework by @WenjieDu in #269
- Simplifying the structure of val_set, and using a consistent strategy when lazy-loading val_set by @WenjieDu in #272
- Renaming X_intact into X_ori, and adding matplotlib as a dependency by @WenjieDu in #274
- Simplifying val_set, renaming X_intact, and adding unit tests for the visual package by @WenjieDu in #275
- Update GP-VAE by @WenjieDu in #277
- Updating GP-VAE, adding load_dict_from_h5, etc. by @WenjieDu in #278
- Adding _check_inputs() for error calculation functions by @WenjieDu in #279
- Fixing CSDI, adding placeholder for epoch num in logging by @WenjieDu in #280
- Fixing the infinite loop in LOCF by @WenjieDu in #282
- Update docs by @WenjieDu in #285
- Updating docs, fixing CSDI&LOCF&MRNN, and adding the strategy to save all models by @WenjieDu in #284
- Making PyPOTS able to save all models during training, checking if d_model=n_heads*d_k for SAITS and Transformer by @WenjieDu in #287
- Fixing MRNN by @WenjieDu in #286
- Fix issues in MRNN and update the hyperparameter tuning functionality by @WenjieDu in #288
- Fixing the type error of random_seed in pypots.cli.tuning and updating the docs by @WenjieDu in #289
- Updating load_dict_from_h5() by @WenjieDu in #290
Full Changelog: v0.2.1...v0.3