如何做高端网站,商标设计网私黛,wordpress网站制作教程,满洲里建设局网站《开源时间序列数据#xff1a;探索与应用》 一、开源时间序列数据概述二、热门的开源时间序列数据库1. InfluxDB2. TimescaleDB3. Prometheus4. OpenTSDB5. Graphite6. Druid 三、开源时间序列数据的应用场景1. 物联网领域2. 金融领域3. 运维监控领域4. 能源领域 四、开源时间… 《开源时间序列数据探索与应用》 一、开源时间序列数据概述二、热门的开源时间序列数据库1. InfluxDB2. TimescaleDB3. Prometheus4. OpenTSDB5. Graphite6. Druid 三、开源时间序列数据的应用场景1. 物联网领域2. 金融领域3. 运维监控领域4. 能源领域 四、开源时间序列数据集有哪些1. UCR Time Series2. FigShare3. Awesome Public Datasets4. 服务监控数据集5. 音乐数据库6. 国家经济数据库7. 政府开放数据8. 数据竞赛平台 五、如何获取开源时间序列数据1. 通过特定数据集网站获取2. 利用数据竞赛平台获取3. 从国家经济数据库和政府开放数据获取 六、开源时间序列数据分析方法1. TimeGPT2. Prophet 七、开源时间序列数据的未来发展趋势 一、开源时间序列数据概述
时间序列数据是一种按照时间顺序排列的数据形式在众多领域中都有着广泛而重要的应用。从金融市场的股价波动到气象领域的气温变化从工业生产中的设备监测到医疗健康领域的生理信号记录时间序列数据无处不在。开源时间序列数据为广大研究者和开发者提供了丰富的资源宝库使他们能够更加高效地进行数据分析和模型构建。这些开源数据不仅降低了数据获取的成本还促进了知识的共享和创新的加速。 在当今数据驱动的时代时间序列数据的价值愈发凸显。通过对时间序列数据的深入分析我们可以洞察事物的发展趋势、发现潜在的规律和模式从而为决策提供有力的支持。无论是预测未来的市场需求、优化生产流程还是监测环境变化、保障公共安全时间序列分析都发挥着至关重要的作用。开源时间序列数据的出现为时间序列分析领域带来了新的机遇和挑战。一方面丰富的开源数据使得研究者和开发者能够接触到更多的实际案例和应用场景拓宽了研究视野和思路。另一方面如何有效地利用这些数据选择合适的分析方法和工具成为了摆在大家面前的重要课题。 多变量时间序列数据项目为数据科学家和工程师提供了一站式的解决方案。该项目涵盖了多种领域的应用包括能源消耗、天气预报、股票市场等。数据以 CSV 格式存储易于读取和处理且每个数据集都有详细的信息描述和清晰的文档说明方便用户理解和使用。同时项目的多元化特点使其适用于学术研究和企业实际问题的解决如优化运营、提高效率或者预测市场趋势等。 通过构建大规模且多样化的公共时间序列数据集 ——Time-series Pile为时间序列分析提供了强大的支持。其独特的架构设计和预训练策略使得模型能够在有限的监督条件下表现出色支持多种任务的微调应用场景广泛涵盖了从医疗健康到金融分析的多个领域。 将大型语言模型引入时间序列分析的前沿。通过收集和整理关于 LLMs 在时间序列分析中的应用的研究论文揭示了如何将 LLMs 应用于输入、量化、对齐、视觉桥梁和工具集成五个关键阶段。该项目涵盖了广泛的实用场景从城市流动性的预测到金融市场的分析再到医疗信号的理解为研究者、开发者和任何寻求时间序列分析新视角的人提供了宝贵的资源。
二、热门的开源时间序列数据库
1. InfluxDB 特点 高效的数据写入和查询性能InfluxDB 在设计上针对时间序列数据进行了优化采用 TSMTime-Structured Merge Tree存储引擎可以高效地处理大量的时间序列数据。同时它还支持数据压缩和自动降采样以减少存储空间占用和提高查询性能。支持灵活的查询语言 FluxInfluxDB 提供了丰富的查询语言 Flux支持多种数据操作包括过滤、聚合、变换等用户可以轻松地编写复杂的查询语句。丰富的生态系统和工具支持InfluxDB 支持与 Grafana 等可视化工具集成方便用户进行数据可视化和监控。此外它还拥有活跃的社区和丰富的生态系统提供了各种工具和插件以满足不同的需求。 优势 采用 TSM 存储引擎处理大量时间序列数据高效TSM 存储引擎是 InfluxDB 的核心优势之一它可以高效地处理大量的时间序列数据。TSM 存储引擎采用了一种特殊的存储结构可以快速地写入和查询数据同时还支持数据压缩和自动降采样以减少存储空间占用和提高查询性能。支持数据压缩和自动降采样InfluxDB 支持数据压缩和自动降采样可以有效地减少存储空间占用和提高查询性能。数据压缩可以将数据压缩到更小的存储空间中而自动降采样可以将高频率的数据降采样为低频率的数据以减少存储空间占用和提高查询性能。提供丰富查询语言易与 Grafana 等可视化工具集成InfluxDB 提供了丰富的查询语言 Flux可以方便地进行数据查询和分析。同时它还支持与 Grafana 等可视化工具集成方便用户进行数据可视化和监控。
2. TimescaleDB 特点 基于 PostgreSQL高效的数据写入和查询性能TimescaleDB 是基于 PostgreSQL 的一款时间序列数据库它通过分区和索引机制优化了时间序列数据的存储和查询性能。同时它还支持自动数据压缩和降采样以减少存储空间占用和提高查询性能。兼容 SQL 查询语言强大的数据管理和分析功能TimescaleDB 兼容 PostgreSQL 的 SQL 查询语言用户可以使用熟悉的 SQL 语法进行数据查询和分析。它还支持多种数据操作包括窗口函数、时间聚合、数据变换等方便用户进行复杂的数据分析。 优势 采用 hypertable 分区策略提高查询效率TimescaleDB 采用了一种名为 “hypertable” 的分区策略将时间序列数据按时间范围进行分区存储从而提高查询效率。这种分区策略可以将数据分散到多个物理存储设备上从而提高查询性能。支持自动数据压缩和降采样TimescaleDB 支持自动数据压缩和降采样可以有效地减少存储空间占用和提高查询性能。数据压缩可以将数据压缩到更小的存储空间中而自动降采样可以将高频率的数据降采样为低频率的数据以减少存储空间占用和提高查询性能。兼容 PostgreSQL方便用户使用熟悉的 SQL 语法TimescaleDB 兼容 PostgreSQL 的 SQL 查询语言用户可以使用熟悉的 SQL 语法进行数据查询和分析。这使得用户可以更加方便地使用 TimescaleDB同时也可以利用 PostgreSQL 的丰富功能例如事务处理、ACID原子性、一致性、隔离性和持久性支持等。
3. Prometheus 特点 高效的数据采集和存储Prometheus 通过拉取方式采集数据可以高效地处理大量的监控指标数据。它采用了一种名为 TSDBTime Series Database的存储引擎可以高效地存储和查询时间序列数据。同时它还支持数据压缩和降采样以减少存储空间占用和提高查询性能。灵活的查询语言 PromQLPrometheus 提供了灵活的查询语言 PromQL可以方便地进行数据查询和分析。PromQL 支持多种数据操作包括过滤、聚合、变换等用户可以轻松地编写复杂的查询语句。丰富的报警和可视化功能Prometheus 支持丰富的报警规则和通知方式方便用户进行监控和报警。同时它还与 Grafana 等可视化工具集成提供了丰富的数据可视化功能。 优势 通过拉取方式采集数据处理大量监控指标数据高效Prometheus 通过拉取方式采集数据可以高效地处理大量的监控指标数据。这种方式可以避免数据的重复采集和传输从而提高数据的采集效率和准确性。采用 TSDB 存储引擎Prometheus 采用了一种名为 TSDBTime Series Database的存储引擎可以高效地存储和查询时间序列数据。TSDB 存储引擎采用了一种特殊的存储结构可以快速地写入和查询数据同时还支持数据压缩和降采样以减少存储空间占用和提高查询性能。提供灵活查询语言和丰富报警规则Prometheus 提供了灵活的查询语言 PromQL可以方便地进行数据查询和分析。同时它还支持丰富的报警规则和通知方式方便用户进行监控和报警。
4. OpenTSDB 特点 开源的分布式时间序列数据库基于 HBase 构建OpenTSDB 是一款开源的分布式时间序列数据库它基于 HBase 构建支持大规模的数据存储和查询。HBase 是一种分布式的列存储数据库具有高可靠性、高可扩展性和高性能等特点可以满足 OpenTSDB 对大规模数据存储和查询的需求。支持大规模数据存储和查询OpenTSDB 通过 HBase 提供了高效的分布式存储和查询功能可以处理大量的时间序列数据。它采用了一种名为 UID 的机制用于高效地存储和索引时间序列数据。同时它还支持数据压缩和降采样以减少存储空间占用和提高查询性能。 优势 通过 HBase 提供高效分布式存储和查询功能OpenTSDB 通过 HBase 提供了高效的分布式存储和查询功能可以处理大量的时间序列数据。HBase 是一种分布式的列存储数据库具有高可靠性、高可扩展性和高性能等特点可以满足 OpenTSDB 对大规模数据存储和查询的需求。采用 UID 机制高效存储和索引数据OpenTSDB 采用了一种名为 UID 的机制用于高效地存储和索引时间序列数据。UID 机制可以将时间序列数据的标签和时间戳转换为唯一的标识符从而提高数据的存储和查询效率。支持数据压缩和降采样OpenTSDB 支持数据压缩和降采样可以有效地减少存储空间占用和提高查询性能。数据压缩可以将数据压缩到更小的存储空间中而自动降采样可以将高频率的数据降采样为低频率的数据以减少存储空间占用和提高查询性能。
5. Graphite 特点 开源的时间序列数据存储和可视化工具专为监控和报警设计Graphite 是一款开源的时间序列数据存储和可视化工具它专为监控和报警设计支持多种数据采集方式和可视化功能。Graphite 通过推送方式采集数据可以高效地处理大量的监控指标数据。支持多种数据采集方式和可视化功能Graphite 支持多种数据采集方式包括推送方式、拉取方式和文件导入方式等。同时它还提供了丰富的可视化功能包括图表、仪表盘和报警等可以方便地进行数据可视化和监控。 优势 通过推送方式采集数据处理大量监控指标数据高效Graphite 通过推送方式采集数据可以高效地处理大量的监控指标数据。这种方式可以避免数据的重复采集和传输从而提高数据的采集效率和准确性。采用 Whisper 存储引擎Graphite 采用了一种名为 Whisper 的存储引擎可以高效地存储和查询时间序列数据。Whisper 存储引擎采用了一种特殊的存储结构可以快速地写入和查询数据同时还支持数据压缩和降采样以减少存储空间占用和提高查询性能。提供灵活查询语言和丰富报警规则Graphite 提供了灵活的查询语言可以方便地进行数据查询和分析。同时它还支持丰富的报警规则和通知方式方便用户进行监控和报警。
6. Druid 特点 高性能的实时分析数据库专为大规模数据分析设计Druid 是一款高性能的实时分析数据库它专为大规模数据分析设计支持实时数据摄取、交互式查询和数据可视化。Druid 通过分布式架构提供了高效的数据摄取和查询功能可以处理大量的实时和历史数据。支持实时数据摄取、交互式查询和数据可视化Druid 支持实时数据摄取可以快速地处理大量的实时数据。同时它还支持交互式查询可以快速地响应用户的查询请求。此外它还提供了丰富的数据可视化功能可以方便地进行数据可视化和分析。 优势 通过分布式架构提供高效的数据摄取和查询功能Druid 通过分布式架构提供了高效的数据摄取和查询功能可以处理大量的实时和历史数据。Druid 采用了一种名为 Segment 的分区机制用于高效地存储和索引时间序列数据。同时它还支持数据压缩和降采样以减少存储空间占用和提高查询性能。采用 Segment 分区机制Druid 采用了一种名为 Segment 的分区机制用于高效地存储和索引时间序列数据。Segment 分区机制可以将数据分散到多个物理存储设备上从而提高查询性能。提供灵活的数据聚合和分析功能Druid 提供了灵活的数据聚合和分析功能可以方便地进行数据查询和分析。Druid 支持多种数据聚合方式包括时间聚合、维度聚合和指标聚合等。同时它还支持数据过滤、排序和分组等操作可以满足不同用户的需求。
三、开源时间序列数据的应用场景
1. 物联网领域
在物联网领域开源时间序列数据有着广泛的应用场景。其中智能家居公司的智能门锁数据存储与分析就是一个典型的案例。 随着智能家居的普及智能门锁成为了家庭安全的重要保障。智能门锁可以记录用户开锁时间、次数等信息这些数据对于用户了解家庭安全状况、优化家庭安全策略具有重要意义。为了方便用户查看和管理这些数据智能家居公司选择使用 InfluxDB 作为数据存储。 解决方案如下首先将智能门锁产生的数据以 Line Protocol 格式发送到 InfluxDB。Line Protocol 格式是一种简洁高效的数据格式能够快速地将数据写入 InfluxDB。其次在 InfluxDB 中创建数据库并设置相应的数据类型和索引。通过设置数据类型和索引可以提高数据的查询效率方便用户快速地找到所需的数据。最后通过 InfluxDB 的查询语言实现对门锁数据的实时监控和分析。InfluxDB 的查询语言 Flux 功能强大支持多种数据操作用户可以轻松地编写复杂的查询语句实现对门锁数据的实时监控和分析。
2. 金融领域
在金融领域开源时间序列数据同样有着重要的应用。银行对客户交易数据的实时监控和分析就是一个典型的案例。 银行需要对客户交易数据进行实时监控和分析以防范风险。客户交易数据是一种典型的时间序列数据记录了客户交易的时间、金额、交易类型等信息。这些数据对于银行了解客户交易行为、防范风险具有重要意义。 解决方案如下首先将客户交易数据以时间序列格式存储到 InfluxDB。InfluxDB 采用 TSM 存储引擎处理大量时间序列数据高效能够快速地存储客户交易数据。其次利用 InfluxDB 的查询语言对交易数据进行实时监控如交易金额、交易时间等。InfluxDB 的查询语言 Flux 支持多种数据操作用户可以轻松地编写复杂的查询语句实现对交易数据的实时监控。最后通过数据可视化工具展示监控结果。数据可视化工具可以将监控结果以直观的图表形式展示给相关人员方便他们快速地了解客户交易情况及时发现风险。
3. 运维监控领域
在运维监控领域开源时间序列数据也发挥着重要作用。企业对服务器性能的实时监控就是一个典型的案例。 企业需要对服务器性能进行实时监控以保障业务稳定运行。服务器性能数据是一种典型的时间序列数据记录了服务器的 CPU 使用率、内存使用率、网络流量等信息。这些数据对于企业了解服务器运行状况、及时发现问题、保障业务稳定运行具有重要意义。 解决方案如下首先将服务器性能数据以时间序列格式发送到 InfluxDB。InfluxDB 的高效数据写入性能能够快速地将服务器性能数据写入数据库。其次在 InfluxDB 中创建数据库并设置数据类型和索引。通过设置数据类型和索引可以提高数据的查询效率方便用户快速地找到所需的数据。最后通过 InfluxDB 的查询语言对服务器性能数据进行实时监控和分析。InfluxDB 的查询语言 Flux 功能强大支持多种数据操作用户可以轻松地编写复杂的查询语句实现对服务器性能数据的实时监控和分析。
4. 能源领域
在能源领域开源时间序列数据也有着广泛的应用。电力公司对电力消耗数据的实时监控和分析就是一个典型的案例。 电力公司需要对电力消耗数据进行实时监控和分析以优化电力调度。电力消耗数据是一种典型的时间序列数据记录了电力用户的用电时间、用电量等信息。这些数据对于电力公司了解电力需求、优化电力调度具有重要意义。 解决方案如下首先将电力消耗数据以时间序列格式发送到 InfluxDB。InfluxDB 的高效数据写入性能能够快速地将电力消耗数据写入数据库。其次利用 InfluxDB 的查询语言对电力消耗数据进行实时监控和分析。InfluxDB 的查询语言 Flux 支持多种数据操作用户可以轻松地编写复杂的查询语句实现对电力消耗数据的实时监控和分析。最后通过数据可视化工具展示监控结果。数据可视化工具可以将监控结果以直观的图表形式展示给相关人员方便他们快速地了解电力消耗情况及时调整电力调度策略。
四、开源时间序列数据集有哪些
1. UCR Time Series
介绍UCR 时间序列数据集在时序领域有着重要地位犹如 “Imagnet” 一般。它涵盖了医疗、电力、地理等众多领域目前全量数据有 128 种。该数据集涉及时间序列预测、回归、聚类等诸多任务是发 Paper 必跑的数据集。它由加州大学河滨分校计算机系的教授 Eamonn Keogh 所在的课题组维护。 数据获取方法通过 pyts 库的 dataset 模块获取。具体代码为from pyts import datasetsprint (datasets.ucr_dataset_list ()) data_train, data_test, target_train, target_testdatasets.fetch_ucr_dataset (“GunPoint”,return_X_yTrue)。并且UCR 时间序列数据集在 2018 版的官网页面上可以直接下载整个 128 个数据集密码为 someone下载网址为Welcome to the UCR Time Series Classification/Clustering Page。
2. FigShare
介绍FigShare 是一个研究成果共享平台向全世界开放免费的研究成果及科学数据。它涵盖的领域广泛包括但不限于农业、兽医和食品科学、生物科学、生物医学和临床科学等多个领域如 Virology 中的新型冠状病毒 2019-nCoV 蛋白酶 Mpro 的比较模型就由 Christian Gruber 在此平台分享。FigShare 致力于简化研究工作流程接受任何文件格式并旨在在浏览器中预览所有文件是一个集论文、FAIR 数据和非传统研究输出于一体的易于使用的存储库。随着政府和研究资助者看到开放内容的好处FigShare 一直引领着学术界、出版商和机构以最直观和高效的方式轻松遵守这些原则。 网址https://figshare.com/
3. Awesome Public Datasets
介绍Awesome Public Datasets 项目提供了一个非常全面的数据获取渠道包含各个细分领域的数据库资源自然科学和社会科学的覆盖都很全面适合做研究和数据分析的人员。它托管在 GitHub 上由社区维护和更新。 网址https://github.com/awesomedata/awesome-public-datasets
4. 服务监控数据集
介绍该数据集是由人工神经网络公司 Numenta 所提供的包含互联网服务场景下的各种流式数据与评测脚本。NAB 是用于评估数据流实时应用中异常检测算法的新颖基准它由 50 多个带有标签的真实世界和人工时间序列数据文件以及为实时应用程序设计的新颖评分机制组成。 网址https://github.com/numenta/NAB
5. 音乐数据库
介绍这个数据集包含了海量的公开音乐数据库适用于包含音乐推荐、分类在内的各种任务。例如中华传统音乐资源数据库是中国数字文化集团推出的传统音乐资源数据库平台收录大量传统音乐经典以及相关学术资料内容丰富主要包括中华民族音乐资源数据库、中华戏曲老唱片数据库、中华曲艺老唱片数据库、丝绸之路上的民族音乐赏析数据库等。中国音乐数据库中国音网内容依托于华韵档案馆自身收藏的近十余万张老唱片并整合了海内外音响档案馆、独立藏家和艺术家的私人资源涵盖中国戏曲数据库、中国曲艺数据库、民族歌曲数据库、歌舞音乐数据库、民族器乐数据库、红色音乐文化基因库、人类口头和非物质文化遗产专题库、草原音乐库等 8 个专题子库。库客音乐数据库是以互联网音频、视频在线服务为核心的平台汇集来自世界各地数百家优秀唱片厂牌的音视频资源涵盖古典音乐、世界民族民间音乐、爵士、视频、有声读物等内容。 网址http://millionsongdataset.com/
6. 国家经济数据库
介绍国家统计局经常会统计涉及经济民生等多个方面的指标提供了非常丰富的开源时间序列数据。包括国家数据、CEIC、万得、中国统计信息网等渠道都可以获取这些数据。国家数据数据来源中华人民共和国国家统计局包含了我国经济民生等多个方面的数据并且在月度、季度、年度都有覆盖较为全面。CEIC 涵盖超过 195 个国家 400 多万个时间序列的数据源最完整的一套超过 128 个国家的经济数据能够精确查找 GDP、CPI、进口、出口、外资直接投资、零售、销售以及国际利率等深度数据。万得被誉为中国的 Bloomberg在金融业有着全面的数据覆盖金融数据的类目更新非常快据说很受国内的商业分析者和投资人的亲睐。中国统计信息网国家统计局的官方网站汇集了全国各级政府各年度的国民经济和社会发展统计信息建立了以统计公报为主统计年鉴、阶段发展数据、统计分析、经济新闻、主要统计指标排行等。 渠道国家数据https://data.stats.gov.cn/、CEIChttps://www.ceicdata.com/zh-hans、万得https://www.wind.com.cn/、中国统计信息网http://www.tjcn.org/等。
7. 政府开放数据
介绍各地方政府开放数据包含竞技、交通、医疗、天气等数据。 渠道北京市政务数据资源网https://data.beijing.gov.cn/、深圳市政府数据开放平台https://opendata.sz.gov.cn/、上海市政务数据服务网https://data.sh.gov.cn/、贵州省政府数据开放平台http://data.guizhou.gov.cn/、美国政府开放数据 Data.Govhttps://www.data.gov/等。
8. 数据竞赛平台
介绍获取针对特定任务的时间序列数据数据集干净且科研性高。 平台DataCastlehttps://js.dclab.run/v2/index.html、Kagglehttps://www.kaggle.com/、天池https://tianchi.aliyun.com/、Datafountainhttps://www.datafountain.cn/等。
五、如何获取开源时间序列数据
1. 通过特定数据集网站获取
如 UCR Time Series、FigShare、Awesome Public Datasets 等。 UCR Time SeriesUCR 时间序列数据集在时序领域有着重要地位涵盖医疗、电力、地理等众多领域目前全量数据有 128 种。涉及时间序列预测、回归、聚类等诸多任务由加州大学河滨分校计算机系的教授 Eamonn Keogh 所在的课题组维护。可以通过 pyts 库的 dataset 模块获取具体代码为from pyts import datasetsprint (datasets.ucr_dataset_list ()) data_train, data_test, target_train, target_test datasets.fetch_ucr_dataset (“GunPoint”, return_X_yTrue)。并且在 2018 版的官网页面上可以直接下载整个 128 个数据集密码为 someone下载网址为Welcome to the UCR Time Series Classification/Clustering Page。FigShareFigShare 是一个研究成果共享平台向全世界开放免费的研究成果及科学数据。涵盖的领域广泛包括但不限于农业、兽医和食品科学、生物科学、生物医学和临床科学等多个领域。网址为https://figshare.com/。Awesome Public Datasets该项目提供了一个非常全面的数据获取渠道包含各个细分领域的数据库资源自然科学和社会科学的覆盖都很全面适合做研究和数据分析的人员。托管在 GitHub 上由社区维护和更新。网址为https://github.com/awesomedata/awesome-public-datasets。
2. 利用数据竞赛平台获取
如 DataCastle、Kaggle、天池、Datafountain 等。 DataCastle专业的数据科学竞赛平台网址为https://js.dclab.run/v2/index.html。通过该平台可以获取针对特定任务的时间序列数据数据集干净且科研性高。Kaggle全球最大的数据竞赛平台网址为https://www.kaggle.com/。提供丰富的时间序列数据集用于各种科研和实践项目。天池阿里旗下数据科学竞赛平台网址为https://tianchi.aliyun.com/。为用户提供高质量的时间序列数据促进数据科学的发展。DatafountainCCF 制定大数据竞赛平台网址为https://www.datafountain.cn/。在该平台上可以找到具有针对性的时间序列数据集助力科研和实际应用。
3. 从国家经济数据库和政府开放数据获取
国家统计局及各地方政府开放的数据平台。 国家经济数据库国家统计局经常会统计涉及经济民生等多个方面的指标提供了非常丰富的开源时间序列数据。包括国家数据、CEIC、万得、中国统计信息网等渠道都可以获取这些数据。国家数据数据来源中华人民共和国国家统计局包含了我国经济民生等多个方面的数据并且在月度、季度、年度都有覆盖较为全面。网址为https://data.stats.gov.cn/。CEIC涵盖超过 195 个国家 400 多万个时间序列的数据源最完整的一套超过 128 个国家的经济数据能够精确查找 GDP、CPI、进口、出口、外资直接投资、零售、销售以及国际利率等深度数据。网址为https://www.ceicdata.com/zh-hans。万得被誉为中国的 Bloomberg在金融业有着全面的数据覆盖金融数据的类目更新非常快据说很受国内的商业分析者和投资人的亲睐。网址为https://www.wind.com.cn/。中国统计信息网国家统计局的官方网站汇集了全国各级政府各年度的国民经济和社会发展统计信息建立了以统计公报为主统计年鉴、阶段发展数据、统计分析、经济新闻、主要统计指标排行等。网址为http://www.tjcn.org/。 政府开放数据各地方政府开放数据包含竞技、交通、医疗、天气等数据。 北京市政务数据资源网网址为https://data.beijing.gov.cn/。深圳市政府数据开放平台网址为https://opendata.sz.gov.cn/。上海市政务数据服务网网址为https://data.sh.gov.cn/。贵州省政府数据开放平台网址为http://data.guizhou.gov.cn/。美国政府开放数据 Data.Gov网址为https://www.data.gov/。
六、开源时间序列数据分析方法
1. TimeGPT
介绍
TimeGPT 是专门为预测时间序列数据而设计的生成式预训练模型。它按顺序处理数据采用窗口技术分析历史数据点并识别其中的模式通过推断这些已识别的模式来预测时间序列的未来值。
功能和优势 异常检测利用预测建模技术能够识别时间序列数据中的异常模式或异常值通常表明发生了重大且意外的事件。这对于企业和分析师快速检测和响应异常事件至关重要即使存在异常模型仍能保持准确和可靠。外源变量处理可以将外部因素或外部变量例如零售预测中的天气条件纳入分析。通过考虑外部因素的影响能够进行更细致和准确的预测在外部因素显著影响数据趋势的情况下尤为有用。微调尽管是一个预训练模型但它提供了微调的能力以适应特定数据集或独特的预测需求。用户可以根据特定要求定制模型从而提高在特定环境中的预测准确性和相关性。历史预测功能可以分析过去的数据生成历史预测让用户了解模型如何预测过去的事件。这对验证模型的准确性和可靠性特别有益让用户对其未来预测充满信心。
TimeGPT 适合处理节假日等复杂场景能够检测异常并结合外部变量准确预测特殊日期前后的情况并考虑到其对数据产生的独特影响。同时它的复杂算法可以处理不规则时间戳即使在数据不一致的情况下也能确保一致且准确的预测结果。
在 MindsDB 中的部署 创建 TimeGPT ML 引擎使用以下语句创建 TimeGPT ML 引擎并提供 TimeGPT API 密钥。CREATE ML_ENGINE timegpt_engine FROM timegpt USING timegpt_api_key ‘timegpt-api-key’;创建、训练和部署模型用户可以使用CREATE MODEL语句来创建、训练和部署 TimeGPT 模型。CREATE MODEL model_table FROM data_source(SELECT * FROM data_table) PREDICT column_to_be_predicted ORDER BY date_column GROUP BY column_name, column_name,… HORIZON 3 – model forecasts the next 3 rows USING ENGINE ‘timegpt_engine’;查询模型获取预测结果现在可以查询模型以获取预测。SELECT m.date_column, m.column_to_be_predicted FROM data_table AS d JOIN model_table AS m WHERE d.date_column LATEST;根据最新数据微调模型使用 MindsDB可以自动化预测流程并持续为任何下游应用生成预测。当有定期更新的动态数据时应该利用这些最新数据对模型进行微调以确保预测的准确性。
2. Prophet
简介
Prophet 是 Facebook 开源的时间序列预测算法支持自定义季节和节假日。它将时间序列分解成趋势项、季节项和假日项并在此基础上使用加法模型进行预测。
算法原理 Prophet 的输入包含两列数据ds 和 y。ds 列为日期YYYY-MM-DD或者是具体的时间点YYYY-MM-DD HH:MM:SS。y 列是数值变量即预测量。 通过拟合趋势项、周期项、节假日项和误差项进行预测。趋势项表示时间序列在非周期上面的变化趋势周期项也称为季节项一般以周或者年为单位节假日项表示在当天是否存在节假日误差项表示剩余项。趋势项模型基于逻辑回归函数或分段线性函数拟合趋势项。逻辑回归函数形式为如果增加一些参数的话那么逻辑回归就可以改写成这里的分别为曲线的最大渐近值曲线的增长率曲线的中点。当时恰好就是大家常见的 sigmoid 函数的形式。在现实环境中参数不可能都是常数而很有可能是随着时间的迁移而变化的因此在 Prophet 里面作者考虑把这三个参数全部换成了随着时间而变化的函数。季节项模型周期性的变化因子是时间序列预测模型都会考虑的因素为了拟合并预测季节的效果Prophet 基于傅里叶级数提出了一个灵活的模型。季节效应 S (t) 根据以下方程进行估算表示时间序列的周期表示以年为周期表示以周为周期。季节效应 S (t) 傅立叶级数形式是对季节性建模时需要在给定 N 的情况下估计参数傅里叶阶数 N 是一个重要的参数它用来定义模型中是否考虑高频变化。节假日成分还有一些和时间紧密相关的事件比如某些节假日从漫长的时间尺度上来说并不是周期性出现的但是符合一定的出现规则。这样的重要影响则通过数据表的形式喂入模型如一张列名为 [节假日的名字国家年份日期] 的表。prophet 统计每个节假日出现的时间给每种节假日都附加一个影响值 k (从正态分布采样)在每个节假日对应时刻或节假日为中心的一个窗口内的所有时刻都增加一个节假日的影响值作为 h (t) 的值。 趋势项模型 基于逻辑回归函数或分段线性函数拟合趋势项。逻辑回归函数形式为如果增加一些参数的话那么逻辑回归就可以改写成这里的分别为曲线的最大渐近值曲线的增长率曲线的中点。当时恰好就是大家常见的 sigmoid 函数的形式。在现实环境中参数不可能都是常数而很有可能是随着时间的迁移而变化的因此在 Prophet 里面作者考虑把这三个参数全部换成了随着时间而变化的函数。分段线性函数增长分段线性函数则简单许多同样确定changepoints 之后只是在 changepoints 之间构建线性函数保证它们连续即可整体就是 y kx b。趋势成分的预测涉及到 changepoints 的话未来也同样是有 changepoints 的同样地可以通过人为给出也可以依赖 prophet 的自动寻找能力。prophet 的自动寻找是以 “未来的 changepoints 和过去差不多” 为前提的比如我们的时序一共有 T 个点其中有 S 个 changepoints那么在预测未来的 H 个点时每个点都有 S/T 的概率被标记为 changepoint其相应的变化值也是从 Laplace 分布上采样而来只是这里的 Laplace 分布的方差则通过历史中 S 个 changepoints 的方差计算而来当然也可以用其他更严谨的统计方法计算历史 changepoints 对应 k 变化值的 Laplace 分布方差。此时如果采样多组那么就能计算得到多个可能的趋势这些趋势能够构成一定的区间通过不同时刻的区间的相对宽窄能够反映该时刻的预测的置信程度。
七、开源时间序列数据的未来发展趋势
随着大数据时代的不断发展开源时间序列数据将在更多领域发挥重要作用。未来可能会出现更加高效、智能的开源时间序列数据库和分析工具为数据分析和决策提供更强大的支持。 一方面技术的不断进步将推动开源时间序列数据库的性能提升。例如像 GreptimeDB 这样的统一时间序列数据库将继续优化其云原生分布式架构分离计算和存储提高处理高基数问题的能力并通过兼容多种数据库协议实现无缝集成到现有技术栈中。同时Apache IoTDB 等开源项目在工业物联网场景下的卓越表现也预示着未来时间序列数据库在性能和成本效益方面将不断突破为企业提供更高效、更经济的数据存储和管理解决方案。 另一方面分析工具也将变得更加智能。以 TimeGPT、Lag-Llama 等为代表的开源时间序列预测基础模型不断创新和发展通过先进的概率建模方法、零样本预测能力、动态调整上下文长度等特性为用户提供更准确、更灵活的预测服务。此外像 WoTan、tsai、mcfly、Khiva 等项目也在各自的领域为时间序列数据处理和分析提供了丰富的算法和技术支持未来这些工具可能会进一步融合和发展形成更强大的综合分析平台。 在应用领域方面开源时间序列数据将继续拓展到更多新兴领域。随着物联网、人工智能、5G 等技术的普及智能城市、智能制造、医疗健康等领域对时间序列数据的需求将不断增加。例如在智能城市中交通流量预测、环境监测等方面可以利用时间序列数据进行更精准的规划和管理在智能制造中设备状态监测、生产效率跟踪等环节需要高效的时间序列数据库和分析工具来支持。 同时社区的力量也将在开源时间序列数据的发展中发挥重要作用。众多开源项目的成功离不开活跃的社区支持开发者和研究者可以通过社区分享经验、提出问题、贡献代码共同推动项目的发展和进步。这种开放合作的模式将加速技术的创新和应用为开源时间序列数据的未来发展注入源源不断的动力。