CN112884156A - 用于模型自适应的方法、设备和程序产品 - Google Patents
用于模型自适应的方法、设备和程序产品 Download PDFInfo
- Publication number
- CN112884156A CN112884156A CN201911200675.XA CN201911200675A CN112884156A CN 112884156 A CN112884156 A CN 112884156A CN 201911200675 A CN201911200675 A CN 201911200675A CN 112884156 A CN112884156 A CN 112884156A
- Authority
- CN
- China
- Prior art keywords
- data
- machine learning
- computing device
- analyzed
- learning model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 230000006978 adaptation Effects 0.000 title claims abstract description 17
- 238000010801 machine learning Methods 0.000 claims abstract description 141
- 230000005856 abnormality Effects 0.000 claims abstract description 16
- 238000004590 computer program Methods 0.000 claims description 20
- 230000002159 abnormal effect Effects 0.000 claims description 16
- 230000002547 anomalous effect Effects 0.000 claims description 8
- 238000007405 data analysis Methods 0.000 abstract description 9
- 238000012549 training Methods 0.000 description 39
- 230000008569 process Effects 0.000 description 32
- 238000001514 detection method Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 238000004458 analytical method Methods 0.000 description 6
- 238000012360 testing method Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000013136 deep learning model Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000000779 smoke Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
- G06F18/2148—Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the process organisation or structure, e.g. boosting cascade
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/217—Validation; Performance evaluation; Active pattern learning techniques
- G06F18/2178—Validation; Performance evaluation; Active pattern learning techniques based on feedback of a supervisor
- G06F18/2185—Validation; Performance evaluation; Active pattern learning techniques based on feedback of a supervisor the supervisor being an automated module, e.g. intelligent oracle
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/254—Fusion techniques of classification results, e.g. of results related to same input data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16Y—INFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
- G16Y40/00—IoT characterised by the purpose of the information processing
- G16Y40/20—Analytics; Diagnosis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Mathematical Physics (AREA)
- Medical Informatics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
本公开的实施例提供用于模型自适应的方法、设备和程序产品。一种用于模型自适应的方法包括在第一计算设备处从数据采集器接收待分析数据集,并利用被部署在第一计算设备的机器学习模型来确定待分析数据集的异常性。该方法还包括基于所确定的待分析数据集的异常性,将待分析数据集中的至少部分数据传输给第二计算设备以用于对机器学习模型进行更新,第二计算设备具有比第一计算设备更高的计算能力。该方法还包括从第二计算设备获得对经更新的机器学习模型的重新部署。由此,可以更快地利用当前版本的机器学习模型来提供数据分析结果,同时还能够利用计算能力更强的其他计算设备来实现模型更新,确保所使用的模型能够随着时间而自适应更新。
Description
技术领域
本公开的实施例涉及数据分析领域,并且更具体地,涉及用于模型自适应的方法、电子设备和计算机程序产品。
背景技术
近年来,随着计算机技术的发展,物联网已经越来越多地应用到人们生活中的各个方面。物联网技术中的一个核心是对于物联网设备(IoT)(例如,各种温度传感器、位置传感器、图像传感器、计量仪等)所获得的数据的分析,这些传感器数据可以有利地帮助人们进行预警或者预测等。然而,这样的传感器数据往往是海量的,因而传感器数据的传输和处理所需的资源开销也很大。目前随着人工智能技术的发展,提出了利用机器学习模型来实现更准确的数据分析。然而,机器学习模型的训练和应用对资源开销也提出了新的挑战。因而,如何高效地对物联网中的海量传感器数据进行分析已经成为当前的一个关注焦点。
发明内容
本公开的实施例提供了一种用于模型自适应的方案。
在本公开的第一方面中,提供了一种于模型自适应的方法。该方法包括在第一计算设备处,从数据采集器接收待分析数据集;利用被部署在第一计算设备的机器学习模型来确定待分析数据集的异常性;基于所确定的待分析数据集的异常性,将待分析数据集中的至少部分数据传输给第二计算设备以用于对机器学习模型进行更新,第二计算设备具有比第一计算设备更高的计算能力;以及从第二计算设备获得对经更新的机器学习模型的重新部署。
在本公开的第二方面中,提供了一种于模型自适应的方法。该方法包括在第二计算设备处,将已训练的机器学习模型部署到第一计算设备,机器学习模型被配置为确定来自数据采集器的待分析数据集的异常性,并且第二计算设备具有比第一计算设备更高的计算能力;从第一计算设备接收待分析数据集中的至少部分数据;基于接收到的数据来更新机器学习模型;以及将经更新的机器学习模型重新部署到第一计算设备。
在本公开的第三方面中,提供了一种电子设备。该电子设备包括至少一个处理器;以及存储有计算机程序指令的至少一个存储器,至少一个存储器和计算机程序指令被配置为,与至少一个处理器一起,使得电子设备执行动作。动作包括从数据采集器接收待分析数据集;利用被部署在电子设备的机器学习模型来确定待分析数据集的异常性;基于所确定的待分析数据集的异常性,将待分析数据集中的至少部分数据传输给另一电子设备以用于对机器学习模型进行更新,另一电子设备具有比电子设备更高的计算能力;以及从另一电子设备获得对经更新的机器学习模型的重新部署。
在本公开的第四方面中,提供了一种电子设备。该电子设备包括至少一个处理器;以及存储有计算机程序指令的至少一个存储器,至少一个存储器和计算机程序指令被配置为,与至少一个处理器一起,使得电子设备执行动作。动作包括将已训练的机器学习模型部署到另一电子设备,机器学习模型被配置为确定来自数据采集器的待分析数据集的异常性,并且电子设备具有比另一电子设备更高的计算能力;从另一电子设备接收待分析数据集中的至少部分数据;基于接收到的数据来更新机器学习模型;以及将经更新的机器学习模型重新部署到另一电子设备。
在本公开的第五方面中,提供了一种计算机程序产品。该计算机程序产品被有形地存储在非易失性计算机可读介质上并且包括机器可执行指令,机器可执行指令在被执行时使设备实现以上第一方面的方法。
在本公开的第六方面中,提供了一种计算机程序产品。该计算机程序产品被有形地存储在非易失性计算机可读介质上并且包括机器可执行指令,机器可执行指令在被执行时使设备实现以上第二方面的方法。
提供发明内容部分是为了简化的形式来介绍对概念的选择,它们在下文的具体实施方式中将被进一步描述。发明内容部分无意标识本公开的关键特征或主要特征,也无意限制本公开的范围。
附图说明
通过结合附图对本公开示例性实施例进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施例中,相同的参考标号通常代表相同部件。
图1示出了本公开实施例可以在其中被实施的环境的示意图;
图2示出了根据本公开的一些实施例的实现环境的示意图;
图3示出了根据本公开的另一些实施例的实现环境的示意图;
图4示出了根据本公开的一些实施例的用于模型自适应的信令过程的流程图;
图5示出了根据本公开的一些实施例的用于模型自适应的过程的流程图;
图6示出了根据本公开的一些实施例的用于模型自适应的过程的流程图;以及
图7示出了可以用来实施本公开的实施例的示例设备的框图。
具体实施方式
下面将参考附图中示出的若干示例实施例来描述本公开的原理。虽然附图中显示了本公开的优选实施例,但应当理解,描述这些实施例仅是为了使本领域技术人员能够更好地理解进而实现本公开,而并非以任何方式限制本公开的范围。
在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实施例”和“一个实施例”表示“至少一个示例实施例”。术语“另一实施例”表示“至少一个另外的实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
如本文中所使用的,“机器学习”指的是涉及高性能计算、机器学习和人工智能算法的处理。在本文中,术语“机器学习模型”也可以称为“学习模型”、“学习网络”、“网络模型”、或“模型”。“神经网络”或“神经网络模型”是一种深度学习模型。概括来说,机器学习模型能够接收输入数据并且基于输入数据执行预测和输出预测结果。
机器学习主要可以划分为三个阶段,即训练阶段、测试阶段和应用阶段(也称为推理阶段)。在训练阶段,给定的机器学习模型可以使用大量的训练样本进行训练,不断迭代,直到机器学习模型能够从训练样本中获得一致的、与人类智慧所能够做出的推理类似的推理。机器学习模型通过训练,可以被认为能够从训练数据中学习从输入到输出之间的映射或关联关系。经过训练后,机器学习模型的参数集值被确定。在测试阶段,可以利用测试样本对已训练的机器学习模型进行测试,以确定机器学习模型的性能。在应用阶段,机器学习模型可以被用于基于训练得到的参数集值,对实际的输入数据进行处理,以给出对应的输出。
图1示出了本公开实施例可以在其中被实施的环境100的示意图。如图1所示,环境100包括一个或多个数据采集器105-1、105-2、…、105-N(单独地或统一称为数据采集器105,其中N是大于等于1的正整数)、计算设备120、云计算架构130以及提供在云计算架构130中的计算设备140。环境100可以被认为是物联网(IoT)。应当理解,图1中所示的设备的数目和布置仅是示意性的,而不应当被理解为对本申请方案的限制。
在一些实施例中,计算设备120可以是边缘计算节点,例如具有网关功能的计算节点(也称为边缘网关)。计算设备120可以与一个或多个数据采集器105有线或无线连接和通信,并且被配置为从一个或多个数据采集器105接收待分析数据110-1、110-2、…、110-N(单独地或统一称为待分析数据110)。待分析数据110的分析操作可以由环境100中具有计算能力的设备来实现。
数据采集器105可以是能够采集数据的任何设备,例如可以是各种类似的传感器。数据采集器105的示例包括图像传感器、运动传感器、温度传感器、位置传感器、照度传感器、湿度传感器、功率感测传感器、气体传感器、烟雾传感器、湿度传感器、压力传感器、定位传感器、加速度计、陀螺仪、计量仪、声音分贝传感器等等。在数据分析工作中,可能需要对待分析数据110执行异常数据检测,以便及时发现数据采集器105所部署的环境中出现的异常事件,提供异常事件预警,以便帮助后续处理动作。
云计算架构130被远程布置,以提供计算、软件、数据访问和存储服务。在云计算架构130中的处理可以称为“云计算”。在各种实现中,云计算使用适当的协议通过广域网(诸如因特网)提供服务。例如,云计算架构130提供商通过广域网提供应用,并且它们可以通过web浏览器或任何其他计算组件被访问。云计算架构130的软件或组件以及相应的数据可以被存储在远程位置处的服务器上。云计算架构130中的计算资源可以在远程数据中心位置处被合并或者它们可以被分散。云计算基础设施可以通过共享数据中心提供服务,即使它们表现为针对用户的单一访问点。因此,可以使用云计算架构130从远程位置处的服务提供商提供本文所描述的组件和功能。备选地,它们可以从常规服务器被提供,或者它们可以直接或以其他方式被安装在客户端设备上。虽然被示出为单个设备140,但应当理解计算设备140可以是云计算架构130中具有计算能力的任何部件。因此,计算设备140的各个部分可以分布在云计算架构130中。
在数据分析和异常性检测中,当前趋势是使用机器学习模型来实现。对数据的异常性检测可以被认为是机器学习模型要解决的分类问题。机器学习模型的训练和应用需要处理、存储等计算资源的支持。为了达到所要求的处理精度或者取决于所使用的模型类型,机器学习模型的尺寸可能非常大,因此对计算资源的要求可能更高。
在实际应用中,数据分析的需求和准则以及从数据源(即数据采集器)采集到的数据可能会随着时间而变化。例如,初始可能仅期望粗略判断数据是或者不是异常数据,之后可能期望更精确的判断异常数据的更细分的类型和/或正常数据的更细分的类型。数据采集器可能也会被增加或减少,导致要处理的数据类型和数据量等会发生变化。因此,在机器学习模型的训练和应用过程中,所面临的另一个挑战是模型如何演进。然而,相比于机器学习模型的应用而言,模型的训练将会消耗更多资源并且花费更长时间。
考虑到以上方面,如果将机器学习模型的更新和应用均部署在具有更强计算能力的云计算架构中,可能不需要担心计算资源问题,但会影响到数据分析的实时反馈,因为将待分析数据从数据采集器传输到云计算架构中并且再从云计算架构中返回分析结果,这个过程的延迟可能比较大,难以满足实时检测数据异常性的需求。例如,在利用速度传感器检测车辆运行状态的场景中,快速地检测异常速度以预测可能的车祸是一项非常重要的应用。
在另一种可能的实现中,如果将机器学习模型的更新和应用均部署在与数据源更近的计算设备,诸如IoT中的边缘计算节点处,可能可以降低异常性检测的延迟,但将会牺牲边缘计算节点的计算资源。这将会导致模型的更新和模型的应用过程的效率均更低。
根据本公开的实施例,提出了一种模型自适应的方案。在该方案中,机器学习模型的应用和更新被分布到不同计算设备上实现。具体地,机器学习模型被部署在第一计算设备上,以由第一计算设备用于对来自数据采集器的待分析数据集进行处理。根据对待分析数据集的处理结果,第一计算设备将待分析数据集中的至少部分数据提供给第二计算设备。第二计算设备被配置为至少基于来自第一计算设备的数据对机器学习模型进行更新,并且将经更新的机器学习模型重新部署到第一计算设备。以此方式,可以更快地利用当前版本的机器学习模型来提供数据分析结果,同时还能够利用计算能力更强的其他计算设备来实现模型更新,确保所使用的模型能够随着时间而自适应更新。
图2示出了根据本公开的一些实施例的实施环境的示意图。图2中示出了根据本公开的实施例的分布式模型应用和更新的示例环境。如图所示,已训练的机器学习模型210被部署在计算设备120处。具有更强计算能力的计算设备140包括模型训练模块220,该模块被配置为对机器学习模型210进行更新。
计算设备140可以保存当前被部署在计算设备120处的机器学习模型210,然后根据模型更新的准则对机器学习模型210进行更新。如图3所示,计算设备140将经更新的机器学习模型(称为机器学习模型310)重新部署到计算设备120处。由此,计算设备120可以利用新的机器学习模型310来继续处理来自数据采集器105的待分析数据集110。
图4示出了根据本公开的一些实施例的用于模型自适应的信令过程400。过程400涉及计算设备120、计算设备140和数据采集器105。为便于讨论,将参考图2和图3来讨论过程400。
计算设备140可以是具有更强计算能力的设备,因此可以被用于实现模型训练。计算设备140将已训练的机器学习模型210部署410到计算设备120。例如,计算设备140可以将机器学习模型210的配置数据以及训练得到的参数集的值发送给计算设备120。
机器学习模型210被配置和训练为能够确定数据的异常性。确定数据的异常性可以被认为是一种分类任务,例如二分类任务(例如,确定数据是正常或是异常),或者多分类任务(例如,确定数据是具体哪个类型的异常数据或者具体哪个类型的正常数据)。机器学习模型210可以被设计为能够实现异常数据检测的任何模型。机器学习模型210的一些示例包括是支持向量机(SVM)模型,贝叶斯模型,随机森林模型,各种深度学习/神经网络模型,诸如卷积神经网络(CNN)、循环神经网络(RNN)等。在一些实施例中,机器学习模型210的设计还取决于待分析数据(即来自数据采集器105的待分析数据集110)的类型。在一些示例中,机器学习模型210可以包括多个子模型,以便处理不同类型的数据。
机器学习模型210的训练可以基于训练数据。在初始阶段,机器学习模型210的训练数据可以来自各种数据库的训练数据。模型的训练笼统而言可以分为监督式学习和非监督式学习。在监督式学习中,要利用训练输入数据和该训练输入数据的真实标签来进行训练。训练输入数据和真实标签都称为机器学习模型210的训练数据。训练输入数据的形式是机器学习模型210所支持的输入数据。
在训练过程中,每次机器学习模型210均基于当前参数集的参数值来处理训练输入数据,并给出在当前参数集基础上的模型输出。计算设备140,例如计算设备140中的模型训练模块220将模型输出与真实标签比较,可以确定机器学习模型210的参数集值是否正确。例如,如果比较的结果指示差异比较大,模型训练模块220将继续调整参数集值。在满足一定收敛条件之后,机器学习模型210的训练完成。在非监督式学习中,将不需要真实标签,由机器学习模型210分析训练输入数据中可能存在的模式,从而完成训练。应当理解,以上仅是关于模型训练的简单介绍。计算设备140的模型训练模块220可以利用各种训练算法来训练机器学习模型210。
在一些实施例中,在机器学习模型210训练完成后,可以继续利用已知的测试数据对已训练的机器学习模型210进行测试,以确定机器学习模型的性能。测试阶段也可以由计算设备140完成。
计算设备120从计算设备140获得机器学习模型210的部署之后,可以利用机器学习210来执行相应的数据分析任务,特别是数据异常性检测的任务。具体地,计算设备120从一个或多个数据采集器105接收415待分析数据集,例如待分析数据集110。数据采集器105可以被配置为周期性或间歇性地向计算设备120发送待分析数据,这取决于各个数据采集器105的配置。数据采集器105可以通过有线通信连接和/或无线通信连接来向计算设备120提供待分析数据集110。
计算设备120利用被部署的机器学习模型210来确定420待分析数据集110的异常性。计算设备120作为边缘设备,与数据采集器105的通信速度通常高于数据采集器105与计算设备140的通信速度。因此,由计算设备120负责数据异常性的检测可以提高检测速度,实现对异常检测的快速响应。
待分析数据集110例如可以经过预处理后作为机器学习模型210的输入。如果机器学习模型210由多个子模型组成,待分析数据集110中的不同数据部分可以被提供给相应的子模型处理。通常,机器学习模型210能够检测待分析数据集110中的数据是否异常。数据异常的准则可以由机器学习模型210在训练阶段从训练数据中学习到,并且数据异常性的分类准则可以由开发人员配置。例如,在利用温度传感器检测环境温度的示例中,可以基于当前采集到的温度数据是否高于某个阈值或低于某个阈值来确定是否存在温度异常事件。对于数据异常性的检测可以有助于提供关于异常事件的告警。例如,可以提供关于温度异常事件的告警,以使得工程人员可以确认该温度传感器是否存在故障,或者是否存在被数据入侵(例如,篡改数据)的风险。
在利用机器学习模型210确定分析数据集110的异常性之后,计算设备120基于所确定的待分析数据集110的异常性,将待分析数据集110中的至少部分数据传输425给计算设备140以用于对机器学习模型210进行更新。计算设备140例如在图2和图3的示例中被包括在云计算架构130中。计算设备140因而具有比计算设备120更高的计算能力,因此将计算资源消耗更大、耗时更长的模型更新过程交由计算设备140来实现,不仅能够确保模型更新的准确度,而且还能够节约计算设备120的资源。由此,计算设备120可以专注于对数据异常性的检测,甚至可以实现模型更新和数据异常性检测的并行实现,进一步提高效率。
对机器学习模型210的更新可以包括对先前版本的机器学习模型210的重新训练,以使得机器学习模型210的参数集的值可以被精细调整,从而能够给出更准确的输出结果(即能够更准确检测出来自数据采集器105的待分析数据的异常性)。备选地,对机器学习模型210的更新还包括对机器学习模型210的模型配置的更新,例如改变模型的架构(模型的隐藏节点的数目、网络层的层数、输出层节点的数目等),或者配置另一个类型的机器学习模型。例如,机器学习模型210可以被配置为将数据确定为异常或正常。具有新配置的机器学习模型可以将数据划分为更细的类别,例如某个异常类型或者某个正常类型。
在一些实施例中,被提供给计算设备120用于模型更新的数据可以待分析数据集110中由机器学习模型210确定为正常的数据。对于待分析数据集110中被确定为异常的数据,在提供关于这部分数据的异常性的指示之后,计算设备120可以丢弃这部分数据,而不需要利用这部分数据来对进一步更新模型。
在分类问题,可以将数据样本确定为成正类(positive)或负类(negative)。对于二分类问题,可能会出现四种情况。如果一个数据样本是正类并且也被机器学习模型预测成正类,该数据样本可以被称为是真正类(true positive)数据样本,如果该正类数据样本被机器学习模型错误预测为负类,则被称为假负类(false negative)数据样本。如果一个数据样本是负类、但被机器学习模型预测成正类,该数据样本被称之为假正类(falsepositive)数据样本,反之如果该数据样本被机器学习模型正确预测为负类,则称为真负类(true negative)数据样本。
在数据异常性检测的实施例中,假设将异常数据分类为负类数据样本,将正常数据分类为正类数据样本。如果计算设备120当前使用的机器学习模型210能够将待分析数据集110中的一部分数据预测为异常数据,可以认为机器学习模型210对这部分数据的预测是正确的,这是因为在数据异常性检测中还有后续流程对异常数据进一步检测和处理。因此可以将待分析数据集110中被确定为异常的数据认为是“真负类数据”,不需要被用于继续改进模型对这部分数据的检测准确性,因而计算设备120无需将该部分数据提供给计算设备140。如果当前使用的机器学习模型210将待分析数据集110中的一部分数据预测为正常数据,这部分数据可能是真正类数据或是假正类数据(即机器学习模型210可能预测错误),将这部分数据提供给计算设备140用于模型更新,这有利于将模型更新到能够更准确对于这部分数据类似的数据的异常性检测。
计算设备120可以利用当前部署的机器学习模型120不断处理来自数据采集器105的待分析数据,并将其中被确定为正常的数据提供给计算设备140。计算设备140从计算设备120接收430待分析数据集120中的至少部分数据之后,计算设备140,例如计算设备140中的模型训练模块220基于接收到的数据来更新435机器学习模型210。
在一些实施例中,计算设备140可以将每次接收到的部分数据存储起来,并且在接收到的数据累计到一定量之后启动模型更新过程。在一些实施例中,除从计算设备120获得用于模型更新的数据之后,计算设备140还可以从其他数据源获得用于模型更新的附加数据。在一个实施例中,如果采用监督式学习来更新模型,计算设备140还可以获得与从计算设备120接收到的数据相关的标签,该标签指示数据是正常或是异常。计算设备140可以基于从计算设备120接收到的数据和这些数据相关的标签来更新机器学习模型210。这些数据的标签例如可以通过人工标注的方式获得。如以上提及的,对机器学习模型210的更新例如可以是在机器学习模型210原有配置的基础上对参数集的值重新确定,或者可以在改变或替换机器学习模型210的配置之后对新的机器学习模型的参数集的值重新确定。模型的更新是模型的重新训练过程,具体可以参见以上关于模型训练的描述。
经过训练,计算设备140获得经更新的机器学习模型,即机器学习模型310。计算设备140将机器学习模型310重新部署440到计算设备120。由此,计算设备120用于数据异常性检测的模型可以从原有的机器学习模型210演进到新的机器学习模型310。计算设备120可以利用机器学习模型310对来自数据采集器105的待分析数据集进行异常性检测。新的机器学习模型310经过演进,能够提供更准确的检测结果。
图5示出了根据本公开的实施例的用于模型自适应的过程500的流程图。过程500可以由图1的计算设备120来实现,并且可以在图2、图4的示例环境中实现。
在510,计算设备120(有时也称为第一计算设备)从数据采集器接收待分析数据集。在520,计算设备120利用被部署在计算设备120的机器学习模型来确定待分析数据集的异常性。在530,计算设备120基于所确定的待分析数据集的异常性,将待分析数据集中的至少部分数据传输给计算设备140(有时也称为第二计算设备)以用于对机器学习模型进行更新,计算设备140具有比计算设备120更高的计算能力。在540,计算设备120从计算设备140获得对经更新的机器学习模型的重新部署。
在一些实施例中,计算设备120与数据采集器的通信速度高于计算设备140与数据采集器的通信速度。
在一些实施例中,将待分析数据的至少一部分提供给计算设备140包括:将待分析数据集中被确定为正常的数据提供给计算设备140。
在一些实施例中,过程500还包括:在提供对待分析数据集中的数据的异常性的指示后,丢弃待分析数据集中被确定为异常的数据。
在一些实施例中,计算设备120为边缘计算节点。在一些实施例中,计算设备140被包括在云计算架构中。在一些实施例中,数据采集器包括物联网(IoT)中的传感器。
图6示出了根据本公开的实施例的用于模型自适应的过程600的流程图。过程600可以由图1的计算设备140来实现,并且可以在图2、图4的示例环境中实现。
在610,计算设备140将已训练的机器学习模型部署到计算设备120。该机器学习模型被配置为确定来自数据采集器的待分析数据集的异常性。计算设备140具有比计算设备120更高的计算能力。在620,计算设备140从计算设备120接收待分析数据集中的至少部分数据。在630,计算设备140基于接收到的数据来更新机器学习模型。在640,计算设备140将经更新的机器学习模型重新部署到计算设备120。
在一些实施例中,接收待分析数据集中的至少部分数据包括:从计算设备120接收待分析数据集中被机器学习模型确定为正常的至少部分数据。
在一些实施例中,更新机器学习模型包括:获得与接收到的数据相关的标签,标签指示数据正常或是异常;以及基于接收到的数据和标签来更新机器学习模型。
在一些实施例中,计算设备120与数据采集器的通信速度高于计算设备140与数据采集器的通信速度。
在一些实施例中,计算设备120为边缘计算节点。在一些实施例中,计算设备140被包括在云计算架构中。在一些实施例中,数据采集器包括至少一个物联网(IoT)设备。
图7示出了可以用来实施本公开的实施例的示例设备700的示意性框图。设备700可以用于实现图5的过程500或图6的过程600。设备700可以被实现为图1中的计算设备120或计算设备140。
如图所示,设备700包括中央处理单元(CPU)701,其可以根据存储在只读存储器(ROM)702中的计算机程序指令或者从存储单元708加载到随机访问存储器(RAM)703中的计算机程序指令,来执行各种适当的动作和处理。在RAM 703中,还可存储设备700操作所需的各种程序和数据。CPU 701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
设备700中的多个部件连接至I/O接口705,包括:输入单元706,例如键盘、鼠标等;输出单元707,例如各种类型的显示器、扬声器等;存储单元708,例如磁盘、光盘等;以及通信单元709,例如网卡、调制解调器、无线通信收发机等。通信单元709允许设备700通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理单元701执行上文所描述的各个方法和处理,例如过程500或过程600。例如,在一些实施例中,过程500或过程600可被实现为计算机软件程序或计算机程序产品,其被有形地包含于机器可读介质,诸如非瞬态计算机可读介质,诸如存储单元708。在一些实施例中,计算机程序的部分或者全部可以经由ROM 702和/或通信单元709而被载入和/或安装到设备700上。当计算机程序加载到RAM 703并由CPU 701执行时,可以执行上文描述的过程600的一个或多个步骤。备选地,在其他实施例中,CPU 701可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行过程500或过程600。
本领域的技术人员应当理解,上述本公开的方法的各个步骤可以通过通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本公开不限制于任何特定的硬件和软件结合。
应当理解,尽管在上文的详细描述中提及了设备的若干装置或子装置,但是这种划分仅仅是示例性而非强制性的。实际上,根据本公开的实施例,上文描述的两个或更多装置的特征和功能可以在一个装置中具体化。反之,上文描述的一个装置的特征和功能可以进一步划分为由多个装置来具体化。
以上所述仅为本公开的可选实施例,并不用于限制本公开,对于本领域的技术人员来说,本公开可以有各种更改和变化。凡在本公开的精神和原则之内,所作的任何修改、等效替换、改进等,均应包含在本公开的保护范围之内。
Claims (22)
1.一种用于模型自适应的方法,包括:
在第一计算设备处,从数据采集器接收待分析数据集;
利用被部署在所述第一计算设备的机器学习模型来确定所述待分析数据集的异常性;
基于所确定的所述待分析数据集的异常性,将所述待分析数据集中的至少部分数据传输给第二计算设备以用于对所述机器学习模型进行更新,所述第二计算设备具有比所述第一计算设备更高的计算能力;以及
从所述第二计算设备获得对经更新的所述机器学习模型的重新部署。
2.根据权利要求1所述的方法,其中所述第一计算设备与所述数据采集器的通信速度高于所述第二计算设备与所述数据采集器的通信速度。
3.根据权利要求1所述的方法,其中将所述待分析数据的至少一部分提供给所述第二计算设备包括:
将所述待分析数据集中被确定为正常的数据提供给所述第二计算设备。
4.根据权利要求1所述的方法,还包括:
在提供对所述待分析数据集中的数据的异常性的指示后,丢弃所述待分析数据集中被确定为异常的数据。
5.根据权利要求1所述的方法,其中所述第一计算设备为边缘计算节点,并且所述第二计算设备被包括在云计算架构中,并且
其中所述数据采集器包括物联网(IoT)中的传感器。
6.一种用于模型自适应的方法,包括:
在第二计算设备处,将已训练的机器学习模型部署到第一计算设备,所述机器学习模型被配置为确定来自数据采集器的待分析数据集的异常性,并且所述第二计算设备具有比所述第一计算设备更高的计算能力;
从所述第一计算设备接收所述待分析数据集中的至少部分数据;
基于接收到的数据来更新所述机器学习模型;以及
将经更新的所述机器学习模型重新部署到所述第一计算设备。
7.根据权利要求6所述的方法,其中接收所述待分析数据集中的至少部分数据包括:
从所述第一计算设备接收所述待分析数据集中被所述机器学习模型确定为正常的至少部分数据。
8.根据权利要求7所述的方法,其中更新所述机器学习模型包括:
获得与接收到的所述数据相关的标签,所述标签指示所述数据正常或是异常;以及
基于接收到的所述数据和所述标签来更新所述机器学习模型。
9.根据权利要求6所述的方法,其中所述第一计算设备与所述数据采集器的通信速度高于所述第二计算设备与所述数据采集器的通信速度。
10.根据权利要求6所述的方法,其中所述第一计算设备为边缘计算节点,并且所述第二计算设备被包括在云计算架构中,并且
其中所述数据采集器包括至少一个物联网(IoT)设备。
11.一种电子设备,包括:
至少一个处理器;以及
存储有计算机程序指令的至少一个存储器,所述至少一个存储器和所述计算机程序指令被配置为,与所述至少一个处理器一起,使得所述电子设备执行动作,所述动作包括:
从数据采集器接收待分析数据集;
利用被部署在所述电子设备的机器学习模型来确定所述待分析数据集的异常性;
基于所确定的所述待分析数据集的异常性,将所述待分析数据集中的至少部分数据传输给另一电子设备以用于对所述机器学习模型进行更新,所述另一电子设备具有比所述电子设备更高的计算能力;以及
从所述另一电子设备获得对经更新的所述机器学习模型的重新部署。
12.根据权利要求11所述的设备,其中所述电子设备与所述数据采集器的通信速度高于所述另一电子设备与所述数据采集器的通信速度。
13.根据权利要求11所述的设备,其中将所述待分析数据的至少一部分提供给所述另一电子设备包括:
将所述待分析数据集中被确定为正常的数据提供给所述另一电子设备。
14.根据权利要求11所述的设备,其中所述动作还包括:
在提供对所述待分析数据集中的数据的异常性的指示后,丢弃所述待分析数据集中被确定为异常的数据。
15.根据权利要求11所述的设备,其中所述电子设备为边缘计算节点,并且所述另一电子设备被包括在云计算架构中,并且
其中所述数据采集器包括物联网(IoT)中的传感器。
16.一种电子设备,包括:
至少一个处理器;以及
存储有计算机程序指令的至少一个存储器,所述至少一个存储器和所述计算机程序指令被配置为,与所述至少一个处理器一起,使得所述电子设备执行动作,所述动作包括:
将已训练的机器学习模型部署到另一电子设备,所述机器学习模型被配置为确定来自数据采集器的待分析数据集的异常性,并且所述电子设备具有比所述另一电子设备更高的计算能力;
从所述另一电子设备接收所述待分析数据集中的至少部分数据;
基于接收到的数据来更新所述机器学习模型;以及
将经更新的所述机器学习模型重新部署到所述另一电子设备。
17.根据权利要求16所述的设备,其中接收所述待分析数据集中的至少部分数据包括:
从所述另一电子设备接收所述待分析数据集中被所述机器学习模型确定为正常的至少部分数据。
18.根据权利要求17所述的设备,其中更新所述机器学习模型包括:
获得与接收到的所述数据相关的标签,所述标签指示所述数据正常或是异常;以及
基于接收到的所述数据和所述标签来更新所述机器学习模型。
19.根据权利要求16所述的设备,其中所述另一电子设备与所述数据采集器的通信速度高于所述电子设备与所述数据采集器的通信速度。
20.根据权利要求16所述的设备,其中所述另一电子设备为边缘计算节点,并且所述电子设备被包括在云计算架构中,并且
其中所述数据采集器包括至少一个物联网(IoT)设备。
21.一种计算机程序产品,所述计算机程序产品被有形地存储在非易失性计算机可读介质上并且包括机器可执行指令,所述机器可执行指令在被执行时使设备实现根据权利要求1至5中任一项所述的方法。
22.一种计算机程序产品,所述计算机程序产品被有形地存储在非易失性计算机可读介质上并且包括机器可执行指令,所述机器可执行指令在被执行时使设备实现根据权利要求6至10中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911200675.XA CN112884156A (zh) | 2019-11-29 | 2019-11-29 | 用于模型自适应的方法、设备和程序产品 |
US16/805,065 US11443146B2 (en) | 2019-11-29 | 2020-02-28 | Methods, devices, and computer program products for model adaptation |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911200675.XA CN112884156A (zh) | 2019-11-29 | 2019-11-29 | 用于模型自适应的方法、设备和程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112884156A true CN112884156A (zh) | 2021-06-01 |
Family
ID=76038596
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911200675.XA Pending CN112884156A (zh) | 2019-11-29 | 2019-11-29 | 用于模型自适应的方法、设备和程序产品 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11443146B2 (zh) |
CN (1) | CN112884156A (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11656966B2 (en) * | 2020-04-06 | 2023-05-23 | Computime Ltd. | Local computing cloud that is interactive with a public computing cloud |
US11762442B1 (en) * | 2020-07-31 | 2023-09-19 | Splunk Inc. | Real-time machine learning at an edge of a distributed network |
US11984964B2 (en) * | 2021-05-10 | 2024-05-14 | Raytheon Company | Decentralized control via adaptive importance encoding |
US11703850B2 (en) * | 2021-08-31 | 2023-07-18 | Accenture Global Solutions Limited | Predictive maintenance of equipment |
CN116502197A (zh) | 2022-01-19 | 2023-07-28 | 戴尔产品有限公司 | 计算机实现的方法、设备和计算机程序产品 |
WO2024065709A1 (zh) * | 2022-09-30 | 2024-04-04 | 华为技术有限公司 | 一种通信方法及相关设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170236060A1 (en) * | 2015-03-24 | 2017-08-17 | NetSuite Inc. | System and Method for Automated Detection of Incorrect Data |
CN107871164A (zh) * | 2017-11-17 | 2018-04-03 | 济南浪潮高新科技投资发展有限公司 | 一种雾计算环境个性化深度学习方法 |
US20180184232A1 (en) * | 2016-12-23 | 2018-06-28 | Accenture Global Solutions Limited | Detecting trigger conditions to dynamically update a model based on sensor data in a fog computing environment |
US20180247220A1 (en) * | 2017-02-28 | 2018-08-30 | International Business Machines Corporation | Detecting data anomalies |
CN109026649A (zh) * | 2018-08-28 | 2018-12-18 | 上海弦慧新能源科技有限公司 | 数据采集装置及运行管理方法 |
US20190079898A1 (en) * | 2017-09-12 | 2019-03-14 | Actiontec Electronics, Inc. | Distributed machine learning platform using fog computing |
CN109936285A (zh) * | 2017-12-19 | 2019-06-25 | 英特尔公司 | 具有机器学习能力的集成电路功率系统 |
CN110460662A (zh) * | 2019-09-18 | 2019-11-15 | 中用科技有限公司 | 物联网数据的处理方法和系统 |
-
2019
- 2019-11-29 CN CN201911200675.XA patent/CN112884156A/zh active Pending
-
2020
- 2020-02-28 US US16/805,065 patent/US11443146B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170236060A1 (en) * | 2015-03-24 | 2017-08-17 | NetSuite Inc. | System and Method for Automated Detection of Incorrect Data |
US20180184232A1 (en) * | 2016-12-23 | 2018-06-28 | Accenture Global Solutions Limited | Detecting trigger conditions to dynamically update a model based on sensor data in a fog computing environment |
US20180247220A1 (en) * | 2017-02-28 | 2018-08-30 | International Business Machines Corporation | Detecting data anomalies |
US20190079898A1 (en) * | 2017-09-12 | 2019-03-14 | Actiontec Electronics, Inc. | Distributed machine learning platform using fog computing |
CN107871164A (zh) * | 2017-11-17 | 2018-04-03 | 济南浪潮高新科技投资发展有限公司 | 一种雾计算环境个性化深度学习方法 |
CN109936285A (zh) * | 2017-12-19 | 2019-06-25 | 英特尔公司 | 具有机器学习能力的集成电路功率系统 |
CN109026649A (zh) * | 2018-08-28 | 2018-12-18 | 上海弦慧新能源科技有限公司 | 数据采集装置及运行管理方法 |
CN110460662A (zh) * | 2019-09-18 | 2019-11-15 | 中用科技有限公司 | 物联网数据的处理方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
US11443146B2 (en) | 2022-09-13 |
US20210166083A1 (en) | 2021-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112884156A (zh) | 用于模型自适应的方法、设备和程序产品 | |
Huong et al. | Detecting cyberattacks using anomaly detection in industrial control systems: A federated learning approach | |
US10951639B2 (en) | Systems, methods and computer program products for anomaly detection | |
US10637951B2 (en) | Systems and methods for managing data proxies | |
Huong et al. | Federated learning-based explainable anomaly detection for industrial control systems | |
CA3074663A1 (en) | Alert analysis server and method of operation thereof | |
CN111431819A (zh) | 一种基于序列化的协议流特征的网络流量分类方法和装置 | |
US20190037638A1 (en) | Split predictions for iot devices | |
US20230133541A1 (en) | Alert correlating using sequence model with topology reinforcement systems and methods | |
US20220237521A1 (en) | Method, device, and computer program product for updating machine learning model | |
Becker et al. | Towards aiops in edge computing environments | |
Yemeni et al. | CFDDR: A centralized faulty data detection and recovery approach for WSN with faults identification | |
Ravi Kiran Varma et al. | Enhanced Elman spike neural network based intrusion attack detection in software defined Internet of Things network | |
US20210405990A1 (en) | Method, device, and storage medium for deploying machine learning model | |
US20200213203A1 (en) | Dynamic network health monitoring using predictive functions | |
US20210103836A1 (en) | Reliance Control in Networks of Devices | |
WO2022035102A1 (ko) | 네트워크 모니터링 장치 및 방법 | |
US20240095587A1 (en) | Methods and apparatuses for providing transfer learning of a machine learning model | |
Zhang et al. | Intelligent fault diagnosis system based on vibration signal edge computing | |
CN118020081A (zh) | 确定性机器学习模型的根本原因分析 | |
WO2020261621A1 (ja) | 監視システム、監視方法及びプログラム | |
CN114676002A (zh) | 基于phm技术的系统运维方法及装置 | |
Chow et al. | Flare: detection and mitigation of concept drift for federated learning based IoT deployments | |
Yu | Fault location measurement of sensor nodes based on fuzzy control algorithm | |
Do et al. | Towards remote deployment for intrusion detection system to iot edge devices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |