CN115345212A - 一种基于机器学习模型的控制方法和装置 - Google Patents

一种基于机器学习模型的控制方法和装置 Download PDF

Info

Publication number
CN115345212A
CN115345212A CN202110523436.9A CN202110523436A CN115345212A CN 115345212 A CN115345212 A CN 115345212A CN 202110523436 A CN202110523436 A CN 202110523436A CN 115345212 A CN115345212 A CN 115345212A
Authority
CN
China
Prior art keywords
value
interval
machine learning
prediction
prediction interval
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
Application number
CN202110523436.9A
Other languages
English (en)
Inventor
赖苑都
石育澄
韩亚洪
邵云峰
骆文
李秉帅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202110523436.9A priority Critical patent/CN115345212A/zh
Priority to PCT/CN2021/127235 priority patent/WO2022237086A1/zh
Publication of CN115345212A publication Critical patent/CN115345212A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Feedback Control In General (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请实施例公开了一种基于机器学习模型的控制方法和装置,用于提高控制系统的控制准确度。本申请实施例提供一种基于机器学习模型的控制方法,包括:获取控制系统在运行时的状态数据;将所述状态数据输入到预设的机器学习模型中,通过所述机器学习模型输出所述控制系统的性能指标的预测值以及所述预测值对应的预测区间,其中,所述预测区间用于指示所述预测值对应的范围;当所述预测区间符合预设的条件时,根据所述预测值确定控制参数,所述控制参数用于所述控制系统对被控设备进行控制。

Description

一种基于机器学习模型的控制方法和装置
技术领域
本申请涉及机器学习技术领域,尤其涉及一种基于机器学习模型的控制方法和装置。
背景技术
目前的机器学习模型可以应用于控制系统中,例如控制系统可以用于机器学习辅助医学诊断场景、自动驾驶场景、金融系统场景、能源系统场景中的控制,以提高控制系统对被控制设备的控制精确度。
上述的控制系统可以包括:云端服务器和本地数据中心。控制系统执行的控制流程可以包括:模型训练和基于模型的推理寻优。在模型训练中,云端服务器可以收集本地数据中心发送的历史数据,该历史数据来自实际场景下的物理系统上报,该历史数据用于对初始机器学习模型进行训练,在训练完成后可以得到机器学习模型,该机器学习模型可以输出预测值。
模型训练完毕后,通过机器学习模型进行推理寻优。具体的,本地数据中心发送当前数据给云端服务器,云端服务器基于训练好的机器学习模型进行推理寻优,以输出预测值,再将该预测值返回给本地数据中心,本地数据中心基于该预测值向控制系统发送控制参数。
在上述方案中,云端服务器使用训练好的机器学习模型进行推理并输出预测值,本地数据中心使用该预测值下发控制参数,若基于该预测值得到的控制参数是错误的,则会降低控制系统的控制准确度。
发明内容
本申请实施例提供了一种基于机器学习模型的控制方法和装置,用于提高控制系统的控制准确度。
为解决上述技术问题,本申请实施例提供以下技术方案:
第一方面,本申请实施例提供一种基于机器学习模型的控制方法,包括:获取控制系统在运行时的状态数据;将所述状态数据输入到预设的机器学习模型中,通过所述机器学习模型输出所述控制系统的性能指标的预测值以及所述预测值对应的预测区间,其中,所述预测区间用于指示所述预测值对应的范围;当所述预测区间符合预设的条件时,根据所述预测值确定控制参数,所述控制参数用于所述控制系统对被控设备进行控制。在上述方案中,可以从控制系统获取到状态数据,通过机器学习模型可以输出预测值和预测区间,若预测区间符合预设的条件,则说明该预测区间对应的预测值是可信的,此时才根据预测值确定控制参数,本申请实施例提供的基于机器学习模型的控制方法,可以使训练出的机器学习模型具备评估模型推理结果可靠性的能力,从而可以同时考虑预测值最优以及推理可信度进行控制,从而达到更精准可信的控制。
在第一方面的一种可能实现方式中,所述当所述预测区间符合预设的条件时,根据所述预测值确定控制参数,包括:当所述机器学习模型输出多个预测区间时,从所述多个预测区间中确定符合所述条件的预测区间;根据符合所述条件的预测区间对应的预测值确定所述控制参数。机器学习模型可以输出多个预测值以及多个预测值分别对应的预测区间,在输出多个预测区间的情况下,使用预设的条件对多个预测区间进行筛选,从而确定出符合条件的预测区间,符合条件的预测区间对应的预测值是可信的,根据符合条件的预测区间对应的预测值确定控制参数,控制系统使用该控制参数对被控设备进行控制时,能够实现精确的控制。
在第一方面的一种可能实现方式中,所述预设的条件包括:预测区间的区间大小大于预设的区间门限;所述从多个预测区间中确定符合所述条件的预测区间,包括:获取每个所述预测区间的区间大小;从每个所述预测区间的区间大小中确定区间大小小于所述区间门限的预测区间,其中,所述区间大小小于所述区间门限的预测区间符合所述条件。在上述方案中,可以针对预测区间的区间大小设置预设条件,区间大小指的是预测区间的区间长度大小。当机器学习模型输出多个预测区间时,先获取每个预测区间的区间大小,即可以获取到多个预测区间的区间长度大小,然后判断每个预测区间的区间大小是否小于区间门限,从而可以从每个预测区间的区间大小中确定区间大小小于区间门限的预测区间,其中,区间大小小于区间门限的预测区间符合条件。例如预测区间的区间大小可以指示该预测区间对应的预测值的可信度,若预测区间的区间过大,则该预测区间对应的预测值越不可信,若预测区间的区间越小,则说明该预测区间对应的预测值越可信。本申请实施例中通过预测区间的区间大小可以判断出该预测区间是否满足预设的条件。
在第一方面的一种可能实现方式中,所述预设的条件包括:预测区间的上端点值小于预设的第一阈值,或者,预测区间的下端点值大于预设的第二阈值;所述从多个预测区间中确定符合所述条件的预测区间,包括:获取每个所述预测区间的上端点值;从每个所述预测区间的上端点值中确定上端点值小于所述第一阈值的预测区间,其中,所述上端点值小于所述第一阈值的预测区间符合所述条件;或者,获取每个所述预测区间的下端点值;从每个所述预测区间的下端点值中确定下端点值大于所述第二阈值的预测区间,其中,所述下端点值大于所述第二阈值的预测区间符合所述条件。在上述方案中,可以针对预测区间的端点值设置预设条件,预测区间的端点值指的是预测区间的边界值,例如该端点值可以是上端点值或者下端点值。当机器学习模型输出多个预测区间时,先获取每个预测区间的端点值,即可以获取到多个预测区间的上端点值和下端点值,然后通过预测区间的端点值来判断是否满足预设的条件。
在第一方面的一种可能实现方式中,所述方法还包括:使用所述控制系统的历史的状态数据作为训练数据对初始机器学习模型进行训练,以得到所述预设的机器学习模型。在上述方案中,控制装置可以和控制系统进行交互,控制系统获取历史的状态数据作为训练数据,控制系统向控制装置发送该训练数据,控制装置接收该训练数据,然后对初始机器学习模型进行训练,在模型训练完成之后,可以得到预设的机器学习模型。本申请实施例中控制装置所使用的训练数据是控制系统的历史的状态数据,因此基于该训练数据进行模型训练,得到的机器学习模型可以用于根据控制系统的状态数据进行推理预测。
在第一方面的一种可能实现方式中,所述使用所述控制系统的历史的状态数据作为训练数据对初始机器学习模型进行训练,以得到所述预设的机器学习模型,包括:当待训练的初始机器学习模型是多个时,使用与各初始机器学习模型对应的训练数据对各所述初始机器学习模型分别进行训练,以得到训练完成后的各初始机器学习模型。在上述方案中,初始机器学习模型可以是一个或多个的模型,当初始机器学习模型有多个时,需要从控制系统获取多个训练数据,例如初始机器学习模型有m个时,需要获取m个训练数据,每一个训练数据可用于一个初始机器学习模型的训练。其中,每一个训练数据可以包括n个输入数据,分别为输入数据1、输入数据2、...、输入数据n。在多个初始机器学习模型分别完成模型训练之后,可以得到训练完成后的多个初始机器学习模型。本申请实施例中可以使用多个初始机器学习模型进行模型训练,以提高机器学习模型的训练效率。
在第一方面的一种可能实现方式中,所述得到训练完成后的各初始机器学习模型之后,所述方法还包括:获取各所述初始机器学习模型输出的预测区间的上端点值和下端点值;根据各所述初始机器学习模型输出的预测区间的上端点值获取所述预设的机器学习模型输出的预测区间的上端点值;根据各所述初始机器学习模型输出的预测区间的下端点值获取所述预设的机器学习模型输出的预测区间的下端点值。在上述方案中,多个初始机器学习模型输出的预测区间可用于确定预设的机器学习模型的预测区间。具体的,首先获取各初始机器学习模型输出的预测区间的上端点值,由于训练完成后的各初始机器学习模型集成在一起,可以得到前述的预设的机器学习模型,因此根据各初始机器学习模型输出的预测区间的上端点值获取预设的机器学习模型输出的预测区间的上端点值,即预设的机器学习模型输出的预测区间的上端点值通过各初始机器学习模型输出的预测区间的上端点值,对于获取预设的机器学习模型输出的预测区间的上端点值的具体方式不做限定,例如通过各初始机器学习模型和预设的机器学习模型之间的集成关系,可以得到预设的机器学习模型输出的预测区间的上端点值。
在第一方面的一种可能实现方式中,所述根据各所述初始机器学习模型输出的预测区间的上端点值获取所述预设的机器学习模型输出的预测区间的上端点值,包括:根据各所述初始机器学习模型输出的预测区间的上端点值获取上端点平均值;根据各所述初始机器学习模型输出的预测区间的上端点值与所述上端点平均值获取上端点均方误差;根据所述上端点平均值与所述上端点均方误差获取所述预设的机器学习模型输出的预测区间的上端点值。在上述方案中,获取到上端点平均值和上端点均方误差之后,上端点平均值和上端点均方误差可用于获取预设的机器学习模型输出的预测区间的上端点值,对于具体的计算方式不做限定。例如,m个神经网络模型在训练阶段通过不同的参数初始化进行训练,m个神经网络模型的预测值的上端点均方误差和上端点平均值可以作为是对认知不确定性的估计,由此计算出预设的机器学习模型输出的预测区间的上端点值。
在第一方面的一种可能实现方式中,所述根据各所述初始机器学习模型输出的预测区间的下端点值获取所述预设的机器学习模型对应的预测区间的下端点值,包括:根据各所述初始机器学习模型输出的预测区间的下端点值获取下端点平均值;根据各所述初始机器学习模型输出的预测区间的下端点值与所述下端点平均值获取下端点均方误差;根据所述下端点平均值与所述下端点均方误差获取所述预设的机器学习模型输出的预测区间的下端点值。
在第一方面的一种可能实现方式中,所述使用所述控制系统的历史的状态数据对初始机器学习模型进行训练,包括:当所述训练数据为多个时,将多个所述训练数据输入所述初始机器学习模型的输入层,通过所述初始机器学习模型输出每个所述训练数据对应的预测区间,其中,每个所述预测区间包括:上端点值和下端点值;根据每个所述预测区间的上端点值和下端点值获取每个所述预测区间对应的预测值;根据每个所述预测区间的上端点值和下端点值、每个所述预测区间对应的预测值和预设的每个所述预测区间对应的真实值确定损失函数值;当所述损失函数值满足预设的训练结束条件时,停止对所述初始机器学习模型的训练。在上述方案中,训练数据为多个时,针对多个训练数据需要分别对初始机器学习模型进行训练,将多个训练数据分别输入初始机器学习模型的输入层,通过初始机器学习模型输出每个训练数据对应的预测区间,其中,每个预测区间包括:上端点值和下端点值。得到每个预测区间的上端点值和下端点值之后,可以计算每个预测区间对应的预测值,例如预测值可以是该预测区间的中间某一个值,例如预测值可以是该预测区间的中点值。预先获取每个预测区间对应的真实值,则使用每个预测区间的上端点值和下端点值、每个预测区间对应的预测值和预设的每个预测区间对应的真实值确定损失函数值,具体计算方式有多种,此处不做限定。在获取到损失函数值之后,判断损失函数值是否满足预设的训练结束条件,若损失函数值满足预设的训练结束条件,停止进行模型训练,此时可以得到训练完成后的机器学习模型。若损失函数值不满足预设的训练结束条件,则可以重新执行上述流程,直至完成模型训练过程。通过上述过程,可以实现对带预测区间的机器学习模型的训练,以使得该机器学习模型能够输出预测值和该预测值对应的预测区间。
在第一方面的一种可能实现方式中,所述根据每个所述预测区间的上端点值和下端点值、每个所述预测区间对应的预测值和预设的每个所述预测区间对应的真实值确定损失函数值,包括:根据每个所述预测区间对应的预测值和预设的每个所述预测区间对应的真实值获取均方误差;根据每个所述预测区间的上端点值和下端点值获取平均区间宽度;根据预设的每个所述预测区间对应的真实值,以及每个所述预测区间的上端点值和下端点值获取每个所述预测区间对应的区间覆盖指示值,所述区间覆盖指示值用于指示每个所述预测区间对应的真实值是否落入相应的预测区间中;根据每个所述预测区间对应的区间覆盖指示值获取区间覆盖率;根据所述均方误差和所述平均区间宽度获取第一损失子函数;根据预设的置信水平和所述区间覆盖率获取第二损失子函数;根据所述第一损失子函数和所述第二损失子函数获取所述损失函数值。在上述方案中,区间覆盖指示值用于指示每个预测区间对应的真实值是否落入相应的预测区间中,该真实值是模型训练阶段时预先获取到的数值。第一损失子函数通过均方误差和平均区间宽度得到,对于具体的计算方式不做限定。第二损失子函数通过预设的置信水平和区间覆盖率得到,对于具体的计算方式不做限定。在得到第一损失子函数和第二损失子函数之后,通过第一损失子函数和第二损失子函数获取损失函数值,该损失函数值的计算通过第一损失子函数和第二损失子函数融合计算得到,本申请实施例中通过上述方式可以获取到损失函数值,从而使用该损失函数值判断是否结束对模型的训练。
在第一方面的一种可能实现方式中,所述根据所述各个训练数据对应的预测区间的上端点值和下端点值获取所述预测值,包括:
通过如下方式获取所述多个训练数据中的第i个训练数据的预测值:
Figure BDA0003064893520000051
其中,所述
Figure BDA0003064893520000052
表示所述第i个训练数据对应的预测值,所述
Figure BDA0003064893520000053
表示所述第i个训练数据对应的预测区间的上端点值,所述
Figure BDA0003064893520000054
表示所述第i个训练数据对应的预测区间的下端点值,所述i大于等于1且小于等于n,所述n为训练过程中同批处理的所述多个训练数据的个数。
在第一方面的一种可能实现方式中,所述根据所述预测值和相应的真实值获取均方误差,包括:
通过如下方式获取所述均方误差:
Figure BDA0003064893520000055
其中,所述MSE表示所述均分误差,所述
Figure BDA0003064893520000056
表示所述第i个训练数据对应的预测值,所述yi表示所述第i个训练数据对应的真实值,所述n表示训练过程中同批处理的所述多个训练数据的个数。
在第一方面的一种可能实现方式中,所述根据所述各个训练数据的上端点值和下端点值获取平均区间宽度,包括:
通过如下方式获取所述平均区间宽度:
Figure BDA0003064893520000057
其中,所述MPIW表示所述平均区间宽度,所述n表示训练过程中一个批处理数据量的大小,所述
Figure BDA0003064893520000058
表示第i个训练数据对应预测区间的上端点值,所述
Figure BDA0003064893520000059
表示第i个训练数据对应的预测区间的下端点值。
在第一方面的一种可能实现方式中,所述根据所述各个训练数据对应的真实值和所述各个训练数据对应的预测区间获取所述各个训练数据对应的区间覆盖指示值,包括:
通过如下方式获取第i个训练数据对应的区间覆盖指示值:
Figure BDA00030648935200000510
其中,所述ci表示所述第i个训练数据对应的区间覆盖指示值,所述σ表示激活函数,所述s表示超参数因子,所述
Figure BDA00030648935200000511
表示所述第i个训练数据对应的预测区间的上端点值,所述
Figure BDA00030648935200000512
表示所述第i个训练数据对应的预测区间的下端点值,所述yi表示所述第i个训练数据对应的真实值。
在第一方面的一种可能实现方式中,所述根据所述各个训练数据对应的区间覆盖指示值获取区间覆盖率,包括:
通过如下方式获取所述区间覆盖率:
Figure BDA0003064893520000061
其中,所述PICP表示所述区间覆盖率,所述ci表示所述第i个训练数据对应的区间覆盖指示值,所述n表示训练过程中同批处理的所述多个训练数据的个数。
在第一方面的一种可能实现方式中,所述根据所述均方误差和所述平均区间宽度获取第一损失子函数,包括:
通过如下方式获取所述第一损失子函数:
Figure BDA0003064893520000062
其中,所述
Figure BDA0003064893520000063
表示所述第一损失子函数,所述MSE表示所述均分误差,所述n表示训练过程中同批处理的所述多个训练数据的个数,所述MPIW表示所述平均区间宽度,所述log表示取对数运算。
在第一方面的一种可能实现方式中,所述根据预设的预测水平和所述区间覆盖率获取第二损失子函数,包括:
通过如下方式获取所述第二损失子函数:
Figure BDA0003064893520000064
其中,所述
Figure BDA0003064893520000065
表示所述第二损失子函数,所述PICP表示所述区间覆盖率,所述Pc为预设的预测水平。
在第一方面的一种可能实现方式中,所述根据所述第一损失子函数和所述第二损失子函数获取所述损失函数值,包括:
通过如下方式获取所述损失函数值:
Figure BDA0003064893520000066
其中,所述
Figure BDA0003064893520000067
表示所述损失函数值,所述
Figure BDA0003064893520000068
表示所述第一损失子函数,所述
Figure BDA0003064893520000069
表示所述第二损失子函数,所述λ为用于平衡所述第一损失子函数和所述第二损失子函数的超参数。
在第一方面的一种可能实现方式中,所述根据各所述初始机器学习模型输出的预测区间的上端点值获取上端点平均值,包括:
通过如下方式获取所述上端点平均值:
Figure BDA00030648935200000610
其中,所述
Figure BDA00030648935200000611
表示当使用第i个训练数据训练m个初始机器学习模型时的上端点平均值,所述
Figure BDA00030648935200000612
表示当使用第i个训练数据训练第j个初始机器学习模型输出的预测区间的上端点值,所述m表示初始机器学习模型的个数,所述i大于等于1且小于等于n,所述n为训练过程中同批处理的所述多个训练数据的个数。
在第一方面的一种可能实现方式中,所述根据各所述初始机器学习模型输出的预测区间的上端点值与所述上端点平均值获取上端点均方误差,包括:
通过如下方式获取所述上端点均方误差:
Figure BDA0003064893520000071
其中,所述
Figure BDA0003064893520000072
表示当使用第i个训练数据训练m个初始机器学习模型时的上端点均方误差,所述
Figure BDA0003064893520000073
表示当使用第i个训练数据训练m个初始机器学习模型时的上端点平均值,所述
Figure BDA0003064893520000074
表示当使用第i个训练数据训练第j个初始机器学习模型对应的预测区间的上端点值,所述m表示初始机器学习模型的个数,所述i大于等于1且小于等于n,所述n为训练过程中同批处理的所述多个训练数据的个数。
在第一方面的一种可能实现方式中,所述根据所述上端点平均值与所述上端点均方误差获取所述预设的机器学习模型输出的预测区间的上端点值,包括:
通过如下方式获取所述预设的机器学习模型输出的预测区间的上端点值:
Figure BDA0003064893520000075
其中,所述
Figure BDA0003064893520000076
表示所述预设的机器学习模型输出的预测区间的上端点值,所述
Figure BDA0003064893520000077
表示当使用第i个训练数据训练m个初始机器学习模型时的上端点平均值,所述
Figure BDA0003064893520000078
表示当使用第i个训练数据训练m个初始机器学习模型时的上端点均方误差,所述i大于等于1且小于等于n,所述n为训练过程中同批处理的所述多个训练数据的个数。
在第一方面的一种可能实现方式中,所述根据各所述初始机器学习模型输出的预测区间的下端点值获取下端点平均值,包括:
通过如下方式获取所述下端点平均值:
Figure BDA0003064893520000079
其中,所述
Figure BDA00030648935200000710
表示当使用第i个训练数据训练m个初始机器学习模型时的下端点平均值,所述
Figure BDA00030648935200000711
表示当使用第i个训练数据训练第j个初始机器学习模型输出的预测区间的下端点值,所述m表示初始机器学习模型的个数,所述i大于等于1且小于等于n,所述n为训练过程中同批处理的所述多个训练数据的个数。
在第一方面的一种可能实现方式中,所述根据各所述初始机器学习模型输出的预测区间的下端点值与所述下端点平均值获取下端点均方误差,包括:
Figure BDA00030648935200000712
其中,所述
Figure BDA00030648935200000713
表示当使用第i个训练数据训练m个初始机器学习模型时的下端点均方误差,所述
Figure BDA00030648935200000714
表示当使用第i个训练数据训练m个初始机器学习模型时的下端点平均值,所述
Figure BDA00030648935200000715
表示当使用第i个训练数据训练第j个初始机器学习模型对应的预测区间的下端点值,所述m表示初始机器学习模型的个数,所述i大于等于1且小于等于n,所述n为训练过程中同批处理的所述多个训练数据的个数;
在第一方面的一种可能实现方式中,所述根据所述下端点平均值与所述下端点均方误差获取所述预设的机器学习模型输出的预测区间的下端点值,包括:
通过如下方式获取所述预设的机器学习模型输出的预测区间的下端点值:
Figure BDA0003064893520000081
其中,所述
Figure BDA0003064893520000082
表示所述预设的机器学习模型输出的预测区间的下端点值,所述
Figure BDA0003064893520000083
表示当使用第i个训练数据训练m个初始机器学习模型时的下端点平均值,所述
Figure BDA0003064893520000084
表示当使用第i个训练数据训练m个初始机器学习模型时的下端点均方误差,所述i大于等于1且小于等于n,所述n为训练过程中同批处理的所述多个训练数据的个数。
第二方面,本申请实施例还提供一种基于机器学习模型的控制装置,包括:接收模块和处理模块,
所述接收模块,用于获取控制系统在运行时的状态数据;
所述处理模块,用于将所述状态数据输入到预设的机器学习模型中,通过所述机器学习模型输出所述控制系统的性能指标的预测值以及所述预测值对应的预测区间,其中,所述预测区间用于指示所述预测值对应的范围;
所述处理模块,还用于当所述预测区间符合预设的条件时,根据所述预测值确定控制参数,所述控制参数用于所述控制系统对被控设备进行控制。
在第二方面的一种可能实现方式中,所述处理模块,进一步用于:当所述机器学习模型输出多个预测区间时,从所述多个预测区间中确定符合所述条件的预测区间;根据符合所述条件的预测区间对应的预测值确定所述控制参数。
在第二方面的一种可能实现方式中,所述预设的条件包括:预测区间的区间大小大于预设的区间门限;
所述处理模块,进一步用于:获取每个所述预测区间的区间大小;从每个所述预测区间的区间大小中确定区间大小小于所述区间门限的预测区间,其中,所述区间大小小于所述区间门限的预测区间符合所述条件。
在第二方面的一种可能实现方式中,所述预设的条件包括:预测区间的上端点值小于预设的第一阈值,或者,预测区间的下端点值大于预设的第二阈值;
所述处理模块,进一步用于:获取每个所述预测区间的上端点值;从每个所述预测区间的上端点值中确定上端点值小于所述第一阈值的预测区间,其中,所述上端点值小于所述第一阈值的预测区间符合所述条件;
或者,
所述处理模块,进一步用于:获取每个所述预测区间的下端点值;从每个所述预测区间的下端点值中确定下端点值大于所述第二阈值的预测区间,其中,所述下端点值大于所述第二阈值的预测区间符合所述条件。
在第二方面的一种可能实现方式中,所述处理模块,进一步用于:使用所述控制系统的历史的状态数据作为训练数据对初始机器学习模型进行训练,以得到所述预设的机器学习模型。
在第二方面的一种可能实现方式中,所述处理模块,进一步用于:当待训练的初始机器学习模型是多个时,使用与各初始机器学习模型对应的训练数据对各所述初始机器学习模型分别进行训练,以得到训练完成后的各初始机器学习模型。
在第二方面的一种可能实现方式中,所述处理模块,进一步用于:所述得到训练完成后的各初始机器学习模型之后,获取各所述初始机器学习模型输出的预测区间的上端点值和下端点值;根据各所述初始机器学习模型输出的预测区间的上端点值获取所述预设的机器学习模型输出的预测区间的上端点值;根据各所述初始机器学习模型输出的预测区间的下端点值获取所述预设的机器学习模型输出的预测区间的下端点值。
在第二方面的一种可能实现方式中,所述处理模块,进一步用于:根据各所述初始机器学习模型输出的预测区间的上端点值获取上端点平均值;根据各所述初始机器学习模型输出的预测区间的上端点值与所述上端点平均值获取上端点均方误差;根据所述上端点平均值与所述上端点均方误差获取所述预设的机器学习模型输出的预测区间的上端点值。
在第二方面的一种可能实现方式中,所述处理模块,进一步用于:根据各所述初始机器学习模型输出的预测区间的下端点值获取下端点平均值;根据各所述初始机器学习模型输出的预测区间的下端点值与所述下端点平均值获取下端点均方误差;根据所述下端点平均值与所述下端点均方误差获取所述预设的机器学习模型输出的预测区间的下端点值。
在第二方面的一种可能实现方式中,所述处理模块,进一步用于:当所述训练数据为多个时,将多个所述训练数据输入所述初始机器学习模型的输入层,通过所述初始机器学习模型输出每个所述训练数据对应的预测区间,其中,每个所述预测区间包括:上端点值和下端点值;根据每个所述预测区间的上端点值和下端点值获取每个所述预测区间对应的预测值;根据每个所述预测区间的上端点值和下端点值、每个所述预测区间对应的预测值和预设的每个所述预测区间对应的真实值确定损失函数值;当所述损失函数值满足预设的训练结束条件时,停止对所述初始机器学习模型的训练。
在第二方面的一种可能实现方式中,所述处理模块,进一步用于:根据每个所述预测区间对应的预测值和预设的每个所述预测区间对应的真实值获取均方误差;根据每个所述预测区间的上端点值和下端点值获取平均区间宽度;根据预设的每个所述预测区间对应的真实值,以及每个所述预测区间的上端点值和下端点值获取每个所述预测区间对应的区间覆盖指示值,所述区间覆盖指示值用于指示每个所述预测区间对应的真实值是否落入相应的预测区间中;根据每个所述预测区间对应的区间覆盖指示值获取区间覆盖率;根据所述均方误差和所述平均区间宽度获取第一损失子函数;根据预设的置信水平和所述区间覆盖率获取第二损失子函数;根据所述第一损失子函数和所述第二损失子函数获取所述损失函数值。
在本申请的第二方面中,装置的组成模块还可以执行前述第一方面以及各种可能的实现方式中所描述的步骤,详见前述对第一方面以及各种可能的实现方式中的说明。
第三方面,本申请提供了一种装置。该装置用于执行上述第一方面提供的任一种方法。例如该装置可以是前述第二方面中的控制装置。
在一种可能的设计方式中,本申请可以根据上述第一方面提供的任一种方法,对控制装置进行功能模块的划分。例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。
示例性的,本申请可以按照功能将该控制装置划分为接收模块和处理模块等。上述划分的各个功能模块执行的可能的技术方案和有益效果的描述均可以参考上述第一方面或其相应的可能的设计提供的技术方案,此处不再赘述。
在另一种可能的设计中,该控制装置包括:存储器和处理器,存储器和处理器耦合。存储器用于存储计算机指令,处理器用于调用该计算机指令,以执行如第一方面或其相应的可能的设计提供的方法。
第四方面,本申请提供了一种计算机可读存储介质,如计算机非瞬态的可读存储介质。其上储存有计算机程序(或指令),当该计算机程序(或指令)在计算机设备上运行时,使得该计算机设备执行上述第一方面或其相应的可能的设计提供的方法。
第五方面,本申请提供了一种计算机程序产品,当其在计算机设备上运行时,使得第一方面或其相应的可能的设计提供的方法被执行。
第六方面,本申请提供了一种芯片系统,包括:处理器,处理器用于从存储器中调用并运行该存储器中存储的计算机程序,执行第一方面或其相应的可能的设计提供的方法。
可以理解的是,在上述第一方面的另一种可能的设计、第二至第五方面提供的任何一种技术方案中的接收动作,具体可以替换为在处理器的控制下接收。
可以理解的是,上述提供的任一种系统、装置、计算机存储介质、计算机程序产品或芯片系统等均可以应用于第一方面提供的对应的方法,因此,其所能达到的有益效果可参考对应的方法中的有益效果,此处不再赘述。
在本申请中,上述任一种装置的名字对设备或功能模块本身不构成限定,在实际实现中,这些设备或功能模块可以以其他名称出现。只要各个设备或功能模块的功能和本申请类似,属于本申请权利要求及其等同技术的范围之内。
本申请的这些方面或其他方面在以下的描述中会更加简明易懂。
附图说明
图1为本申请实施例提供的一种基于机器学习模型的控制方法的应用场景示意图;
图2为本申请实施例提供的一种基于机器学习模型的控制方法应用的系统框架示意图;
图3为本申请实施例提供的一种基于机器学习模型的控制方法应用的系统架构示意图;
图4为本申请实施例提供的一种基于机器学习模型的控制方法的流程方框示意图;
图5为本申请实施例提供的一种基于机器学习模型的控制方法的流程方框示意图;
图6为本申请实施例提供的一种基于机器学习模型的控制装置的组成结构示意图;
图7为本申请实施例提供的一种机器学习模型的架构示意图;
图8为本申请实施例提供的一种多个机器学习模型集成的架构示意图;
图9为本申请实施例提供的一种基于机器学习模型的控制方法的应用场景示意图;
图10为本申请实施例提供的一种机器学习模型的训练流程示意图;
图11为本申请实施例提供的一种基于机器学习模型的控制方法的推理流程示意图;
图12为本申请实施例提供的一种机器学习模型输出预测区间和真实值的示意图;
图13为本申请实施例提供的一种基于机器学习模型的控制装置的组成结构示意图;
图14为本申请实施例提供的一种基于机器学习模型的控制装置的组成结构示意图。
具体实施方式
以下,说明本申请实施例中所涉及的一些术语和技术:
1)、机器学习、机器学习模型
机器学习,是使用算法来解析数据、从中学习,然后对真实世界中的事件做出决策和预测。机器学习是用大量的数据来“训练”,通过各种算法从数据中学习如何完成某模型业务。
在一些示例中,机器学习模型是包含用于完成某模型业务所采用的算法实现代码和参数的文件。其中,算法实现代码用于描述机器学习模型的模型结构,参数用于描述机器学习模型各构成部分的属性。为了方便描述,下文中将该文件称为机器学习模型文件。例如,下文中发送机器学习模型具体是指发送机器学习模型文件。
在另一些示例中,机器学习模型是完成某模型业务的逻辑功能模块。例如,将输入参数的值输入到机器学习模型,得到该机器学习模型的输出参数的值。
机器学习模型包括人工智能(artificial intelligence,AI)模型,如机器学习模型可以是神经网络模型等。
在一些示例中,初始机器学习模型是原始的机器学习模型,初始机器学习模型是使用训练数据进行模型训练之前的机器学习模型,该初始机器学习模型经过模型训练之后,可以得到训练完成后的机器学习模型。
2)、控制系统、被控设备
控制系统在运行时会产生状态数据,例如控制系统在当前时刻运行时产生当前状态数据。控制系统运行时的状态数据可以根据控制系统的控制方式以及该控制系统需要控制的被控设备确定。控制系统可以使用控制参数对被控设备进行控制,被控设备需要在控制系统的控制下运行。例如该控制系统可以是数据中心制冷系统,被控设备可以是数据中心机房。又如,控制系统可以是无线网络控制系统,被控设备可以是基站。又如,控制系统可以是光网络传输系统,被控设备可以是光网络终端。
本申请的一些实施例中,本申请实施例提供的方法可以应用于数据中心制冷系统,以控制系统是冷机群控系统,被控设备是数据中心机房进行示例说明,如图1所示,为本申请实施例提供的一种基于机器学习模型的控制方法的应用场景示意图。该数据中心制冷系统可以包括:冷机群控系统和数据中心机房,冷机群控系统具体可以包括冷冻站,冷冻站包括:冷却塔、冷却泵、冷水机组、板式换热器、冷冻泵等,上述冷冻站由制冷系统群控设备所控制,需要说明的是,图1中没有示意出该制冷系统群控设备。数据中心机房包括:末端空调和互联网技术(internet technology,IT)机柜,IT机柜的运行状态取决于业务负载。
具体的,冷机群控系统在运行时的状态数据包括:干球温度、相对湿度、湿球温度、冷却水供回水温差、冷冻水供回水压差、冷热通道、温湿度等。
冷机群控系统使用控制参数对被控设备进行控制,该控制参数可以包括:冷塔数量、出水温度、冷却泵数量、冷水机组数量、冷冻水出水温度、板换数量、板换冷冻水出水温度、冷冻泵数量。例如,控制末端空调的出风温度和送回风温差,从而可以调整IT能耗。
接下来详细介绍数据中心制冷系统的应用场景,冷机群控系统获取运行时的状态数据,如下表1所示,为本申请实施例提供的一种冷机群控的状态数据包括的数据内容。
Figure BDA0003064893520000121
Figure BDA0003064893520000131
具体的,该状态数据包括:业务负载的数据,例如该业务负载可以包括:IT机柜的运行状态以及外界环境。冷机群控系统可以选择下发不同的控制参数,例如该控制参数可以包括冷机数目,冷塔数目,出水温度等,此时不同的控制参数的值会导致不同的制冷能耗。为提高数据中心制冷系统的制冷效率,降低能耗,可以采用通过数据建模的方式建立机器学习模型,该机器学习模型可以是系统能耗模型,然后基于该模型进行制冷系统的控制。
3)、本地数据中心、云平台
本申请实施例中,控制系统可以基于机器学习模型对被控设备进行控制。其中,该机器学习模型可以由云平台进行模型训练后得到,云平台所需要的训练数据由本地数据中心提供。接下来以数据中心制冷系统的应用场景中机器学习模型的训练过程为例进行说明。
如图2所示,为本申请实施例提供的一种基于机器学习模型的控制方法的应用场景示意图。云平台可以包括:模型训练平台和数据治理平台,其中,模型训练平台用于根据数据治理平台发送的特征参数进行机器学习模型的训练,数据治理平台用于对收集上来的数据进行处理,包括去除异常操作,进行特征工程等操作。本地数据中心(data center,DC)包括:本地决策系统、推理平台、冷机群控系统和采集器。其中,采集器用于采集精密空调、不间断电源(uninterruptible power supply,UPS)供电、IT机柜的运行数据,数据采集完成之后,采集到的运行数据上传到本地决策系统,本地决策系统再将运行数据发送给推理平台,图片平台获取实时推理样本,将数据入库到数据治理平台。在完成机器学习模型的训练之后,云平台可以下发推理结果,推理平台向本地决策系统发送推理结果,本地决策系统向冷机群控系统下发控制策略,冷机群控系统根据该控制策略控制被控设备,例如该被控设备可以包括如下至少一种:冷塔、电动阀、水泵、冷水机组。
详细的,在图2所示的系统架构中,可以分为云平台(也可以称为云端平台),本地数据中心(包括本地决策系统、推理平台,采集器以及制冷系统硬件,IT系统硬件等),例如制冷系统硬件包括:冷塔、电动阀、水泵、冷水机组等,IT系统硬件包括:精密空调、UPS供电、IT机柜等。本地数据中心采集运行数据,例如该运行数据包括IT系统状态数据,外界环境数据,能耗数据等,并将采集到的系统实时数据进行数据预处理后上传到云平台,云平台基于收集到的数据进行模型的训练,训练得到模型后,模型在云端进行部署,本地数据中心实时监控数据中心系统的运行状态,并在需要机器学习模型进行参数控制调整时,将实时系统运行状态(IT负载,外界环境等)发送给推理平台,推理平台基于预先配置的系统允许的控制参数范围,以及系统实时状态数据生成不同的控制参数组合,拼接系统实时运行状态生成大量推理样本,发送到云平台后由云平台进行推理,云平台将推理结果发送回本地数据中心,由本地决策系统基于推理结果进行决策控制。具体的,用于模型训练的训练数据如下表2所示:
Figure BDA0003064893520000141
Figure BDA0003064893520000151
上表2中,能耗为标签值Y,其余为特征值X,特征值X可以拆分为环境值,控制值两类,环境值是由系统中的传感器监控上报的,控制值是可以控制的。基于机器学习模型的数据中心控制系统目的是在特定的环境值下,选择最优的控制参数值来降低数据中心能耗。
4)、预测区间、预测值、预设的条件、控制参数
本申请实施例中,云平台可以采用机器学习模型进行建模,控制参数推理寻优时,通过机器学习模型可以输出预测值和预测区间,预测值是机器学习模型根据输入的状态数据进行预测后输出的值,该预测值是控制系统的性能指标,该预测区间用于指示预测值对应的范围,例如该预测区间用于指示预测值对应的不确定度的范围,不确定度又可以称为“置信度”,因此预测区间又可以称为“置信区间”,通过该预测区间能够指示预测值的可信度。因此本申请实施例中机器学习模型可以输出预测值和预测区间,若预测区间符合预设的条件,则说明该预测区间对应的预测值是可信的,此时才根据预测值确定控制参数,若该预测区间不符合预设的条件,则说明该预测区间对应的预测值是不可信的,此时不使用该预测值生成控制参数。本申请实施例提供的基于机器学习模型的控制方法,可以使训练出的机器学习模型具备评估模型推理结果可靠性的能力,从而可以同时考虑能耗最优以及推理可信度进行控制,从而达到更精准可信的控制。
在本申请实施例中,预测值、预测区间和预设的条件的具体实现有多种,需要结合具体的应用场景来确定。例如在不同的应用场景下,预测值的取值大小和预测区间的大小都需要结合具体场景确定。另外,预设的条件用于判断预测区间的可信度,只有预测区间符合该条件时才使用预测区间对应的预测值确定控制参数,若预测区间不符合该条件,则该预测区间对应的预测值不用于确定控制参数。举例说明如下,机器学习模型输出预测值1和预测区间1、预测值2和预测区间2,若预测区间1符合该条件时才使用预测区间1对应的预测值1确定控制参数,若预测区间2不符合该条件,则该预测区间2对应的预测值2不用于确定控制参数。
举例说明如下,云平台可以采用神经网络模型进行建模,云平台建模完成之后,控制参数推理寻优时,通过机器学习模型可以输出预测值和预测区间,该预测区间用于指示预测值对应的范围,例如该预测区间用于指示预测值对应的不确定度的范围。因此本申请实施例中机器学习模型可以输出预测值和预测区间,若预测区间符合预设的条件,则说明该预测区间对应的预测值是可信的,此时才根据预测值确定控制参数,若该预测区间不符合预设的条件,则说明该预测区间对应的预测值是不可信的,此时不使用该预测值生成控制参数。本申请实施例中,不仅考虑能耗最小来选取最优的控制参数进行下发,还考虑模型推理结果的可靠性来进行决策,因此能够基于可信的推理结果进行控制参数下发,达到系统节能的效果。
其他术语说明如下:
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本申请的实施例中,术语“第二”、“第一”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第二”、“第一”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请的描述中,除非另有说明,“多个”的含义是两个或两个以上。
本申请中术语“至少一个”的含义是指一个或多个,本申请中术语“多个”的含义是指两个或两个以上,例如,多个第一报文是指两个或两个以上的第一报文。
应理解,在本文中对各种所述示例的描述中所使用的术语只是为了描述特定示例,而并非旨在进行限制。如在对各种所述示例的描述和所附权利要求书中所使用的那样,单数形式“一个(“a”,“an”)”和“该”旨在也包括复数形式,除非上下文另外明确地指示。
还应理解,本文中所使用的术语“和/或”是指并且涵盖相关联的所列出的项目中的一个或多个项目的任何和全部可能的组合。术语“和/或”,是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本申请中的字符“/”,一般表示前后关联对象是一种“或”的关系。
还应理解,在本申请的各个实施例中,各个过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
还应理解,术语“包括”(也称“includes”、“including”、“comprises”和/或“comprising”)当在本说明书中使用时指定存在所陈述的特征、整数、步骤、操作、元素、和/或部件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元素、部件、和/或其分组。
还应理解,术语“如果”可被解释为意指“当...时”(“when”或“upon”)或“响应于确定”或“响应于检测到”。
应理解,说明书通篇中提到的“一个实施例”、“一实施例”、“一种可能的实现方式”意味着与实施例或实现方式有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”、“一种可能的实现方式”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。
还应理解,本申请实施例中提到的“连接”,可以是直接连接,也可以是间接连接,可以是有线连接,也可以是无线连接,也就是说,本申请实施例对设备之间的连接方式不作限定。例如网元与资源对象之间的连接可以是指通信连接。
以下,结合附图对本申请实施例提供的技术方案进行说明。
如图3所示,为本申请实施例提供的一种基于机器学习模型的控制场景的系统架构图。该系统架构可以包括:基于机器学习模型的控制装置101、控制系统102、被控设备103。
其中,控制系统,用于在该控制系统运行时产生状态数据,状态数据包括控制系统在运行时的状态数据;
基于机器学习模型的控制装置,用于获取状态数据;将状态数据输入到预设的机器学习模型中,通过机器学习模型输出控制系统的性能指标的预测值以及预测值对应的预测区间,其中,预测区间用于指示预测值对应的范围;当预测区间符合预设的条件时,根据预测值确定控制参数,控制参数用于控制系统对被控设备进行控制。
控制系统,还用于从基于机器学习模型的控制装置获取控制参数,根据该控制参数对被控设备进行控制。
具体的,基于机器学习模型的控制装置(后续简称为控制装置)可以和控制系统之间建立有通信连接,控制系统和被控设备之间建立有通信连接。基于机器学习模型的控制装置可以从控制系统获取到状态数据,基于机器学习模型的控制装置通过机器学习模型可以输出预测值和预测区间,若预测区间符合预设的条件,则说明该预测区间对应的预测值是可信的,此时才根据预测值确定控制参数,本申请实施例提供的基于机器学习模型的控制方法,可以使训练出的机器学习模型具备评估模型推理结果可靠性的能力,从而可以同时考虑预测值最优以及推理可信度进行控制,从而达到更精准可信的控制。
接下来对控制装置执行的基于机器学习模型的控制方法进行举例说明。图4所示的方法可以由图3所示的控制装置来执行完成。图4所示的基于机器学习模型的控制方法包括如下步骤:
401、获取控制系统在运行时的状态数据。
其中,控制装置可以从控制系统获取到控制系统在运行时的状态数据,该状态数据可以是控制系统在当前时刻的状态数据。可以理解的是,本申请实施例中,状态数据在不同的控制系统的应用场景中需要包括不同的数据内容,如上述表1所示的状态数据的举例,此处不再赘述。
402、将状态数据输入到预设的机器学习模型中,通过机器学习模型输出控制系统的性能指标的预测值以及预测值对应的预测区间,其中,预测区间用于指示预测值对应的范围。
其中,控制装置可以预先获取到机器学习模型,例如该机器学习模型可以是神经网络模型,或者机器学习模型也可以是其它的人工智能(artificial intelligence,AI)模型,此处不做限定。不限定的是,本申请实施例提供的机器学习模型的输出数据为多种数据,该机器学习模型在输入状态数据之后,该机器学习模型可以进行推理,以输出预测值和该预测值对应的预测区间。例如机器学习模型为神经网络模型时,神经网络模型的输出层具有多个神经元,因此神经网络模型除了能够输出预测值,还能够输出该预测值对应的预测区间,通过该预测区间指示该预测值的可信度。不限定的是,本申请实施例中机器学习模型可以输出一个预测值以及相应的预测区间,还可以输出多个预测值以及多个预测值分别对应的预测区间,其中,一个预测值对应一个预测区间。
本申请实施例中,预测值为机器学习模型的输出数据,通过该预测值指示机器学习模型进行推理之后输出的控制系统的性能指标。另外,机器学习模型还输出该预测值对应的预测区间,通过该预测区间用于指示预测值对应的范围。例如该预测区间用于指示预测值对应的不确定度的范围,不确定度又可以称为“置信度”,因此预测区间又可以称为“置信区间”,或者“不确定度区间”,通过该预测区间能够指示预测值的可信度。
403、当预测区间符合预设的条件时,根据预测值确定控制参数,控制参数用于控制系统对被控设备进行控制。
在本申请实施例中,机器学习模型输出的预测区间用于判断该预测区间对应的预测值是否可信,具体的,控制装置可以获取预设的条件,该条件用于对预测区间进行判断,只有预测区间符合该条件时,才使用预测值生成控制参数,否则,不使用该预测值生成控制参数。本申请实施例中预设的条件具有多种实现方式,具体需要结合应用场景确定该条件。例如预设的条件可以是根据区间长度设置的阈值,或者该预设的条件可以是根据区间的端点值设置的阈值,此处不做限定。
本申请实施例中,满足预设的条件的预测区间对应的预测值可用于生成控制参数,该控制参数包括的参数内容需要结合应用场景来确定,如前述针对数据中心控制系统的应用场景下,该控制参数可以包括:冷机数目,冷塔数目,出水温度等。
在本申请的一些实施例中,上述步骤403当预测区间符合预设的条件时,根据预测值确定控制参数,包括:
A1、当机器学习模型输出多个预测区间时,从多个预测区间中确定符合条件的预测区间;
A2、根据符合条件的预测区间对应的预测值确定控制参数。
其中,机器学习模型可以输出多个预测值以及多个预测值分别对应的预测区间,在输出多个预测区间的情况下,使用预设的条件对多个预测区间进行筛选,从而确定出符合条件的预测区间,符合条件的预测区间对应的预测值是可信的,根据符合条件的预测区间对应的预测值确定控制参数,控制系统使用该控制参数对被控设备进行控制时,能够实现精确的控制。
接下来针对不同的预设条件进行说明。
在本申请的一些实施例中,预设的条件包括:预测区间的区间大小大于预设的区间门限;
上述步骤A1从多个预测区间中确定符合条件的预测区间,包括:
A11、获取每个预测区间的区间大小;
A12、从每个预测区间的区间大小中确定区间大小小于区间门限的预测区间,其中,区间大小小于区间门限的预测区间符合条件。
具体的,可以针对预测区间的区间大小设置预设条件,区间大小指的是预测区间的区间长度大小。当机器学习模型输出多个预测区间时,先获取每个预测区间的区间大小,即可以获取到多个预测区间的区间长度大小,然后判断每个预测区间的区间大小是否小于区间门限,从而可以从每个预测区间的区间大小中确定区间大小小于区间门限的预测区间,其中,区间大小小于区间门限的预测区间符合条件。例如预测区间的区间大小可以指示该预测区间对应的预测值的可信度,若预测区间的区间过大,则该预测区间对应的预测值越不可信,若预测区间的区间越小,则说明该预测区间对应的预测值越可信。本申请实施例中通过预测区间的区间大小可以判断出该预测区间是否满足预设的条件。
在本申请的一些实施例中,预设的条件包括:预测区间的上端点值小于预设的第一阈值,或者,预测区间的下端点值大于预设的第二阈值;
上述步骤A1从多个预测区间中确定符合条件的预测区间,包括:
A13、获取每个预测区间的上端点值;
A14、从每个预测区间的上端点值中确定上端点值小于第一阈值的预测区间,其中,上端点值小于第一阈值的预测区间符合条件;
或者,
A15、获取每个预测区间的下端点值;
A16、从每个预测区间的下端点值中确定下端点值大于第二阈值的预测区间,其中,下端点值大于第二阈值的预测区间符合条件。
具体的,可以针对预测区间的端点值设置预设条件,预测区间的端点值指的是预测区间的边界值,例如该端点值可以是上端点值或者下端点值。当机器学习模型输出多个预测区间时,先获取每个预测区间的端点值,即可以获取到多个预测区间的上端点值和下端点值,然后通过预测区间的端点值来判断是否满足预设的条件。其中,通过预测区间的上端点值或者下端点值来判断是否满足预设的条件的实现方式类似,接下来以过预测区间的上端点值来判断是否满足预设的条件进行示例说明。
例如,预测区间的上端点值可以指示该预测区间对应的预测值的可信度,若预测区间的上端点值过大,则该预测区间对应的预测值越不可信,只有上端点值小于第一阈值的预测区间对应的预测值是可信的。本申请实施例中通过预测区间的上端点值可以判断出该预测区间是否满足预设的条件。其中,第一阈值的取值需要根据具体应用场景确定,同样的,本申请实施例中通过预测区间的下端点值可以判断出该预测区间是否满足预设的条件,第二阈值的取值需要根据具体应用场景确定。另外,本申请实施例中通过预测区间的下端点值和上端点值也可以判断出该预测区间是否满足预设的条件。
在本申请实施例中,控制装置根据预测值确定控制参数之后,控制装置还可以向控制系统发送该控制参数,从而控制系统可以从控制装置接收到控制参数,控制系统使用该控制参数对被控设备进行控制,由于该控制参数是在预测值为可信的情况下生成的,因此控制系统使用该控制参数控制被控设备时,可以同时考虑预测值最优以及推理可信度,从而达到更精准可信的控制。
接下来对控制装置执行的基于机器学习模型的控制方法进行举例说明。图5所示的方法可以由图3所示的控制装置来执行完成。图5所示的基于机器学习模型的控制方法包括如下步骤:
501、使用控制系统的历史的状态数据作为训练数据对初始机器学习模型进行训练,以得到预设的机器学习模型。
502至504,与前述实施例中步骤401至步骤403的实现方式类似,此处不再赘述。
在上述步骤501中,控制装置可以和控制系统进行交互,控制系统获取历史的状态数据作为训练数据,控制系统向控制装置发送该训练数据,控制装置接收该训练数据,然后对初始机器学习模型进行训练,在模型训练完成之后,可以得到预设的机器学习模型。本申请实施例中控制装置所使用的训练数据是控制系统的历史的状态数据,因此基于该训练数据进行模型训练,得到的机器学习模型可以用于根据控制系统的状态数据进行推理预测。
需要说明的是,本申请实施例中,在训练初始机器学习模型时,该初始机器学习模型的输入层需要输入来自控制系统的训练数据,该初始机器学习模型的输出层可以输出预测值和预测值对应的预测区间,该预测区间用于指示预测值的可信度。使用机器学习算法对初始机器学习模型进行训练,在模型训练完成之后,可以得到预设的机器学习模型,该机器学习模型可以用于执行前述实施例中的步骤402。
在本申请的一些实施例中,前述的步骤501使用控制系统的历史的状态数据作为训练数据对初始机器学习模型进行训练,以得到预设的机器学习模型,包括:
5011、当待训练的初始机器学习模型是多个时,使用与各初始机器学习模型对应的训练数据对各初始机器学习模型分别进行训练,以得到训练完成后的各初始机器学习模型。
其中,初始机器学习模型可以是一个或多个的模型,当初始机器学习模型有多个时,需要从控制系统获取多个训练数据,例如初始机器学习模型有m个时,需要获取m个训练数据,每一个训练数据可用于一个初始机器学习模型的训练。其中,每一个训练数据可以包括n个输入数据,分别为输入数据1、输入数据2、...、输入数据n。在多个初始机器学习模型分别完成模型训练之后,可以得到训练完成后的多个初始机器学习模型。本申请实施例中可以使用多个初始机器学习模型进行模型训练,以提高机器学习模型的训练效率。
在本申请的一些实施例中,当初始机器学习模型有多个时,需要对各初始机器学习模型分别进行训练,得到训练完成后的各初始机器学习模型,训练完成后的各初始机器学习模型集成在一起,可以得到前述的预设的机器学习模型。本申请实施例提供的方法除了执行前述步骤501至步骤504,还包括:
B1、获取各初始机器学习模型输出的预测区间的上端点值和下端点值;
B2、根据各初始机器学习模型输出的预测区间的上端点值获取预设的机器学习模型输出的预测区间的上端点值;
B3、根据各初始机器学习模型输出的预测区间的下端点值获取预设的机器学习模型输出的预测区间的下端点值。
其中,在步骤B1至B3中,多个初始机器学习模型输出的预测区间可用于确定预设的机器学习模型的预测区间。具体的,首先获取各初始机器学习模型输出的预测区间的上端点值,由于训练完成后的各初始机器学习模型集成在一起,可以得到前述的预设的机器学习模型,因此根据各初始机器学习模型输出的预测区间的上端点值获取预设的机器学习模型输出的预测区间的上端点值,即预设的机器学习模型输出的预测区间的上端点值通过各初始机器学习模型输出的预测区间的上端点值,对于获取预设的机器学习模型输出的预测区间的上端点值的具体方式不做限定,例如通过各初始机器学习模型和预设的机器学习模型之间的集成关系,可以得到预设的机器学习模型输出的预测区间的上端点值。
另外,首先获取各初始机器学习模型输出的预测区间的下端点值,由于训练完成后的各初始机器学习模型集成在一起,可以得到预设的机器学习模型,因此根据各初始机器学习模型输出的预测区间的下端点值获取预设的机器学习模型输出的预测区间的下端点值,即预设的机器学习模型输出的预测区间的下端点值通过各初始机器学习模型输出的预测区间的下端点值,对于获取预设的机器学习模型输出的预测区间的下端点值的具体方式不做限定,例如通过各初始机器学习模型和预设的机器学习模型之间的集成关系,可以得到预设的机器学习模型输出的预测区间的下端点值。
本申请实施例中,训练完成后的各初始机器学习模型集成在一起,可以得到前述的预设的机器学习模型,在获取该预设的机器学习模型输出的预测区间,通过该预测区间指示预测值的可信度。
在本申请的一些实施例中,预设的机器学习模型输出的预测区间的上端点值,与预设的机器学习模型输出的预测区间的下端点值的获取方式类似,接下来以预设的机器学习模型输出的预测区间的上端点值的获取方式进行示例说明。
前述步骤B2根据各初始机器学习模型输出的预测区间的上端点值获取预设的机器学习模型输出的预测区间的上端点值,包括:
B21、根据各初始机器学习模型输出的预测区间的上端点值获取上端点平均值;
B22、根据各初始机器学习模型输出的预测区间的上端点值与上端点平均值获取上端点均方误差;
B23、根据上端点平均值与上端点均方误差获取预设的机器学习模型输出的预测区间的上端点值。
其中,在步骤B21中,获取到各初始机器学习模型输出的预测区间的上端点值之后,根据每个初始机器学习模型输出的预测区间的上端点值进行平均值计算,可以得到上端点平均值,接下来执行步骤B22,计算上端点均方误差,最后通过上端点平均值与上端点均方误差计算出预设的机器学习模型输出的预测区间的上端点值。
具体的,在步骤B21中,对各初始机器学习模型输出的预测区间的上端点值进行平均值计算,可以得到上端点平均值,该上端点平均值表示多个初始机器学习模型分别输出的预测区间的上端点值的平均结果。在步骤B22中,将上端点平均值与多个初始机器学习模型输出的预测区间的上端点值分别计算均方误差,可以得到上端点均方误差。在步骤B23中,获取到上端点平均值和上端点均方误差之后,上端点平均值和上端点均方误差可用于获取预设的机器学习模型输出的预测区间的上端点值,对于具体的计算方式不做限定。例如,m个神经网络模型在训练阶段通过不同的参数初始化进行训练,m个神经网络模型的预测值的上端点均方误差和上端点平均值可以作为是对认知不确定性的估计,由此计算出预设的机器学习模型输出的预测区间的上端点值,m的取值为正整数,本申请实施例中不限定m的取值大小,具体结合应用场景确定。
在本申请的一些实施例中,步骤B21根据各所述初始机器学习模型输出的预测区间的上端点值获取上端点平均值,包括:
通过如下方式获取所述上端点平均值:
Figure BDA0003064893520000211
其中,所述
Figure BDA0003064893520000221
表示当使用第i个训练数据训练m个初始机器学习模型时的上端点平均值,所述
Figure BDA0003064893520000222
表示当使用第i个训练数据训练第j个初始机器学习模型输出的预测区间的上端点值,所述m表示初始机器学习模型的个数,所述i大于等于1且小于等于n,所述n为训练过程中同批处理的所述多个训练数据的个数。
不限的是,上述计算上端点平均值的方式是步骤B21的一种具体实现方式,本申请实施例中对于m、n、
Figure BDA0003064893520000223
的取值不做限定。
在本申请的一些实施例中,步骤B22根据各所述初始机器学习模型输出的预测区间的上端点值与所述上端点平均值获取上端点均方误差,包括:
通过如下方式获取所述上端点均方误差:
Figure BDA0003064893520000224
其中,所述
Figure BDA0003064893520000225
表示当使用第i个训练数据训练m个初始机器学习模型时的上端点均方误差,所述
Figure BDA0003064893520000226
表示当使用第i个训练数据训练m个初始机器学习模型时的上端点平均值,所述
Figure BDA0003064893520000227
表示当使用第i个训练数据训练第j个初始机器学习模型对应的预测区间的上端点值,所述m表示初始机器学习模型的个数,所述i大于等于1且小于等于n,所述n为训练过程中同批处理的所述多个训练数据的个数。
不限的是,上述计算上端点均方误差的方式是步骤B22的一种具体实现方式,本申请实施例中对于m、n、
Figure BDA0003064893520000228
的取值不做限定。
在本申请的一些实施例中,步骤B23根据所述上端点平均值与所述上端点均方误差获取所述预设的机器学习模型输出的预测区间的上端点值,包括:
通过如下方式获取所述预设的机器学习模型输出的预测区间的上端点值:
Figure BDA0003064893520000229
其中,所述
Figure BDA00030648935200002210
表示所述预设的机器学习模型输出的预测区间的上端点值,所述
Figure BDA00030648935200002211
表示当使用第i个训练数据训练m个初始机器学习模型时的上端点平均值,所述
Figure BDA00030648935200002212
表示当使用第i个训练数据训练m个初始机器学习模型时的上端点均方误差,所述i大于等于1且小于等于n,所述n为训练过程中同批处理的所述多个训练数据的个数。
不限的是,上述计算预设的机器学习模型输出的预测区间的上端点值的方式是步骤B23的一种具体实现方式,本申请实施例中对于
Figure BDA00030648935200002213
的取值不做限定。本申请实施例中基于上述计算方式,还可以想到别的计算方式,例如
Figure BDA00030648935200002214
得到结果之后,再使用预先配置的修正因子进行修正,以得到上述
Figure BDA00030648935200002215
在本申请的一些实施例中,步骤B3根据各初始机器学习模型输出的预测区间的下端点值获取预设的机器学习模型对应的预测区间的下端点值,包括:
B31、根据各初始机器学习模型输出的预测区间的下端点值获取下端点平均值;
B32、根据各初始机器学习模型输出的预测区间的下端点值与下端点平均值获取下端点均方误差;
B33、根据下端点平均值与下端点均方误差获取预设的机器学习模型输出的预测区间的下端点值。
其中,在步骤B31中,获取到各初始机器学习模型输出的预测区间的下端点值之后,根据每个初始机器学习模型输出的预测区间的下端点值进行平均值计算,可以得到下端点平均值,接下来执行步骤B32,计算下端点均方误差,最后通过下端点平均值与下端点均方误差计算出预设的机器学习模型输出的预测区间的下端点值。
具体的,在步骤B31中,对各初始机器学习模型输出的预测区间的下端点值进行平均值计算,可以得到下端点平均值,该下端点平均值表示多个初始机器学习模型分别输出的预测区间的下端点值的平均结果。在步骤B32中,将下端点平均值与多个初始机器学习模型输出的预测区间的下端点值分别计算均方误差,可以得到下端点均方误差。在步骤B33中,获取到下端点平均值和下端点均方误差之后,下端点平均值和下端点均方误差可用于获取预设的机器学习模型输出的预测区间的下端点值,对于具体的计算方式不做限定。例如,m个神经网络模型在训练阶段通过不同的参数初始化进行训练,m个神经网络模型的预测值的下端点均方误差和下端点平均值可以作为是对认知不确定性的估计,由此计算出预设的机器学习模型输出的预测区间的下端点值。
在本申请的一些实施例中,步骤B31根据各所述初始机器学习模型输出的预测区间的下端点值获取下端点平均值,包括:
通过如下方式获取所述下端点平均值:
Figure BDA0003064893520000231
其中,所述
Figure BDA0003064893520000232
表示当使用第i个训练数据训练m个初始机器学习模型时的下端点平均值,所述
Figure BDA0003064893520000233
表示当使用第i个训练数据训练第j个初始机器学习模型输出的预测区间的下端点值,所述m表示初始机器学习模型的个数,所述i大于等于1且小于等于n,所述n为训练过程中同批处理的所述多个训练数据的个数。
不限的是,上述计算下端点平均值的方式是步骤B31的一种具体实现方式,本申请实施例中对于m、n、
Figure BDA0003064893520000234
的取值不做限定。
在本申请的一些实施例中,步骤B32根据各所述初始机器学习模型输出的预测区间的下端点值与所述下端点平均值获取下端点均方误差,包括:
Figure BDA0003064893520000235
其中,所述
Figure BDA0003064893520000236
表示当使用第i个训练数据训练m个初始机器学习模型时的下端点均方误差,所述
Figure BDA0003064893520000237
表示当使用第i个训练数据训练m个初始机器学习模型时的下端点平均值,所述
Figure BDA0003064893520000238
表示当使用第i个训练数据训练第j个初始机器学习模型对应的预测区间的下端点值,所述m表示初始机器学习模型的个数,所述i大于等于1且小于等于n,所述n为训练过程中同批处理的所述多个训练数据的个数。
不限的是,上述计算下端点均方误差的方式是步骤B32的一种具体实现方式,本申请实施例中对于m、n、
Figure BDA0003064893520000239
的取值不做限定。
在本申请的一些实施例中,步骤B33根据所述下端点平均值与所述下端点均方误差获取所述预设的机器学习模型输出的预测区间的下端点值,包括:
通过如下方式获取所述预设的机器学习模型输出的预测区间的下端点值:
Figure BDA0003064893520000241
其中,所述
Figure BDA0003064893520000242
表示所述预设的机器学习模型输出的预测区间的下端点值,所述
Figure BDA0003064893520000243
表示当使用第i个训练数据训练m个初始机器学习模型时的下端点平均值,所述
Figure BDA0003064893520000244
表示当使用第i个训练数据训练m个初始机器学习模型时的下端点均方误差,所述i大于等于1且小于等于n,所述n为训练过程中同批处理的所述多个训练数据的个数。
不限的是,上述计算预设的机器学习模型输出的预测区间的下端点值的方式是步骤B33的一种具体实现方式,本申请实施例中对于
Figure BDA0003064893520000245
的取值不做限定。本申请实施例中基于上述计算方式,还可以想到别的计算方式,例如
Figure BDA0003064893520000246
得到结果之后,再使用预先配置的修正因子进行修正,以得到上述
Figure BDA0003064893520000247
在本申请的一些实施例中,前述步骤501使用控制系统的历史的状态数据对初始机器学习模型进行训练,包括:
C1、当训练数据为多个时,将多个训练数据输入初始机器学习模型的输入层,通过初始机器学习模型输出每个训练数据对应的预测区间,其中,每个预测区间包括:上端点值和下端点值;
C2、根据每个预测区间的上端点值和下端点值获取每个预测区间对应的预测值;
C3、根据每个预测区间的上端点值和下端点值、每个预测区间对应的预测值和预设的每个预测区间对应的真实值确定损失函数值;
C4、当损失函数值满足预设的训练结束条件时,停止对初始机器学习模型的训练。
在上述步骤C1中,训练数据为多个时,针对多个训练数据需要分别对初始机器学习模型进行训练,将多个训练数据分别输入初始机器学习模型的输入层,通过初始机器学习模型输出每个训练数据对应的预测区间,其中,每个预测区间包括:上端点值和下端点值。在步骤C2中,得到每个预测区间的上端点值和下端点值之后,可以计算每个预测区间对应的预测值,例如预测值可以是该预测区间的中间某一个值,例如预测值可以是该预测区间的中点值。在步骤C3中预先获取每个预测区间对应的真实值(ground-truth),则使用每个预测区间的上端点值和下端点值、每个预测区间对应的预测值和预设的每个预测区间对应的真实值确定损失函数值,具体计算方式有多种,此处不做限定。在获取到损失函数值之后,判断损失函数值是否满足预设的训练结束条件,若损失函数值满足预设的训练结束条件,执行步骤C4,停止进行模型训练,此时可以得到训练完成后的机器学习模型。若损失函数值不满足预设的训练结束条件,则可以重新执行步骤C1至C4,直至完成模型训练过程。通过上述过程,可以实现对带预测区间的机器学习模型的训练,以使得该机器学习模型能够输出预测值和该预测值对应的预测区间。
在本申请的一些实施例中,步骤C3根据每个预测区间的上端点值和下端点值、每个预测区间对应的预测值和预设的每个预测区间对应的真实值确定损失函数值,包括:
C31、根据每个预测区间对应的预测值和预设的每个预测区间对应的真实值获取均方误差;
C32、根据每个预测区间的上端点值和下端点值获取平均区间宽度(meanprediction interval width);
C33、根据预设的每个预测区间对应的真实值,以及每个预测区间的上端点值和下端点值获取每个预测区间对应的区间覆盖指示值,区间覆盖指示值用于指示每个预测区间对应的真实值是否落入相应的预测区间中;
C34、根据每个预测区间对应的区间覆盖指示值获取区间覆盖率(predictioninterval coverage probability);
C35、根据均方误差和平均区间宽度获取第一损失子函数;
C36、根据预设的置信水平和区间覆盖率获取第二损失子函数;
C37、根据第一损失子函数和第二损失子函数获取损失函数(loss)值。
在上述步骤C33中,区间覆盖指示值用于指示每个预测区间对应的真实值是否落入相应的预测区间中,该真实值是模型训练阶段时预先获取到的数值。在步骤C35中,第一损失子函数通过均方误差和平均区间宽度得到,对于具体的计算方式不做限定。在步骤C36中,第二损失子函数通过预设的置信水平和区间覆盖率得到,对于具体的计算方式不做限定。在得到第一损失子函数和第二损失子函数之后,通过第一损失子函数和第二损失子函数获取损失函数值,该损失函数值的计算通过第一损失子函数和第二损失子函数融合计算得到,本申请实施例中通过上述方式可以获取到损失函数值,从而使用该损失函数值判断是否结束对模型的训练。
在本申请的一些实施例中,步骤C2根据所述各个训练数据对应的预测区间的上端点值和下端点值获取所述预测值,包括:
通过如下方式获取所述多个训练数据中的第i个训练数据的预测值:
Figure BDA0003064893520000251
其中,所述
Figure BDA0003064893520000252
表示所述第i个训练数据对应的预测值,所述
Figure BDA0003064893520000253
表示所述第i个训练数据对应的预测区间的上端点值,所述
Figure BDA0003064893520000254
表示所述第i个训练数据对应的预测区间的下端点值,所述i大于等于1且小于等于n,所述n为训练过程中同批处理的所述多个训练数据的个数。
不限的是,上述计算预测值的方式是步骤C2的一种具体实现方式,本申请实施例中对于
Figure BDA0003064893520000255
的取值不做限定。
在本申请的一些实施例中,步骤C31根据所述预测值和相应的真实值获取均方误差,包括:
通过如下方式获取所述均方误差:
Figure BDA0003064893520000256
其中,所述MSE表示所述均分误差,所述
Figure BDA0003064893520000257
表示所述第i个训练数据对应的预测值,所述yi表示所述第i个训练数据对应的真实值,所述n表示训练过程中同批处理的所述多个训练数据的个数。
不限的是,上述计算均方误差的方式是步骤C31的一种具体实现方式,本申请实施例中对于
Figure BDA0003064893520000258
yi的取值不做限定。
在本申请的一些实施例中,步骤C32根据所述各个训练数据的上端点值和下端点值获取平均区间宽度,包括:
通过如下方式获取所述平均区间宽度:
Figure BDA0003064893520000261
其中,所述MPIW表示所述平均区间宽度,所述n表示训练过程中一个批处理数据量的大小,所述
Figure BDA0003064893520000262
表示第i个训练数据对应预测区间的上端点值,所述
Figure BDA0003064893520000263
表示第i个训练数据对应的预测区间的下端点值。
不限的是,上述计算平均区间宽度的方式是步骤C32的一种具体实现方式,本申请实施例中对于
Figure BDA0003064893520000264
的取值不做限定。
在本申请的一些实施例中,步骤C33根据所述各个训练数据对应的真实值和所述各个训练数据对应的预测区间获取所述各个训练数据对应的区间覆盖指示值,包括:
通过如下方式获取第i个训练数据对应的区间覆盖指示值:
Figure BDA0003064893520000265
其中,所述ci表示所述第i个训练数据对应的区间覆盖指示值,所述σ表示激活函数,所述s表示超参数因子,所述
Figure BDA0003064893520000266
表示所述第i个训练数据对应的预测区间的上端点值,所述
Figure BDA0003064893520000267
表示所述第i个训练数据对应的预测区间的下端点值,所述yi表示所述第i个训练数据对应的真实值。
不限的是,上述计算区间覆盖指示值的方式是步骤C33的一种具体实现方式,本申请实施例中对于
Figure BDA0003064893520000268
yi的取值不做限定。
在本申请的一些实施例中,步骤C34根据所述各个训练数据对应的区间覆盖指示值获取区间覆盖率,包括:
通过如下方式获取所述区间覆盖率:
Figure BDA0003064893520000269
其中,所述PICP表示所述区间覆盖率,所述ci表示所述第i个训练数据对应的区间覆盖指示值,所述n表示训练过程中同批处理的所述多个训练数据的个数。
不限的是,上述计算区间覆盖率的方式是步骤C34的一种具体实现方式,本申请实施例中对于n、ci的取值不做限定。
在本申请的一些实施例中,步骤C35根据所述均方误差和所述平均区间宽度获取第一损失子函数,包括:
通过如下方式获取所述第一损失子函数:
Figure BDA00030648935200002610
其中,所述
Figure BDA00030648935200002611
表示所述第一损失子函数,所述MSE表示所述均分误差,所述n表示训练过程中同批处理的所述多个训练数据的个数,所述MPIW表示所述平均区间宽度,所述log表示取对数运算。
不限的是,上述计算第一损失子函数的方式是步骤C35的一种具体实现方式,本申请实施例中对于n、MSE、MPIW的取值不做限定。
在本申请的一些实施例中,步骤C36根据预设的预测水平和所述区间覆盖率获取第二损失子函数,包括:
通过如下方式获取所述第二损失子函数:
Figure BDA0003064893520000271
其中,所述
Figure BDA0003064893520000272
表示所述第二损失子函数,所述PICP表示所述区间覆盖率,所述Pc为预设的预测水平。
不限的是,上述计算第二损失子函数的方式是步骤C36的一种具体实现方式,本申请实施例中对于Pc、PICP的取值不做限定。
在本申请的一些实施例中,步骤C37根据所述第一损失子函数和所述第二损失子函数获取所述损失函数值,包括:
通过如下方式获取所述损失函数值:
Figure BDA0003064893520000273
其中,所述
Figure BDA0003064893520000274
表示所述损失函数值,所述
Figure BDA0003064893520000275
表示所述第一损失子函数,所述
Figure BDA0003064893520000276
表示所述第二损失子函数,所述λ为用于平衡所述第一损失子函数和所述第二损失子函数的超参数。
不限的是,上述计算损失函数值的方式是步骤C37的一种具体实现方式,本申请实施例中对于
Figure BDA0003064893520000277
的取值不做限定。本申请实施例中基于上述计算方式,还可以想到别的计算方式,例如
Figure BDA0003064893520000278
得到结果之后,再使用预先配置的修正因子进行修正,以得到上述
Figure BDA0003064893520000279
为便于更好的理解和实施本申请实施例的上述方案,下面举例相应的应用场景来进行具体说明。
本申请实施例机器学习模型具体为神经网络模型,后续以神经网络模型输出预测值以及预测区间为例进行说明,本申请实施例中从不确定性估计的角度来构造预测区间,并将预测区间的宽度作为对预测值的不确定性大小的一种估计,将预测区间和不确定性关联起来,该预测区间用于指示预测值对应的置信度,该置信度是抽象的概率,预测区间的大小可用于置信度,置信度也可以称为不确定性或者不确定度。另外,本申请实施例中综合考虑了两类不确定性,即认知不确定度与随机不确定度,其中,认知不确定度是由于数据收集不全,导致在没有数据的地方不确定性高,随机不确定度也可以称为偶尔不确定度,随机不确定度指由于系统本身以及系统收集误差导致的不确定性。本申请实施例中还可以通过多个神经网络模型集成的方式,使得构造出来的预测区间具备认知不确定度的能力。
另外,本申请实施例通过可微的目标函数来构造预测区间,对神经网络只需要稍加修改就可以使用本申请实施例提供的目标函数,其中,可微的目标函数是指在定义域中所有点都存在导数的目标函数。。例如,使用标准的基于梯度的算法就可以有效地优化该目标函数。
本申请实施例中系统整体运行流程,可以拆分为模型训练和基于模型的推理寻优两部分。接下来以本申请实施例中的机器学习模型具体为神经网络模型为例进行说明,下面分别进行描述:
a)模型训练
云端收集到本地数据中心发送来的分布不均的历史数据后,该历史数据可作为训练数据,使用该训练数据训练预先定义好的回归神经网络模型。例如,神经网络模型为全连接回归神经网络,输入层对应输入特征X,输出层单神经元对应标签(能耗)Y。神经网络模型训练具体流程可以采用标准的神经网络模型训练方法,对神经网络模型的训练过程不再详细说明。训练完毕后,可以得到神经网络模型的深入推理样本(特征x,包括环境特征和控制参数特征)后,神经网络模型可以推理出标签(能耗)Y。
b)基于模型的推理寻优
如图6所示,为本申请实施例提供的控制装置包括的模块,例如控制装置包括:不确定度建模模块、支持不确定度处理的扩展模块、推理支撑模块和状态数据采集模块。
模型训练完毕后,进行模型的应用,即基于模型的推理寻优。例如,以图1和图2所示的数据中心控制系统为例,状态数据采集模块实时监控系统运行状态(主要监控系统环境状态,如IT负载,室外温湿度等),并以一定的时间间隔将系统运行状态推送给推理支撑模块,该推理支撑模块基于预先配置好的控制参数范围值,生成一条或多条的待推理数据,待推理数据包括:控制参数的寻优空间,该寻优空间包括不同可选控制参数的组合,支持不确定度处理的扩展模块基于当前系统状态,生成大量的实时推理样本,其中,实时推理样本拼接系统状态特征与寻优空间,并发送到不确定度建模模块,不确定度建模模块生成具备不确定度估计能力的模型,该模型可以输出每条待推理数据的预测值和预测区间,支持不确定度处理的扩展模块可以生成应用不确定度后的推理结果。该推理结果返回给本地决策系统。在预测区间符合预设的条件时,本地决策系统基于推理结果选择最优能耗值对应的控制参数进行下发,例如可以选择能耗最低的控制参数组合,并进行下发。
需要说明的是,本申请实施例中可以采用回归神经网络,模型在应用推理时,给出推理结果的置信度量化值,该置信度量化值为前述的预测区间。此时模型推理出的低能耗值对应的样本,包括训练数据中已经覆盖到的数据分布空间,此时模型推理的结果是可信的。本申请实施例中,控制系统基于可信的推理结果进行参数寻优,最后下发的控制参数组合是最优的控制参数组合。
本申请实施例中回归神经网络能够建模不确定性,在模型训练过程中同时获得了可以推理不确定度的能力,即回归神经网络不止建模预测值,同时建模了不确定性能力,因此推理时能够输出预测区间,通过该预测区间指示预测值的置信度,从而使得决策结果实际可信。
在部署形态上,不确定度建模模块以及具备不确定估计能力的模型部署于云端,支持不确定度处理的扩展模块、推理支撑模块和状态数据采集模块部署在端侧。端云之间通过网络接口进行通信,端侧提供推理样本给云端的模型,云端的模型推理出结果后向端侧反馈模型推理结果,模型推理结果包括预测值以及预测区间。例如,预测值是预测区间的中间值。此外,全部模块也可以部署于同一个设备中,此设备同时具有模型训练以及推理的能力。
本申请实施例中的神经网络模型,具体的可以拆分为带预测区间的神经网络模型以及多神经网络模型集成模块。下面分别进行描述:
首先介绍带预测区间的单个神经网络模型结构,如图7所示,训练数据可以包括输入数据1、输入数据2、...、输入数据n,神经网络模型包括:输入层、隐藏层(hidden layer)和输出层,训练数据输入到输入层中,神经网络模型进行推理后,输出上端点值(upperbound)和下端点值(lower bound),上端点值和下端点值构成预测区间,上端点值为预测区间的区间上界,下端点值为预测区间的区间下界,预测值具体可以是预测区间的中点值(mid point),真实值(ground-truth)是模型训练过程中预先获取到的值。神经网络模型中的输出层神经元有两个,分别是区间上界与区间下界,上下区间的中间值作为模型的预测值,与传统的神经网络模型的输出层只有单一神经元是完全不同的。另外,本申请实施例中预测区间的宽度大小可以作为置信度的大小。
如图8所示,本申请实施例中可以将m个神经网络模型集成在一起,例如神经网络可以是深度神经网络(deep neural networks,DNN),m个神经网络模型分别为DNN1、DNN2、...、DNNm。本申请实施例中集成模块基于多个带预测区间的神经网络模型,并将多个基础的神经网络模型进行集成。在推理时,每个神经网络模型都可以输出推理结果,且不同的模型会输出不同的推理结果,将多个模型输出的不同结果做平均以及计算方差,得到的结果即为集成的结果。
接下来基于本申请实施例应用的系统架构或场景设计进行说明,如图9所示,本申请实施例的核心方法流程可以分为建模与推理寻优两部分,在核心流程之外还有寻优部分,寻优部分即基于上述带不确定度(区间大小)的推理结果进行决策。
如图9所示,在建模部分,构建多个神经网络模型,训练数据分别输入到多个神经网络模型中,如下以N个模型训练为例:
在模型1的训练过程中:
1.构建带预测区间的神经网络模型。
2.通过优化高斯似然的方式优化带预测区间的神经网络模型。
上述模型1在推理之后,可以输出模型1的推理结果:[min,max],99%置信度,偶然不确定性。
在模型2的训练过程中:
1.构建带预测区间的神经网络模型。
2.通过优化高斯似然的方式优化带预测区间的神经网络模型。
上述模型2在推理之后,可以输出模型2的推理结果:[min,max],99%置信度,偶然不确定性。
在模型N的训练过程中:
1.构建带预测区间的神经网络模型。
2.通过优化高斯似然的方式优化带预测区间的神经网络模型。
上述模型N在推理之后,可以输出模型N的推理结果:[min,max],99%置信度,偶然不确定性。
在推理部分,可构建带认知与推理不确定度的推理结果。例如,模型1的推理结果:[min,max],99%置信度,偶然不确定性。模型2的推理结果:[min,max],99%置信度,偶然不确定性。模型N的推理结果:[min,max],99%置信度,偶然不确定性。多个模型推理结果进行集成,可构建带认知与推理不确定度的推理结果。
下面对核心流程进行介绍:
1.模型训练流程:独立的训练多个带预测区间的神经网络模型。
带预测区间的神经网络架构与普通神经网络的核心区别在于在神经网络模型结构定义阶段,输出层定义两个输出神经元。即输出层存在两个神经元,上下神经元的输出分别作为区间上界与区间下界。除结构上的差异外,带预测区间的神经网络其训练过程与普通神经也存在差异,关键差异在于预测值与真实值的损失函数(Loss)计算方式的差异,训练神经网络的目标,即神经网络的训练过程是使得在特定的数据下得到的模型参数对应的损失函数最小。
模型训练阶段中会训练多个不同的神经网络模型,接下来首先以对一个神经网络模型的训练过程进行描述。
如图10所示,为神经网络模型的标准训练过程,本申请实施例针对待预期区间的神经网络模型的结构,在模型训练流程上进行了相应的改进,从而可以建模不确定性。模型训练过程如下,主要包括:
S01、模型初始化(确定模型结构,随机初始化模型参数)。
S02、给定训练数据集D,具体的包括特征数据集X以及标签数据集Y。
S03、通过训练数据集中的特征数据集以及模型参数,按层依次分别计算每个隐藏层各单元的输出,直到计算出输出层输出值。
S04、计算通过模型计算出的预测标签值与真实的标签值Y计算误差(Loss)。
S05、Loss是否在误差允许范围内。
S06、若Loss在误差允许范围内,则训练结束,得到神经网络模型,用于推理。
S07、若Loss不在误差允许范围内,计算网络层各神经元的误差。
S08、求误差梯度。
其中,神经元对应的是梯度,是由Loss反向计算得出。
S09、更新权值,重新触发执行步骤S03。
具体的,在上述流程中,主要包括如下:
第一步:模型初始化阶段:模型结构确定后,通过随机初始化的方式为所有的模型参数赋初值。
第二步:模型前向传播:将训练数据中的特征数据集X从输入层输入神经网络模型中,利用当前的模型参数逐层计算隐藏层的神经元输出值,直到计算到输出层,得到神经网络模型的预测输出,上下节点输出分别为
Figure BDA0003064893520000301
Figure BDA0003064893520000302
Figure BDA0003064893520000303
分别是模型输出的下界,
Figure BDA0003064893520000304
是模型输出的上界。
第三步:误差(Loss)计算:
a)、取预测区间的上下界的中点作为点估计的预测值:
Figure BDA0003064893520000311
其中,
Figure BDA0003064893520000312
Figure BDA0003064893520000313
分别是神经网络模型输出的下界和上界。
b)、计算均方误差(mean-square error,MSE):
Figure BDA0003064893520000314
其中,n为训练过程中一个批处理数据量(mini-batch)的大小。
c)、计算平均区间宽度(mean prediction interval width,MPIW):
Figure BDA0003064893520000315
d)、判断数据点是否落入到构造的预测区间中:
Figure BDA0003064893520000316
其中,σ表示sigmoid激活函数,s是超参数因子。
e)、计算区间覆盖率(prediction interval coverage probability,PICP):
Figure BDA0003064893520000317
f)、构造损失函数项如下:
Figure BDA0003064893520000318
Figure BDA0003064893520000319
其中,Pc为预设的置信水平。
g)、总的损失函数为
Figure BDA00030648935200003110
其中,λ为平衡两个损失项的超参数。
第四步:迭代停止判断:计算Loss值
Figure BDA00030648935200003111
是否在可接受的范围之内,或者迭代次数是否达到寻优的最大次数,如果满足则停止迭代,否则就执行第二步。
第五步:模型反向传播:通过Loss计算模型参数对应的梯度值,更新模型参数。
2.推理流程:对多个待预期区间的神经网络模型进行集成。
在本地数据中心上传大量推理样本之后,云端负责进行推理。基于模型训练阶段训练得到的多个带预测区间的模型分别执行推理,最后将推理结果进行集成。
例如,m个神经网络在训练阶段通过不同的参数初始化进行训练。m个神经网络模型输出的预测值的方差可以作为是对认知不确定性的估计。具体的集成方式如下:
Figure BDA0003064893520000321
Figure BDA0003064893520000322
Figure BDA0003064893520000323
Figure BDA0003064893520000324
最终的预测区间为:
Figure BDA0003064893520000325
在训练得到神经网络模型后,利用此模型执行推理。在模型建立之后,可以从模型获取基于当前环境的一组较优控制策略,以及策略的上下文(对应图6中每条待推理数据的预测值和预测区间)。控制策略的上下文包括:每个策略对应的收益(即图6中的预测值)和其收益的预测区间,最后可以依据上下文确定最终使用的控制策略。接下来对控制策略的上下文的结构示例说明:
策略1:预测值58,预测区间(57,59),
策略2:预测值57,预测区间(53,61),
策略3:预测值55,预测区间(46,64)。
根据上述预测值和预测区间,可以做出较优判断。例如,选择预测值最高的策略1,或者虽然策略2的预测值比策略1低,但有可能获得收益是61,同时虽然策略3能支持更高的收益,但预测区间过大,导致对该推理结果不可信,故舍弃策略1和策略3,因此选择策略2。
如图11所示,根据寻优空间进行能耗的推理,可以使用普通神经网络模型,该普通神经网络模型只能输出预测值,无法输出预测区间,推理能耗结果包括如下表3:
策略序号 推理能耗结果
A1 7
A2 6
A3 10
A4 20
因此,使用argmin函数,使得能耗最优的控制参数,得到A2对应的能耗最小。
如图11所示,根据寻优空间进行能耗的推理,可以使用本申请实施例提供的带预测区间的神经网络模型,可输出带预测区间的神经网络模型输出预测值以及相应的预测区间,如下表4所示:
策略序号 预测区间
A1 [6,8]
A2 [2,10]
A3 [5,15]
A4 [18,22]
同时考虑预测值和预测区间的大小,区间大小代表推理的可信度,A2对应的平均能耗最小,但预测区间极大,表示模型对推理结果并不自信,推理可能不可信,此时可以选择A1,能耗次优,但是置信度高。
同时考虑不确定性(预测区间大小)以及预测值进行决策(寻找最优的控制参数),此时得到的推理结果更加可信。
通过前述举例说明可知,本申请实施例从概率统计的角度去分析建模回归任务中的不确定性,因为预测区间直接传达不确定性,所以用预测区间宽度去建模不确定性的大小,以量化不确定性为基础去构造预测区间,使得本申请实施例的方法更加合理。
另外,本申请实施例提供的损失函数,使得只需要监督回归任务的学习就能隐式地学习到不确定性。对深度学习网络经过细微的修改就能运用本申请实施例的损失函数来估计预测的不确定性,能使用目前基于梯度的算法进行优化。本申请实施例提出的损失函数拉近了构造预测区间和不确定性估计之间的关系。将不确定性估计融入到预测区间的构造之中,使得构造出的预测区间更加合理可信。并且本申请实施例提出的损失函数具有很好的泛化性能,适用于大多数的神经网络,能很好地兼容深度学习框架。
接下来,在多个回归任务的数据集上测试本申请实施例提出的方法。
(1)本申请实施例的方法可以构造出更小的预测区间,能敏感地捕捉到不确定性。在数据分布稀疏的区域,不确定性明显增大。在数据分布较密集的地方,不确定性减小。
(2)本申请实施例的方法可以构造出高精度的预测区间,在保证覆盖足够多数据点的同时,区间宽度也更窄。
(3)本申请实施例的方法可以控制MPIW与PCIP之间的权衡。在实际应用中,本申请实施例可以通过调节参数来达到所需的区间覆盖率。
如图12所示,横坐标指样本索引,纵坐标指y值,三条线中上下线代表预测区间上下界,位于上下线之间的中间虚线代表真实值。通过预测区间的上端点值曲线、预测区间的下端点值曲线和真实值曲线的关系可知,本申请实施例中预测区间对应的预测值与真实值相接近,进一步说明本申请实施例输出的预测值是可信的。
本申请实施例中进行不确定性估计可以通过非贝叶斯的方法,可以很好的兼容到目前的深度学习框架之中,效果也很好。在大多数情况下,预测中的不确定性估计是至关重要的。首先,不确定性在决定何时放弃模型的预测中起着重要作用。放弃模型的不确定的预测可以处理异常、将高风险的预测交给人工来进行决策,即在预测区间很大时,说明模型输出的预测值是不可用的。其次,不确定性是主动学习的支柱,即决定应该标注哪些数据来最大限度地提高模型的性能。第三,在分析噪声结构时,如进行预测区间估计时,不确定性估计是很重要的。第四,不确定性量化是向模型可解释性迈进的一步。随着基于深度学习的自动化系统越来越多地部署在可能造成物理或经济伤害的现实生活中,使得用户能够更好地理解什么时候本申请实施例可以对深度网络产生的估计有信心,什么时候应该不那么确定。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤采用其他顺序或者同时进行。其次,本领域技术人员应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
为便于更好的实施本申请实施例的上述方案,下面还提供用于实施上述方案的相关系统。
请参阅图13,为本申请实施例提供的一种控制装置,包括接收模块1301和处理模块1302。
所述接收模块,用于获取控制系统在运行时的状态数据;
所述处理模块,用于将所述状态数据输入到预设的机器学习模型中,通过所述机器学习模型输出所述控制系统的性能指标的预测值以及所述预测值对应的预测区间,其中,所述预测区间用于指示所述预测值对应的范围;
所述处理模块,还用于当所述预测区间符合预设的条件时,根据所述预测值确定控制参数,所述控制参数用于所述控制系统对被控设备进行控制。
作为另一可选方式,所述处理模块,进一步用于:当所述机器学习模型输出多个预测区间时,从所述多个预测区间中确定符合所述条件的预测区间;根据符合所述条件的预测区间对应的预测值确定所述控制参数。
作为另一可选方式,所述预设的条件包括:预测区间的区间大小大于预设的区间门限;
所述处理模块,进一步用于:获取每个所述预测区间的区间大小;从每个所述预测区间的区间大小中确定区间大小小于所述区间门限的预测区间,其中,所述区间大小小于所述区间门限的预测区间符合所述条件。
作为另一可选方式,所述预设的条件包括:预测区间的上端点值小于预设的第一阈值,或者,预测区间的下端点值大于预设的第二阈值;
所述处理模块,进一步用于:获取每个所述预测区间的上端点值;从每个所述预测区间的上端点值中确定上端点值小于所述第一阈值的预测区间,其中,所述上端点值小于所述第一阈值的预测区间符合所述条件;
或者,
所述处理模块,进一步用于:获取每个所述预测区间的下端点值;从每个所述预测区间的下端点值中确定下端点值大于所述第二阈值的预测区间,其中,所述下端点值大于所述第二阈值的预测区间符合所述条件。
作为另一可选方式,所述处理模块,进一步用于:使用所述控制系统的历史的状态数据作为训练数据对初始机器学习模型进行训练,以得到所述预设的机器学习模型。
作为另一可选方式,所述处理模块,进一步用于:当待训练的初始机器学习模型是多个时,使用与各初始机器学习模型对应的训练数据对各所述初始机器学习模型分别进行训练,以得到训练完成后的各初始机器学习模型。
作为另一可选方式,所述处理模块,进一步用于:所述得到训练完成后的各初始机器学习模型之后,获取各所述初始机器学习模型输出的预测区间的上端点值和下端点值;根据各所述初始机器学习模型输出的预测区间的上端点值获取所述预设的机器学习模型输出的预测区间的上端点值;根据各所述初始机器学习模型输出的预测区间的下端点值获取所述预设的机器学习模型输出的预测区间的下端点值。
作为另一可选方式,所述处理模块,进一步用于:根据各所述初始机器学习模型输出的预测区间的上端点值获取上端点平均值;根据各所述初始机器学习模型输出的预测区间的上端点值与所述上端点平均值获取上端点均方误差;根据所述上端点平均值与所述上端点均方误差获取所述预设的机器学习模型输出的预测区间的上端点值。
作为另一可选方式,所述处理模块,进一步用于:根据各所述初始机器学习模型输出的预测区间的下端点值获取下端点平均值;根据各所述初始机器学习模型输出的预测区间的下端点值与所述下端点平均值获取下端点均方误差;根据所述下端点平均值与所述下端点均方误差获取所述预设的机器学习模型输出的预测区间的下端点值。
作为另一可选方式,所述处理模块,进一步用于:当所述训练数据为多个时,将多个所述训练数据输入所述初始机器学习模型的输入层,通过所述初始机器学习模型输出每个所述训练数据对应的预测区间,其中,每个所述预测区间包括:上端点值和下端点值;根据每个所述预测区间的上端点值和下端点值获取每个所述预测区间对应的预测值;根据每个所述预测区间的上端点值和下端点值、每个所述预测区间对应的预测值和预设的每个所述预测区间对应的真实值确定损失函数值;当所述损失函数值满足预设的训练结束条件时,停止对所述初始机器学习模型的训练。
作为另一可选方式,所述处理模块,进一步用于:根据每个所述预测区间对应的预测值和预设的每个所述预测区间对应的真实值获取均方误差;根据每个所述预测区间的上端点值和下端点值获取平均区间宽度;根据预设的每个所述预测区间对应的真实值,以及每个所述预测区间的上端点值和下端点值获取每个所述预测区间对应的区间覆盖指示值,所述区间覆盖指示值用于指示每个所述预测区间对应的真实值是否落入相应的预测区间中;根据每个所述预测区间对应的区间覆盖指示值获取区间覆盖率;根据所述均方误差和所述平均区间宽度获取第一损失子函数;根据预设的置信水平和所述区间覆盖率获取第二损失子函数;根据所述第一损失子函数和所述第二损失子函数获取所述损失函数值。
作为另一可选方式,所述图13中装置中的模块还可以用来执行图4至图5中的方法流程中任意装置的任意步骤。本申请实施例在此不再详述。
作为一种可选方式,该装置可以是芯片。
通过前述实施例对控制装置的举例说明可知,可以从控制系统获取到状态数据,通过机器学习模型可以输出预测值和预测区间,若预测区间符合预设的条件,则说明该预测区间对应的预测值是可信的,此时才根据预测值确定控制参数,本申请实施例提供的基于机器学习模型的控制方法,可以使训练出的机器学习模型具备评估模型推理结果可靠性的能力,从而可以同时考虑预测值最优以及推理可信度进行控制,从而达到更精准可信的控制。
如图14所示,为本申请实施例提供的装置的硬件结构示意图。该装置可以为图1中的控制装置。
图14所示的装置可以包括:处理器1401、存储器202、通信接口1404,输出设备1405,输入设备1406以及总线1403。处理器1401、存储器1402以及通信接口1404、输出设备1405、输入设备1406之间可以通过总线1403连接。
处理器1401是计算机设备的控制中心,可以是一个通用中央处理单元(centralprocessing unit,CPU),也可以是其他通用处理器等。其中,通用处理器可以是微处理器或者是任何常规的处理器等。
作为一个示例,处理器1401可以包括一个或多个CPU。
存储器1402可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
一种可能的实现方式中,存储器1402可以独立于处理器1401存在。存储器1402可以通过总线1403与处理器1401相连接,用于存储数据、指令或者程序代码。处理器1401调用并执行存储器1402中存储的指令或程序代码时,能够实现本申请实施例提供的基于机器学习模型的控制方法,例如,图2至图6任一所示的基于机器学习模型的控制方法。
另一种可能的实现方式中,存储器1402也可以和处理器1401集成在一起。
通信接口1404,用于装置与其他设备通过通信网络连接,所述通信网络可以是以太网,无线接入网(radio access network,RAN),无线局域网(wireless local areanetworks,WLAN)等。通信接口1404可以包括用于接收数据的接收单元,以及用于发送数据的发送单元。
总线1403,可以是工业标准体系结构(industry standard architecture,ISA)总线、外部设备互连(peripheral component interconnect,PCI)总线或扩展工业标准体系结构(extended industry standard architecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图14中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
需要指出的是,图14中示出的结构并不构成对计算机设备的限定,除图14所示部件之外,计算机设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
上述主要从方法的角度对本申请实施例提供的方案进行了介绍。为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对机器学习模型管理装置(如机器学习模型管理中心或联邦学习服务端)进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在一些实施例中,所公开的方法可以实施为以机器可读格式被编码在计算机可读存储介质上的或者被编码在其它非瞬时性介质或者制品上的计算机程序指令。
应该理解,这里描述的布置仅仅是用于示例的目的。因而,本领域技术人员将理解,其它布置和其它元素(例如,机器、接口、功能、顺序、和功能组等等)能够被取而代之地使用,并且一些元素可以根据所期望的结果而一并省略。
另外,所描述的元素中的许多是可以被实现为离散的或者分布式的组件的、或者以任何适当的组合和位置来结合其它组件实施的功能实体。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机执行指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(digitalsubscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (26)

1.一种基于机器学习模型的控制方法,其特征在于,包括:
获取控制系统在运行时的状态数据;
将所述状态数据输入到预设的机器学习模型中,通过所述机器学习模型输出所述控制系统的性能指标的预测值以及所述预测值对应的预测区间,其中,所述预测区间用于指示所述预测值对应的范围;
当所述预测区间符合预设的条件时,根据所述预测值确定控制参数,所述控制参数用于所述控制系统对被控设备进行控制。
2.根据权利要求1所述的方法,其特征在于,所述当所述预测区间符合预设的条件时,根据所述预测值确定控制参数,包括:
当所述机器学习模型输出多个预测区间时,从所述多个预测区间中确定符合所述条件的预测区间;
根据符合所述条件的预测区间对应的预测值确定所述控制参数。
3.根据权利要求2所述的方法,其特征在于,所述预设的条件包括:预测区间的区间大小大于预设的区间门限;
所述从多个预测区间中确定符合所述条件的预测区间,包括:
获取每个所述预测区间的区间大小;
从每个所述预测区间的区间大小中确定区间大小小于所述区间门限的预测区间,其中,所述区间大小小于所述区间门限的预测区间符合所述条件。
4.根据权利要求2所述的方法,其特征在于,所述预设的条件包括:预测区间的上端点值小于预设的第一阈值,或者,预测区间的下端点值大于预设的第二阈值;
所述从多个预测区间中确定符合所述条件的预测区间,包括:
获取每个所述预测区间的上端点值;
从每个所述预测区间的上端点值中确定上端点值小于所述第一阈值的预测区间,其中,所述上端点值小于所述第一阈值的预测区间符合所述条件;
或者,
获取每个所述预测区间的下端点值;
从每个所述预测区间的下端点值中确定下端点值大于所述第二阈值的预测区间,其中,所述下端点值大于所述第二阈值的预测区间符合所述条件。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述方法还包括:
使用所述控制系统的历史的状态数据作为训练数据对初始机器学习模型进行训练,以得到所述预设的机器学习模型。
6.根据权利要求5所述的方法,其特征在于,所述使用所述控制系统的历史的状态数据作为训练数据对初始机器学习模型进行训练,以得到所述预设的机器学习模型,包括:
当待训练的初始机器学习模型是多个时,使用与各初始机器学习模型对应的训练数据对各所述初始机器学习模型分别进行训练,以得到训练完成后的各初始机器学习模型。
7.根据权利要求6所述的方法,其特征在于,所述得到训练完成后的各初始机器学习模型之后,所述方法还包括:
获取各所述初始机器学习模型输出的预测区间的上端点值和下端点值;
根据各所述初始机器学习模型输出的预测区间的上端点值获取所述预设的机器学习模型输出的预测区间的上端点值;
根据各所述初始机器学习模型输出的预测区间的下端点值获取所述预设的机器学习模型输出的预测区间的下端点值。
8.根据权利要求7所述的方法,其特征在于,所述根据各所述初始机器学习模型输出的预测区间的上端点值获取所述预设的机器学习模型输出的预测区间的上端点值,包括:
根据各所述初始机器学习模型输出的预测区间的上端点值获取上端点平均值;
根据各所述初始机器学习模型输出的预测区间的上端点值与所述上端点平均值获取上端点均方误差;
根据所述上端点平均值与所述上端点均方误差获取所述预设的机器学习模型输出的预测区间的上端点值。
9.根据权利要求7或8所述的方法,其特征在于,所述根据各所述初始机器学习模型输出的预测区间的下端点值获取所述预设的机器学习模型对应的预测区间的下端点值,包括:
根据各所述初始机器学习模型输出的预测区间的下端点值获取下端点平均值;
根据各所述初始机器学习模型输出的预测区间的下端点值与所述下端点平均值获取下端点均方误差;
根据所述下端点平均值与所述下端点均方误差获取所述预设的机器学习模型输出的预测区间的下端点值。
10.根据权利要求5至9中任一项所述的方法,其特征在于,所述使用所述控制系统的历史的状态数据对初始机器学习模型进行训练,包括:
当所述训练数据为多个时,将多个所述训练数据输入所述初始机器学习模型的输入层,通过所述初始机器学习模型输出每个所述训练数据对应的预测区间,其中,每个所述预测区间包括:上端点值和下端点值;
根据每个所述预测区间的上端点值和下端点值获取每个所述预测区间对应的预测值;
根据每个所述预测区间的上端点值和下端点值、每个所述预测区间对应的预测值和预设的每个所述预测区间对应的真实值确定损失函数值;
当所述损失函数值满足预设的训练结束条件时,停止对所述初始机器学习模型的训练。
11.根据权利要求10所述的方法,其特征在于,所述根据每个所述预测区间的上端点值和下端点值、每个所述预测区间对应的预测值和预设的每个所述预测区间对应的真实值确定损失函数值,包括:
根据每个所述预测区间对应的预测值和预设的每个所述预测区间对应的真实值获取均方误差;
根据每个所述预测区间的上端点值和下端点值获取平均区间宽度;
根据预设的每个所述预测区间对应的真实值,以及每个所述预测区间的上端点值和下端点值获取每个所述预测区间对应的区间覆盖指示值,所述区间覆盖指示值用于指示每个所述预测区间对应的真实值是否落入相应的预测区间中;
根据每个所述预测区间对应的区间覆盖指示值获取区间覆盖率;
根据所述均方误差和所述平均区间宽度获取第一损失子函数;
根据预设的置信水平和所述区间覆盖率获取第二损失子函数;
根据所述第一损失子函数和所述第二损失子函数获取所述损失函数值。
12.一种基于机器学习模型的控制装置,其特征在于,包括接收模块和处理模块,
所述接收模块,用于获取控制系统在运行时的状态数据;
所述处理模块,用于将所述状态数据输入到预设的机器学习模型中,通过所述机器学习模型输出所述控制系统的性能指标的预测值以及所述预测值对应的预测区间,其中,所述预测区间用于指示所述预测值对应的范围;
所述处理模块,还用于当所述预测区间符合预设的条件时,根据所述预测值确定控制参数,所述控制参数用于所述控制系统对被控设备进行控制。
13.根据权利要求12所述的装置,其特征在于,所述处理模块,进一步用于:当所述机器学习模型输出多个预测区间时,从所述多个预测区间中确定符合所述条件的预测区间;根据符合所述条件的预测区间对应的预测值确定所述控制参数。
14.根据权利要求13所述的装置,其特征在于,所述预设的条件包括:预测区间的区间大小大于预设的区间门限;
所述处理模块,进一步用于:获取每个所述预测区间的区间大小;从每个所述预测区间的区间大小中确定区间大小小于所述区间门限的预测区间,其中,所述区间大小小于所述区间门限的预测区间符合所述条件。
15.根据权利要求13所述的装置,其特征在于,所述预设的条件包括:预测区间的上端点值小于预设的第一阈值,或者,预测区间的下端点值大于预设的第二阈值;
所述处理模块,进一步用于:获取每个所述预测区间的上端点值;从每个所述预测区间的上端点值中确定上端点值小于所述第一阈值的预测区间,其中,所述上端点值小于所述第一阈值的预测区间符合所述条件;
或者,
所述处理模块,进一步用于:获取每个所述预测区间的下端点值;从每个所述预测区间的下端点值中确定下端点值大于所述第二阈值的预测区间,其中,所述下端点值大于所述第二阈值的预测区间符合所述条件。
16.根据权利要求12至15任一项所述的装置,其特征在于,所述处理模块,进一步用于:使用所述控制系统的历史的状态数据作为训练数据对初始机器学习模型进行训练,以得到所述预设的机器学习模型。
17.根据权利要求16所述的装置,其特征在于,所述处理模块,进一步用于:当待训练的初始机器学习模型是多个时,使用与各初始机器学习模型对应的训练数据对各所述初始机器学习模型分别进行训练,以得到训练完成后的各初始机器学习模型。
18.根据权利要求17所述的装置,其特征在于,所述处理模块,进一步用于:所述得到训练完成后的各初始机器学习模型之后,获取各所述初始机器学习模型输出的预测区间的上端点值和下端点值;根据各所述初始机器学习模型输出的预测区间的上端点值获取所述预设的机器学习模型输出的预测区间的上端点值;根据各所述初始机器学习模型输出的预测区间的下端点值获取所述预设的机器学习模型输出的预测区间的下端点值。
19.根据权利要求18所述的装置,其特征在于,所述处理模块,进一步用于:根据各所述初始机器学习模型输出的预测区间的上端点值获取上端点平均值;根据各所述初始机器学习模型输出的预测区间的上端点值与所述上端点平均值获取上端点均方误差;根据所述上端点平均值与所述上端点均方误差获取所述预设的机器学习模型输出的预测区间的上端点值。
20.根据权利要求18或19所述的装置,其特征在于,所述处理模块,进一步用于:根据各所述初始机器学习模型输出的预测区间的下端点值获取下端点平均值;根据各所述初始机器学习模型输出的预测区间的下端点值与所述下端点平均值获取下端点均方误差;根据所述下端点平均值与所述下端点均方误差获取所述预设的机器学习模型输出的预测区间的下端点值。
21.根据权利要求16至20中任一项所述的装置,其特征在于,所述处理模块,进一步用于:当所述训练数据为多个时,将多个所述训练数据输入所述初始机器学习模型的输入层,通过所述初始机器学习模型输出每个所述训练数据对应的预测区间,其中,每个所述预测区间包括:上端点值和下端点值;根据每个所述预测区间的上端点值和下端点值获取每个所述预测区间对应的预测值;根据每个所述预测区间的上端点值和下端点值、每个所述预测区间对应的预测值和预设的每个所述预测区间对应的真实值确定损失函数值;当所述损失函数值满足预设的训练结束条件时,停止对所述初始机器学习模型的训练。
22.根据权利要求21所述的装置,其特征在于,所述处理模块,进一步用于:根据每个所述预测区间对应的预测值和预设的每个所述预测区间对应的真实值获取均方误差;根据每个所述预测区间的上端点值和下端点值获取平均区间宽度;根据预设的每个所述预测区间对应的真实值,以及每个所述预测区间的上端点值和下端点值获取每个所述预测区间对应的区间覆盖指示值,所述区间覆盖指示值用于指示每个所述预测区间对应的真实值是否落入相应的预测区间中;根据每个所述预测区间对应的区间覆盖指示值获取区间覆盖率;根据所述均方误差和所述平均区间宽度获取第一损失子函数;根据预设的置信水平和所述区间覆盖率获取第二损失子函数;根据所述第一损失子函数和所述第二损失子函数获取所述损失函数值。
23.一种通信装置,其特征在于,包括:
存储器,存储有可执行的程序指令;和,
处理器,所述处理器用于与所述存储器耦合,读取并执行所述存储器中的指令,以使所述通信装置实现如权利要求1-11任一所述的方法。
24.根据权利要求23所述的装置,其特征在于,所述装置为终端设备、终端设备中的芯片、网络设备、或者网络设备中的芯片。
25.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1-11任一所述的方法。
26.一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如权利要求1-11中任意一项所述的方法。
CN202110523436.9A 2021-05-13 2021-05-13 一种基于机器学习模型的控制方法和装置 Pending CN115345212A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202110523436.9A CN115345212A (zh) 2021-05-13 2021-05-13 一种基于机器学习模型的控制方法和装置
PCT/CN2021/127235 WO2022237086A1 (zh) 2021-05-13 2021-10-29 一种基于机器学习模型的控制方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110523436.9A CN115345212A (zh) 2021-05-13 2021-05-13 一种基于机器学习模型的控制方法和装置

Publications (1)

Publication Number Publication Date
CN115345212A true CN115345212A (zh) 2022-11-15

Family

ID=83977953

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110523436.9A Pending CN115345212A (zh) 2021-05-13 2021-05-13 一种基于机器学习模型的控制方法和装置

Country Status (2)

Country Link
CN (1) CN115345212A (zh)
WO (1) WO2022237086A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117420807A (zh) * 2023-12-14 2024-01-19 深圳市德镒盟电子有限公司 一种智能控制去粘层厚度的方法、系统及生产设备

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116669045B (zh) * 2023-06-08 2024-04-12 北京杰睿中恒科技有限公司 一种增强通信能力的双模通信系统及方法
CN116520758B (zh) * 2023-07-03 2023-09-01 沈阳宝隆飞机零部件有限公司 一种机加工设备远程控制方法及系统
CN116557384B (zh) * 2023-07-07 2023-09-29 江苏洲帆机电设备有限公司 液压控制系统自动压力补偿方法
CN116994999B (zh) * 2023-09-26 2023-12-12 泓浒(苏州)半导体科技有限公司 一种超洁净环境的机械臂吸力调节方法及系统
CN117573420B (zh) * 2024-01-16 2024-06-04 武汉麓谷科技有限公司 一种zns固态硬盘掉电数据保存方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7990982B2 (en) * 2008-12-15 2011-08-02 At&T Intellectual Property I, L.P. Methods and apparatus to bound network traffic estimation error for multistage measurement sampling and aggregation
US10797581B1 (en) * 2019-03-25 2020-10-06 Semiconductor Components Industries, Llc Power supply system for controlling a ZVS parameter to optimize efficiency using artificial intelligence

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117420807A (zh) * 2023-12-14 2024-01-19 深圳市德镒盟电子有限公司 一种智能控制去粘层厚度的方法、系统及生产设备
CN117420807B (zh) * 2023-12-14 2024-03-12 深圳市德镒盟电子有限公司 一种智能控制去粘层厚度的方法、系统及生产设备

Also Published As

Publication number Publication date
WO2022237086A1 (zh) 2022-11-17

Similar Documents

Publication Publication Date Title
CN115345212A (zh) 一种基于机器学习模型的控制方法和装置
CN113242568B (zh) 一种不确定网络环境中的任务卸载和资源分配方法
CN111105104A (zh) 一种基于相似日和rbf神经网络的短期电力负荷预测方法
CN111178378B (zh) 一种设备的故障预测方法、装置、电子设备及存储介质
Rjoub et al. Trust-driven reinforcement selection strategy for federated learning on IoT devices
CN111984381A (zh) 一种基于历史数据预测的Kubernetes资源调度优化方法
US11652709B2 (en) Managing computation load in a fog network
CN113039506A (zh) 基于因果学习的数据中心基础结构优化方法
CN110543500A (zh) 一种基于大数据的输变电设备健康评估平台
CN114499979A (zh) 一种基于联邦学习的sdn网络异常流量协同检测方法
CN116562514A (zh) 基于神经网络的企业生产状况即时分析方法及系统
CN114326987B (zh) 制冷系统控制及模型训练方法、装置、设备及存储介质
CN115113998A (zh) 一种数字孪生资源分配方法及架构
CN111027591A (zh) 一种面向大规模集群系统的节点故障预测方法
Ponmalar et al. Machine Learning Based Network Traffic Predictive Analysis
CN110458690A (zh) 一种信用评分模型的建立方法及装置
CN113825165B (zh) 基于时间图网络的5g切片网络拥塞预警方法及装置
CN113541986B (zh) 5g切片的故障预测方法、装置及计算设备
CN107659982B (zh) 一种无线网络接入点的分类方法及装置
CN116896591A (zh) 网络数据分析模型调度方法、装置和计算机设备
CN115766241A (zh) 基于dqn算法的分布式入侵检测系统任务调度卸载方法
CN115730248A (zh) 一种机器账号检测方法、系统、设备及存储介质
CN116109058A (zh) 一种基于深度强化学习的变电站巡视管理方法和装置
CN114449536A (zh) 一种基于深度强化学习的5g超密集网络多用户接入选择方法
CN109040155A (zh) 资产识别方法和计算机设备

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