2023 IoTDB Summit:清华大学软件学院长聘副教授龙明盛《IoTDB 新组件:内生机器学习》...

12 月 3 日,2023 IoTDB 用户大会在北京成功举行,收获强烈反响。本次峰会汇集了超 20 位大咖嘉宾带来工业互联网行业、技术、应用方向的精彩议题,多位学术泰斗、企业代表、开发者,深度分享了工业物联网时序数据库 IoTDB 的技术创新、应用效果,与各行业标杆用户的落地实践、解决方案,并共同探讨时序数据管理领域的行业趋势。

我们邀请到清华大学软件学院长聘副教授龙明盛参加此次大会,并做主题报告——《IoTDB 新组件:内生机器学习》。以下为内容全文。

目录

背景起因

系统实现

功能支持

应用示例

未来展望

尊敬的各位来宾、各位老师、各位同学,大家上午好。今天非常荣幸在这里跟大家分享,我们在 IoTDB 新组件:内生机器学习这样一个新的引擎的发布。

01

背景起因

我们首先简单回顾一下我们的起因,就是工业物联网数据在它的采、存、算、管、用的阶段,其实是有各种挑战的,IoTDB 已经解决了其中相当一部分挑战。但是在现在的工业物联网场景下,我们的数据往往来说是静止存储于我们的数据库里面,然后我们可以在这个数据上做一些查询,或者说一些简单的聚合分析,但是这一部分却逐渐地成为了企业的一个成本中心。

我举个例子,比如说我们在跟中国气象局在做气象大模型的过程中,里面有非常多的时序数据,而这些时序数据库最终要变成一个强大的预报大模型。那这个过程就不能让数据再静置,而是应该要让它流动起来

071477ee90f4ef43d46c20db0456eaa7.png

那么基于这样的一个背景,我们希望在传统的 OLAP 的基础上,进一步地去以机器学习技术作为新的智能技术的一个代表,然后去挖掘和释放我们的数据。我们可以看到,我们的数据可以通过机器学习、模型和算法构建,然后支撑时序预测、异常检测等等这样一系列的应用。

那么我们也可以看到现在,社区其实有很多的机器学习系统的这样一些支持,但是现在存在的一个问题就是说,这些数据的系统和智能的系统相对来说,它们之间隔阂还是比较严重的,往往需要进行大量的数据的导入、导出等等。

9ea767e3b53de94c4fee218db0f68c30.png

那么我们可以看到一个传统的数据分析方案,其实它的门槛比较高,成本也比较大。这其中,数据的迁移,数据的各种转换就非常的耗时。在机器学习工程化过程中,还需要进行特征的工程、模型的训练、结果的管理、实验的管理等等一系列非常复杂的工作。那如何将这样的一些工作更好地,在刚才我们讲的工业物联网的公共的底座,IoTDB 上进行支持就是我们的目的。我们希望能够尽量地做到无需数据迁移,并且降低数据分析的门槛。

01dbabe375ccc461c3be46391f428142.png

02

系统实现

这是我们进行的系统的实现,它的一个典型的特点就是数据库内生。我们知道现在其实机器学习系统非常多,对吧?那如果说它是一个数据库外的机器学习系统,其实大家有各种框架,比如像 Scikit-learn、比如像 Tensorflow、Pytorch 等等,那么这样一些系统其实无法解决我们前面讲的一系列的问题。

我们可以看到,采用数据库内生的机器学习框架和引擎之后,我们可以利用 SQL,并且对这个语言进行拓展,从而实现像 SHOW MODEL、DROP MODEL、CREATE MODEL、还有 CALL INFERENCE 这样一些最基本的机器学习的能力。在这个过程中,我们其实是在这个系统中,在数据的基础上,用前面王院长的话来说,将数据变成模型,然后再将模型变成决策。模型也是这个系统中的一种重要的资产,我们需要将它进行管理,我们除了能够创建它,我们还能够使用它进行推理,变成一种内建的能力

e6f349272adbe72476afa3ff96366910.png

那么应该来说,前面乔老师也讲了,我们在 IoTDB 的基础上扩展了一个新的节点,就是 AINode。其实扩展这个节点,刚开始去想这个事,好像没那么容易。因为 IoTDB 现在本身有配置节点 ConfigNode,和数据节点 DataNode,当这个系统是一个集中式的系统的时候,或者说是一个单机的系统的时候,实际上这件事情是有一定的困难的。那么随着 IoTDB,它的分布式的版本已经研发成熟,那么我们可以在一个分布式系统体系的架构下,再去审视这一个结构,我们就会发现,我们的 AINode 其实和 DataNode 是在一个相同的地位上。在一个分布式的集群上,它们其实都是对数据进行加工,只不过到底是浅层的处理加工,还是深度的、模型的加工。

