趙嬌嬌,趙書良,郭曉波,劉軍丹
1.河北師范大學 數學與信息科學學院,石家莊 050024
2.河北省計算數學與應用重點實驗室,石家莊 050024
3.河北師范大學 移動物聯網研究院,石家莊 050024
基于自然語言生成的關聯規則可視化方法
趙嬌嬌,趙書良,郭曉波,劉軍丹
1.河北師范大學 數學與信息科學學院,石家莊 050024
2.河北省計算數學與應用重點實驗室,石家莊 050024
3.河北師范大學 移動物聯網研究院,石家莊 050024
關聯規則挖掘是數據挖掘[1]的一個重要方向,其目的是從數據集中發現屬性間存在的有趣關聯或相關模式,從而發現對用戶有價值的知識和信息,幫助用戶制定科學的決策,因此,如何有效地展示關聯規則挖掘結果是至關重要的。目前,關聯規則可視化研究受到國內外計算機科學工作者的廣泛關注[2-7]。文獻[8]提出將平行坐標技術應用到關聯規則可視化中,較好地利用了圖形的表達能力,然而,展示結果容易出現交錯現象,規則的可理解性較差,不利于普通用戶深入分析和研究;文獻[9]使用2D矩陣技術(全局展示)和魚眼視圖技術(細節呈現)相結合的方法較好地展示了大數據量的關聯規則,但該方法的展示形式不利于非專家用戶理解;文獻[10]利用Java3D可視化技術的特點,將關聯規則通過三維坐標的顏色、圖形及三維屬性表示出來,較好地利用了人對于色彩和形狀敏銳的感知能力,有利于專家用戶觀察和分析關聯規則,但尚未考慮到非專家用戶對色彩和形狀的理解能力和水平。現階段多數關聯規則可視化研究工作大都存在以下不足:展示結果一般面向數據挖掘領域的專家用戶,不利于普通用戶分析和使用;單純的關聯規則蘊含式表示方式可理解性較差等。對于上述問題而言,不具備數據挖掘知識背景的普通用戶無法很好地理解并使用這些關聯規則。
可視化技術已經成為一種有效的知識表示手段,關聯規則挖掘結果的可視化展示也應更加面向大眾化,更加貼近普通用戶的需求,因為并非所有用戶都能理解“金銀花津液∧荊芥 =>薄荷冰,(support=3%,confidence= 71%)”[11]所表達的知識和信息。
本文提出了一種新的基于自然語言生成的關聯規則可視化方法NLG-AR(Natural Language Generation-Association Rules),將自然語言生成技術引入關聯規則可視化中,首先通過領域知識庫中解釋模式將關聯規則中每一項生成簡單的自然語言句子,然后通過合并規則生成概括的自然語言句子,最后通過解釋模板生成流暢的具體自然語言句子,使得不具備數據挖掘知識的普通用戶也能理解和運用挖掘出來的有價值的關聯規則信息。
本文提出了一種基于自然語言生成的關聯規則可視化方法NLG-AR,將關聯規則、支持度和置信度作為方法的輸入,相關領域的自然語言句子作為方法的輸出。
2.1 NLG-AR方法結構
NLG-AR方法采用自然語言生成的經典管道技術[12-13],如圖1所示,主要包括三步:內容規劃、句子規劃和表層實現,具體內容如下:
內容規劃:輸入參數(包括支持度和置信度)和關聯規則的前件、后件項集。首先,分別對關聯規則的前件項集、后件項集、支持度和置信度進行形式化定義;然后,從知識庫中調用預定義的解釋模式,對關聯規則中前件項集和后件項集的每一項進行句子解釋,生成的句子稱為單項句子解釋。
句子規劃:內容規劃中生成的單項句子解釋作為輸入,從知識庫中調用合并規則,分別對關聯規則前件項集和后件項集生成的單項句子解釋進行合并,生成的句子稱為多項句子解釋;然后將這兩個多項句子解釋進行合并,生成概括的自然語言句子。

