摘 要:本論文提出了一種基于行為序列對比的需求智能挖掘方法,主要應用于RPA、人工智能和界面自動化領域。該方法包括數據采集、數據處理和數據輸出三個模塊,能夠實現對用戶操作行為的自動記錄、對行為序列的切分和聚類,以及對公共序列的提取,從而生成需求定義文檔和RPA流程。本方法具有較高的自動化程度和魯棒性,可有效提高需求分析和流程設計的效率。
關鍵詞:需求智能挖掘;行為序列對比;需求分析;RPA流程設計
一、引言
隨著科技的發(fā)展,RPA技術已經在企業(yè)中得到了廣泛應用,它可以模擬最終用戶在軟件系統(tǒng)中的操作,實現用戶操作的自動化。
企業(yè)使用RPA技術,可將工作中重復性高、業(yè)務邏輯明確的活動提取為RPA流程,從而實現操作的自動化。RPA高準確率、7*24小時運行的特點,可助力企業(yè)實現IT換人、降本增效的目的。目前,其已經成為大多數企業(yè)有效推進數字化轉型的有效支撐。
然而,在設計RPA流程前,需要對用戶的工作內容進行人工需求分析,從工作中篩選出重復度高且可自動化的RPA流程,隨后根據其工作內容從零開始設計RPA流程,這是一個復雜且耗時的過程。與RPA降本增效的目的相違背,因此,需要考慮一種自動實現需求分析并輔助流程設計的需求挖掘功能,從用戶工作中自動解析、提取具備自動化潛力的流程。
該需求挖掘功能,其應該包含數據采集、數據分析及數據輸出三個模塊。數據采集模塊,收集用戶在計算機上的操作日志。用戶通過計算機進行的每一步操作,如敲擊鍵盤和點擊鼠標,均會產生一條操作日志。每一條日志均代表一個d4afd3610ab0e0a0b8ead8a9f805ac13393a4dceeb4177c977756f5b7ba2089e行為;數據分析模塊,針對操作日志進行切分,將用戶操作日志切分為多條由多個行為組成的行為序列。基于人工智能/機器學習實現行為序列中的行為相似度對比以及公共序列提??;數據輸出模塊:根據公共序列輸出需求定義文檔以及RPA流程。
現有的需求挖掘技術或多或少都存在自動化程度低、行為相似度檢測功能魯棒性低、行為序列提取功能魯棒性低等問題。
自動化程度低,是指采集用戶操作數據時,往往需要用戶在每次任務的開始及結束時手動通知數據采集器,以此實現行為序列切分,未實現操作序列的自動化切分;本方案基于時間間隔實現行為序列自動切分,無需人工介入操作,自動化程度高。
關于行為相似度檢測功能魯棒性低,是指現有技術僅通過NLP結果作為行為相似度評判依據,面對不同窗口中的相似元素、同一操作中的不同鍵值輸入情況的處理能力差、誤判率高。本方案通過事件信息、窗口信息以及操作目標元素XPath三個維度評判用戶行為的相似度,可適應多種情況下的行為相似度對比操作。
關于行為序列提取功能魯棒性低,是指現有技術需通過滑動窗口功能實現公共序列提取,該方法要求用戶在進行重復活動時操作完全一致,對冗余操作適應能力差,對用戶操作規(guī)范性要求高。本方案基于聚類實現公共序列獲取,對冗余操作適應能力強,對用戶操作規(guī)范性要求低。
在解決以上問題的基礎上,本論文提出了一種基于行為序列對比的需求智能挖掘方法,可以自動分析用戶操作行為,提取具有高度自動化潛力的重復性工作,從而生成需求定義文檔和RPA流程。
二、需求智能挖掘的構建
(一)多模塊協(xié)同的功能架構設計
需求智能挖掘可劃分為數據采集、數據處理、數據輸出三個模塊,其功能架構見圖1。
110數據采集模塊:采集用戶操作數據,基于111應用數據采集模塊及112鍵盤鼠標監(jiān)聽模塊,獲取用戶在計算機上的各項操作信息。通過111應用數據采集模塊獲取操作目標應用中窗口信息及元素信息,112鍵盤鼠標監(jiān)聽模塊監(jiān)聽鍵盤鼠標事件。
120數據處理模塊:接收用戶操作數據,經由121行為序列切分模塊,基于時間間隔對用戶操作數據進行切分,以輸出多項行為序列,再由122行為序列對比模塊通過聚類將行為序列進行分類,隨后通過行為相似度對比提取公共序列。
130數據輸出模塊:基于公共序列輸出需求定義文檔及RPA流程。
(二)自上而下的需求智能挖掘
圖2是基于AI的需求智能挖掘方法的流程示意圖。
1.用戶操作數據采集
在步驟S201中,數據采集模塊將持續(xù)采集用戶與計算機的交互操作數據并生成操作日志。
數據采集模塊示意圖如圖3所示。
該模塊由數據采集器及元素識別模塊組成。301數據采集器通過監(jiān)聽用戶鍵鼠操作信息觸發(fā)行為記錄用戶動作,通過元素識別模塊調用302瀏覽器插件、303MSHTML組件及304應用識別器對操作目標進行識別。
將操作目標劃分為305瀏覽器及306桌面應用程序,在用戶進行鍵鼠操作時,首先獲取操作窗口信息,判斷目標窗口類型。若為目標窗口瀏覽器,則可以瀏覽器通信并獲取操作目標元素信息,此處以Chrome/FireFox瀏覽器插件、MSHTML方式為例實現通信功能,實際應用過程中可以拓展至其他瀏覽器通信方式。通過與瀏覽器通信獲取操作目標元素的XPath、JSPath等信息,以此作為目標元素標識。若為桌面應用程序,則可通過應用元素識別獲取程序窗口中的目標元素信息。
數據采集模塊接收到用戶鍵鼠操作時,記錄本次事件類型及事件值,事件類型為鍵盤/鼠標,事件值為本次操作擊鍵值,例如鼠標事件-左擊、鍵盤事件-a等。在實際操作活動中,用戶鍵盤操作有單次按鍵、組合按鍵及連續(xù)按鍵等行為,為提高后期序列提取的準確率,此處需對鍵盤事件進行處理,包括但不限于記錄并整合用戶的組合鍵、連續(xù)鍵盤輸入事件。
通過以上步驟獲取事件時間、事件類型、目標窗口信息以及目標元素信息,將其作為一個行為日志進行存儲。
2.行為序列切分
在步驟S202中,數據處理模塊從數據采集模塊獲取用戶操作數據后,分析各條用戶操作時間,根據其時間間隔將用戶操作數據的多條行為組合為用戶操作行為序列,以此將操作數據切分為多個行為序列,每個行為序列即為一項工作的操作流程。
3.行為序列聚類
在步驟S203中,基于步驟S202輸出的行為序列集合進行聚類,同類中的行為序列即為相同內容的工作任務。可聚類的工作任務即為具有高度自動化潛力的重復性工作。
聚類作為一種重要的無監(jiān)督學習方法,在處理大規(guī)模無標記數據時被廣泛應用。它通過算法將數據分成多個簇,其中同一簇中的數據具有很高的相似性,而不同簇中的數據則盡可能地不同,從而更有效地提取數據信息。本論文基于聚類將用戶操作行為序列劃分為若干個序列類,各序列類分別為一項重復性工作的行為序列集合。基于該步驟方法的行為序列聚類實現步驟如下:
(1) 冗余行為處理
用戶進行計算機操作過程中會不可避免地出現冗余操作,該冗余操作與實際工作內容雖無關聯,卻會干擾聚類效果,降低RPA流程挖掘效率,因此,行為序列聚類的第一步,是去除行為序列中的冗余行為。
去除冗余行為的具體方法是,將各行為序列進行比對,獲取各行為的出現頻率,將出現頻率低于閾值的行為視作冗余操作,將其從行為序列中刪除。由此可見,閾值的設定決定了系統(tǒng)對冗余操作的容忍程度,且閾值的判定條件既可為頻率,也可為頻數,該項的設定參數可由實際應用場景決定,例如,將頻數閾值設置為1時,則將僅在單個序列中出現的行為刪除。
(2)行為信息分詞預處理
行為序列聚類時需對各行為信息進行預處理,其中,對行為窗口信息、元素信息等內容需進行分詞處理。
分詞是自然語言處理中的關鍵預處理步驟,它將文本劃分為更小的語義單元,即詞語,從而便于后續(xù)的分析和應用。與英文單詞之間由空格自然分隔不同,中文文本中的詞語之間沒有顯式的分隔,這使得中文分詞的難度更大。
主流的中文分詞算法可以分為兩大類:
一是基于詞典的字符串匹配算法,這種方法依賴于建立一個全面的詞典庫,通過詞典中的詞條來匹配文本字符串。分詞的結果完全取決于詞典的內容。該方法根據匹配的方向和優(yōu)先級不同,可以分為正向最大匹配法、逆向最大匹配法和雙向匹配法。利用優(yōu)化的存儲數據結構和查找算法(如哈希表和索引樹),這類方法可以實現高效的線性時間復雜度。然而,這種方法對詞典之外的新詞和歧義詞的處理效果不佳。
二是基于統(tǒng)計機器學習的分詞,這類方法包括生成式模型(如隱馬爾可夫模型 HMM)和判別式模型(如條件隨機場模型 CRF)。與詞典匹配不同,這些方法不直接依賴詞為單位,而是對每個字進行標注,考慮上下文的關系,通過對標注序列 Y 的聯合概率(HMM)或條件概率(CRF)建模,預測觀測序列 X 在標注序列 Y 后的出現概率,從而構成詞語。這些方法不依賴于詞典,能夠較好地處理新詞和歧義詞的問題。
這里的行為信息分詞可基于以上任意一種方法或二者結合,以實現精確模式的分詞處理。
(3)基于停用詞的降噪處理
在語言中,一些詞語雖然出現頻率極高,但實際上沒有具體意義,這類詞語被稱為停用詞(stopwords)。為了避免這些詞語干擾后續(xù)的行為文本特征提取,可以利用停用詞表來剔除分詞結果中的停用詞,可自定義停用詞表,也可使用現有停用詞表,包括但不限于哈工大停用詞表、百度停用詞表等。
(4)基于自定義詞典的高準確率分詞
不管是標準分詞器、NLP分詞器還是索引分詞器,都不可能每次都能準確實現目標結果的分詞。當前互聯網下常出現自定義名詞,例如:“證券”“信托”“需求智能挖掘”等,分詞功能對長語句處理準確率較低。為彌補該缺陷,需利用用戶自定義詞典,以記錄常用詞,從而幫助分詞器基于詞典實現高準確率分詞。
當本論文方法應用于企業(yè)自動化流程挖掘時,可針對企業(yè)所處目標領域,選擇專業(yè)領域知識詞典用于支持分詞器進行細致分詞,例如,收集金融領域特定專用詞,構建金融領域詞典,以此提高本方法在銀行、證券等領域內企業(yè)應用時,行為序列類別劃分的準確度。
(5)行為文本特征提取
在行為序列中,窗口信息和元素信息中的文本內容不能被計算機直接識別。因此,uHAGzi5rZLnXqqI7A/gVLA==需要在盡可能保留文本特征的情況下,將這些文本進行向量化表示。在自然語言處理中,詞是包含特定含義的基本單元,將詞映射到實數域的向量中,得到的詞向量是最常用的文本特征表示方法。這種映射方式通常分為兩種:一種是離散式表示,另一種是分布式表示。
①離散式表示
離散表示中的詞特征通?;谠~袋模型(Bag of Words,簡稱BOW)。該模型忽略了文本中的語義、詞序和結構等信息,僅將文本看作一系列構成文本的詞形成的無序集合。例如:獨熱編碼(one-hot encoding) 和 詞頻-逆文檔頻率。
② 分布式表示
詞向量的分布式表示也被稱為詞嵌入,是指詞的語義由其上下文決定。語義相近的詞通常具有相似的向量表示。例如:谷歌開源的直接獲得低維詞向量工具 Word2Vec。
基于上述行為文本特征提取方法,將行為序列轉化為對應向量,以支持后續(xù)的聚類輸入。
(6)行為序列聚類
常用的聚類算法主要包括三種方法:密度法(Density-based Method),劃分法(Partitioning Method)和層次法(Hierarchical Method)。具體而言,可以采用K-Means聚類算法、分裂層次聚類算法(Divisive Clustering)、凝聚層次聚類算法等。
基于上述方法將行為序列向量集合輸入,基于聚類算法將行為序列集合劃分為多個行為序列類簇,各類簇分別代表一項具備自動化潛力的重復性工作。
4.公共序列提取
在步驟S204中,將基于S203輸出的多個行為序列類提取出各類重復性工作的公共序列。在用戶進行計算機操作時會不可避免地出現冗余操作,因此在進行同一項工作任務的過程中必然會存在冗余動作,導致操作步驟存在細微差異。為保證后期輸出簡潔高效的RPA流程,需要去除冗余操作,獲取可實現目標任務的標準流程。
為實現這一目的,則需分析對比同類行為序列并提取出公共序列。該公共序列為可實現目標任務的最短行為序列。此項工作分為行為一致性判定及行為序列對比兩部分。
(1)行為一致性判定
行為一致性判定是指基于行為事件、目標窗口及元素信息三個維度,判斷兩個行為是否一致。
行為事件判斷的原則如下:
② 事件類型不一致,則判定行為不一致;
③ 事件類型一致,如同為鼠標事件,但鼠標按鍵不一致,則判定行為不一致;
④ 事件類型一致,如同為鍵盤事件,按文本輸入組合、特殊鍵值組合等組合劃分鍵盤鍵值,若不屬同一組合則判定行為不一致。
目標窗口判斷條件則直接對操作目標窗口信息進行判別,若操作目標窗口不一致則認為行為不一致。
元素信息判斷條件則是通過NLP計算兩個行為目標元素的相似度并以此為標準判定用戶行為的一致性。
(2)行為序列對比
行為序列對比是指基于行為一致性判定規(guī)則對比多條行為序列,從中提取公共序列。對比示例圖如圖4所示,基于行為一致性判定規(guī)則,獲取401序列、402序列及403序列中的最長公共子序列,其中,子序列在各原序列中可以不連續(xù),由此得到最長子序列為404,其余行為則可視為冗余行為予以舍棄。
此處僅以三序列的0d151c8c3cf7a05b5c165e577b9cacb7對比作為示例,實際應用過程中,可對同類中所有序列進行公共序列提取。
通過行為一致性判定及行為序列對比,可輸出同一行為序列類簇中的公共序列,該公共序列可作為此類行為序列的標準流程。對S203聚類輸出的各個類簇均采用上述方法提取公共序列,以此分析用戶所有的業(yè)務工作流程。
5.需求定義文檔輸出
步驟S205:基于S204輸出的公共序列,根據各個行為的事件、操作目標窗口及元素信息生成需求定義文檔,文檔中寫明具有高度自動化潛力的工作具體步驟及人工執(zhí)行耗時,該文檔可作為后續(xù)RPA需求分析依據。
三、 應用優(yōu)勢
基于行為序列對比的需求智能挖掘方法,采用基于事件、目標窗口及元素信息的行為一致性校驗規(guī)則及行為序列提取方法,相比于直接對比事件相似度的方法,本方案對操作不同窗口中相似元素、同一操作中不同鍵值輸入情況具有更高的識別準確率。相較于現有技術中要求操作序列完全一致或開始行為一致的方法,本方案采用最長公共子序列提取方法實現公共序列解析,對用戶冗余操作容忍度高,無需指定序列開始行為?;跁r間間隔的行為序列自動切分方案,避免現有技術中要求用戶手動指定序列開始及結束的缺陷,完全無需人工介入操作,提高了該方案的自動化程度。
四、 結束語
本文提出了一種基于行為序列對比的需求智能挖掘方法,主要應用于RPA、人工智能和界面自動化領域。該方法通過采集用戶操作日志,分析并切分行為序列,然后通過聚類和行為相似度對比提取公共序列,最終生成需求定義文檔和RPA流程。本方法具有較高的自動化程度和魯棒性,可以有效提高需求分析和流程設計的效率。在需求分析階段,傳統(tǒng)的人工方式耗時長且效率低,本方法通過自動實現需求分析并輔助流程設計,大大提高了需求分析效率。在流程設計階段,本方法通過對用戶工作的自動解析提取具備自動化潛力的流程,為后續(xù)的RPA實施提供了便利。此外,本方法還具有較強的魯棒性。在行為相似度檢測方面,本方法通過事件信息、窗口信息以及操作目標元素XPath三個維度評判行為相似度,可以適應多種情況下的行為相似度對比操作。在行為序列提取方面,本方法基于聚類實現公共序列獲取,對冗余操作適應能力強,對用戶操作規(guī)范性要求低。
總的來說,本文提出的需求智能挖掘方法具有很高的實用價值,不僅可以提高需求分析和流程設計的效率,還可以提高RPA的實施效果。
基于RPA實施效果的提升,本方法將持續(xù)為企業(yè)自動化轉型工作賦能,通過記錄并識別員工工作中具有高度自動化潛力的任務,以此為基礎輸出RPA需求文檔及自動化流程,推進后續(xù)RPA實施工作,降低需求挖掘及流程設計成本,進一步推動企業(yè)自動化及數字化轉型。此外,通信、金融及物流等業(yè)務流程重復性高的行業(yè)具有極高的RPA自動化潛力,RPA產品應用前景廣闊。
作者單位:付兵蘭 寇晨輝 劉春林 彭偉軍 陳國
中移信息技術有限公司
付兵蘭(1981.04-),女,漢族,湖南漣源,碩士,研究方向:RPA、云計算;
寇晨輝(1999.07-),男,漢族,陜西咸陽,學士,研究方向:RPA、云計算;
劉春林(1978.09-),男,漢族,湖南衡陽,學士,研究方向:RPA、云計算、人工智能;
彭偉軍(1973.10-),男,漢族,廣東汕尾,學士,研究方向:RPA、云計算、人工智能;
陳國(1977.11-),男,漢族,山東萊蕪,碩士,研究方向:RPA、區(qū)塊鏈、云計算、人工智能、算力網絡。