那在这个过程中,我们也需要去处理分布式系统中,我们的训练数据和我们的模型之间,到底是模型找数据还是数据找模型,这样的一个关系。那前面我们 Mohan 院士也提到了,在 HTAP 这样一个新型的框架下,内存式的这样一种存储方式,其实是同时能够兼顾它的效率和它的成本的。那么因此的话,我们可以在 IoTDB 现有的框架下,进一步基于分布式内存的这样一个新型的副本机制,能够将我们的数据和模型更好地联系在一起

675ad492204a80af26f78375a19bef54.png

03

功能支持

那目前来说,我们功能支持方面,支持时序的一些典型的分析任务,比如说像时间序列预测,还有时间序列的异常检测等等

499e6fc5c5f687b5a6861cae85847b07.png

那么大家都知道,其实我本人是做机器学习的,我做了十几年的机器学习。我发现大概在 2020 年之前,时间序列数据不是我们人工智能社区的一等公民,也就是我们做人工智能的人,一般都做机器学习的算法,或者是做比如说图像、自然语言这样一些处理。但是 2020 年之后,随着时间序列数据越来越重要,因此在机器学习社区已经成为一个非常热门的话题

比如近年来,我们团队就提出了像 Autoformer、TimesNet、还有 iTransformer 这样一些非常好的模型,并且我们的这样一些模型具有数据通用和任务通用的能力。也就是说一个模型,它既可以支持时序预测,也可以支持异常检测,也可以支持时序分类等等这样一些通用的能力。同时我们这些模型具有一定的可扩展性,未来可能进一步拓展成大模型。我们的相关技术也在《自然-机器学习》子刊,这样的一些顶级期刊上进行封面文章的发表,我们这些模型在支持实际的应用中发挥了比较重要的作用。这也让我们看到,将时序数据分析作为工业物联网基建中的一等公民的这样一个至关必要性。

51f931217990ac005275bc04a0bbb65b.png

我们现在可以支持机器学习模型的基本的模型管理和模型编译、模型加速,通过这样的一个方式,可以使用 IoTDB 的 AINode 进行推理。那由于机器学习社区发展的时间已经非常久了,像 Pytorch 还有 Python 已经变成机器学习社区的第一语言,因此 IoTDB 在之前的 Java 语言的基础上,努力拓展了 Python 这样的一种语言的支持,从而使得我们在 IoTDB 上进行机器学习变成非常自然、非常友好的一个过程

7ffc25f0886ed5aec3e6c03c578e70fc.png

04

应用示例

好,我们举几个典型的应用吧。比如说在时间序列里面,我们比如说像用电量,还有前面我们讲的气象、风速等等,都需要做一些时间序列的预测。这个时候我们可以在 IoTDB 上非常简单地完成这个集群的部署,然后在这个过程中启动 AINode 这样的一个脚本,从而能够自动地载入相关的依赖,从而进行 IoTDB 上的机器学习模型的推理

3b978decb32dc8a37313d1d4ed73bbdb.png

目前来看,我们有多种方式来使用这个模型。一种是我们内置的算法,也就是前面我提到,我们团队自研了很多时间序列的算法,我们可以对这些算法进行一个原生的支持

ea3d0da2d657e77da979b896f441a909.png

除此之外,我们还可以支持外部的一些模型。在前面各位老师都强调了开源的力量,就是我们肯定不是一个封闭的系统,那么随着社区中有一些比较好的模型,我们可以通过类似 Hugging Face 的方式,将这些模型注册到 IoTDB 的系统中,从而使它变成 IoTDB 系统中的一种资产,从而利用我们的 AINode 进行这样一些模型的推理、服务

94544740aad2ef0543579a193d583500.png

那么在这个过程中,我们可以对不同类型的时序模型进行一个标准的统一,从而能够轻松地支持不同类型的,前面我们提到像 Autoformer,比如说像 DLinear 这样的一些模型。

438271f0a339667adef89411f978323d.png

05

未来展望

未来展望方面,我们希望构建 IoT SQL 这样一种拓展的语言,这样的语言可以更好的支持 HTAP 这样一些多样化的数据分析,尤其是机器学习的能力,从而在易用性、实时性、避免数据迁移和支持先进算法方面做更多的工作