圖1 NLG-AR方法結構圖
表層實現:本方法采用基于模板的表層實現。概括句子解釋、多項句子解釋、支持度和置信度作為輸入,生成最終具體的自然語言句子。
2.2 NLG-AR領域知識庫
領域知識庫是NLG-AR方法的重要組成部分,在關聯規則生成自然語言句子過程中起著關鍵作用,主要由解釋模式、合并規則和解釋模板構成。
2.2.1 單維關聯規則的解釋模式
本文提出的方法主要面向單維關聯規則的自然語言解釋,即關聯規則中的項或屬性涉及一個維,例如:關聯規則buys(A)=>buys(C),它只涉及一個維buys。
一般中文自然語言句子由“主謂賓”三個部分構成,因此,本文引用RDF語義關系三元組[14]<subject,predicate,object>的形式,設計了通用的單維關聯規則的自然語言解釋模式:
定義1解釋模式 pattern(s,p,o),s表示句子解釋的主語,p表示句子解釋的謂語,o表示句子解釋的賓語。設 I={I1,I2,…,Im}是項的集合,關聯規則 A?B定義在 I上,其中 A?I,B?I,并且A∩B=?。X={X1,X2,…,Xk,…},Xi是相關領域詞匯。那么 s、p、o 中有且只有一項屬于A∪B,其余兩項必屬于X。
針對特定領域,解釋單維關聯規則時,用戶需定義符合自己領域的具體模式。以治療感冒的中藥專利數據集上挖掘出的關聯規則“金銀花津液∧荊芥 =>薄荷冰”為例,解釋模式為 pattern(s,p,o),s、p 屬于相關領域詞匯,s為“治療感冒的中藥方劑”,p為“含有”,o屬于關聯規則中的項,o∈{金銀花津液,荊芥,薄荷冰}。選取關聯規則中任一項(例如:薄荷冰)代入解釋模式后,變為pattern(治療感冒的中藥方劑,含有,薄荷冰)。
定義2對解釋模式的實例化,稱之為事實,事實是與自然語言句子解釋直接對應的。
例1pattern(治療感冒的中藥方劑,含有,薄荷冰)即為一個事實,表示的自然語言句子為“治療感冒的中藥方劑含有薄荷冰”。
2.2.2 合并規則
為了保證生成的句子自然順暢,若兩個事實之間存在相同的組成內容,需進行適當地合并。針對已定義的解釋模式,定義了三種通用的合并規則:
規則1模式主語不同(謂語和賓語相同),則合并規則為pattern(s1,p,o)+pattern(s2,p,o)=pattern(s1s2,p,o)。
例2兩個事實分別為pattern(治療感冒的中藥方劑,含有,薄荷冰)和pattern(清涼油,含有,薄荷冰),經過規則1合并后成為pattern(治療感冒的中藥方劑、清涼油,含有,薄荷冰),表示的自然語言句子為“治療感冒的中藥方劑和清涼油都含有薄荷冰”。
規則2模式謂語不同(主語和賓語相同),則合并規則為pattern(s,p1,o)+pattern(s,p2,o)=pattern(s,p1p2,o)。
例3兩個事實分別為pattern(某中藥方劑,預防,感冒)和pattern(某中藥方劑,治療,感冒),經過規則2合并后成為pattern(某中藥方劑,預防、治療,感冒),表示的自然語言句子為“某中藥方劑預防和治療感冒”。
規則3模式賓語不同(主語和謂語相同),則合并規則為pattern(s,p,o1)+pattern(s,p,o2)=pattern(s,p,o1o2)。
例4兩個事實分別為pattern(治療感冒的中藥方劑,含有,薄荷冰)和pattern(治療感冒的中藥方劑,含有,金銀花津液),經過規則3合并后成為pattern(治療感冒的中藥方劑,含有,薄荷冰、金銀花津液),表示的自然語言句子為“治療感冒的中藥方劑含有薄荷冰和金銀花津液”。
2.2.3 解釋模板
支持度和置信度是關聯規則的自然語言句子解釋中不可或缺的組成部分。為了保證對關聯規則解釋的完整性,將支持度和置信度兩個重要參數加入到自然語言句子解釋中。于是,設計了兩種解釋模板[15]:
模板 1template1(patterns,sup),與支持度有關,其中patterns為一個事實,代表概括句子解釋,sup為關聯規則的支持度。
例5存在事實patterns=pattern(治療感冒的中藥方劑,含有,薄荷冰)和支持度sup=1%,代入模板1后,表示的自然語言句子為“1%的治療感冒的中藥方劑含有薄荷冰”。
模板 2template2(pattern1,pattern2,conf),與置信度有關,其中pattern1和pattern2分別為一個事實,pattern1代表關聯規則前件項集的多項句子解釋,pattern2代表關聯規則后件項集的多項句子解釋,conf為關聯規則的置信度。其中該模板涉及多組連詞,可隨機生成。
例6存在兩個事實pattern1=pattern(治療感冒的中藥方劑,含有,薄荷冰)、pattern2=pattern(治療感冒的中藥方劑,含有,荊芥)和置信度conf=70%,代入模板2后,表示的自然語言句子為“如果治療感冒的中藥方劑含有薄荷冰,則治療感冒的中藥方劑會含有荊芥,其可能性為70%”或者為“若治療感冒的中藥方劑含有薄荷冰,那么治療感冒的中藥方劑會含有荊芥,其可能性為70%”。
2.2.4 關聯規則的形式定義
關聯規則輸入格式為:A=>C(support,confidence),依次為前件項集A、后件項集C、支持度support和置信度confidence。首先,將前件項集A中每一項定義為ai,其中i=1,2,…,n;后件項集C中每一項定義為ci,其中i=1,2,…,n,便于生成單項句子解釋。然后,分別定義支持度和置信度兩個重要參數為sup和conf。
2.3NLG-AR算法
基于自然語言生成的單維關聯規則可視化方法結構圖,如圖1所示。
算法具體步驟如下:
輸入:關聯規則A=>C(support,confidence)
輸出:概括句子解釋和具體句子解釋
(1)構建領域知識庫中的合并規則和解釋模板,定義具體領域的解釋模式pattern(s,p,o)。
(2)根據預定義格式,對輸入的關聯規則進行形式化定義:前件項集中每一項定義為ai,其中i=1,2,…,n;后件項集中每一項定義為ci,其中i=1,2,…,n;支持度和置信度分別定義為sup和conf。
(3)調用(1)中的解釋模式pattern(s,p,o),將(2)中定義的前件項集中每一項代入pattern中,迭代生成多個單項句子解釋,分別為事實pattern_ai,其中i=1,2,…,n;類似地,將(2)中定義的后件項集中每一項代入pattern中,迭代生成多個單項句子解釋,分別為事實pattern_ci,其中i=1,2,…,n。
(4)調用(1)中的合并規則,迭代合并(3)中生成的單項句子解釋pattern_ai,得到合并后的多項句子解釋pattern1;類似地,迭代合并(3)中生成的pattern_ci,得到合并后的多項句子解釋pattern2。
(5)繼續調用(1)中的合并規則,將(4)中生成的多項句子解釋pattern1和pattern2合并生成patterns,得到概括句子解釋。
(6)最后將(2)中定義的sup和conf,以及(5)中生成的patterns和(4)中生成的pattern1、pattern2分別代入(1)中預定義的模板template1和template2,生成最終的具體句子解釋。
本文以治療感冒的中藥專利數據集為例,將其挖掘出的關聯規則:金銀花津液∧荊芥 =>薄荷冰,(support= 3%,confidence=71%),運用NLG-AR方法生成自然語言句子,便于非數據挖掘領域的中藥專家了解中醫藥數據庫中中藥方劑的配伍規律,為中醫新藥的研制提供指導信息。
3.1 領域知識庫的構建
定義中藥領域的具體解釋模式為:pattern(治療感冒的中藥方劑,含有,o),o為關聯規則中的項,構建領域知識庫,包括定義的pattern、預設計的合并規則和解釋模板。
3.2 形式定義關聯規則
根據預定義的格式,前件項集中每一項分別定義為“a1=金銀花津液,a2=荊芥”,后件項集中每一項定義為“c1=薄荷冰”,支持度定義為“sup=3%”,置信度定義為“conf=71%”。
3.3 生成單項句子解釋
從知識庫中調用解釋模式pattern,分別將a1、a2和c1代入pattern中,生成pattern_a1=pattern(治療感冒的中藥方劑,含有,a1)、pattern_a2=pattern(治療感冒的中藥方劑,含有,a2)和pattern_c1=pattern(治療感冒的中藥方劑,含有,c1)。
3.4 生成多項句子解釋
因為預定義的解釋模式是賓語不同,所以調用合并規則的規則3。首先,根據規則3對前件項集生成的單項句子解釋,即pattern_a1和pattern_a2合并生成pattern1=pattern(治療感冒的中藥方劑,含有,a1、a2);因后件項集只生成了一個單項句子解釋,所以不再需要合并,即pattern2=pattern_c1=pattern(治療感冒的中藥方劑,含有,c1)。
類似,根據規則3,合并pattern1和pattern2生成概括句子解釋patterns=pattern(治療感冒的中藥方劑,含有,a1、a2、c1),輸出的概括自然語言句子解釋為“治療感冒的中藥方劑含有金銀花津液、荊芥和薄荷冰”。
3.5 套用模板生成具體解釋
首先,調用與支持度有關的解釋模板1,將patterns代入模板template1中,此時模板成為template1(pattern(治療感冒的中藥方劑,含有,a1、a2、c1),sup),輸出的具體自然語言句子解釋為“3%的治療感冒的中藥方劑含有金銀花津液、荊芥和薄荷冰”。
其次,調用與置信度有關的解釋模板2,將pattern1和pattern2代入template2中,此時模板成為template2(pattern(治療感冒的中藥方劑,含有,a1、a2),pattern(治療感冒的中藥方劑,含有,c1),conf),輸出的自然語言句子解釋為“如果治療感冒的中藥方劑含有金銀花津液和荊芥,則治療感冒的中藥方劑含有薄荷冰,其可能性為71%”。
最后,輸出關聯規則的最終自然語言句子解釋為:具體地講,3%的治療感冒的中藥方劑含有金銀花津液、荊芥和薄荷冰;如果治療感冒的中藥方劑含有金銀花津液和荊芥,則治療感冒的中藥方劑含有薄荷冰,其可能性為71%;概括地講,中藥的配伍規律為:治療感冒的中藥方劑含有金銀花津液、荊芥和薄荷冰。
目前存在多種關聯規則展示技術,主要可以概括為兩類:基于表的可視化技術和基于圖形的可視化技術。下面介紹這兩種可視化技術,并分析各自的優缺點。
基于表的可視化技術:類似于關聯規則的原始蘊含式描述形式,用表結構文字化描述關聯規則(如表1),表中的每一行描述一條關聯規則,每一列分別描述關聯規則中的參數,包括規則的前件、后件、支持度和置信度。此方法的優點是能夠利用表的基本操作,對感興趣的列(如支持度)進行排序,存在的不足是對普通用戶而言可理解性差,不具有數據挖掘背景的非專家用戶難以理解挖掘出的關聯規則,降低了用戶體驗,導致無法充分利用挖掘出的價值信息。

