張振虎,王麗麗
(安徽理工大學(xué) 數(shù)學(xué)與大數(shù)據(jù)學(xué)院,安徽 淮南 232001)
流程挖掘作為一門(mén)新的學(xué)科領(lǐng)域,近年來(lái)已經(jīng)得到非常廣泛的研究和應(yīng)用.它包括流程發(fā)現(xiàn)、一致性檢測(cè)和流程增強(qiáng)三個(gè)研究方向,并且三者皆可使用事件日志構(gòu)建過(guò)程模型來(lái)很好地表示和分析業(yè)務(wù)流程的執(zhí)行[1].因此,事件日志是業(yè)務(wù)流程挖掘的起點(diǎn),一個(gè)完整的事件日志是業(yè)務(wù)流程正確分析的重要基礎(chǔ).然而,在現(xiàn)實(shí)生活中的行業(yè)應(yīng)用中,由于存在不完全可靠的記錄行為或者不準(zhǔn)確的數(shù)據(jù)傳輸,可能會(huì)使事件日志出現(xiàn)一定的丟失,產(chǎn)生不完整的事件日志,從而嚴(yán)重影響流程挖掘的結(jié)果.因此,修復(fù)事件日志對(duì)于過(guò)程挖掘來(lái)說(shuō)是至關(guān)重要的問(wèn)題.
目前不完整的事件日志大多指事件日志中數(shù)據(jù)的缺失或者說(shuō)是數(shù)據(jù)的質(zhì)量問(wèn)題[2],主要的修復(fù)事件日志的方法是修復(fù)事件日志的缺失值.文獻(xiàn)[3]首先提出了一種處理缺失數(shù)據(jù)的方法,分析了觀測(cè)數(shù)據(jù)中數(shù)據(jù)缺失的原因,定義了缺失值的類(lèi)型,并進(jìn)一步提出了利用統(tǒng)計(jì)模型解決問(wèn)題的方法.此后,許多學(xué)者針對(duì)修復(fù)事件日志缺失值做了大量研究.經(jīng)過(guò)不斷的研究,人們提出了各種方法,將貝葉斯網(wǎng)絡(luò)方法、核方法、深度學(xué)習(xí)方法、對(duì)齊方法、隨機(jī)Petri網(wǎng)等方法相互結(jié)合,在修復(fù)缺失值方面取得了優(yōu)異的性能.文獻(xiàn)[4]結(jié)合隨機(jī)Petri網(wǎng)方法、對(duì)齊方法和貝葉斯網(wǎng)絡(luò)方法修復(fù)事件日志中的缺失值,首先利用對(duì)齊方法計(jì)算隨機(jī)Petri網(wǎng)中跡變體的路徑概率確定事件日志缺失的事件,然后利用貝葉斯網(wǎng)絡(luò)方法計(jì)算可能插入事件的時(shí)間戳以達(dá)到修復(fù)缺失事件的效果.文獻(xiàn)[5]采用與文獻(xiàn)[4]同樣的方法修復(fù)缺失事件,以提高文檔的準(zhǔn)確性.文獻(xiàn)[6]提出了基于跡聚類(lèi)的方法,利用跡相似性修復(fù)缺失跡以得到更完整的流程模型,該方法針對(duì)的是跡中缺失的活動(dòng).針對(duì)事件日志中缺失活動(dòng)的問(wèn)題,文獻(xiàn)[7]用一種基于LSTM的預(yù)測(cè)模型來(lái)預(yù)測(cè)事件日志中缺失的活動(dòng)標(biāo)簽.該模型利用以活動(dòng)標(biāo)簽缺失的事件的前綴和后綴作為輸入,事件日志的附加屬性用來(lái)提高性能.文獻(xiàn)[8]提出了一種結(jié)合跡行為特征的神經(jīng)網(wǎng)絡(luò)模型,同時(shí)考慮日志中活動(dòng)的時(shí)序關(guān)系和行為關(guān)系,將其轉(zhuǎn)換為圖像矩陣,通過(guò)卷積神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)跡中缺失的活動(dòng).
綜上所述,目前的事件日志修復(fù)方法主要是針對(duì)跡中缺失的活動(dòng)或時(shí)間戳等單一屬性進(jìn)行修復(fù),而未同時(shí)針對(duì)多個(gè)屬性的缺失進(jìn)行修復(fù)工作.本文提出了一種結(jié)合Bert模型的方法修復(fù)事件日志中缺失的多屬性.核心思想是利用Bert模型的預(yù)訓(xùn)練任務(wù)中特殊的遮掩策略學(xué)習(xí)判斷事件中屬性是否正確,在微調(diào)階段對(duì)缺失值進(jìn)行預(yù)測(cè).在Transformer層中利用多頭注意力機(jī)制從不同角度學(xué)習(xí)屬性間的依賴關(guān)系,根據(jù)其上下文信息修復(fù)事件中缺失的屬性,甚至進(jìn)行糾錯(cuò).
本文的主要工作如下.
第一,結(jié)合Bert模型從數(shù)據(jù)流視角對(duì)事件日志中的多屬性進(jìn)行修復(fù),而非只針對(duì)單一屬性,同時(shí)具有一定的糾錯(cuò)能力.
第二,使用公開(kāi)可用的數(shù)據(jù)集進(jìn)行仿真實(shí)驗(yàn),對(duì)結(jié)果進(jìn)行分析,驗(yàn)證提出的方法的可靠性.
本文的剩余部分組織如下:第1部分介紹了本文方法的相關(guān)基礎(chǔ)定義以及Bert模型.第2部分詳細(xì)描述了本文提出的方法.第3部分利用公開(kāi)可用數(shù)據(jù)進(jìn)行仿真實(shí)驗(yàn)并對(duì)結(jié)果進(jìn)行分析.第4部分總結(jié)全文.
本文使用的一些基礎(chǔ)定義,主要包括事件、屬性、跡、事件日志、缺失屬性、缺失事件、缺失跡、缺失日志等內(nèi)容.
定義1[1](事件和屬性)業(yè)務(wù)流程中任一事件e是其對(duì)應(yīng)的活動(dòng)a∈A在某個(gè)時(shí)刻的執(zhí)行步驟,每個(gè)事件e的執(zhí)行包含活動(dòng)名稱、資源、時(shí)間戳、成本等相關(guān)信息,通常被定義為多元組e={caseid,a,timestamp,attr1,2,…,n},其中caseid為e所屬流程實(shí)例,a為e執(zhí)行的活動(dòng)名稱,timestamp為e執(zhí)行的時(shí)間戳.以上所述皆被稱為事件e的屬性,而attr1,2,…,n為e的其他附加屬性,如資源、成本等.
定義2[1](跡和事件日志)跡σ是若干事件組成的有序序列,記為σ=〈e1,e2,…,e|σ|〉,其中|σ|為跡σ中事件e的數(shù)量.事件日志L是跡σ的集合,記為L(zhǎng)=〈σ1,σ2,…,σL〉,其中L為事件日志的長(zhǎng)度.
表1為一個(gè)事件日志案例.包含三條跡,每條跡包含若干事件,總共15個(gè)事件,每個(gè)事件包含Trace Id,Activity,Resource,Timestamp等屬性.
表1 完整日志案例
定義3(缺失屬性和缺失事件)設(shè)事件e=〈attr1,attr2,…,attrn〉為跡σ的一個(gè)執(zhí)行事件,若存在attri∈e為空,則稱事件e為缺失事件,attri為缺失屬性.
定義4(缺失跡和缺失日志)設(shè)σ=〈e1,e2,…,e|σ|〉為業(yè)務(wù)流程中事件日志的一條跡,若存在事件ei∈σ為缺失事件,則稱跡σ為缺失跡,而事件日志L=〈σ1,σ2,…,σL〉為缺失日志.
表2為表1的缺失日志,跡1為一條缺失跡,事件e2和e4為缺失事件,其中的Activity和Resource為缺失屬性.
表2 缺失日志案例表
Bert是一個(gè)預(yù)訓(xùn)練的表征模型,同時(shí)在11個(gè)NLP(自然語(yǔ)言處理)領(lǐng)域取得了最先進(jìn)的成果[9].它改變了傳統(tǒng)的采用單向語(yǔ)言模型或者把兩個(gè)單向語(yǔ)言模型進(jìn)行淺層拼接的方法進(jìn)行預(yù)訓(xùn)練,采用新的雙向Transformer語(yǔ)言表征模型.采用新的MLM(Masked Language Model)進(jìn)行預(yù)訓(xùn)練生成包含上下文信息的深度語(yǔ)言模型.
Bert模型的架構(gòu)如圖1所示,詞嵌入、分割嵌入和位置嵌入三個(gè)嵌入特征的總和構(gòu)成了Bert模型的輸入,Bert的模型架構(gòu)采用的是雙向Transformer編碼器(如圖2為T(mén)ransformer編碼塊的模型架構(gòu)[10]),多頭注意力機(jī)制使得Bert能夠在不同層次提取關(guān)系特征,進(jìn)而更全面反映句子語(yǔ)義.因此,Bert的表示能力更徹底地捕獲了基于所有級(jí)別左右上下文的句子中的長(zhǎng)期雙向依賴關(guān)系.
圖1 Bert模型架構(gòu)圖
圖2 Transformer編碼塊模型架構(gòu)圖
Bert的本質(zhì)是采用遮掩策略預(yù)訓(xùn)練的一個(gè)語(yǔ)言模型,通過(guò)自監(jiān)督的方法學(xué)習(xí)文本中地通用語(yǔ)義,提取詞在不同層次的雙向依賴關(guān)系.然后通過(guò)微調(diào)策略轉(zhuǎn)移到預(yù)測(cè)事件日志中缺失值的下游任務(wù)中.
目前在過(guò)程挖掘領(lǐng)域的研究工作已經(jīng)探索了各種深度學(xué)習(xí)模型在修復(fù)事件日志中的應(yīng)用,比如LSTM[7]、CNN[8],然而這些方法只是針對(duì)活動(dòng)缺失或者其他單一屬性缺失,不能推廣到多屬性缺失的修復(fù)任務(wù)當(dāng)中.此外,由于實(shí)際應(yīng)用中事件日志的復(fù)雜性和多樣性,在相關(guān)系統(tǒng)的執(zhí)行過(guò)程中發(fā)生的所有事件,在業(yè)務(wù)流程的執(zhí)行過(guò)程中不可避免地會(huì)造成各種屬性的丟失,傳統(tǒng)的RNN和LSTM不能很好地捕獲屬性之間的長(zhǎng)期依賴關(guān)系,并且存在梯度消失的問(wèn)題.
本文提出了有一種結(jié)合Bert模型的多屬性修復(fù)方法,圖3是多屬性修復(fù)的整體架構(gòu).
圖3 修復(fù)缺失值模型架構(gòu)
在輸入模型之前,將一個(gè)完整的事件日志的80%作為訓(xùn)練集,用于預(yù)訓(xùn)練模型,以事件為單位,使用Bert中的雙向Transformer模型捕獲屬性之間的長(zhǎng)期雙向依賴關(guān)系,并最終訓(xùn)練出廣義的深度雙向表示模型.剩余的20%作為測(cè)試集,用于目標(biāo)模型,即預(yù)測(cè)缺失事件的缺失值,從而驗(yàn)證該模型在修復(fù)多屬性方面的準(zhǔn)確性.
Bert模型是一個(gè)多任務(wù)模型,在預(yù)訓(xùn)練階段包含兩個(gè)自監(jiān)督任務(wù),即MLM(Masked Language Model)和NSP(Next Sentence Prediction),本文主要研究通過(guò)預(yù)訓(xùn)練任務(wù)預(yù)測(cè)事件中缺失屬性,從而修復(fù)事件日志.
本文針對(duì)修復(fù)多屬性任務(wù)制定了預(yù)訓(xùn)練任務(wù)MAM(Masked Attribute Model),通過(guò)屬性的三個(gè)嵌入特征(即詞嵌入、字段嵌入和位置嵌入)和學(xué)習(xí)屬性的語(yǔ)義信息、文本信息和位置信息,在雙向Transformer層中利用多頭注意力機(jī)制捕獲屬性間的雙向語(yǔ)義信息和長(zhǎng)期依賴關(guān)系.因此,該模型可以在多層上下文中輕松預(yù)測(cè)出缺失的目標(biāo)屬性.如圖4為多頭注意力機(jī)制模型.
圖4 多頭注意力模型圖
本文制定的MAM采用的預(yù)訓(xùn)練策略是傳統(tǒng)的80%-10%-10%的掩碼([Mask])策略,即在識(shí)別出被掩蔽的屬性后,被掩蔽的屬性80%的可能被直接替換為“[Mask]”;10%的可能被轉(zhuǎn)換為任意屬性; 10%的可能會(huì)保持不變.
修復(fù)事件日志的缺失值是過(guò)程挖掘領(lǐng)域的一個(gè)重要研究,準(zhǔn)確地修復(fù)事件日志能夠極大地提高業(yè)務(wù)流程分析的性能.本文采用微調(diào)策略,在完成預(yù)訓(xùn)練任務(wù)MAM后,將Bert模型轉(zhuǎn)移到預(yù)測(cè)事件日志缺失值模塊進(jìn)行訓(xùn)練.
首先,將預(yù)訓(xùn)練階段的輸出輸入到全連接層,以捕獲在預(yù)訓(xùn)練階段學(xué)習(xí)到的屬性的語(yǔ)義信息及其上下文信息.然后,將得到的輸出輸送到Softmax層,微調(diào)參數(shù)的同時(shí)利用Softmax激活函數(shù)計(jì)算出缺失值出現(xiàn)的概率,選取概率最高的屬性值修復(fù)事件日志.Softmax激活函數(shù)公式定義如下:
(1)
在神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練的過(guò)程中,采用反向傳播算法尋找最優(yōu)可訓(xùn)練參數(shù).此外,采用交叉熵作為損失函數(shù),尋找修復(fù)模型中的最優(yōu)權(quán)值和偏差,從而能夠準(zhǔn)確高效地預(yù)測(cè)出事件日志的缺失值.
為了評(píng)估本文提出的方法的性能,使用準(zhǔn)確率作為評(píng)估指標(biāo).它衡量了成功修復(fù)的缺失屬性占所有缺失屬性的比例.公式(2)定義了修復(fù)準(zhǔn)確率,其中corrnum為修復(fù)成功的屬性數(shù)量,alldata為所有缺失屬性的數(shù)量.
(2)
本部分使用韓國(guó)一家鋼鐵公司的數(shù)據(jù)集進(jìn)行案例分析,以驗(yàn)證本文提出的方法的有效性.該事件日志包含21 201個(gè)事件、2 391個(gè)案例、12個(gè)活動(dòng)以及其他5個(gè)屬性.我們?cè)谝?%的間隔隨機(jī)生成5%到20%的缺失值后,使用所提出的方法進(jìn)行修復(fù).此外,在本案例研究中,將本文提出的方法與各種現(xiàn)有方法進(jìn)行比較.
表3和圖5顯示了本文提出的方法與現(xiàn)有(MICE[11]、EMBI[12]、RFI[13]、KNNI[14]、GDT[15]五種方法在數(shù)據(jù)挖掘和過(guò)程挖掘領(lǐng)域處理缺失數(shù)據(jù)的方法)的比較結(jié)果,顯然本文提出的方法無(wú)論從事件日志中缺失屬性的比例,還是在修復(fù)缺失值上相比其他方法都有很大的改善.雖然隨著缺失率的提高,修復(fù)缺失值的準(zhǔn)確率也在逐步降低,但是在修復(fù)缺失的多屬性方面仍然有著良好的效果,并且在逐漸趨于穩(wěn)定.
圖5 與現(xiàn)有方法比較結(jié)果圖
表3 與現(xiàn)有方法比較結(jié)果
為了進(jìn)一步分析本文提出的方法在修復(fù)缺失值方面的性能,本部分還對(duì)屬性類(lèi)型是否影響修復(fù)缺失值的效果進(jìn)行進(jìn)一步分析.同樣依次隨機(jī)生成缺失率分別為5%、10%、15%和20%的事件日志.分別對(duì)修復(fù)5個(gè)屬性類(lèi)型和8個(gè)屬性類(lèi)型的結(jié)果進(jìn)行比較分析.表4為不同數(shù)量屬性類(lèi)型的修復(fù)效果.
表4 不同屬性數(shù)量的修復(fù)效果
從表4可以看出,修復(fù)屬性數(shù)量的多少對(duì)事件日志的修復(fù)效果會(huì)產(chǎn)生影響,實(shí)驗(yàn)結(jié)果表明,修復(fù)的屬性越多,則修復(fù)日志的準(zhǔn)確率越低.但同樣可以發(fā)現(xiàn),在本文提出的模型中,屬性種類(lèi)的增加相對(duì)于缺失率的提高修復(fù)缺失值的效果影響程度較小,同時(shí),結(jié)果表明本文提出的方法在修復(fù)事件日志方面有著良好的效果.
本文提出了一種修復(fù)事件日志中多屬性缺失的方法,該方法首先利用嵌入特征學(xué)習(xí)輸入屬性的語(yǔ)義信息、文本信息和位置信息.然后利用Bert模型的預(yù)訓(xùn)練任務(wù)MAM 捕獲屬性間的雙向語(yǔ)義信息和長(zhǎng)期依賴關(guān)系,訓(xùn)練出深度雙向表示模型.最后在微調(diào)階段轉(zhuǎn)移到預(yù)測(cè)缺失值的模塊,對(duì)所有參數(shù)進(jìn)行端到端的微調(diào),尋找到符合模型的最優(yōu)參數(shù),利用激活函數(shù)計(jì)算并選取出概率最高的缺失值,從而修復(fù)事件日志.
與傳統(tǒng)的修復(fù)事件日志不同的是,本文首次提出利用Bert模型修復(fù)多屬性缺失,而不僅僅是針對(duì)活動(dòng)、資源、時(shí)間戳等單一屬性.實(shí)驗(yàn)表明該方法有著良好的修復(fù)能力.
然而該方法也有一定的局限性,該方法只考慮了從數(shù)據(jù)視角修復(fù)多屬性缺失.未來(lái)的工作可從行為和數(shù)據(jù)的視角提高事件之間的依賴性,以達(dá)到更好的日志修復(fù)的效果.