大家都知道,时间序列领域,我们的算法在数据库中的支持其实是挺少的,对吧?可能大家听说有一些经典算法,像 Holt-Winters,有一些支持,但是这些先进的算法要想支持进来,明显超出了现有的数据库的体系架构的一种支撑能力。这也是之前数据库领域大家一直在讲的,数据库是不是一个小马拉大车,对吧?上面的 AI 的负载是一个大的负载,对吧?有可能会把数据库压垮,这样的一些问题。那恰好由于时间序列数据它的特殊性,它是轻量级的,那我们构建的机器学习模型也可以是轻量级的,那么整个就是一个轻量级的结构,它就不会出现水土不服

如果老师们问,像大模型 ChatGPT,能不能用在 IoTDB 里面?大家都知道,ChatGPT 背后有几十万张 GPU 的支持,对吧?像这样一些很重的技术,要想放在数据库里面,很有可能会把数据库压垮。那么因此我们认为对这样的一种技术,有可能是采用现在更流行的 API 调用的这样一种方式,对吧?而把这些大模型放在另外一个基础设施上面去做。

2d26dd79aeb8ff0c646b66751ce8ee24.png

好,这是我最后一页,我做一个未来的展望。我们团队在研发时序数据基础机器学习模型的过程中发现,时序数据目前的一个痛点就是没有大家公认的、好的机器学习模型,大家都是一事一议,今天我做我用这个模型,明天我做我用那个模型。那为什么会这样呢?我个人认为就是基础模型的发展没有引起大家足够的重视。那另外一个原因就是时序数据它自己的特殊性,它的这种变量的多样性,它的采样频率的多样性,它的数据的这样一个长周期的多样性等等,都会让我们构建一个基础的时间序列模型变得比较的挑战。

但是我们团队也在这方面进行相关的攻关,已经取得了一些初步的进展。我们构建出来的时序基础模型,或者说大模型,已经具有比较好的跨变量的这样一些泛化能力。我们期待着我们时间序列基础模型的研究成果,能够更好地提高 IoTDB 作为时序数据基座的能力。

今天我的分享就到这里,谢谢大家。

688332b05a74a47a91de824662bc4c9d.png

可加欧欧获取大会相关PPT

微信号:apache_iotdb

eec0f3c25b69511311c8bda417027b86.gif

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/293805.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Starknet 开发实战训练营邀你挑战,1000 美元大奖等你赢取!

Starknet 免费公开课来啦!🚀 ZK L2 明星项目 Starknet 不久前透露其 STRK 空投计划引发了诸多关注,而全链游戏同样是今年 Web3 行业的热门领域之一,Starknet 便是全链游戏领域中的重要生态,开发者借助其链上游戏引擎 D…

【驱动序列】C#获取电脑硬件基本组合以及基础信息

大家好,我是全栈小5,欢迎阅读《小5讲堂之知识点实践序列》文章。 这是2024年第7篇文章,此篇文章是C#知识点实践序列文章,博主能力有限,理解水平有限,若有不对之处望指正! 要开发一款驱动小助手&…

Linux内存管理:(六)页交换算法

文章说明: Linux内核版本:5.0 架构:ARM64 参考资料及图片来源:《奔跑吧Linux内核》 Linux 5.0内核源码注释仓库地址: zhangzihengya/LinuxSourceCode_v5.0_study (github.com) 1. 引言 在Linux操作系统中&#x…

企业数据治理的三个阶段:从起步到成熟的数据管理之旅

随着数字化时代的到来,企业数据已经成为企业的重要资产和驱动业务发展的重要力量。然而,要想充分利用数据的价值,企业需要对其数据进行有效的管理和治理。本文将对企业数据治理的三个阶段进行详细的探讨,以帮助企业了解其在数据治…

Zookeeper(持续更新)

VIP-01 Zookeeper特性与节点数据类型详解 文章目录 VIP-01 Zookeeper特性与节点数据类型详解正文1. 什么是Zookeeper?2. Zookeeper 核心概念2.1、 文件系统数据结构2.2、监听通知机制2.3、Zookeeper 经典的应用场景3.2. 使用命令行操作zookeeper 正文 什么是Zookee…

新品发布 | 思腾合力深思系列IW2235-2GR GPU服务器

思腾合力深思系列 IW2235-2GR GPU服务器支持第四代英特尔至强可扩展处理器,采用全新微架构内核,支持最高的350W型号,计算性能强劲;支持32个DDR5内存,频率最高可达4800MHz,内存带宽相比上一代提升50%&#x…

[前端]React入门指南安裝及依赖包管理

