搜索
查看: 578|回复: 0

面向工业互联网场景的数据库原生机器学习

[复制链接]
发表于 2024-5-16 10:11:24 | 显示全部楼层 |阅读模式
本帖最后由 中国计算机学会 于 2024-5-16 10:16 编辑

摘要—本文详细介绍了工业物联网场景下海量数据的实时分析需求,以及基于云上数据库内训练引擎、边缘通信设备、端上实时操作系统实现的“端边云”上行处理链路和下行应用链路,并同时考虑一系列机器学习及大模型等技术。
  
宋韶旭(清华大学)
方晨光(清华大学)
黄向东(清华大学)  等
关键词:工业互联网 数据库 机器学习

研究背景
        在工业4.0时代,工业产品逐渐升级为智能联网产品,产生海量数据。同时,“端边云”构建的网络系统将工业场景和工业设备进行有机互联,形成了工业物联网。对于工业物联网中的工业设备来说,大部分采集数据为工业设备物理量的数字化记录,这些记录带有时间戳,是典型的时间序列数据(time series data),用户可以基于这些数据进行各类运算和分析,例如基于时间窗口运算。通用公司在《工业互联网:突破智慧与机器的界限》白皮书中首次提出工业互联网的概念,并指出:工业互联网包括传统方式以及最新混合方式,以便通过特定行业的高级分析来充分利用历史数据和实时数据[1]。针对这样的数据,需要通过特定的模型进行专门管理,为应对这种场景,时间序列数据库(time series databases)应运而生。在2019年《西雅图报告》[2]中,包括ACM图灵奖得主迈克尔·斯通布雷克(Michael Stonebraker)在内的33位国际顶级科学家,发布了数据库领域研究趋势分析与前瞻判断,认为工业物联网的需求进一步考验了快速获取数据和实时发现洞察的能力,其有效性取决于包括数据过滤、采样和聚合在内的边缘端高效数据处理。

       图1展示了智能联网产品构成的工业物联网,云端基于服务器搭建数据平台用于数据的分析任务,并通过数据库对数据进行管理。边端侧服务于用户终端与各类工业智能联网产品和应用场景,构成了工业物联网的整体结构。此外,近年来,随着机器学习展现出越来越强的数据建模、分析能力,相应的技术被广泛用于工业物联网的不同场景。而OpenAI公司研发的ChatGPT引发的大模型应用热潮,更是推动了机器学习领域一系列新的进展,进而为工业物联网中的机器学习带来了一系列新的机遇和挑战。
       传统的工业物联网机器学习方案没有将数据库与机器学习模型进行有机结合。比如,上行链路中,端侧采集的数据首先被保存到数据库,进而通过ETL(抽取-转换-加载,Extract-Transform-Load)工具输出至数据分析平台进行模型训练,并通过相同的下行链路进行模型推理与决策输出。面对海量的物联网数据,这种方案可能存在数据链路复杂、数据冗余程度高、系统响应延迟高等问题。
       因此,面向工业互联网场景的数据库原生机器学习,是针对工业物联网场景下海量数据的实时分析需求,基于云上数据库内训练引擎、边缘通信设备、端上实时操作系统而实现的“端边云”上行处理链路和下行应用链路,并能够提供更好的机器学习任务执行流程。其核心链路为:云上模型实时训练、边缘模型实时推理、端侧决策实时执行。上述链路适配不同的物联网场景,能够带来高效、精准的数据库原生机器学习。此外,针对时间序列数据,Apache IoTDB[3]是一款低成本、高可用的物联网原生时序数据库,采用端边云协同的轻量化架构,支持一体化的工业物联网时序数据收集、存储、管理与分析。IoTDB通过融合数据库内的机器学习方案,支持物联网场景下的数据库原生机器学习。
