摘 要: 以用詞嚴謹、規范性極強的刑事判決書作為文本分析的對象,提取文書中的量刑情節語義。提出了一種異于依存句法分析的方法,該方法將句子抽象成若干元素,把這些元素的組成稱之為句型結構。識別語義的過程就是識別結構類型,根據具體的結構類型分別提取其語義。該識別方法中,正則文法起到了關鍵作用,即采用正則表達式識別元素,使用正則文法定義結構類型。雖然該方法目前只應用在刑事判決書上,但也為類似問題的解決提供了思路。
關鍵詞: 數據分析; 正則文法; 正則表達式; 句型
中圖分類號:TP311 文獻標志碼:A 文章編號:1006-8228(2015)10-33-03
Abstract: Taking the criminal judgment, which is carefully worded and strong normative, as a text analysis object, extracts the sentencing circumstances semantic from it. This paper proposes a method, in which a sentence is abstracted into several elements and the composition of the elements is called sentence structure, it is different from the dependency parsing. The process of recognizing semantics is to identify the structure type, according to the specific type of structure to extract the semantics respectively. In this recognition method, the regular grammar plays a key role that is to use regular expressions to identify elements and use regular grammar to define the structure type. Although this method is only used in the criminal judgment, it also provides a way to solve the similar problem.
Key words: data analysis; regular grammar; regular expression; sentential form
0 引言
隨著辦公電子化的全面實現,各政府機關單位每年都會產生大量不同類型的電子文件。提供這些文件的內容搜索服務,僅僅是數據信息的基本利用。
在這些電子文件中,如果有某類文件用詞規范、結構性強,那么在對這類文件進行更深入的信息挖掘與分析后,或許能得到一些有用的結論。
1 數據信息與句法分析
就數據信息而言,大致分為結構化信息和文本信息。結構化信息一般來自于數據庫,信息內容有嚴格的格式約束[1];而文本信息根據結構不同,可分為自由文本和半結構化文本。自由文本由于格式隨意和內容多樣,不易歸納;半結構化文本介于結構化信息和自由文本之間,有一定的格式要求,但因內容不同而又有一定的不確定性。可將有一定格式的文本拆分成語句塊后再做句法分析。
所謂句法分析,就是識別該句是否為某文法的一個句型[2]。用文法的規則為該句子構造結構單元來加以識別,確認它是否為該文法的一個句型。
在句法分析中主要采用兩類文法體系:短語結構語法和依存結構語法。短語結構語法采用“短語結構”或“直接成分”作為句法結構分析的對象;依存語法(也稱從屬關系語法)則采用依存結構作為其句法結構分析的對象[3],通過分析詞素之間的依存關系確定其句法結構。
喬姆斯基(Chomsky)分層體系將短語結構語法類型分為四類:0型文法--短語結構文法(PSG);1型文法--上下文有關文法(CSG);2型文法--上下文無關文法(CFG);3型文法--正則文法(RG)。四類文法的關系為RG?CFG?CSG?PSG。
2型上下文無關文法在自然語言的句法分析上應用廣泛,當把統計方法引入上下文無關語法規則系統[4]后,有效提高了標記精確率和標記召回率。這種引入了統計方法的2型文法被稱為概率上下文無關文法(PCFG),著名的斯坦福大學中文文法分析器的移進-規約解析器(Shift-Reduce Parser)就基于此原理實現[5]。本文采用的正則文法在喬姆斯基分層體系里屬3型文法,是特殊的2型文法。
2 正則文法與正則語言
正則文法包含左線性文法和右線性文法。
正則文法生成的語言為正則語言,這個語言能夠為有限狀態自動機(Finite State Automaton)識別并通過正則表達式的轉換實現應用。
下面依據規則簡單構造一個右線性文法G1,得到正則語言L(G1):
3 應用正則文法分析法院刑事判決書
3.1 刑事判決書結構說明
刑事判決書的內容組成一般如下。
⑴ 頭部。法院名稱、判決書類型(刑事判決書)、案號(法院內部給案子的編號)
⑵ 主體。按以下內容依次排列:首先,陳述被告、公訴機關、辯護律師信息等;其次,案由信息,概括性闡述被告人因犯某某罪被起訴、到審理終結的過程;再次,審理過程,重點對犯罪事實的確認等;然后,法院認為,列舉量刑的種種依據、以及相關法律條款;最后,判決情況。
⑶ 落款。列舉法庭審判參與人員,審判日期。
本文重點關注:法院認為段落,種種量刑情節的提取。
3.2 對法院量刑情節做詞法分析、語法分析及語義分析
刑事判決書含有原被告、涉案金額、作案時間、量刑情節、罪名等諸多信息。本文選擇量刑情節做分析說明。為了簡化描述,特以從輕從重的量刑情節為例進行說明。
從輕從重量刑情節大致有以下幾種:法定應當從輕/減輕情節、法定可以從輕/減輕情節、酌定從輕情節、法定從重情節、酌定從重情節。識別情節條件如下。
⑴ 法定應當從輕/減輕情節:未成年人、從犯。
⑵ 法定可以從輕/減輕情節:自首、立功。
⑶ 酌定從輕情節:坦白、認罪態度好、贓款贓物全部或者大部分被追繳、取得被害人諒解。
⑷ 法定從重情節:累犯。
⑸ 酌定從重情節:前科。
刑事判決書“法院認為”段落塊有關量刑情節描述的句子,大多數結構有規律可循。總結出現的量刑情節,以下給出部分句型。(下劃線部分為從輕從重情節)
⑴ 人+情節+處罰
例:被告人某甲如實供述自己的罪行且當庭自愿認罪,本院依法予以從輕處罰。
⑵ 人+(情節+處罰) 循環{2,n}次
例:被告人張某曾因盜竊被判以刑事處罰,五年內再犯,系累犯,予以從重處罰;其如實供述所犯罪行,協助公安機關抓獲其他罪犯,屬立功,予以從輕處罰。
⑶ (人+情節+處罰) 循環{2,n}次
例:被告人李某年滿十六歲未滿十八歲,系從犯,予以減輕處罰;被告人王某歸案后能如實供述,認罪態度較好,予以從輕處罰。
⑷ 情節+人+處罰
例:鑒于贓物已追回,取得被害人諒解,對三被告人張某、李某、王某分別酌情予以從輕處罰。
確定句型類型后,再調用相應的提取函數來提取人、情節、量刑類型(處罰情況)等信息。
結構化的量刑情節數據信息提取后可存成如表1:
由表1可見,從語句中提取量刑情節被分解成:識別被告信息、識別量刑情節信息、識別處罰。這個過程類似編譯原理的詞法分析(被告、罪犯名字、量刑情節、句號、逗號、處罰)、語法分析(根據識別出的被告信息、量刑情節信息、處罰,分析句型)、語義分析與翻譯(根據特定句型提取量刑情節)。
在提取過程中,正則表達式起到了非常巧妙的作用。類比于編譯原理的詞法分析采用詞法分析器,這里是用正則表達式進行匹配;編譯原理的語法分析采用的是遞歸下降分析或者LALR語法分析器,而這里做了一層轉化,用正則表達式去分析。
在刑事判決書文本分析中,類似的應用還有:通過正則文法,識別被告和辯護人之間的關系。例如:
公訴機關XXX檢察院。
被告人某甲。
辯護人張三、李四。
被告人某乙。
被告人某丙。
辯護人王五。
識別的被告人和辯護人對應關系見表2:
4 結束語
本文的核心在于通過正則文法,定義句型結構,識別其語義。正則表達式在用于描述較為復雜的結構時,是一項利器。通過使用正則表達式,省去了用代碼實現復雜的邏輯來識別句子結構類型的過程,并且正則引擎自有的優化也能使執行保持較高的效率,使得開發人員的關注點只放在結構的正則文法表示上。
語義識別目前仍是中文自然語言處理的難題,學術界目前研究較多的是針對新聞類文本的語法識別、淺層語義識別。對于用詞更為嚴謹、規范性極強的政府機關文檔,本文另辟蹊徑,在實踐中找出了一條有效識別語義的方式。
參考文獻:
[1] 胡軍偉,秦奕青,張偉等.正則表達式在Web信息抽取中的應用[J].北京信息科技大學學報,2011.26(6):86-89
[2] 鄭致力.算術表達式解析引擎的設計及實現[D].北京郵電大學,2012.
[3] 彭艷.短語結構語法與依存語法的心理現實性研究[D].上海外國語大學,2007.
[4] 林穎,史曉東,郭鋒.一種基于概率上下文無關文法的漢語句法分析[J].中文信息學報,2006.20(2):1-7,32
[5] The Stanford Parser: A statistical parser [EB/OL].http://nlp.stanford.edu/software/lex-parser.shtml,2002-15-05/2015-04-20.
[6] Kenneth C.Louden.編譯原理與實踐[M].機械工業出版社,2000.