仓库管理工具nrm #安装nrm npm i -g nrm#查看当前 nrm ls#use 使用仓库 nrm use npm 常见问题 npm安装失败 。切换为npm镜像为淘宝镜像 。使用yarn,如果本来使用yarn还要失败,还得把yarn的源切换到国内,如果还没有办法解决,请删除…

大一,如何成为一名fpga工程师?

​ 1、数电(必须掌握的基础),然后进阶学模电(选学), 2、掌握HDL(HDLverilogVHDL)可以选择verilog或者VHDL,建议verilog就行。 3、掌握FPGA设计流程/原理(推…

PPI+机器学习+免疫浸润+实验验证,如此简单也能发4+

今天给同学们分享一篇生信文章“Identification of metabolic biomarkers associated with nonalcoholic fatty liver disease”,这篇文章发表在Lipids Health Dis期刊上,影响因子为4.5。 结果解读: 识别NAFLD患者的MR DEG 主成分分析&…

YOLOv7独家原创改进:新颖的Shape IoU结合 Inner-IoU,基于辅助边框的IoU损失的同时关注边界框本身的形状和尺度,小目标实现高效涨点

💡💡💡本文改进:一种新的Shape IoU方法结合 Inner-IoU,基于辅助边框的IoU损失的同时,更加关注边界框本身的形状和尺度来计算损失 💡💡💡对小目标检测涨点明显,在VisDrone2019、PASCAL VOC均有涨点 💡💡💡本文改进:一种新的Shape IoU方法,该方法可以通过…

Python入门-函数

1.函数的定义及调用 函数:函数是将一段实现功能的完整代码,使用函数名称进行封装,通过函数名称进行调用。 以此达到一次编写,多次调用的目的 def get_sum(num): #num叫形式参数s0for i in range(1,num1):siprint(f1到{num}之…

Docker 发布自定义镜像到公共仓库

Docker 发布自定义镜像到公共仓库 引言 Docker 是一种轻量级、便携式的容器化技术,可以使应用程序在不同环境中更加可移植。在本文中,我们将学习如何使用 Docker 从公共仓库拉取 Nginx 镜像,定制该镜像,添加自定义配置文件&…

中国到雅加达专线,快速双清到门!

中国到雅加达专线,快速双清到门!🚀🌏 嘿,亲爱的小伙伴们!有关中国到雅加达的专线,快来了解一下吧!🇨🇳✈️🇮🇩 专线亮点&#xff1a…

Python从入门到网络爬虫(面向对象详解)

前言 Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的。本章节我们将详细介绍Python的面向对象编程。如果你以前没有接触过面向对象的编程语言,那你可能需要先了解一些面向对象语言的一些基本…

thingsboard前端缓存--nginx

thingsboardnginx thingsboard部署到阿里云服务器之后,由于登录界面要发送的文件很大,并且服务器的带宽目前有限,因此配置一个nginx,进行前端页面的一些缓存,参考了https://qianchenzhumeng.github.io/posts/Nginx%E5…

如何解决大语言模型的幻觉问题

如何解决大模型的「幻觉」问题? 什么是大模型「幻觉」 在人类生活中,幻觉表示虚假的但是我们分辨不清楚的事物,在大语言模型中,[幻觉]即代表模型生成的虚假的文本,这中情况很容易导致一些错误的发生 造成大模型「幻觉…

静态网页设计——网上书店(HTML+CSS+JavaScript)

前言 声明:该文章只是做技术分享,若侵权请联系我删除。!! 使用技术:HTMLCSSJS 主要内容:网上式的书店。是一种高质量,更快捷,更方便的购书方式。网上书店不仅可用于图书的在线销售…

简易2048游戏的实现(C++)

名人说:莫听穿林打叶声,何妨吟啸且徐行。—— 苏轼《定风波莫听穿林打叶声》 Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder) 目录 一、效果图二、代码(带注释)三、说明 一、效果图 二、代码(带…

yolov8实战第五天——yolov8+ffmpg实时视频流检测并进行实时推流——(推流,保姆教学)

yolov8实战第一天——yolov8部署并训练自己的数据集(保姆式教程)_yolov8训练自己的数据集-CSDN博客 yolov8实战第三天——yolov8TensorRT部署(python推理)(保姆教学)-CSDN博客 今天,我们继续y…

比例阀放大器控制阀类型

控制各种不带电气位移反馈的单电磁铁比例方向阀、比例压力阀、比例流量阀、比例减压阀、比例节流阀、比例插装阀的BEUEC比例放大器,供电24VDC,输入指令、输出电流、颤振频率、斜坡时间等可现场设置,适用不同阀易匹配,带参考电压输…