工业物联网与时间序列数据库系统架构
       时间序列数据库应具备高效率、低成本、高实时的特点,以应对来自工业互联网的海量数据。高效率指时序数据库针对时序数据进行优化,能实现高效的读取、存储与分析;低成本指时序数据库具备一系列编码压缩方法,能够对时序数据进行压缩,减少存储成本;高实时指时序数据库对海量时间序列提供高通量吞吐,保证数据的实时写入。时序数据库能够通过适配实时操作系统,构建终端设备运行生态;对接通用工业数据采集协议,构建边缘侧上行下控生态;连接数据处理分析框架,构建云侧数据处理分析生态。
       Apache IoTDB具备上述针对时间序列的优势。IoTDB采用解耦设计,形成端、边、云多种产品形态;支持可插拔数据文件,内置数据高压缩技术;数据库引擎层支持分布式高可扩展能力,并内置原生机器学习引擎。
       IoTDB将TsFile(Time Series File)作为时序数据文件格式,贯通端-边-云三端。在列式存储的基础上,TsFile通过高效的数据压缩实现低成本存储。TsFile在数据块中保存时域与值域摘要信息,在数据查询中能够避免扫描无效原始数据。同时,TsFile文件尾构建“设备-指标”元信息(schema)与二维索引,形成文件自描述能力。围绕工业设备实时感知与操作需求,IoTDB提出“端边云”数据实时协同架构:利用TsFile自描述能力,通过TsFile终端轻量级读写、边缘增量式同步和云侧分布式存储,实现以一种文件格式贯通终端、边缘和云侧,避免了数据冗余存储和格式转换代价。同时,高效的时序压缩算法[4]以及面向物联网场景的自由伸缩一致性协议[5],也为时间序列的存储和同步等提供了基础,进一步支持后续的数据分析。
       IoTDB具备存储引擎和查询引擎,用于提供时间序列数据的存储和查询功能。存储引擎基于日志结构合并树(LSM-tree)实现,分为内存、磁盘两部分结构,能够对数据进行多层存储,并能够较好地处理写入密集型的工作负载,这也是工业物联网场景常见的负载。此外,存储引擎能够对不同的TsFile进行动态管理,优化存储空间。IoTDB的查询引擎对时间序列数据进行查询优化,能够处理工业物联网中各种时间序列查询,高效应对数据分析处理等场景。
       基于上述架构(见图2),IoTDB集成了数据库原生机器学习引擎。该引擎具备机器学习、模型推理、模型管理和决策执行等模块。上述各个模块与端-边-云架构结合,在不同的层次实现不同的逻辑功能。

       具体而言,数据库原生机器学习通过云上模型实时训练、边缘模型实时推理、端侧决策实时执行的层次结构实现。云上模型实时训练满足模型训练的资源要求,边缘模型实时推理、端侧决策实时执行则根据相应边端侧的资源规模,进行推理、执行等任务。以上任务均在数据库中执行,打通了数据壁垒,减少了在不同系统间进行数据交换的开销。
面向物联网场景的数据库原生机器学习
       海量的工业物联网数据对相应场景下的数据管理与分析提出需求。近年来,随着机器学习技术的发展,研究者开始广泛使用机器学习对数据进行分析,并取得了较好的效果。此外,ChatGPT引发的大模型应用热潮,为工业物联网中的机器学习带来了一系列新的机遇和挑战。基于此背景,数据库原生机器学习引擎希望将机器学习集成到数据库,极大地提升数据库对数据的处理和分析能力,同时形成互联网数据管理分析一体化智能软件系统。
设计目标与整体框架
       面向物联网场景的数据库原生机器学习,希望通过数据库内部集成的机器学习能力直接对大规模时序数据进行管理和分析,需要满足以下目标:
       易用性:通过提供数据库原生交互接口(IoT SQL),用户可以仅使用SQL语言完成对时序数据的复杂管理和分析任务。这将大幅度简化数据库操作过程,帮助非专业用户执行基于机器学习的数据分析任务。
       实时性:实时性是物联网场景下极为重要的特性。面向物联网场景,该技术需要能够为实时数据提供在线模型推理支持,快速适应业务数据变化。
       避免数据迁移:用户无须进行数据的移动或转换,能够借助强大的数据库查询能力,在原地获取、同步和处理数据,速度更快、成本更低、安全性更高。
       先进算法:该技术支持业内领先的深度学习分析算法,广泛覆盖各类时序分析任务,为时序数据库赋予高效数据分析能力。
       该技术的整体框架如图3所示,数据库具备存储引擎、查询引擎和机器学习引擎等基本结构。其中,数据库原生机器学习能力由机器学习引擎提供,主要提供模型训练和数据分析能力。机器学习引擎和存储引擎之间进行数据交换,保证模型的参数能够被持久化存储和实时更新,同时提供高效率的数据库原生机器学习。查询引擎则提供时间序列数据的查询执行和查询优化等功能。集群管理模块管理各个节点,保证数据的一致性和实时性。最后,数据库向外提供数据查询、数据分析和机器学习等能力。

