CN114757432B - 基于流程日志和多任务学习的未来执行活动及时间预测方法及系统 - Google Patents

基于流程日志和多任务学习的未来执行活动及时间预测方法及系统 Download PDF

Info

Publication number
CN114757432B
CN114757432B CN202210455478.8A CN202210455478A CN114757432B CN 114757432 B CN114757432 B CN 114757432B CN 202210455478 A CN202210455478 A CN 202210455478A CN 114757432 B CN114757432 B CN 114757432B
Authority
CN
China
Prior art keywords
event
flow
time
attribute
data set
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.)
Active
Application number
CN202210455478.8A
Other languages
English (en)
Other versions
CN114757432A (zh
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.)
Zhejiang University of Media and Communications
Original Assignee
Zhejiang University of Media and Communications
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 Zhejiang University of Media and Communications filed Critical Zhejiang University of Media and Communications
Priority to CN202210455478.8A priority Critical patent/CN114757432B/zh
Publication of CN114757432A publication Critical patent/CN114757432A/zh
Application granted granted Critical
Publication of CN114757432B publication Critical patent/CN114757432B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Business, Economics & Management (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Human Resources & Organizations (AREA)
  • Game Theory and Decision Science (AREA)
  • Tourism & Hospitality (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Quality & Reliability (AREA)
  • Development Economics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种基于流程日志和多任务学习的未来执行活动及时间预测方法及系统,该方法包括:获取历史流程执行的事件日志数据集并进行预处理得到多任务训练数据集;得到多任务训练数据集中每条流程实例对应的事件编码向量X和标签向量Y;构建基于多任务学习的神经网络模型并进行训练得到流程预测模型Z;将用户给定的正在执行的业务流程实例(正在执行中的流程实例)中已执行事件的编码向量输入到预测模型Z中,从而实现该实例的未来执行活动名称、执行时间以及整个流程实例剩余执行时间的预测;该系统包括:事件日志数据集预处理模块、事件编码模块、特征提取模块、预测模型训练模块、在线预测模块。

Description

基于流程日志和多任务学习的未来执行活动及时间预测方法 及系统
技术领域
本发明属于业务流程执行性能预测领域,具体涉及一种基于流程日志和多任务学习的未来执行活动及时间预测方法及系统。
背景技术
与传统的业务流程执行监控不同,预测性业务流监控指的是通过根据过往流程执行中的事件历史记录,即日志记录,对正在运行的流程实例进行性能预测,以更好的改善业务流程的速度和质量,避免不必要的损失。在其他过程挖掘任务中,往往更加关注分析这些日志中所隐含的信息模型,比如过程模型发现(从日志数据中挖掘出过程模型)、过程模型增强(通过日志数据发现当前过程模型中的缺陷并对其改进),社交网络/组织挖掘(从日志数据中挖掘出社交网络或组织角色关系)等,而预测性业务流程监控任务则更关注于对正在执行实例的性能进行预测。一般来说,预测性业务流程监控包含一系列的预测任务,主要包括:预测未来执行的活动,即根据前面发生的事件预测下一个可能出现或者推荐选择的活动、预测下一个活动的执行时间以及预测当前流程实例的剩余执行时间。
为了提高业务流程性能预测任务的效率,提出在流程历史执行日志的基础上,结合多任务学习和深度学习技术构建并训练预测模型,该模型具有以下优点:①多任务学习模型一次可以解决多个任务即该模型在一次训练中可以同时学习多个特征相互有联系的任务;②多任务学习时,数据集不会过于稀疏,模型性能更强,可以缓解模型的过拟合,提高模型泛化能力;③不同任务有不同的噪声,将不同任务放一起学习可以抵消一部分噪声,提高学习的效率,达到增强数据的效果;④不同任务可以互助,一个任务的参数可能在其他任务的辅助下训练的更好,等等。综上所述,多任务学习模型可以很好地提升业务流程实例执行性能预测的效率。
发明内容
本发明提供了一种基于流程日志和多任务学习的未来执行活动及时间预测方法,主要在于参考流程日志构建多任务数据集并在同一个神经网络模型中训练,通过不同任务的噪声数据、参数之间相互影响,从而提高正在执行的流程实例执行时性能预测的准确率。
一种基于流程日志和多任务学习的未来执行活动及时间预测方法,包括以下步骤:
步骤(1):获取业务流程管理系统中记录的历史流程执行的事件日志数据集并进行初处理;
步骤(2):根据步骤(1)得到的初处理后的事件日志数据集,构建多任务训练数据集;
步骤(3):获取多任务训练数据集中每条流程实例对应的事件编码向量X和标签向量Y;
步骤(4):将流程轨迹数据集L中每条流程实例对应的流程轨迹,根据步骤(3)进行编码得到的对应的特征向量X,然后将特征向量X作为Transformer神经网络的输入,通过比较最终Transformer神经网络的实际输出和已知的标签向量Y之间的损失,不断优化损失函数从而确定预测模型Z;最后将正在执行的流程实例即流程轨迹σ′=<e1,e2,…,el>中已执行的事件序列e1,e2,…,el以及每个事件对应的属性经过预处理后输入步骤(4)中得到的预测模型Z,得到流程轨迹σ′的预测值
Figure BDA0003618571110000021
本发明将训练样本中每条流程实例的模型输出结果和已知的标签属性进行比较,对预测下一个活动的任务使用多分类预测损失函数,而其他两个任务即预测下一个活动的执行时间和整个流程实例的剩余执行时间则使用回归损失函数,通过加权得到一个融合多任务的损失函数,然后调整损失函数之间的权重比例并不断进行模型训练,最后得到一个准确性较高的预测模型。
步骤(1)中,所述的事件日志数据集中的每一行对应一次业务流程执行中涉及的一个活动发生的详细事件记录;
所述的详细事件记录包括该事件e所在的流程实例ID属性c、事件ID属性i、事件e发生的开始时间戳属性tstart和结束时间戳属性tend、事件e对应流程中的活动名称属性a、事件e发生所需的资源属性r;
所述的初处理包括:
(1.1)将事件日志数据集中事件e发生所需的资源属性r移除;
(1.2)将事件日志数据集中的流程实例ID属性相同的所有事件根据其对应的时间戳属性进行排列,即一次流程执行产生的流程实例σ,得到初处理后的事件日志数据集;
步骤(2)中,根据步骤(1)得到的初处理后的事件日志数据集,构建多任务训练数据集,具体包括:
(2.1)针对步骤(1)得到的每条流程实例σ,记录它在每个事件完成后流程执行的状态,使用前缀轨迹表示;
步骤(2.1)中,所述的每个事件完成后的前缀轨迹包括:
第一个事件e1完成后的前缀轨迹为<e1>,第二个事件e2完成后的前缀轨迹为<e1,e2>,......,最后一个事件完成后的前缀轨迹<e1,e2,…,e|σ|>,其中,|σ|表示这条流程实例对应的流程轨迹的长度,即流程实例中事件的个数;
(2.2)在步骤(2.1)的基础上,将初处理后的事件日志数据集中的每个事件(即事件日志数据集的每一行)都增加一个新的属性列pre_trace,记录每个事件执行后流程实例对应的前缀轨迹(用事件ID代替事件);
所述的属性列pre_trace包括:
<e1>用事件ID代替记作<1>,<e1,e2>简记作<1,2>,......,<e1,e2,…,e|σ|>简记作<1,2,…,|σ|>。
同时,将初处理后的事件日志数据集中的每个事件(即事件日志数据集的每一行)还增加一个新的属性列next_event,记录每个事件的下一个执行的事件(用事件ID代替事件),是未来执行活动预测任务中的预测目标,因此记作标签属性,所述的属性列next_event包括:
流程实例中第一个事件e1的该属性值为e2,用事件ID代替记作2,第二个事件e2的该属性值为e3,用事件ID代替记作3......,第(|σ|-1)个事件的该属性值为e|σ|
(2.3)根据初处理后的事件日志数据集中流程实例中每个事件发生的时间戳属性,将这一属性值与流程实例中前两个事件的开始时间戳相减后以小时为单位除以24小时并向下取整,得到的值用一个新的属性recent_time记录;
同时将流程实例中当前事件与前一个事件的发生时间戳相减后以小时为单位除以24小时并向下取整,得到的值用一个新的属性latest_time记录;
将流程实例中当前事件开始时间戳和第一个事件开始时间戳相减后除以24小时并向下取整,得到的值用一个新的属性time_pass记录;
将流程实例中后一个事件与当前发生的事件的发生的时间戳相减后除以24小时向下取整,得到的值用一个新的属性next_time记录;
将整个流程实例的最后一个事件与当前每个事件的开始时间戳相减后除以24小时并向下取整,得到的值记为remain_time属性;
其中,next_time属性表示当前流程执行状态下未来执行活动的时间;remain_time属性表示当前执行状态下整个流程未来执行时间,因此这两个属性也记作标签属性。
(2.4)将步骤(2.3)处理后的数据集进行属性抽取,得到三个任务融合的流程轨迹数据集L={σ12,…,σs}(其中,s=|L|代表流程轨迹数据集L的大小,由流程轨迹数据集L中包含的所有流程实例总个数决定,也表示流程轨迹数据集L中包含的所有流程轨迹总数;σ1表示流程轨迹数据集L中第一个发生的流程实例,σ2表示流程轨迹数据集L中第二个发生的流程实例,......,σs表示流程轨迹数据集L中最后一个发生的流程实例);在流程轨迹数据集L中,每条流程实例的轨迹是由一系列事件记录组成,记作σ=<e1,e2,…,e|σ|>(其中,|σ|代表该流程实例中包含的所有事件个数,也记作轨迹的长度;e1表示该流程实例中第一个发生的事件,e2表示该流程实例中第二个发生的事件,......,e|σ|表示该流程实例中最后一个发生的事件);在每条流程轨迹σ中,每个事件e是由一系列属性记作e={c,i,tstart,tend,a,pre_trace,recent_time,latest_time,time_pass}和每个事件e对应的标签属性{next_event,next_time,remain_time}组成,最终流程轨迹数据集L即为得到的多任务训练数据集;
步骤(3)中,获取多任务训练数据集中每条流程实例对应的事件编码向量X和标签向量Y,具体包括:
(3.1)将步骤(2)中得到的流程轨迹数据集L根据每个事件e的属性{c,i,tstart,tend,a,pre_trace,recent_time,latest_time,time_pass}值:
如果属性的值为类别型数据,使用one-hot热编码进行编码;
如果属性的值为数值型数据,则进行归一化编码;
(3.2)将事件所有属性{c,i,tstart,tend,a,pre_trace,recent_time,latest_time,time_pass}编码后的向量进行拼接得到每个事件e的编码向量
Figure BDA0003618571110000051
p为该向量的维度,x11、x12、......、x1p分别表示第一列、第二列、......、第p列分向量的值;
(3.3)将每个事件e的编码向量
Figure BDA0003618571110000052
和位置向量/>
Figure BDA0003618571110000053
进行拼接得到最终的事件编码向量/>
Figure BDA0003618571110000054
(3.4)将流程轨迹σ中所有事件编码的向量拼接后得到一个完整流程实例的编码向量
Figure BDA0003618571110000055
Figure BDA0003618571110000056
表示该流程实例中第一个事件的编码向量,/>
Figure BDA0003618571110000057
表示该流程实例中第二个事件的编码向量,......,/>
Figure BDA0003618571110000058
表示该流程实例中最后一个事件的编码向量;
同时将每个事件e的标签属性next_event的值y1、next_time的值y2和remain_time的值y3也根据上述编码规则分别进行编码并拼接得到向量
Figure BDA0003618571110000059
其中/>
Figure BDA00036185711100000510
表示y1编码得到的向量、/>
Figure BDA00036185711100000511
表示y2编码得到的向量、/>
Figure BDA00036185711100000512
表示y3编码得到的向量。
可选的,步骤(4)中,将流程轨迹数据集L中每一条流程实例对应的流程轨迹经过编码后得到的特征向量X作为Transformer神经网络模型的输入,通过损失函数计算Transformer神经网络模型得到的实际输出与标签向量Y之间的差值,然后不断地调整参数最小化两者之间的损失值,从而确定一组参数得到能够预测正在执行的流程实例的模型Z,下面将以一条流程轨迹为例进行详细说明:
(a)在神经网络的输入层,将流程轨迹σ经过编码后的特征向量作为神经网络的一次输入,即σ=<e1,e2,…,en>(n=|σ|),其中n表示流程轨迹σ中的事件个数,e1表示流程轨迹σ中的第一个事件,e2表示流程轨迹σ中的第二个事件,en表示流程轨迹σ中的最后一个事件;
(b)在神经网络的transformerBlock层,将流程轨迹σ中每个事件编码构成的向量序列
Figure BDA00036185711100000513
作为transformerBlock层的输入,得到该流程轨迹中每个事件在transformerBlock层的输出,然后将其平均池化,得到提取后的特征向量h1,h2,…,hn
(c)在神经网络的多任务层,将transformerBlock层得到的流程轨迹σ中每个事件提取的特征向量序列h1,h2,…,hn作为多任务层的输入,输出三个任务即预测下一个活动、预测下一个活动发生的时间、预测整个流程实例剩余时间分别对应的特征向量为N1,N2,…,Nn、T1,T2,…,Tn和R1,R2,…,Rn,并将这三个特征向量拼接得到S1,S2,…,Sn
(d)在神经网络的参数共享层,将流程轨迹σ中针对每个任务的事件提取特征融合向量序列S1,S2,…,Sn作为输入,通过参数共享层中每个神经单元中的参数共享机制,得到该流程轨迹中每个事件e1,e2,…,en在参数共享层的输出,即特征向量C1,C2,…,Cn
(e)在神经网络的输出层,将参数共享层得到的流程轨迹σ中所有事件提取的特征向量C1,C2,…,Cn根据不同的任务输入到输出层,即分别得到三个输出向量A1,A2,…,An、I1,I2,…,In和M1,M2,…,Mn,然后将三个向量分别融合处理后得到
Figure BDA0003618571110000061
其中分类预测型任务的输出特征向量可直接得出分类预测值/>
Figure BDA0003618571110000062
回归预测型任务的输出特征向量分别使用Sigmoid函数得到预测值/>
Figure BDA0003618571110000063
(f)将流程轨迹数据集L中每条流程轨迹作为神经网络的输入,根据已知的值Y={y1,y2,y3}和通过多任务Transformer神经网络模型输出的值
Figure BDA0003618571110000064
使用下面损失函数度量真实值和预测值之间的误差:/>
Figure BDA0003618571110000065
其中,ω1、ω2和ω3代表权重系数,m代表样本个数,y1 (i)表示第i个样本的next_event真实值,y2 (i)表示第i个样本的next_time真实值,y3 (i)表示第i个样本的remain_time真实值,
Figure BDA0003618571110000066
表示第i个样本的next_event预测值,/>
Figure BDA0003618571110000067
表示第i个样本的next_time预测值,/>
Figure BDA0003618571110000068
表示第i个样本的remain_time预测值;
不断训练优化模型从而得到一组固定的参数值,使得损失函数
Figure BDA0003618571110000069
最小化,即为训练得到的预测模型Z;
本发明所提供的基于流程日志和多任务学习的未来执行活动及时间预测系统由一组功能模块组成,它们包括:事件日志数据集预处理模块、事件编码模块、特征提取模块、预测模型训练模块、在线预测模块。
事件日志数据集预处理模块,用于对于整个事件日志数据集得到流程轨迹数据集,然后将数据集中异常的、不完整的流程轨迹移除,并根据不同的任务增加一些新的属性,得到预处理后的可用于多任务的流程轨迹数据集;
事件编码模块,用于将流程轨迹数据集所包含的所有事件的属性根据属性值类型分别进行编码,得到每个事件对应的长度相同的编码向量;
特征提取模块,用于将每个事件对应的编码向量作为神经网络的输入,使用transformerBlock层、多任务层和参数共享层进行特征提取,得到每个事件对应的特征向量;
预测模型训练模块,用于将每条流程轨迹的特征向量作为输入,通过神经网络模型计算得到每条流程轨迹在三个不同任务上的输出,然后使用多任务融合的损失函数表示该值与流程轨迹真实值之间的误差,最后使用梯度下降优化算法来训练得到神经网络中所有的参数,得到预测模型;
在线预测模块,用于将当前正在执行的流程实例中已经发生的事件序列作为预测模型的输入,得到该流程实例分别在三个任务上的预测结果。
与现有技术相比,本发明具有如下优点:
本发明提出的方法基于事件日志中隐含存在的流程实例本身所具有的某些特征相互之间的关系,首先,通过对事件日志进行预处理通过增加其他属性构建多任务训练数据集;然后,针对数据集中每个流程实例包含的各种实例属性、事件属性根据不同取值类型分别选择不同类型的编码规则进行编码,得到该流程实例所对应的流程轨迹中所有事件的编码向量;其次,将事件日志中每条流程轨迹中所有事件编码向量作为神经网络的输入,通过使用transformerBlock层和参数共享层进行特征提取,从而构建流程实例属性与不同任务之间的关系模型,即多任务学习预测模型;最后,在流程预测阶段,通过对正在执行的流程实例中已执行事件序列进行事件编码,将得到的编码向量作为预测模型的输入,通过该模型得到执行中流程实例在不同任务上的预测结果。与目前已经提出的预测性业务流程监控技术相比,采用本发明可以同时进行多种相关任务的预测,且每个预测任务的准确性会比单个任务独立预测的准确性高。因此本发明对预测性业务流程监控和优化业务流程的执行具有很重要的研究意义。
附图说明
图1为本发明基于流程日志和多任务学习的未来执行活动及时间预测方法的架构图;
图2为本发明基于多任务学习的Transformer神经网络模型示例图。
具体实施方式
一种基于流程日志和多任务学习的未来执行活动及时间预测方法,其特征在于,包括以下步骤:
步骤(1):获取业务流程管理系统中记录的历史流程执行的事件日志数据集,该事件日志数据集中的每一行对应一次业务流程执行中涉及的一个活动发生的详细事件记录,该事件记录包括该事件e所在的流程实例ID属性c、事件ID属性i、事件e发生的开始时间戳属性tstart和结束时间戳属性tend、事件e对应流程中的活动名称属性a、事件e发生所需的资源属性r;将事件日志数据集中事件e发生所需的资源属性r移除;然后将事件日志数据集中的流程实例ID属性相同的所有事件根据其对应的时间戳属性进行排列,即一次流程执行产生的流程实例σ;
步骤(2):根据步骤(1)得到的事件日志数据集,构建多任务训练数据集:针对每条流程实例σ可得到它每个事件完成后的前缀轨迹,如第一个事件e1完成后的前缀轨迹为<e1>,第二个事件e2完成后的前缀轨迹为<e1,e2>,......,最后一个事件完成后的前缀轨迹<e1,e2,…,e|σ|>(其中,|σ|表示这条流程实例对应的流程轨迹的长度,即流程实例中事件的个数)。为了进行模型训练,需要在原来基础上增加一些新的属性特征:在上述步骤(1)中得到的事件日志数据集中可增加一个新的属性列pre_trace,表示每个事件完成后的前缀轨迹,如<e1>可用事件ID代替记作<1>,<e1,e2>可简记作<1,2>,......,<e1,e2,…,e|σ|>可简记作<1,2,…,|σ|>。类似地,新增一个新的属性列next_event记录每个事件的下一个执行的事件,如流程实例中第一个事件e1的该属性值为e2(可用事件ID代替记作2),第二个事件e2的该属性值为e3(可用事件ID代替记作3)......,第(|σ|-1)个事件的该属性值为e|σ|。接着,根据流程实例中每个事件发生的时间戳属性,将这一属性值与前两个事件的开始时间戳相减后以小时为单位除以24小时并向下取整,得到的值用一个新的属性recent_time记录;同时将当前事件与前一个事件的发生时间戳相减后以小时为单位除以24小时并向下取整,得到的值用一个新的属性latest_time记录;将当前事件开始时间戳和第一个事件开始时间戳相减后除以24小时并向下取整,得到的值用一个新的属性time_pass记录;将后一个事件与当前发生的事件的发生的时间戳相减后除以24小时向下取整,得到的值用一个新的属性next_time记录;将整个流程实例的最后一个事件与当前每个事件的开始时间戳相减后除以24小时并向下取整,得到的值记为remain_time属性。最后,将上述数据集进行属性抽取,得到三个任务融合的流程轨迹数据集L={σ12,…,σs}(其中,s=|L|代表流程轨迹数据集L的大小,由流程轨迹数据集L中包含的所有流程实例总个数决定,也表示流程轨迹数据集L中包含的所有流程轨迹总数;σ1表示流程轨迹数据集L中第一个发生的流程实例,σ2表示流程轨迹数据集L中第二个发生的流程实例,......,σs表示流程轨迹数据集L中最后一个发生的流程实例);在流程轨迹数据集L中,每条流程实例的轨迹是由一系列事件记录组成,记作σ=<e1,e2,…,e|σ|>(其中,|σ|代表该流程实例中包含的所有事件个数,也记作轨迹的长度;e1表示该流程实例中第一个发生的事件,e2表示该流程实例中第二个发生的事件,......,e|σ|表示该流程实例中最后一个发生的事件);在每条流程轨迹σ中,每个事件e是由一系列属性记作e={c,i,tstart,tend,a,pre_trace,recent_time,latest_time,time_pass}和每个事件e对应的标签属性{next_event,next_time,remain_time}组成;
步骤(3):将步骤(2)中得到的流程轨迹数据集L根据每个事件e的属性{c,i,tstart,tend,a,pre_trace,recent_time,latest_time,time_pass}值:如果属性的值为类别型数据,使用one-hot热编码进行编码;如果属性的值为数值型数据,则进行归一化编码;然后将事件所有属性编码后的向量进行拼接得到每个事件e的编码向量
Figure BDA0003618571110000099
(p为该向量的维度,x11、x12、......、x1p分别表示第一列、第二列、......、第p列分向量的值),再将其和位置向量/>
Figure BDA0003618571110000091
进行拼接得到最终的事件编码向量/>
Figure BDA0003618571110000092
最后将流程轨迹中所有事件编码的向量拼接后即可得到一个完整流程实例的编码向量/>
Figure BDA0003618571110000093
Figure BDA0003618571110000094
同时将每个事件e的标签属性next_event的值y1、next_time的值y2和remain_time的值y3也根据上述编码规则分别进行编码并拼接得到向量/>
Figure BDA0003618571110000095
其中
Figure BDA0003618571110000096
表示y1编码得到的向量、/>
Figure BDA0003618571110000097
表示y2编码得到的向量、/>
Figure BDA0003618571110000098
表示y3编码得到的向量;
步骤(4):将流程轨迹数据集L中每条流程实例对应的流程轨迹,根据步骤(3)进行编码得到的对应的特征向量X,然后将特征向量X作为Transformer神经网络的输入,通过比较最终Transformer神经网络的实际输出和已知的标签向量Y之间的损失,不断优化损失函数从而确定预测模型Z;最后将正在执行的流程实例即流程轨迹σ′=<e1,e2,…,el>中已执行的事件序列e1,e2,…,el以及每个事件对应的属性经过预处理后输入步骤(4)中得到的预测模型Z,得到流程轨迹σ′的预测值
Figure BDA0003618571110000101
本发明将训练样本中每条流程实例的模型输出结果和已知的标签属性进行比较,对预测下一个活动的任务使用多分类预测损失函数,而其他两个任务即预测下一个活动的执行时间和整个流程实例的剩余执行时间则使用回归损失函数,通过加权得到一个融合多任务的损失函数,然后调整损失函数之间的权重比例并不断进行模型训练,最后得到一个准确性较高的预测模型。
可选的,步骤(4)中,将流程轨迹数据集L中每一条流程实例对应的流程轨迹经过编码后得到的特征向量X作为Transformer神经网络模型的输入,通过损失函数计算Transformer神经网络模型得到的实际输出与标签向量Y之间的差值,然后不断地调整参数最小化两者之间的损失值,从而确定一组参数得到能够预测正在执行的流程实例的模型Z,下面将以一条流程轨迹为例进行详细说明:
(a)在神经网络的输入层,将流程轨迹σ经过编码后的特征向量作为神经网络的一次输入,即σ=<e1,e2,…,en>(n=|σ|),其中n表示流程轨迹σ中的事件个数,e1表示流程轨迹σ中的第一个事件,e2表示流程轨迹σ中的第二个事件,en表示流程轨迹σ中的最后一个事件;
(b)在神经网络的transformerBlock层,将流程轨迹σ中每个事件编码构成的向量序列
Figure BDA0003618571110000102
作为transformerBlock层的输入,得到该流程轨迹中每个事件在transformerBlock层的输出,然后将其平均池化,得到提取后的特征向量h1,h2,…,hn
(c)在神经网络的多任务层,将transformerBlock层得到的流程轨迹σ中每个事件提取的特征向量序列h1,h2,…,hn作为多任务层的输入,输出三个任务即预测下一个活动、预测下一个活动发生的时间、预测整个流程实例剩余时间分别对应的特征向量为N1,N2,…,Nn、T1,T2,…,Tn和R1,R2,…,Rn,并将这三个特征向量拼接得到S1,S2,…,Sn
(d)在神经网络的参数共享层,将流程轨迹σ中针对每个任务的事件提取特征融合向量序列S1,S2,…,Sn作为输入,通过参数共享层中每个神经单元中的参数共享机制,得到该流程轨迹中每个事件e1,e2,…,en在参数共享层的输出,即特征向量C1,C2,…,Cn
(e)在神经网络的输出层,将参数共享层得到的流程轨迹σ中所有事件提取的特征向量C1,C2,…,Cn根据不同的任务输入到输出层,即分别得到三个输出向量A1,A2,…,An、I1,I2,…,In和M1,M2,…,Mn,然后将三个向量分别融合处理后得到
Figure BDA0003618571110000111
其中分类预测型任务的输出特征向量可直接得出分类预测值/>
Figure BDA0003618571110000112
回归预测型任务的输出特征向量分别使用Sigmoid函数得到预测值/>
Figure BDA0003618571110000113
(f)将流程轨迹数据集L中每条流程轨迹作为神经网络的输入,根据已知的值Y={y1,y2,y3}和通过多任务Transformer神经网络模型输出的值
Figure BDA0003618571110000114
使用下面损失函数度量真实值和预测值之间的误差:
Figure BDA0003618571110000115
其中,ω1、ω2和ω3代表权重系数,m代表样本个数,y1 (i)表示第i个样本的next_event真实值,y2 (i)表示第i个样本的next_time真实值,y3 (i)表示第i个样本的remain_time真实值,
Figure BDA0003618571110000116
表示第i个样本的next_event预测值,/>
Figure BDA0003618571110000117
表示第i个样本的next_time预测值,/>
Figure BDA0003618571110000118
表示第i个样本的remain_time预测值;
不断训练优化模型从而得到一组固定的参数值,使得损失函数
Figure BDA0003618571110000119
最小化,即为训练得到的预测模型Z;
本发明所提供的基于流程日志和多任务学习的未来执行活动及时间预测系统由一组功能模块组成,它们包括:事件日志数据集预处理模块、事件编码模块、特征提取模块、预测模型训练模块、在线预测模块。
事件日志数据集预处理模块,用于对于整个事件日志数据集得到流程轨迹数据集,然后将数据集中异常的、不完整的流程轨迹移除,并根据不同的任务增加一些新的属性,得到预处理后的可用于多任务的流程轨迹数据集;
事件编码模块,用于将流程轨迹数据集所包含的所有事件的属性根据属性值类型分别进行编码,得到每个事件对应的长度相同的编码向量;
特征提取模块,用于将每个事件对应的编码向量作为神经网络的输入,使用transformerBlock层、多任务层和参数共享层进行特征提取,得到每个事件对应的特征向量;
预测模型训练模块,用于将每条流程轨迹的特征向量作为输入,通过神经网络模型计算得到每条流程轨迹在三个不同任务上的输出,然后使用多任务融合的损失函数表示该值与流程轨迹真实值之间的误差,最后使用梯度下降优化算法来训练得到神经网络中所有的参数,得到预测模型;
在线预测模块,用于将当前正在执行的流程实例中已经发生的事件序列作为预测模型的输入,得到该流程实例分别在三个任务上的预测结果。
本发明所提供的基于流程日志和多任务学习的未来执行活动及时间预测方法的具体实施方式(如图1所示):
(1)输入流程感知信息系统中记录的事件日志数据集,该事件日志数据集中的每一行对应一次业务流程执行中涉及的一个活动发生的详细事件记录,即一个完整的事件(用e表示)信息,该事件日志数据集包括该事件e所在的流程实例ID属性c、事件ID属性i、事件e发生的开始时间戳属性tstart和结束时间戳属性tend、事件e对应流程中的活动名称属性a、事件e发生所需的资源属性r(如表1所示);然后将事件日志数据集中事件e发生所需的资源属性r移除,同时将事件日志数据集中的流程实例ID属性相同的所有事件根据其对应的时间戳属性进行排列,即一次流程执行产生的流程实例σ(如表2所示);
表1事件日志数据集
Figure BDA0003618571110000121
表2事件日志数据集(初处理)
Figure BDA0003618571110000131
表1显示了处理索赔申请流程所对应的一个事件日志的一部分,每一行代表一个事件。用事件日志数据集L表示该流程对应的事件日志,其中每一个事件,通常用元组e=(a,c,i,tstart,tend,r)表示,其中a∈A代表该事件对应流程中的活动名称属性(A是该流程中所有活动构成的集合),c代表该事件所在的流程实例ID属性,i代表该事件的事件ID属性,tstart代表该事件发生的开始时间戳属性,tend代表该事件的结束时间戳属性,r代表该事件发生所需的资源属性。将事件e发生所需的资源属性移除,然后将新得到的事件日志数据集中具有相同流程实例ID的所有事件,根据时间戳属性将其进行排序,得到该流程执行一次的实例(如表2所示)。
(2)对实例ID为1的流程实例来说,得到它每个事件完成后的前缀轨迹,如第一个事件完成后的前缀轨迹为<1>,第二个事件完成后的前缀轨迹为<1,2>,......,最后一个事件完成后的前缀轨迹<1,2,3,4,5>。在原来基础上增加一些新的属性特征pre_trace,表示每个事件完成后的前缀轨迹,如<e1>可用事件ID代替记作<1>,<e1,e2>可简记作<1,2>,......,<e1,e2,e3,e4,e5>可简记作<1,2,3,4,5>。类似地,新增一个新的属性列next_event记录每个事件的下一个执行的事件,如流程实例中第一个事件e1的该属性值为e2(可用事件ID代替记作2),第二个事件e2的该属性值为e3(可用事件ID代替记作3)......,第4个事件的该属性值为5,而第5个事件的该属性值用0标记。接着,根据流程实例中每个事件发生的时间戳属性,将这一属性值与前两个事件的开始时间戳相减后以小时为单位除以24小时并向下取整,得到的值用一个新的属性recent_time记录{0,0,1,8,9};同时将当前事件与前一个事件的发生时间戳相减后以小时为单位除以24小时并向下取整,得到的值用一个新的属性latest_time记录{0,1,0,8,1};将当前事件开始时间戳和第一个事件开始时间戳相减后除以24小时并向下取整,得到的值用一个新的属性time_pass记录{0,1,1,10,11};将后一个事件与当前发生的事件的发生的时间戳相减后除以24小时向下取整,得到的值用一个新的属性next_time记录{1,0,8,1,1}(最后一个事件的该属性值为1);将整个流程实例的最后一个事件与当前每个事件的开始时间戳相减后除以24小时并向下取整,得到的值记为remain_time属性{11,9,9,1,0}(最后一个事件的该属性值为0)。最后,将上述数据集进行属性抽取,得到三个任务融合的数据集L={σ12,…,σs}(其中,每条流程实例的轨迹记作σ=<e1,e2,…,e|σ|>,流程轨迹中每个事件记录为e={c,i,tstart,tend,a,pre_trace,recent_time,latest_time,time_pass})及其对应的标签属性集{next_event,next_time,remain_time};(如表3所示)
表3事件日志数据集(时间)
Figure BDA0003618571110000141
表3显示了经过步骤(2)处理后的多任务训练数据集示例(其中省略了开始时间戳属性和结束时间戳属性)。
(3)将上一步得到的流程轨迹数据集L根据每个事件e的属性{c,i,tstart,tend,a,pre_trace,recent_time,latest_time,time_pass}值:如果属性的值为类别型数据,使用one-hot热编码进行编码;如果属性的值为数值型数据,则进行归一化编码;然后将事件所有属性{c,i,tstart,tend,a,pre_trace,recent_time,latest_time,time_pass}编码后的向量进行拼接后得到每个事件e的编码向量
Figure BDA0003618571110000151
(p为该向量的维度,x11、x12、......、x1p分别表示第一列、第二列、......、第p列分向量的值),再将其和位置向量/>
Figure BDA0003618571110000152
进行拼接得到最终的事件编码向量/>
Figure BDA0003618571110000153
最后将流程轨迹中所有事件编码的向量拼接后即可得到一个完整流程实例的编码向量/>
Figure BDA0003618571110000154
同时将每个事件e的标签属性next_event的值y1、next_time的值y2和remain_time的值y3也根据上述编码规则分别进行编码并拼接得到向量/>
Figure BDA0003618571110000155
其中/>
Figure BDA0003618571110000156
表示y1编码得到的向量、
Figure BDA0003618571110000157
表示y2编码得到的向量、/>
Figure BDA0003618571110000158
表示y3编码得到的向量;
(4)将编码向量X作为Transformer神经网络的输入并不断训练从而确定预测模型Z(如图2所示),具体来说:
①在神经网络的输入层,将流程轨迹σ经过编码后的特征向量作为神经网络的一次输入,即σ=<e1,e2,…,en>(n=|σ|),其中n表示流程轨迹σ中的事件个数,e1表示流程轨迹σ中的第一个事件,e2表示流程轨迹σ中的第二个事件,en表示流程轨迹σ中的最后一个事件;
②在神经网络的transformerBlock层,将流程轨迹σ中每个事件编码构成的向量序列
Figure BDA0003618571110000159
作为transformerBlock层的输入,得到该流程轨迹中每个事件在transformerBlock层的输出,然后将其平均池化,得到特征向量h1,h2,…,hn
③在神经网络的多任务层,将transformerBlock层得到的流程轨迹σ中每个事件的特征向量序列h1,h2,…,hn作为多任务层的输入,输出三个任务对应的三种特征向量分别为N1,N2,…,Nn、T1,T2,…,Tn和R1,R2,…,Rn,顺序为预测下一个事件名、预测下一个事件发生时间、预测剩余时间,然后将三个特征向量拼接成S1,S2,…,Sn
④在神经网络的参数共享层,将流程轨迹σ中每个任务事件的特征向量的融合序列S1,S2,…,Sn作为参数共享层的输入,通过参数共享层中每个神经单元中的参数共享机制,得到该流程轨迹中每个事件e1,e2,…,en在参数共享层的输出,即特征向量C1,C2,…,Cn
其中,参数共享层有多种共享方式,按照结构来划分,有软共享和硬共享。软共享指的是每个任务网络层互不相同但相互影响,达到多任务效果;硬共享指的是将多个任务输入到同一网络层,实现共享效果;两种方式有一个共同的特点,即输出层的输出向量个数和任务个数相同。一般来说,可以通过使用参数距离正则化来达到共享的目的,也可以自由构建更为复杂的共享层,因为共享参数的本质就是同一神经网络层的不同神经元的参数共享同一种或一部分加权方式。
⑤在神经网络的输出层,将参数共享层得到的流程轨迹σ中所有事件提取的特征向量C1,C2,…,Cn根据不同的任务输入到输出层,即分别得到三个输出向量A1,A2,…,An、I1,I2,…,In和M1,M2,…,Mn,然后将三个向量分别融合处理后得到
Figure BDA0003618571110000161
其中分类预测型任务的输出特征向量可直接得出分类预测值/>
Figure BDA0003618571110000162
回归预测型任务的输出特征向量分别使用Sigmoid函数得到预测值/>
Figure BDA0003618571110000163
(5)将流程轨迹数据集L中每条流程轨迹的编码向量作为神经网络的输入,根据已知的真实值Y={y1,y2,y3}和通过多任务Transformer神经网络模型输出的预测值
Figure BDA0003618571110000164
使用多任务融合的损失函数表示它们之间的误差,同时不断调整参数直到损失函数收敛,从而确定一组固定的参数值即为训练得到的预测模型Z;
(6)将正在执行的流程实例σ′对应的流程轨迹根据步骤(3)进行编码得到的向量X′输入到预测模型Z中,可得到输出预测值
Figure BDA0003618571110000165
本发明可用于实现对正在执行流程实例的预测,通过这种多任务并行学习的神经网络能够有效地进行预测性业务流程监控,从而为流程执行优化提供决策。

Claims (6)

1.一种基于流程日志和多任务学习的未来执行活动及时间预测方法,其特征在于,包括以下步骤:
步骤(1):获取业务流程管理系统中记录的历史流程执行的事件日志数据集并进行初处理;
所述的事件日志数据集中的每一行对应一次业务流程执行中涉及的一个活动发生的详细事件记录;
所述的详细事件记录包括该事件e所在的流程实例ID属性c、事件ID属性i、事件e发生的开始时间戳属性tstart和结束时间戳属性tend、事件e对应流程中的活动名称属性a、事件e发生所需的资源属性r;
所述的初处理包括:将事件日志数据集中的流程实例ID属性相同的所有事件根据其对应的时间戳属性进行排列,即一次流程执行产生的流程实例σ,得到初处理后的事件日志数据集;
步骤(2):根据步骤(1)得到的初处理后的事件日志数据集,构建多任务训练数据集,具体包括:
(2.1)针对步骤(1)得到的每条流程实例σ,记录它在每个事件完成后流程执行的状态,使用前缀轨迹表示;
(2.2)在步骤(2.1)的基础上,将初处理后的事件日志数据集中的每个事件都增加一个新的属性列pre_trace,记录每个事件执行后流程实例对应的前缀轨迹;
同时,将初处理后的事件日志数据集中的每个事件还增加一个新的属性列next_event,记录每个事件的下一个执行的事件,是未来执行活动预测任务中的预测目标,因此记作标签属性;
(2.3)在初处理后的事件日志数据集中每个事件的开始时间戳属性tstart和结束时间戳属性tend基础上,计算得到并新增一系列与时间相关的属性,包括recent_time属性、latest_time属性、time_pass属性、next_time属性和remain_time属性,其中,next_time属性表示当前流程执行状态下未来执行活动的时间;remain_time属性表示当前执行状态下整个流程未来执行时间,next_time属性和remain_time属性记作标签属性;
计算得到recent_time属性、latest_time属性、time_pass属性,具体包括:
根据流程实例中每个事件发生的时间戳属性,将这一属性值与流程实例中前两个事件的开始时间戳相减后以小时为单位除以24小时并向下取整,得到的值用一个新的属性recent_time记录;
同时将流程实例中当前事件与前一个事件的发生时间戳相减后以小时为单位除以24小时并向下取整,得到的值用一个新的属性latest_time记录;
将流程实例中当前事件开始时间戳和第一个事件开始时间戳相减后除以24小时并向下取整,得到的值用一个新的属性time_pass记录;
(2.4)将步骤(2.3)处理后的数据集进行属性抽取,得到三个任务融合的流程轨迹数据集L={σ12,…,σs},其中,s=|L|代表流程轨迹数据集L的大小,由流程轨迹数据集L中包含的所有流程实例总个数决定,σ1表示流程轨迹数据集L中第一个发生的流程实例,σ2表示流程轨迹数据集L中第二个发生的流程实例,σs表示流程轨迹数据集L中最后一个发生的流程实例;在流程轨迹数据集L中每条流程实例的轨迹记作σ=<e1,e2,…,e|σ|>,其中,|σ|代表该流程实例中包含的所有事件个数,e1表示该流程实例中第一个发生的事件,e2表示该流程实例中第二个发生的事件,e|σ|表示该流程实例中最后一个发生的事件;在每条流程实例的轨迹σ中每个事件记作e,由一系列属性{c,i,tstart,tend,a,pre_trace,recent_time,latest_time,time_pass}和对应的标签属性{next_event,next_time,remain_time}组成,最终流程轨迹数据集L即为得到的多任务训练数据集;
步骤(3):获取多任务训练数据集中每条流程实例对应的事件编码特征向量X和标签向量Y,具体包括:
(3.1)将步骤(2)中得到的流程轨迹数据集L根据每个事件e的属性{c,i,tstart,tend,a,pre_trace,recent_time,latest_time,time_pass}的编码值:
如果属性的值为类别型数据,使用one-hot热编码进行编码;
如果属性的值为数值型数据,则进行归一化编码;
(3.2)将事件所有属性{c,i,tstart,tend,a,pre_trace,recent_time,latest_time,time_pass}编码后的向量进行拼接得到每个事件e的编码向量
Figure FDA0004175713430000021
p为该向量的维度,x11、x12、x1p分别表示第一列、第二列、第p列分向量的值;
(3.3)将每个事件e的编码向量
Figure FDA0004175713430000022
和位置向量/>
Figure FDA0004175713430000023
进行拼接得到最终的事件编码向量
Figure FDA0004175713430000031
(3.4)将流程轨迹σ中所有事件编码的向量拼接后得到一个完整流程实例的编码向量
Figure FDA0004175713430000032
Figure FDA0004175713430000033
表示该流程实例中第一个事件的编码向量,/>
Figure FDA0004175713430000034
表示该流程实例中第二个事件的编码向量,/>
Figure FDA0004175713430000035
表示该流程实例中最后一个事件的编码向量;
同时将每个事件e的标签属性next_event的值y1、next_time的值y2和remain_time的值y3也根据上述编码规则分别进行编码并拼接得到向量
Figure FDA0004175713430000036
其中/>
Figure FDA0004175713430000037
表示y1编码得到的向量、/>
Figure FDA0004175713430000038
表示y2编码得到的向量、/>
Figure FDA0004175713430000039
表示y3编码得到的向量;
步骤(4):将流程轨迹数据集L中每条流程实例对应的流程轨迹,根据步骤(3)进行编码得到的对应的特征向量X,然后将特征向量X作为Transformer神经网络的输入,通过比较最终Transformer神经网络的实际输出和已知的标签向量Y之间的损失,不断优化损失函数从而确定预测模型Z,具体包括:
(a)在神经网络的输入层,将流程轨迹σ经过编码后的特征向量作为神经网络的一次输入,即σ=<e1,e2,…,en>(n=|σ|),其中n表示流程轨迹σ中的事件个数,e1表示流程轨迹σ中的第一个事件,e2表示流程轨迹σ中的第二个事件,en表示流程轨迹σ中的最后一个事件;
(b)在神经网络的transformerBlock层,将流程轨迹σ中每个事件编码构成的向量序列
Figure FDA00041757134300000310
作为transformerBlock层的输入,得到该流程轨迹中每个事件在transformerBlock层的输出,然后将其平均池化,得到提取后的特征向量h1,h2,…,hn
(c)在神经网络的多任务层,将transformerBlock层得到的流程轨迹σ中每个事件提取的特征向量序列h1,h2,…,hn作为多任务层的输入,输出三个任务即预测下一个活动、预测下一个活动发生的时间、预测整个流程实例剩余时间分别对应的特征向量为N1,N2,…,Nn、T1,T2,…,Tn和R1,R2,…,Rn,并将这三个特征向量拼接得到S1,S2,…,Sn
(d)在神经网络的参数共享层,将流程轨迹σ中针对每个任务的事件提取特征融合向量序列S1,S2,…,Sn作为输入,通过参数共享层中每个神经单元中的参数共享机制,得到该流程轨迹中每个事件e1,e2,…,en在参数共享层的输出,即特征向量C1,C2,…,Cn
(e)在神经网络的输出层,将参数共享层得到的流程轨迹σ中所有事件提取的特征向量C1,C2,…,Cn根据不同的任务输入到输出层,即分别得到三个输出向量A1,A2,…,An、I1,I2,…,In和M1,M2,…,Mn,然后将三个向量分别融合处理后得到
Figure FDA0004175713430000041
其中分类预测型任务的输出特征向量可直接得出分类预测值/>
Figure FDA0004175713430000042
回归预测型任务的输出特征向量分别使用Sigmoid函数得到预测值/>
Figure FDA0004175713430000043
(f)将流程轨迹数据集L中每条流程轨迹作为神经网络的输入,根据已知的值Y={y1,y2,y3}和通过多任务Transformer神经网络模型输出的值
Figure FDA0004175713430000044
使用下面损失函数度量真实值和预测值之间的误差:
Figure FDA0004175713430000045
其中,ω1、ω2和ω3代表权重系数,m代表样本个数,y1 (i)表示第i个样本的next_event真实值,y2 (i)表示第i个样本的next_time真实值,y3 (i)表示第i个样本的remain_time真实值,
Figure FDA0004175713430000046
表示第i个样本的next_event预测值,/>
Figure FDA0004175713430000047
表示第i个样本的next_time预测值,/>
Figure FDA0004175713430000048
表示第i个样本的remain_time预测值;
不断训练优化模型从而得到一组固定的参数值,使得损失函数
Figure FDA0004175713430000049
最小化,即为训练得到的预测模型Z;
步骤(5):将正在执行的流程实例即流程轨迹σ′=<e1,e2,…,el>中已执行的事件序列e1,e2,…,el以及每个事件对应的属性经过预处理后输入步骤(4)中得到的预测模型Z,得到流程轨迹σ′的预测值
Figure FDA00041757134300000410
2.根据权利要求1所述的基于流程日志和多任务学习的未来执行活动及时间预测方法,其特征在于,步骤(1)中,所述的初处理包括:
将事件日志数据集中事件e发生所需的资源属性r移除。
3.根据权利要求1所述的基于流程日志和多任务学习的未来执行活动及时间预测方法,其特征在于,步骤(2.1)中,所述的每个事件完成后的前缀轨迹包括:
第一个事件e1完成后的前缀轨迹为<e1>,第二个事件e2完成后的前缀轨迹为<e1,e2>,......,最后一个事件完成后的前缀轨迹为<e1,e2,…,e|σ|>,其中,|σ|表示流程实例σ对应的流程轨迹的长度,即流程实例中事件的个数。
4.根据权利要求1所述的基于流程日志和多任务学习的未来执行活动及时间预测方法,其特征在于,步骤(2.2)中,所述的属性列pre_trace包括:
<e1>用事件ID代替记作<1>,<e1,e2>简记作<1,2>,<e1,e2,…,e|σ|>简记作<1,2,…,|σ|>;
所述的属性列next_event包括:
流程实例中第一个事件e1的该属性值为e2,用事件ID代替记作2,第二个事件e2的该属性值为e3,用事件ID代替记作3,第(|σ|-1)个事件的该属性值为e|σ|
5.根据权利要求1所述的基于流程日志和多任务学习的未来执行活动及时间预测方法,其特征在于,步骤(2.3)中,计算得到next_time属性、remain_time属性,具体包括:
将流程实例中后一个事件与当前发生的事件的发生的时间戳相减后除以24小时向下取整,得到的值用一个新的属性next_time记录;
将整个流程实例的最后一个事件与当前每个事件的开始时间戳相减后除以24小时并向下取整,得到的值记为remain_time属性。
6.一种基于流程日志和多任务学习的未来执行活动及时间预测系统,其特征在于,实现权利要求1~5任一项所述的基于流程日志和多任务学习的未来执行活动及时间预测方法,包括:
事件日志数据集预处理模块,用于对于整个事件日志数据集得到流程轨迹数据集,然后将数据集中异常的、不完整的流程轨迹移除,并根据不同的任务增加新的属性,得到预处理后的流程轨迹数据集;
事件编码模块,用于将流程轨迹数据集所包含的所有事件的属性根据属性值类型分别进行编码,得到每个事件对应的长度相同的编码向量;
特征提取模块,用于将每个事件对应的编码向量作为神经网络的输入,使用transformerBlock层、多任务层和参数共享层进行特征提取,得到每个事件对应的特征向量;
预测模型训练模块,用于将每条流程轨迹的特征向量作为输入,通过神经网络模型计算得到每条流程轨迹在三个不同任务上的输出,然后使用多任务融合的损失函数表示上述输出值与流程轨迹真实值之间的误差,最后使用梯度下降优化算法来训练得到神经网络中所有的参数,得到预测模型;
在线预测模块,用于将当前正在执行的流程实例中已经发生的事件序列作为预测模型的输入,得到该流程实例分别在未来执行活动名称、活动执行时间以及流程实例剩余执行时间等三个任务上的预测结果。
CN202210455478.8A 2022-04-27 2022-04-27 基于流程日志和多任务学习的未来执行活动及时间预测方法及系统 Active CN114757432B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210455478.8A CN114757432B (zh) 2022-04-27 2022-04-27 基于流程日志和多任务学习的未来执行活动及时间预测方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210455478.8A CN114757432B (zh) 2022-04-27 2022-04-27 基于流程日志和多任务学习的未来执行活动及时间预测方法及系统

Publications (2)

Publication Number Publication Date
CN114757432A CN114757432A (zh) 2022-07-15
CN114757432B true CN114757432B (zh) 2023-05-30

Family

ID=82334031

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210455478.8A Active CN114757432B (zh) 2022-04-27 2022-04-27 基于流程日志和多任务学习的未来执行活动及时间预测方法及系统

Country Status (1)

Country Link
CN (1) CN114757432B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115238583B (zh) * 2022-07-27 2024-02-13 山东理工大学 一种支持增量日志的业务流程剩余时间预测方法与系统
CN115456073B (zh) * 2022-09-14 2023-07-07 杭州电子科技大学 基于长短期记忆的生成式对抗网络模型建模分析方法
CN116822920B (zh) * 2023-05-23 2024-03-29 北京杰成合力科技有限公司 一种基于循环神经网络的流程预测方法
CN117495071B (zh) * 2023-12-29 2024-05-14 安徽思高智能科技有限公司 一种基于预测性日志增强的流程发现方法及系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110096526A (zh) * 2019-04-30 2019-08-06 秒针信息技术有限公司 一种用户属性标签的预测方法及预测装置
CN110807517A (zh) * 2019-10-30 2020-02-18 智者四海(北京)技术有限公司 用于多任务识别的神经网络系统
CN111191897A (zh) * 2019-12-23 2020-05-22 浙江传媒学院 基于双向gru神经网络的业务流程在线合规性预测方法及系统
CN111241279A (zh) * 2020-01-07 2020-06-05 华东师范大学 一种基于多任务学习机制的自然语言关系抽取方法
CN112509562A (zh) * 2020-11-09 2021-03-16 北京有竹居网络技术有限公司 用于文本后处理的方法、装置、电子设备和介质
CN112508265A (zh) * 2020-12-02 2021-03-16 中国极地研究中心 面向业务流程管理的时间与活动多任务预测方法及系统
CN113256300A (zh) * 2021-05-27 2021-08-13 支付宝(杭州)信息技术有限公司 一种交易的处理方法及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110096526A (zh) * 2019-04-30 2019-08-06 秒针信息技术有限公司 一种用户属性标签的预测方法及预测装置
CN110807517A (zh) * 2019-10-30 2020-02-18 智者四海(北京)技术有限公司 用于多任务识别的神经网络系统
CN111191897A (zh) * 2019-12-23 2020-05-22 浙江传媒学院 基于双向gru神经网络的业务流程在线合规性预测方法及系统
CN111241279A (zh) * 2020-01-07 2020-06-05 华东师范大学 一种基于多任务学习机制的自然语言关系抽取方法
CN112509562A (zh) * 2020-11-09 2021-03-16 北京有竹居网络技术有限公司 用于文本后处理的方法、装置、电子设备和介质
CN112508265A (zh) * 2020-12-02 2021-03-16 中国极地研究中心 面向业务流程管理的时间与活动多任务预测方法及系统
CN113256300A (zh) * 2021-05-27 2021-08-13 支付宝(杭州)信息技术有限公司 一种交易的处理方法及装置

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
Multi-Task Time Series Forecasting With Shared Attention.;Zekai Chen;2020 International Conference on Data Mining Workshops (ICDMW);全文 *
Multivariate Business Process Representation Learning utilizing Gramian Angular Fields and Convolutional Neural Networks.;Peter Pfeiffer;International Conference on Business Process Management;全文 *
Online predicting conformance of business process with recurrent neural networks;Jiaojiao Wang;In Proceedings of the 5th International Conference on Internet of Things, Big Data and Security;全文 *
基于共享BERT和门控多任务学习的事件检测方法;王捷;中文信息学报;全文 *
基于多任务学习的流程推荐技术研究与实现;孙迪克;中国优秀硕士学位论文全文数据库信息科技辑;全文 *
用于金融文本挖掘的多任务学习预训练金融语言模型;刘畅;计算机研究与发展;全文 *

Also Published As

Publication number Publication date
CN114757432A (zh) 2022-07-15

Similar Documents

Publication Publication Date Title
CN114757432B (zh) 基于流程日志和多任务学习的未来执行活动及时间预测方法及系统
CN111191897A (zh) 基于双向gru神经网络的业务流程在线合规性预测方法及系统
CN111178623B (zh) 一种基于多层机器学习的业务流程剩余时间预测方法
Tello-Leal et al. Predicting activities in business processes with LSTM recurrent neural networks
CN111950195B (zh) 一种基于画像系统与深度回归模型的工程进度预测方法
CN113837859B (zh) 一种小微企业画像构建方法
US20200050982A1 (en) Method and System for Predictive Modeling for Dynamically Scheduling Resource Allocation
CN116861924A (zh) 基于人工智能的项目风险预警方法及系统
CN116340796A (zh) 时序数据分析方法、装置、设备及存储介质
CN116257759A (zh) 一种深度神经网络模型的结构化数据智能分类分级系统
CN116362799A (zh) 基于供应链多源数据融合的产品需求预测方法及存储介质
CN111259264A (zh) 一种基于生成对抗网络的时序评分预测方法
CN113962160A (zh) 基于用户画像的互联网卡用户流失预测方法及系统
CN116342167B (zh) 基于序列标注命名实体识别的智能成本度量方法和装置
CN117151095A (zh) 一种基于案情的处置预案生成方法
CN116611442A (zh) 一种基于深度语义提取的兴趣点推荐方法
CN113537710B (zh) 一种数据驱动下基于人工智能的活动时序在线预测方法
Shankar et al. Analyzing attrition and performance of an employee using machine learning techniques
CN115221942A (zh) 一种基于时序融合和神经网络的设备缺陷预测方法及系统
CN115238583A (zh) 一种支持增量日志的业务流程剩余时间预测方法与系统
CN114357284A (zh) 基于深度学习的众包任务个性化推荐方法和系统
CN114118377A (zh) 基于替代变量模型的决策效果评估方法、系统和计算机介质
CN117667606B (zh) 基于用户行为的高性能计算集群能耗预测方法及系统
Chen et al. Genetic Design of Topology for Neural Network
CN116662836A (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
GR01 Patent grant
GR01 Patent grant