diff --git a/README.md b/README.md index 60b5c5a7..587594a0 100644 --- a/README.md +++ b/README.md @@ -161,7 +161,7 @@ And what else? Please read on ;-) 👈 Time series datasets are taken as coffee beans at PyPOTS, and POTS datasets are incomplete coffee beans with missing parts that have their own meanings. To make various public time-series datasets readily available to users, Time Series Data Beans (TSDB) is created to make loading time-series datasets super easy! -Visit [TSDB](https://github.com/WenjieDu/TSDB) right now to know more about this handy tool 🛠, and it now supports a total of 169 open-source datasets! +Visit [TSDB](https://github.com/WenjieDu/TSDB) right now to know more about this handy tool 🛠, and it now supports a total of 170 open-source datasets! PyGrinder logo @@ -185,8 +185,8 @@ POTS algorithms on various tasks. BrewPOTS logo -👉 Now we have the beans, the grinder, and the pot, how to brew us a cup of coffee? Tutorials are necessary! -Considering the future workload, PyPOTS tutorials are released in a single repo, +👉 Now the beans, grinder, and pot are ready, please have a seat on the bench and let's think about how to brew us a cup of coffee. +Tutorials are necessary! Considering the future workload, PyPOTS tutorials are released in a single repo, and you can find them in [BrewPOTS](https://github.com/WenjieDu/BrewPOTS). Take a look at it now, and learn how to brew your POTS datasets! @@ -264,39 +264,38 @@ saits.load("save_it_here/saits_physionet2012.pypots") # reload the serialized m ## ❖ Citing PyPOTS > [!TIP] -> **[Updates in Feb 2024]** 😎 Our survey paper [Deep Learning for Multivariate Time Series Imputation: A Survey](https://arxiv.org/abs/2402.04059) has been released on arXiv. -The code is open source in the GitHub repo [Awesome_Imputation](https://github.com/WenjieDu/Awesome_Imputation). +> **[Updates in Jun 2024]** 😎 The 1st comprehensive time-seres imputation benchmark paper +[TSI-Bench: Benchmarking Time Series Imputation](https://arxiv.org/abs/2406.12747) now is public available. +The code is open source in the repo [Awesome_Imputation](https://github.com/WenjieDu/Awesome_Imputation). +With nearly 35,000 experiments, we provide a comprehensive benchmarking study on 28 imputation methods, 3 missing patterns (points, sequences, blocks), +various missing rates, and 8 real-world datasets. +> +> **[Updates in Feb 2024]** 🎉 Our survey paper [Deep Learning for Multivariate Time Series Imputation: A Survey](https://arxiv.org/abs/2402.04059) has been released on arXiv. We comprehensively review the literature of the state-of-the-art deep-learning imputation methods for time series, provide a taxonomy for them, and discuss the challenges and future directions in this field. -> -> **[Updates in Jun 2023]** 🎉 A short version of the PyPOTS paper is accepted by the 9th SIGKDD international workshop on -Mining and Learning from Time Series ([MiLeTS'23](https://kdd-milets.github.io/milets2023/))). -**Additionally**, PyPOTS has been included as a [PyTorch Ecosystem](https://pytorch.org/ecosystem/) project. -The paper introducing PyPOTS is available on arXiv at [this URL](https://arxiv.org/abs/2305.18811), -and we are pursuing to publish it in prestigious academic venues, e.g. JMLR (track for +The paper introducing PyPOTS is available [on arXiv](https://arxiv.org/abs/2305.18811), +A short version of it is accepted by the 9th SIGKDD international workshop on Mining and Learning from Time Series ([MiLeTS'23](https://kdd-milets.github.io/milets2023/))). +**Additionally**, PyPOTS has been included as a [PyTorch Ecosystem](https://pytorch.org/ecosystem/) project. +We are pursuing to publish it in prestigious academic venues, e.g. JMLR (track for [Machine Learning Open Source Software](https://www.jmlr.org/mloss/)). If you use PyPOTS in your work, please cite it as below and 🌟star this repository to make others notice this library. 🤗 There are scientific research projects using PyPOTS and referencing in their papers. -Here is [an incomplete list of them](https://scholar.google.com/scholar?as_ylo=2022&q=%E2%80%9CPyPOTS%E2%80%9D&hl=en>). +Here is [an incomplete list of them](https://scholar.google.com/scholar?as_ylo=2022&q=%E2%80%9CPyPOTS%E2%80%9D&hl=en). ``` bibtex @article{du2023pypots, title={{PyPOTS: a Python toolbox for data mining on Partially-Observed Time Series}}, author={Wenjie Du}, +journal={arXiv preprint arXiv:2305.18811}, year={2023}, -eprint={2305.18811}, -archivePrefix={arXiv}, -primaryClass={cs.LG}, -url={https://arxiv.org/abs/2305.18811}, -doi={10.48550/arXiv.2305.18811}, } ``` or > Wenjie Du. (2023). > PyPOTS: a Python toolbox for data mining on Partially-Observed Time Series. -> arXiv, abs/2305.18811.https://arxiv.org/abs/2305.18811 +> arXiv, abs/2305.18811. https://arxiv.org/abs/2305.18811 ## ❖ Contribution @@ -340,7 +339,7 @@ We care about the feedback from our users, so we're building PyPOTS community on - [Slack](https://join.slack.com/t/pypots-org/shared_invite/zt-1gq6ufwsi-p0OZdW~e9UW_IA4_f1OfxA). General discussion, Q&A, and our development team are here; - [LinkedIn](https://www.linkedin.com/company/pypots). Official announcements and news are here; -- [WeChat (微信公众号)](https://mp.weixin.qq.com/s/sNgZmgAyxDn2sZxXoWJYMA). We also run a group chat on WeChat, +- [WeChat (微信公众号)](https://mp.weixin.qq.com/s/X3ukIgL1QpNH8ZEXq1YifA). We also run a group chat on WeChat, and you can get the QR code from the official account after following it; If you have any suggestions or want to contribute ideas or share time-series related papers, join us and tell. diff --git a/README_zh.md b/README_zh.md index 90624552..f9ab4913 100644 --- a/README_zh.md +++ b/README_zh.md @@ -145,7 +145,7 @@ PyPOTS当前支持多变量POTS数据的插补,预测,分类,聚类以及 👈 在PyPOTS中,数据可以被看作是咖啡豆,而写的携带缺失值的POTS数据则是不完整的咖啡豆。 为了让用户能够轻松使用各种开源的时间序列数据集,我们创建了开源时间序列数据集的仓库 Time Series Data Beans (TSDB)(可以将其视为咖啡豆仓库), -TSDB让加载开源时序数据集变得超级简单!访问 [TSDB](https://github.com/WenjieDu/TSDB),了解更多关于TSDB的信息,目前总共支持169个开源数据集! +TSDB让加载开源时序数据集变得超级简单!访问 [TSDB](https://github.com/WenjieDu/TSDB),了解更多关于TSDB的信息,目前总共支持170个开源数据集! PyGrinder logo @@ -167,8 +167,8 @@ PyGrinder支持以上所有模式并提供与缺失相关的其他功能函数 BrewPOTS logo -👉 现在我们有了咖啡豆、磨豆机和咖啡壶,那么如何萃取一杯咖啡呢?冲泡教程是必不可少的! -考虑到未来的工作量,PyPOTS的相关教程将发布在一个独立的仓库[BrewPOTS](https://github.com/WenjieDu/BrewPOTS)中。 +👉 现在我们有了咖啡豆(beans)、磨豆机(grinder)和咖啡壶(pot),让我们坐在长凳(bench)上想想如何萃取一杯咖啡呢? +教程必不可少!考虑到未来的工作量,PyPOTS的相关教程将发布在一个独立的仓库[BrewPOTS](https://github.com/WenjieDu/BrewPOTS)中。 点击访问查看教程,学习如何萃取你的POTS数据!

@@ -244,16 +244,16 @@ saits.load("save_it_here/saits_physionet2012.pypots") # 你随时可以重新 ## ❖ 引用PyPOTS > [!TIP] -> **[2024年2月更新]** 😎 我们的综述论文[Deep Learning for Multivariate Time Series Imputation: A Survey](https://arxiv.org/abs/2402.04059) -> 已在 arXiv 上发布,代码也在GitHub项目([Awesome_Imputation](https://github.com/WenjieDu/Awesome_Imputation))上开源。 -> 我们全面调研总结了最新基于深度学习的时间序列插补方法文献并对现有的方法进行分类,除此之外,还讨论了该领域当前的挑战和未来发展方向。 +> **[2024年6月更新]** 😎 第一个全面的时间序列插补基准论文[TSI-Bench: Benchmarking Time Series Imputation](https://arxiv.org/abs/2406.12747)现在来了。 +> 所有代码开源在[Awesome_Imputation](https://github.com/WenjieDu/Awesome_Imputation)仓库中。通过近35,000个实验,我们对28种imputation方法,3种缺失模式(点,序列,块),各种缺失率,和8个真实数据集进行了全面的基准研究。 > -> **[2023年6月更新]** 🎉 PyPOTS的5页短版论文已被第9届SIGKDD international workshop on -Mining and Learning from Time Series ([MiLeTS'23](https://kdd-milets.github.io/milets2023/))收录。 -> 此外,PyPOTS也已被纳入[PyTorch Ecosystem](https://pytorch.org/ecosystem/)。 +> **[2024年2月更新]** 🎉 我们的综述论文[Deep Learning for Multivariate Time Series Imputation: A Survey](https://arxiv.org/abs/2402.04059) +> 已在 arXiv 上发布。我们全面调研总结了最新基于深度学习的时间序列插补方法文献并对现有的方法进行分类,此外,还讨论了该领域当前的挑战和未来发展方向。 -介绍PyPOTS的论文可以通过[该链接](https://arxiv.org/abs/2305.18811)在arXiv上获取,我们正在努力将其发表在更具影响力的学术刊物上, -例如JMLR (track for [Machine Learning Open Source Software](https://www.jmlr.org/mloss/))。 +PyPOTS的论文可以[在arXiv上获取](https://arxiv.org/abs/2305.18811),其5页的短版论文已被第9届SIGKDD international workshop on +Mining and Learning from Time Series ([MiLeTS'23](https://kdd-milets.github.io/milets2023/))收录,与此同时, +PyPOTS也已被纳入[PyTorch Ecosystem](https://pytorch.org/ecosystem/)。我们正在努力将其发表在更具影响力的学术刊物上, +如JMLR (track for [Machine Learning Open Source Software](https://www.jmlr.org/mloss/))。 如果你在工作中使用了PyPOTS,请按照以下格式引用我们的论文并为将项目设为星标🌟,以便让更多人关注到它,对此我们深表感谢🤗。 据不完全统计,该[列表](https://scholar.google.com/scholar?as_ylo=2022&q=%E2%80%9CPyPOTS%E2%80%9D&hl=en>)为当前使用PyPOTS并在其论文中引用PyPOTS的科学研究项目 @@ -262,18 +262,14 @@ Mining and Learning from Time Series ([MiLeTS'23](https://kdd-milets.github.io/m @article{du2023pypots, title={{PyPOTS: a Python toolbox for data mining on Partially-Observed Time Series}}, author={Wenjie Du}, +journal={arXiv preprint arXiv:2305.18811}, year={2023}, -eprint={2305.18811}, -archivePrefix={arXiv}, -primaryClass={cs.LG}, -url={https://arxiv.org/abs/2305.18811}, -doi={10.48550/arXiv.2305.18811}, } ``` 或者 > Wenjie Du. (2023). > PyPOTS: a Python toolbox for data mining on Partially-Observed Time Series. -> arXiv, abs/2305.18811.https://arxiv.org/abs/2305.18811 +> arXiv, abs/2305.18811. https://arxiv.org/abs/2305.18811 ## ❖ 贡献声明 @@ -315,7 +311,7 @@ doi={10.48550/arXiv.2305.18811}, - [Slack](https://join.slack.com/t/pypots-org/shared_invite/zt-1gq6ufwsi-p0OZdW~e9UW_IA4_f1OfxA):你可以在这里进行日常讨论、问答以及与我们的开发团队交流; - [领英](https://www.linkedin.com/company/pypots):你可以在这里获取官方公告和新闻; -- [微信公众号](https://mp.weixin.qq.com/s/sNgZmgAyxDn2sZxXoWJYMA):你可以关注官方公众号并加入微信群聊参与讨论以及获取最新动态; +- [微信公众号](https://mp.weixin.qq.com/s/X3ukIgL1QpNH8ZEXq1YifA):你可以关注官方公众号并加入微信群聊参与讨论以及获取最新动态; 如果你有任何建议、想法、或打算分享与时间序列相关的论文,欢迎加入我们! PyPOTS社区是一个开放、透明、友好的社区,让我们共同努力建设并改进PyPOTS! diff --git a/docs/index.rst b/docs/index.rst index 9bb2ffa2..baaf6c5e 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -220,7 +220,7 @@ And what else? Please read on ;-) 👈 Time series datasets are taken as coffee beans at PyPOTS, and POTS datasets are incomplete coffee beans with missing parts that have their own meanings. To make various public time-series datasets readily available to users, *Time Series Data Beans (TSDB)* is created to make loading time-series datasets super easy! -Visit `TSDB `_ right now to know more about this handy tool 🛠, and it now supports a total of 168 open-source datasets! +Visit `TSDB `_ right now to know more about this handy tool 🛠, and it now supports a total of 170 open-source datasets! .. image:: https://pypots.com/figs/pypots_logos/PyGrinder/logo_FFBG.svg :width: 150 @@ -250,8 +250,8 @@ POTS algorithms on various tasks. :align: right :target: https://github.com/WenjieDu/BrewPOTS -👉 Now we have the beans, the grinder, and the pot, how to brew us a cup of coffee? Tutorials are necessary! -Considering the future workload, PyPOTS tutorials is released in a single repo, +👉 Now the beans, grinder, and pot are ready, please have a seat on the bench and let's think about how to brew us a cup of coffee. +Tutorials are necessary! Considering the future workload, PyPOTS tutorials is released in a single repo, and you can find them in `BrewPOTS `_. Take a look at it now, and learn how to brew your POTS datasets! @@ -351,7 +351,7 @@ We care about the feedback from our users, so we're building PyPOTS community on - `Slack `_. General discussion, Q&A, and our development team are here; - `LinkedIn `_. Official announcements and news are here; -- `WeChat (微信公众号) `_. We also run a group chat on WeChat, +- `WeChat (微信公众号) `_. We also run a group chat on WeChat, and you can get the QR code from the official account after following it; If you have any suggestions or want to contribute ideas or share time-series related papers, join us and tell. diff --git a/docs/milestones.rst b/docs/milestones.rst index 10463664..036b7ca2 100644 --- a/docs/milestones.rst +++ b/docs/milestones.rst @@ -15,16 +15,12 @@ please cite it as below and 🌟star `PyPOTS repository `_ is initiated; - 2022-04: PyPOTS v0.0.1 is released; -- 2022-09: PyPOTS achieves its first 100 stars on GitHub; +- 2022-09: PyPOTS achieves its first 100 stars ⭐️ on GitHub; - 2023-03: PyPOTS is `published on Conda-Forge `_, and users can install it via Anaconda; - 2023-04: `PyPOTS website `_ is launched, and PyPOTS achieves its first 10K downloads on PyPI; - 2023-05: PyPOTS v0.1 is released, and `the preprint paper `_ is published on arXiv; - 2023-06: A short version of PyPOTS paper is accepted by the 9th SIGKDD International Workshop on Mining and Learning from Time Series (`MiLeTS'23 `_); - 2023-07: PyPOTS has been accepted as a `PyTorch Ecosystem `_ project; +- 2023-12: PyPOTS achieves its first 500 stars 🌟; +- 2024-02: PyPOTS Research releases its imputation survey paper `Deep Learning for Multivariate Time Series Imputation: A Survey `_; +- 2024-06: PyPOTS Research releases the 1st comprehensive time-series imputation benchmark paper `TSI-Bench: Benchmarking Time Series Imputation `_; diff --git a/docs/references.bib b/docs/references.bib index 8255628c..73c5c08f 100644 --- a/docs/references.bib +++ b/docs/references.bib @@ -737,3 +737,11 @@ @inproceedings{cao2020stemgnn volume = {33}, year = {2020} } + +@inproceedings{xu2024fits, +title={{FITS}: Modeling Time Series with \$10k\$ Parameters}, +author={Zhijian Xu and Ailing Zeng and Qiang Xu}, +booktitle={The Twelfth International Conference on Learning Representations}, +year={2024}, +url={https://openreview.net/forum?id=bWcnvZ3qMb} +} diff --git a/pypots/imputation/tide/__init__.py b/pypots/imputation/tide/__init__.py index a448168e..27d1b166 100644 --- a/pypots/imputation/tide/__init__.py +++ b/pypots/imputation/tide/__init__.py @@ -10,7 +10,7 @@ Notes ----- This implementation is inspired by the official one -https://github.com/google-research/google-research/blob/master/tide and +https://github.com/google-research/google-research/blob/master/tide and https://github.com/lich99/TiDE """ diff --git a/pypots/imputation/tide/model.py b/pypots/imputation/tide/model.py index 4bd29728..6e2bb3e1 100644 --- a/pypots/imputation/tide/model.py +++ b/pypots/imputation/tide/model.py @@ -23,7 +23,7 @@ class TiDE(BaseNNImputer): """The PyTorch implementation of the TiDE model. - TiDE is originally proposed by Wu et al. in :cite:`wu2021TiDE`. + TiDE is originally proposed by Das et al. in :cite:`das2023tide`. Parameters ---------- @@ -39,17 +39,14 @@ class TiDE(BaseNNImputer): d_model : The dimension of the model. - n_heads : - The number of heads in each layer of TiDE. + d_hidden : + The dimension of the hidden layer in the model. - d_ffn : - The dimension of the feed-forward network. + d_feature_encode : + The dimension of the feature encoder. - factor : - The factor of the auto correlation mechanism for the TiDE model. - - moving_avg_window_size : - The window size of moving average. + d_temporal_decoder_hidden : + The dimension of the hidden layer in the temporal decoder. dropout : The dropout rate for the model. diff --git a/setup.py b/setup.py index 8f7b0a7b..13172658 100644 --- a/setup.py +++ b/setup.py @@ -72,7 +72,6 @@ "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10",