云上实时训练
       云上数据库内训练引擎能够应对物联网场景下实时产生的数据流与不断变化的数据分布。在数据库中,通过训练数据视图与增量更新技术支撑云上模型的实时训练,解决传统分析方案须持续进行复杂数据移动与转换的难题。
       传统的数据分析方案通常依赖外部分析系统。具体来说,从数据采集开始,其链路包括ETL工具从数据源提取数据并转换为目标外部系统所需的格式,并通过外部分析系统进行机器学习,如特征工程、模型训练和模型存储等。其弊端主要来自复杂的数据移动、处理及转换过程,不仅导致执行过程更耗时,也为数据链路的打通带来困难,此外还需要针对不同的外部分析系统进行适配。
       云上模型采用体系化训练方案,最大程度地避免产生不必要的性能损失和执行延时。如图4所示,在云上训练引擎中,数据采集的实时数据流进入具备高数据写入能力、低延迟的物联网数据库,在数据库中直接启动训练过程,因此能够在实时数据流中维护相应的训练数据用于模型训练,并进一步设定查询式数据回放,通过数据库查询的方式回放数据,最后记录模型关联的数据库处理,使模型在数据库中进行增量更新。其中,模型增量更新通过设定模型微调算法以及局部更新适配器参数实现。整体而言,在云上实时训练中,数据库为机器学习模型维护并提供实时数据,而模型则进行增量的训练,并在数据库内部进行增量更新。

       以Apache IoTDB为例,云上部署的IoTDB数据库首先维护训练数据的物化视图,并且以支持相等或相似时间戳对齐的方式查询数据,保证时序数据的完整性并增加数据量[6]。基于上述视图,数据库对原生机器学习模型直接进行训练,由于模型输入格式与视图格式统一,该过程无须对数据进行额外的处理与复制。该过程同样适用于模型更新。针对已训练好的机器学习模型,可以根据数据更新情况,在数据库内部对模型进行增量更新,不仅能够减少资源开销,更有助于提升模型训练及分析推理的效率。当模型需要增量更新时,数据库主要通过内置模型微调(fine-tune)算法实现,并对适配器参数进行局部更新。云上训练框架同样集成了Spark、Hadoop等大数据框架,辅助更好地完成机器学习任务。
       此外,随着大模型技术的发展,云上场景同样可以与大模型进行有机融合。云侧的大模型能够为数据分析提供准确、更高质量的结果。同时,大模型能够更自主地对相应的场景和方案进行决策,处理更为复杂的场景。
边侧实时推理
       为快速响应业务场景中随时到来的数据分析与决策需求,在边侧,数据库主要提供实时推理能力。边侧主要基于数据库的云边模型同步、原生推理算子以及高效数据处理能力,构建轻量化推理平台,实现机器学习模型的实时推理。
       对于端侧设备来说,传统分析方案的链路更为复杂。比如,当数据通过数据采集和ETL的方式在外部分析系统中进行分析后,需要再次通过ETL的方式转换下行数据,最后将决策输出到端侧设备。这种方式可能再次引起性能的损失。
       如图5所示,在一体化分析方案中,端边模型通过数据订阅的方式保证对实时数据流的监测。一旦监测到数据输入,就会触发后续的模型推理和数据库处理。边侧的模型通过存储同步的方式,与云端数据库保持模型同步,维持数据库原生机器学习模型的一体化,数据库同时内置推理平台和推理算子,用于进行实时推理和实时决策。

       以Apache IoTDB为例,边侧部署的IoTDB数据库首先与云上数据库进行模型同步,主要通过PyTorch等机器学习框架与ONNX等模型格式进行数据传输,并保证此时模型版本为最新。边侧数据库内置推理平台与推理算子,推理平台接收并扫描数据,进一步将模型关联到数据库处理,并输入到数据库内置推理算子获得决策,最后将决策推送到端侧执行。
       边侧实时推理为实施数据库原生机器学习方案提供了可行性,对于实时、大量的物联网数据,做到在线模型的实时推理,减少数据迁移,极大地降低了机器学习任务的开销和延迟。考虑到大模型的参数量和训练难度,直接在边侧的机器学习节点应用大模型具有一定的困难,但仍然可以通过数据同步机制,将大模型的推理结果发送到边端侧,帮助端侧执行决策。同样,也可以在边端侧的数据库中对大模型的推理结果进行缓存,在后续应用的过程中利用缓存减少数据同步的开销和延迟。