表1 基于表的關聯規則可視化
基于圖形的可視化技術[16]:包括基于平行坐標的可視化技術(如圖2)、基于矩陣的可視化技術(如圖3)等。此類方法將關聯規則映射成不同的圖形原語,例如位置、形狀、顏色和大小。此類方法的優勢是充分利用圖形和圖像的表達能力以及人對于色彩和形狀敏銳的感知能力,利于數據挖掘領域的專家用戶方便深入地對結果進行觀察和分析,但是特別要求用戶對色彩和形狀有敏銳的感知能力,普通用戶很難達到這個要求,所以此類方法對普通用戶來說,易理解性較差。

圖2 基于平行坐標的可視化技術

圖3 基于矩陣的可視化技術
本文以中藥專利數據庫中挖掘出的關聯規則為數據源,開發了基于NLG-AR的關聯規則可視化原型系統,該系統不僅提供了友好的人機交互接口,而且用戶可以按照支持度(或者置信度)對關聯規則進行重新排序,選擇自己感興趣的規則,生成自然語言句子。例如,用戶按照支持度遞增的順序顯示關聯規則,并選擇關聯規則“金銀花津液∧荊芥 =>薄荷冰”進行自然語言句子的生成,如圖4所示。與表1、圖2和圖3相比,顯然關聯規則的自然語言表示方法更簡單易懂。

