本文来自于第八届中国机器人峰会上张东晓院士题为《科学机器学习中的知识嵌入与知识发现》的报告,通过录音整理而成。
▍1、数据驱动模型 1.1 人工智能的发展
“人工智能”自1956年被提出后,其发展过程可以分为三个阶段(图1)。第一代人工智能主要是知识驱动,需要定义明确且完备的规则。这虽然符合人类理解的逻辑,但是无法应对规则之外的复杂状况(如日常对话)。第二代人工智能主要是数据驱动,需要大数据、大模型、大算力。例如AlphaGo、Chat GPT,它们依赖大量高质量的训练数据进行自行学习,对于数据的要求高,且容易被攻击或误导且决策过程不清晰。对于第三代人工智能的发展,笔者认为应该是知识与数据的双驱动模型,某种意义上是第一代和第二代的结合。
图1 人工智能的发展 1.2 模型驱动方法 模型驱动方法(图2)的本质是在给定“输入”的条件下,通过施加一定“条件(或算法)”,得到最终的“输出”。这些算法可以是确定性的,也可以是随机的,而问题的关键是如何获得模型(方程或公式),即输入和输出之间的映射关系或者模式,进而构造求解方程的复杂算法,同时还需要观测值、反问题建模、数据同化等模型参数。
图2 模型驱动方法 1.3 数据驱动方法 数据驱动意味着在数据和模型的天平上侧重于数据,例如大数据分析、数据科学、机器学习等。数据驱动方法(图3)的本质是在没有对应模式的情况下,通过数据进行映射的学习,建立输入和输出之间的映射关系,现在的人工智能大多都是依靠数据驱动。
图3 数据驱动方法 目前,常用的机器学习模型包括人工神经网络(ANN)、支持向量机(SVM)、卷积神经网络(CNN)、循环神经网络(RNN)等,通过利用大量历史数据,寻找并确认多元输入变量与目标变量之间复杂的映射关系,构造模型并基于该模型对未来的目标变量进行预测。 以人工神经网络为例,依靠人工神经网络预测模型能够对未来光伏发电值进行预测(图4)。结合历史发电量和历史天气状况(地表光照辐射量、温度、湿度等),通过大数据、人工智能的机器学习办法建立一种映射关系,基于此映射关系和天气预报数据,预测未来光伏发电值。
图4 基于人工神经网络预测未来光伏发电值 此外,笔者基于两个独立的光伏发电站获取的数据进行试验,将17个与光伏发电相关的天气变量(地表光照辐射量、温度、湿度、云层量、大气压强等)作为输入的变量,采用最大最小归一化(min-max normalization)方法,将数据限制在01之间,根据730天的训练数据集与91天的测试数据集的天气数据和对应光伏发电量数据进行交叉验证设置,最终得到预测模型并实现光伏发电预测,预测的准确率高达97%。(图5)
图5 基于不同预测模型的光伏发电预测结果举例(预测时间长度:7天) 1.4 研究背景与意义——数据驱动(连接主义AI)的局限性 1.4.1 现实场景数据极度稀缺 在现实应用场景中建立深度学习网络,待训练参数量往往上万甚至上百万。以Chat GPT3为例,它有96层的神经网络,12288个隐层维度,1750亿个参数,如此大的模型就需要大算力进行工作。在许多工业场景中,数据不仅有限,而且昂贵,以农业领域为例,对于地下资源勘探与开发重要的侧井曲线,打一口井进行测量需要好几千万元;做一组吸附解析的实验要花很长的时间,很难获得足够的数据基于数据驱动方法对此类问题建模。
1.4.2均方误差等指标的局限性
数据驱动模型中,均方误差(Mean Squared Error,MSE)等指标带来的局限性同样不容忽视,MSE对误差的物理过程是没有区分的,比如一个系统无论是熵增还是熵减,对于MSE来讲都是一样的,但对于一个物理系统来讲是不同的。基于数据平均意义上的指标往往会忽略物理过程,例如对于污染扩散的预测,一个区域的污染浓度增加,另一区域的污染浓度减少,平均的污染浓度可以不变,但事实并非如此。 1.4.3 易被攻击与误导 许多数据驱动的模型是不具备常识、缺少知识的。例如在对抗样本的问题中,图片本来是一个熊猫,加上一点轻微的噪音以后,机器可能会认为它是一个长臂猿,但这种识别错误不会发生在人的身上(图6)。
图6 数据驱动模型的局限性 早期的人工智能模型都是知识驱动的,例如DENDRAL系统对于有机化学结构的分析、MYCIN系统对于血液传染病的诊断、Deep Blue战胜国际象棋世界冠军,但它们都是按照规则研制而成,只能解决规则范围内的问题,难以处理复杂的现实问题。这也是基于数据驱动的人工智能模型被广泛推广的原因之一。 如今,数据驱动方法尚且存在许多的不足,仅以能源行业为例,行业面临着对模型的鲁棒性和解释性要求高、数据采集费时且成本高昂等问题,只有构建知识与数据的双驱动模型——既有人工智能技术,也有相关领域知识,还有观测数据,相互的融合才能实现一个智慧能源系统(图7),提升模型精度和鲁棒性,降低对数据的需求。而智慧能源系统作为知识与数据的双驱动模型,一方面,需要通过理论指导的数据驱动模型(知识嵌入),从而构建具有物理常识的AI模型;另一方面,利用人工智能进行数据驱动的模型挖掘(知识发现),从观测数据中提炼物理知识。当知识嵌入和知识发现可以形成一个闭环,实现知识和数据的融合,能够很好地解决仿真模拟,反问题,可解释性等问题。
图7 智慧能源系统 ▍2、理论指导的数据驱动模型(知识嵌入) 理论指导的数据驱动模型是指在建模全流程中进行知识嵌入,构建具有物理常识的AI模型。图8所示为机器学习建模全流程的知识嵌入方法。一方面借助机器学习的强拟合能力,描述变量间高维复杂映射关系,另一方面利用能源领域内的先验知识,保证预测结果符合物理机理,构建物理上合理、数学上准确、计算上稳定高效的模型。因此,知识嵌入的核心问题在于四个方面,一是复杂形式控制方程的嵌入方法;二是控制方程以外的通用知识的嵌入方法;三是不规则物理场的知识嵌入方法;四是损失函数中正则项权重的自动调整策略。 以智慧能源系统为例,在建模过程的多个环节都可以进行知识嵌入,在数据预处理环节,可以嵌入物理约束和人类的领域知识和先验经验;在模型结构设计环节,可以基于领域知识调整模型的网络结构或者拓扑结构;在模型效果评估环节,可以构建特殊设计的损失函数。
图8 机器学习建模全流程的知识嵌入方法示意图 2.1 在数据预处理环节嵌入领域知识 在电网负荷预测模型(图9)的研究中,电力系统基于机器学习模型中的集合神经网络(ENN)和长短期记忆神经网络(LSTM),在数据预处理环节引入电力负荷比值分解的方法来嵌入知识,把电力负荷数据分解成一个大的趋势和局部扰动,大的趋势反映了预测区域的内在模式,比如能源结构、产业结构、人口密度等,是根据历史数据和专家经验来确定的。局部扰动则是系统受到天气等外驱力影响下所产生的变化,通过数据驱动模型来预测。最终,将大的趋势和小的扰动结合。
图9 电网负荷预测模型 使用上述方法,基于北京12个区历史1362天小时级别的真实电力负荷数据进行试验验证,预测北京市丰台区电力负荷(图10),其中红色为预测值,黑色为真实值,灰色为置信区间,即使没有利用预测区域的数据,仅使用周边区域的数据进行训练,模型也能够非常准确地进行电力负荷预测。
图10 北京市丰台区电力负荷预测结果 2.2 在模型效果评估阶段嵌入领域知识 2.2.1 将概率分布信息作为约束嵌入AI模型 与光伏类似,风力发电也具有强烈的随机性和波动性,风功率的准确预测有助于提高电网运行的稳定性,能够有效地帮助电网调度部门做好各类电源的调度计划。对此,笔者及其团队成员研发了融合领域知识的风功率预测模型(图11),根据风电区域的风向、风机转速、桨距角和实际风功率等数据建立精准风功率预测模型,并嵌入风功率曲线这一物理知识以提高预测准确度。由于实际工况复杂,风功率曲线并非一个一对一的映射,而是需要用描述风速和发电功率之间关系的概率分布函数来表征。从历史数据得到先验的风功率曲线,然后通过改造损失函数,将其嵌入到模型的训练过程中,最终结合天气预报与气象观测站,形成一套软硬结合的物理与数据双驱动的风力发电功率预测产品。
图11 嵌入概率分布信息的风力发电功率预测模型 通过这种方法建立的人工智能模型不仅具有数据驱动的优势,还能保证输出结果符合先验的概率分布。将基于气象数据和风功率曲线的风功率预测结果与真实值进行对比(图12),预测准确率高于90%。
图12 数据对比图 2.2.2 将控制方程作为约束嵌入AI模型 在模型效果评估阶段嵌入领域知识的方法,主要是基于改进损失函数的方法将控制方程作为约束嵌入到人工智能的模型中,这对于大数据量的求解非常有帮助,并且能减小预测的误差。
基于理论指导神经网路(Theory-guided Neural Network,TgNN)的替代模型(图13)具有理论指导的深度学习模型框架,将物理规律、工程控制、专家经验等先验信息融合到深度学习模型的训练中,实现更高的预测准确性、更好的可解释性、更强的鲁棒性。在理论指导下,TgNN替代模型可以在较少的训练数据的情况下进行构建,减小对数据量的依赖,例如,用基于TgNN/物理信息神经网络(Physics-informed Nerual Network,PINN)替代模型进行不同渗透率场实现的解的预测(图14),训练过程中仅使用30个现实提供的训练数据就达到了足够的精度。
图13 基于TgNN的替代模型
图14 TgNN/PINN替代模型准确性评估——预测不同渗透率场实现的解 此外,将TgNN替代模型应用于工程问题中的不确定性量化(图15),能够大大提升不确定性量化任务的效率。以蒙特卡罗方法(MC)作为参考值,使用KL展开生成10000个实现,使用MODFLOW求解,所需时间约为1.74h;使用TgNN替代模型预测求解,因为神经网络的预测速度很快,因此只需要大约9min,TgNN替代模型显著提高了不确定性量化的效率。
图15 基于TgNN/PINN替代模型的不确定性量化 面对复杂问题,例如两相流(油—水、油—气)问题——同时预测压力和饱和度(图16、17),在两个方程组的情况下,利用控制方程也能进行高效预测。
图16 两相流(油—水、油—气)问题
图17 两相流(油—水、油—气)问题预测结果 2.3 在模型结构设计和效果评估阶段嵌入领域知识 利用软约束嵌入控制方程虽然易于实现但只能产生平均意义上符合物理约束的预测结果,相比之下,硬约束能通过映射的方式(图18),利用投影矩阵,将模型输出值映射到严格符合物理机理的值域,保证局部严格满足物理约束,具有更高的收敛速度和更低的数据需求。
图18 利用硬约束嵌入控制方程求解地下渗流场的硬约束映射
图19 利用硬约束嵌入控制方程求解地下渗流场投影矩阵构建
图20 利用硬约束嵌入控制方程求解地下渗流场的效果评估 在实际嵌入知识的过程中存在大量难点,尤其是嵌入复杂方程,如具有分式结构或者复合函数的方程,难以直接利用神经网络的自动微分机制求梯度,因此也难以直接嵌入到人工智能模型中,因此,笔者在研究的过程中开发了自动化知识嵌入框架及工具包(图21、22)。
图21 自动化知识嵌入框架及工具包(1)
图22 自动化知识嵌入框架及工具包(2) ▍3、数据驱动的模型挖掘(知识发现) 知识发现是指从观测数据中提炼物理知识,借助人工智能自动探索物理原理,推进人类认知前沿,同时迭代利用发现的知识,即结合知识嵌入,形成知识和数据的闭环系统。其核心问题在于五个方面:一是控制方程的灵活表示方法以及优化算法;二是复杂结构控制方程的挖掘方法;三是复杂系数控制方程的挖掘方法;四是针对稀缺且嘈杂的数据的挖掘方法;五是从实验数据中挖掘全新的控制方程。 3.1 从行星运动三大定律的提出看控制方程的挖掘 第谷耗时38年观测火星轨迹数据,但是他没有找到规律;第谷的学生开普勒耗时17年研究数据,最后总结出行星运动三大定律;在此基础上,牛顿发现了万有引力定律。而AI技术的发展将大大加快这一进程,根据数据找出内在规律,这一过程需要发挥机器学习算法描述高维非线性映射的优势,从实验数据中直接挖掘新的知识,加深对物理本质的理解。 3.2 从人工智能的发展看控制方程的挖掘 神经网络作为传统的机器学习的研究方向,实际上是一种黑盒模式(图23),其可解释性差,但随着人工智能的发展,通过模型挖掘显式表达出神经网络的内部逻辑(控制方程),能够提高可解释性。
图23 神经网络 3.3 数据驱动的偏微分方程挖掘
利用机器学习方法从数据中直接发现潜在的物理过程及其控制方程。
3.3.1 封闭候选集方法:稀疏回归 在具备数据的情况下就可以得到它的梯度和各阶导数。理论上系统中可能存在许多项,但是实际的方程是稀疏的,它只有其中的几项,其他的项的系数都是0,所以那些项是不存在的。这样问题就转化成,在一个系统中如何找到稀疏的向量,而且它的系数也能同时找出来。利用稀疏回归进行偏微分方程的挖掘(图24),能够从数据中识别出时间导数、潜在偏微分方程的项以及稀疏的系数向量。
图24 稀疏回归挖掘偏微分方程 3.3.2 半开放候选集方法:遗传算法 稀疏回归的前提是项(候选集)的存在,在项不完全存在的情况下,则需要通过遗传算法(Genetic Algorithm,GA)挖掘控制方程。遗传算法是一种最基本的进化算法,它是模拟达尔文生物进化理论的一种优化模型,最早由J.Holland教授于1975年提出。遗传算法中种群中的每个个体都是解空间上的一个可行解,通过模拟生物的进化过程,进行遗传、变异、交叉、复制从而在解空间内搜索最优解。 在KdV方程的挖掘(图25)中,遗传算法比稀疏回归更为有效,这是因为对于更大的备选集,DL-PDE中使用稀疏回归时将需要更大的稀疏性,这会增加挖掘难度。DLGA-PDE可以在非完全备选集的情况下挖掘PDE,并且待挖掘的PDE项可以通过基因组的变异和交叉产生,可以避免出现DL-PDE中遇到的备选集大小问题。
图25 基于深度学习的模型挖掘——KdV方程 3.3.3 开放候选集方法:符号数学 在一个自变量、一个因变量的情况下,定义一些运算符、运算法则,那么方程的每一项都是一个树的结构,再通过一次次变异去改变树的结构,就可以挖掘出控制方程(图26),即使是比较复杂的方程也能被挖掘,这只需要自变量和因变量。
图26 候选集复杂度及方程项表示方法 3.4 基于知识发现和符号数学实现控制方程自挖掘(生产知识) 找到最适合数据的偏微分方程的关键在于解决两个问题,一是如何通过符号数学表示任何给定的复杂开放式偏微分方程,二是如何使用机器学习算法从偏微分方程的无限可行域中挖掘正确的方程。 引入符号回归中树结构的概念,在开放空间中挖掘方程形式,每一项都可以变成一个树的结构,这个树由节点构成,父节点为运算符(包括偏微分算符),子节点为系数、变量或函数,对树结构的深度和广度都可以调整,表明树或者说方程的项的复杂程度(图27)。如此一来,任何方程都是一片森林,森林里的树代表不同的方程项,通过遗传算法、符号数学等方式能够挖掘出自由形式的方程,即使方程的形式非常的复杂。(图28)
图27 基于树结构挖掘自由形式的方程
图28 基于知识发现和符号数学实现控制方程自挖掘 3.4.1 挖掘“分式结构方程” 在分式结构方程的挖掘过程中,初始有一个自变量、因变量,在第一代迭代后可能找出了这些简单的项,但这些项是不正确的,再经过几十代的迭代,不断地交叉、变异、进化,最后挖掘出正确的方程(图29、30),即使这是一个极其复杂的方程。
图29 挖掘“分式结构方程”(1)
图30 挖掘分式结构方程(2) 3.4.2 从细观模拟数据中挖掘粘性重力流的宏观控制方程 知识发现也可以用来解决实际的问题,比如粘性重力流问题,通过控制方程的自挖掘,最终也能成功验证其数学上的合理性、物理上的预测性。粘性重力流的短期行为尚不存在控制方程,在这种情况下,通过精细的微观数据模拟得到数据,并利用这些数据进行学习,挖掘宏观控制方程(图31、32、33、34)。 为了从数据空间中的原始仿真数据挖掘出语义空间中的可解释的物理定律(PDE),需要以下三个步骤:数据重构,基于深度神经网络(DNN)的替代模型训练;构造语义片段,计算空间导数和积分通量;语义整合,基于遗传算法挖掘出的简约偏微分方程。
图31 从细观模拟数据中挖掘粘性重力流的宏观控制方程
图32 基于深度学习的偏微分方程挖掘
图33 长期行为的控制方程
图34 短期行为的控制方程
▍4、结束语
综上所述,笔者认为,机器学习算法可以有效地解决具有复杂非线性映射关系的问题。但数据是其基础,在社会不断向着信息化、数字化、智能化方向发展的过程中,从数据大要走向大数据,光有数据已然不够,大数据技术将更具价值。其次,通过引入行业知识,可以有效提升机器学习模型的效果,可以在数据预处理、机器学习模型结构以及模型效果评估环节嵌入领域知识,提升精度和鲁棒性,同时还能在一定程度上降低数据需求。在“行业+AI”的未来,数据驱动(机器学习)与模型驱动(传统模型)要得到有机结合(图35),而核心就在于知识的嵌入和知识的发现,只有当二者形成一个闭环,才能大大提高人工智能解决实际问题的能力。
图35 数据驱动与模型驱动的融合
编辑:黄飞
评论
查看更多