数据库原生机器学习模型
       工业物联网以时间序列为主要的存储类型。因此,物联网的机器学习模型以时间序列模型为主。传统的时间序列模型基于统计信息对时间序列数据进行学习和预测,例如ARIMA[7]模型通过结合自回归(Auto-Regressive)、差分(Integrated)以及滑动平均(Moving Average)的思想对数据建模,并根据学习到的上述参数和特性对后续数据进行预测,这类模型在原理上较为简单,易于理解和实现,但对序列的平稳性有要求,并且对于非线性的场景,其处理能力较弱。SARIMA[7]、ARX[8]等模型则分别从季节性以及其他外部变量的角度尝试对ARIMA模型进行改进,能够适应不同场景下的数据学习,但仍然存在模型泛化能力较弱以及数据存在额外的假设等问题。此外,IoTDB中的LSMAR[9]模型能够基于IoTDB的LSM-tree存储引擎实现原生适合IoTDB存储格式TsFile的自回归模型学习,该方法能够更好地结合IoTDB的数据特性和文件特性,服务于数据预测分析等下游物联网应用。
       随着深度学习技术的兴起,基于深度学习的模型提供了更强大的时间序列学习能力。其中,循环神经网络(RNN)是主要的一种针对时序数据的深度学习模型。长短期记忆网络(LSTM)[10]是一种较为著名的循环神经网络,它能够捕捉时间序列的长期依赖关系,同时利用记忆单元维持长期记忆以及遗忘策略,以此控制网络的学习过程。另外,门控循环单元(GRU)[11]等通过对隐藏层和遗忘策略进行合理的优化,减少参数量,同时保证较好的效果。近年来,随着Transformer等基于注意力机制的结构[12]的流行,Autoformer等模型针对长时序列预测中的复杂序列模式与高额计算代价问题,以随机过程分析为理论基础,提出基于深度分解的架构和自相关机制[13]。
       数据库原生机器学习模型可以基于上述时序模型构建,并集成到数据库中提供原生机器学习能力。时序数据库可以通过其高效的处理能力,支撑深度学习模型的训练。例如NowcastNet[14]是一种基于时间序列数据库IoTDB驱动的模型,它通过数据驱动与物理驱动的“科学学习”范式,提出了物理守恒约束下时空物质场建模和预测的一般方法,为极端降水临近预报提供了支撑。
总结与展望
       工业4.0时代下,广泛应用的智能联网产品产生了海量的时间序列数据,需要通过时间序列数据库进行管理。此外,机器学习近年来在物联网场景中被广泛使用,但日益增加的数据量给工业物联网场景下的机器学习带来了新的挑战。基于此,数据库原生机器学习为工业物联网场景下的数据提供了强有力的支撑。通过端-边-云的协同,数据库原生机器学习在保证数据库高效率、低成本、高实时的前提下,提供云上模型实时训练、边缘模型实时推理、端侧决策实时执行等功能,不仅极大地减少了原有方案的时间延迟、资源浪费,更为强有力的时序数据分析与模型应用提供了支持。
       总体而言,面向工业互联网场景的数据库原生机器学习仍然面临一系列挑战,结合本文所述内容,下面对一些可能的研究方向进行展望。
       数据库原生机器学习算法。不同的机器学习算法和模型赋予数据库不同程度的分析、预测能力。虽然时间序列预测领域已有较多研究,但数据库原生的机器学习算法仍然处于发展阶段。为了在数据库中进行训练与学习,算法的训练速度、推理速度以及预测效果需要达到平衡。因此,如何实现有效且高效的数据库原生机器学习算法是一个非常重要的研究问题。
       数据库原生机器学习模型训练方法。在数据库中进行机器学习模型训练与更新也值得研究。由于时间序列数据库中的数据不断写入和更新,云上训练的机器学习模型也需要重新训练或更新。在这个过程中,更好的训练方法能够降低开销,也可以提高整个数据分析模块的可用性。
       适配机器学习的数据库。为了提供更好的数据库原生机器学习,数据库需要考虑模型加载、模型同步、模型存储等任务,这些任务可能会给数据库本身的系统设计带来一些额外的开销,数据库架构如何更好地提供低延迟、高性能的数据库原生机器学习也是非常值得研究的问题。 ■