圖4 基于NLG-AR的關聯規則可視化原型系統
另外,邀請23名來自不同單位的中醫中藥領域的研究人員和管理者對本方法和圖形可視化方法進行了評價。下面為反饋結果:
(1)對于圖形可視化的展示:相對抽象,不易理解挖掘項之間的聯系,一些用戶反映自身對顏色不夠敏感,更增加了理解關聯規則的難度。
(2)對于自然語言可視化的展示:簡單易懂,準確地了解了挖掘項之間的關系,對于不具有數據挖掘背景知識的用戶直觀地掌握了中藥方劑的配伍規律。
通過原型系統展示和用戶驗證,可見本文提出的基于自然語言生成的關聯規則可視化方法,通過自然語言生成技術將半形式化的關聯規則解釋成大眾化的自然語言,提升了非專家用戶的體驗,增強了挖掘結果的易理解性,促進了今后數據挖掘研究面向更多的終端用戶,利于數據挖掘技術應用于更廣泛的領域。
本文提出了一種基于自然語言生成的單維關聯規則可視化新方法。結合自然語言生成技術,提出了通用的解釋模式、合并規則和解釋模板,將關聯規則解釋成易于理解的自然語言,便于普通用戶使用。通過實際數據對本文方法進行具體驗證和分析,表明本文方法能夠有效地滿足非專家用戶對挖掘出的關聯規則的理解和運用,提升了關聯規則的應用價值。在下一步的研究中,將針對如何有效地對多維關聯規則進行自然語言生成的問題進行深入分析和研究。
[1]Han J W,Kamber M,Pei J.Data mining concepts and techniques[M].Burlington:Morgan Kaufmann Publishers,2012.
[2]Li Yang.Pruning and visualizing generalized association rules in parallelcoordinates[J].IEEE Transactions on Knowledge and Data Engineering,2005,17(1):60-70.
[3]羅建,晏華.基于java技術的關聯規則可視化新方法及實現[J].計算機工程與科學,2008,30(11):31-33.
[4]Blanchard J,Pinaud B,Kuntz P,et al.A 2D-3D visualization support for human-centered rule mining[J].Computers and Graphics,2007,31(3):350-360.
[5]Coutuier O,Hamrouni T,Yahia B S,et al.A scalable association rule visualization towards displaying large amounts of knowledge[C]//the 11th International Conference Information Visualization.Washington DC:IEEE Computer Society,2007:657-663.
[6]Liu G,Suchitra A,Zhang H J,et al.AssocExplorer:an association rule visualization system forexploratory data analysis[C]//Proceedings of the 18th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining.New York:ACM Publisher,2012:1536-1539.
[7]Noraziah A,Abdullah Z,Herawan T,et al.WLAR-Viz:weighted least association rules visualization[C]//3rd International Conference on Information Computing and Applications.Berlin:Springer,2012,7473:592-599.
[8]Li Y.Visualizing frequent itemsets,association rules,and sequential patterns in parallel coordinates[C]//International Conference on Computational Science and Its Application.Berlin,Heidelberg:Springer-Verlag,2003,2667:21-30.
[9]Couturier O,Rouillard J,Chevrin V.An interactive approach to display large sets ofassociation rules[C]//Symposium on Human Interface.Berlin,Heidelberg:Springer-Verlag,2007,4557:258-267.
[10]易先卉,彭黎.基于三維坐標的關聯規則可視化新技術[J].計算機工程,2008,34(22):57-59.
[11]錢增瑾,辛燕,鞠時光.基于中藥專利數據集的關聯規則發現算法[J].計算機應用研究,2007,24(7):61-63.
[12]Reiter E,Dale R.Building natural language generation systems[M].Cambridge:Cambridge University Press,2000:41-77.
[13]McCoy K F.Natural language generation and assistive technologies[C]//Proceedings of the 7th International NaturalLanguage Generation Conference.Stroudsburg:Association for Computational Linguistics,2012.
[14]閆秋艷,夏士雄.一種基于自然語言生成的XML關鍵字查詢技術[J].計算機工程與應用,2008,44(26):150-153.
[15]Cullen C,O’Neill I,Hanna P.Human language technology[M]//Flexible natural language generation in multiple contexts.Berlin,Heidelberg:Springer-Verlag,2009:142-153.
[16]Bruzzese D,Davino C.Visual mining of association rules[C]//Visual Data Mining.Berlin:Springer-Verlag,2008,4404:103-122.
ZHAO Jiaojiao,ZHAO Shuliang,GUO Xiaobo,LIU Jundan
1.College of Mathematics and Information Science,Hebei Normal University,Shijiazhuang 050024,China
2.Hebei Key Laboratory of Computational Mathematics and Applications,Shijiazhuang 050024,China
3.Institute of Mobile Internet of Things,Hebei Normal University,Shijiazhuang 050024,China
For non-expert users,the general text association rules are hardly understood,moreover graphical visualization in the traditional sense is just popular for experts in the data mining field.To address these problems,a novel visualization methodology of association rules is proposed based on the Natural Language Generation(NLG),which introduces NLG technology to the association rules visualization.The proposed approach can interpret the items of rules as ordinary natural language by using the interpretation schema in the domain knowledge base,and ultimately generates the smooth and easy natural language sentences through sentence planning and surface realization.The experiments show that the results obtained by this approach are more easily understood to the non-expert users,and help them make accurate decisions by taking full advantage of value of information gained in the mining process.
natural language generation;association rules;visualization;domain knowledge base
針對傳統的關聯規則蘊含式表示方式和圖形可視化方法對非專家用戶來說不易理解的問題,提出了一種新的基于自然語言生成的關聯規則可視化方法。該方法將自然語言生成技術引入到關聯規則可視化中,通過領域知識庫中的解釋模式將關聯規則中每一項生成簡單的自然語言句子,并經過句子規劃、表層實現,最終生成流暢的自然語言句子。實驗最終得出的結果,便于普通用戶理解和應用,從而幫助用戶獲取更有價值的信息。
自然語言生成;關聯規則;可視化;領域知識庫
A
TP391
10.3778/j.issn.1002-8331.1301-0009
ZHAO Jiaojiao,ZHAO Shuliang,GUO Xiaobo,et al.Visualization method of association rules based on natural language generation.Computer Engineering and Applications,2014,50(23):122-126.
河北省科學技術研究與發展計劃項目(No.072435158D,No.09213515D,No.09213575D);河北師范大學碩士基金資助項目(No.201102002)。
趙嬌嬌(1986—),女,碩士研究生,CCF學生會員,研究領域為自然語言處理、智能信息處理;趙書良(1967—),通訊作者,男,博士,教授,研究領域為智能信息處理;郭曉波(1986—),男,碩士研究生,研究領域為數據挖掘、智能信息處理;劉軍丹(1987—),女,碩士研究生,研究領域為應用數學、智能信息處理。E-mail:zhaojiaojiao2013@163.com
2013-01-05
2013-02-18
1002-8331(2014)23-0122-05
CNKI網絡優先出版:2013-04-08,http://www.cnki.net/kcms/detail/11.2127.TP.20130408.1648.020.html