参考文献
[1] Evans P C, Annunziata M. Industrial Internet: Pushing the Boundaries of Minds and Machines [EB/OL]. (2012-11-26)[2024-04-23]. http://gesd.free.fr/evansa12.pdf.
[2] Abadi D, Ailamaki A, Andersen D, et al. The Seattle report on database research [J]. Communications of the ACM, 2022, 65(8): 72-79.
[3] Wang C, Qiao J, Huang X, et al. Apache IoTDB: A Time Series Database for IoT Applications[J]. Proceedings of the ACM on Management of Data, 2023, 1(2): 1-27.
[4] Wang H, Song S. Frequency domain data encoding in apache IoTDB[J]. Proceedings of the VLDB Endowment, 2022, 16(2): 282-290.
[5] Jiang T, Huang X, Song S, et al. Non-blocking raft for high throughput iot data[C]// Proceedings of the 2023 IEEE 39th International Conference on Data Engineering (ICDE). IEEE, 2023: 1140-1152.
[6] Fang C, Song S, Mei Y, et al. On aligning tuples for regression[C]// Proceedings of the 28th ACM SIGKDD Conference on Knowledge Discovery and Data Mining. 2022: 336-346.
[7] Box G E, Jenkins G M, Reinsel G C, et al. Time Series Analysis: Forecasting and Control[M]. John Wiley & Sons, 2015.
[8] Goodwin G C. Dynamic system identification: experiment design and data analysis[J]. Mathematics in Science and Engineering, 1977, 136.
[9] Su Y, Ma W, Song S. Learning autoregressive model in LSM-tree based store[C]// Proceedings of the 29th ACM SIGKDD Conference on Knowledge Discovery and Data Mining. 2023: 2061-2071.
[10] Hochreiter S, Schmidhuber J. Long short-term memory[J]. Neural Computation, 1997, 9(8): 1735-1780.
[11] Cho K, Van Merriënboer B, Bahdanau D, et al. On the properties of neural machine translation: Encoder-decoder approaches[OL]. arXiv preprint arXiv:14091259, 2014.
[12] Vaswani A, Shazeer N, Parmar N, et al. Attention is all you need[C]// Proceedings of the 31st International Conference on Neural Information Processing System. 2017: 6000-6010.
[13] Wu H, Xu J, Wang J, et al. Autoformer: Decomposition transformers with auto-correlation for long-term series forecasting[C]// Advances in Neural Information Processing Systems 34(NeurIPS 2021). 2021: 22419-22430.
[14] Zhang Y, Long M, Chen K, et al. Skilful nowcasting of extreme precipitation with NowcastNet[J]. Nature, 2023, 619(7970): 526-532.


版权声明:中国计算机学会(CCF)拥有《中国计算机学会通讯》(CCCF)所刊登内容的所有版权,未经CCF允许,不得转载本刊文字及照片,否则被视为侵权。对于侵权行为,CCF将追究其法律责任。


回复

使用道具 举报

您需要登录后才可以回帖 登录

手机版|CCF Link ( 版权所有 中国计算机学会  京ICP备13000930号-4|京公网安备 11010802032778号   )

GMT+8, 2025-4-27 06:18 , Processed in 0.047359 second(s), 20 queries .

快速回复 返回顶部 返回列表