費志偉,艾中良,張 可,曹 禹
1(華北計算技術研究所,北京 100083)
2(中國司法大數據研究院,北京 100043)
近年來,人工智能技術取得了長足的進步,并深入到生活的方方面面,在司法領域也是如此.2018年,司法部印發《“十三五”全國司法行政信息化發展規劃》,明確提出我國到2020年全面建成智能高效的司法行政信息化體系3.0 版.在頂層政策大力推動下,全國各級法院參與研制了多種司法智能裁判輔助系統和裝備,例如,北京市高級人民法院的“睿法官”智能研判系統、上海市法院的“上海刑事案件智能輔助辦案系統”、杭州互聯網法院的“智能立案”系統、浙江省高級人民法院的小AI 做庭審筆錄等.
本文認為現有的司法領域中的人工智能系統可分為兩種:
(1)利用人工智能技術建立的信息化系統.此類系統主要通過目前成熟的人工智能技術將案卷文書,庭審信息等材料信息化,錄入到系統中.如通過OCR 技術,識別審問訊問筆錄錄入系統.通過語音識別技術將庭審過程中庭審語音轉換成文字記錄下來,輔助記錄員記錄信息[1]等.這種系統不涉及審理過程,不需要結合法律相關知識.直接利用現有成熟的人工智能技術,在這些任務上效果也很好.
(2)結合人工智能技術輔助法官審理的智能審判系統.此類系統面向司法領域中的任務,設計相關算法,來輔助法官審理案件,如量刑系統,通過人工智能算法根據案件事實得出量刑結果.這類系統需要面向司法領域的需求,結合法律知識和計算機知識設計相應算法,并設計相應的交互流程,以法官判案邏輯為主導,結合審理流程,來實現智能化判案的效果.
目前利用人工智能技術建立司法信息化系統已經取得了很好的效果,上述的庭審語音輔助系統切實的減少了記錄員的工作量,讓法院庭審過程更加高效.但在智能化輔助審理上效果不理想,如類案推薦系統一些法官表示無法提供精準類案,類案沒有起到真正的參考價值.在江蘇智慧審判系統的應用情況來看,部分法官甚至表示未使用該系統[2].本文認為目前智能化輔助審理系統主要面臨著以下挑戰:
計算機系統設計與司法領域知識結合不足.現有的輔助審判算法在設計時未考慮司法判案過程,未結合司法審判知識.如2018年“法研杯”量刑預測任務中,在算法設計時使用自然語言處理相關技術基于案件事實直接得到罪名以及判刑刑期結果,與法院通常的審理流程不符,及不具備法理上的解釋性,在刑期任務中結果仍有很大的提升空間[3].
面對上述問題,本文認為在實際量刑人工智能系統的構建中需要引入量刑理論,依據司法判案中審理流程來構建相應算法.在我國,刑事案件判案過程中通常根據犯罪構成理論,目前主流的犯罪構成理論為四要件理論與三階層理論,在實際司法審判中四要件理論使用更為廣泛.犯罪構成是指依照我國刑法規定,決定某一行為的社會危害性及其程度而為該行為構成犯罪所必須的一切客觀和主觀要件的有機統一[4],依據四要件理論,主要包括犯罪客體、犯罪客觀方面、犯罪主體和犯罪主觀這4 方面.我國犯罪四要件理論起源于蘇聯,司法實踐至今仍在沿用這一理論.在構建智能審判系統時應延續司法中四要件理論,將四要件識別引入系統設計中,在構成要件的基礎上進一步來做刑期預測、類案推送等任務,為法官提供司法上的解釋,來進一步輔助法官量刑.
本文主要貢獻如下:
(1)梳理了盜竊罪構成要件標簽體系,分析了構成要件識別的難點和挑戰,并詳細分析了識別構成要件所需的前置條件和內容.
(2)設計了構成要件識別模型,利用機器學習技術來識別構成要件,包括數據集的構建和構成要件模型的設計.
(3)對比了常見的方法與本文設計的方法,在本文構建的數據集上,對現有方法做了充分的測試.
本文設計的構成要件識別任務符合當下司法審理流程,在構成要件的基礎上進一步來做刑期預測、類案推送等任務能提高現有方法的可解釋性,能更加有效的輔助法官審理案件.
案件構成要件識別根據構成要件理論,從案件事實中識別出構成要件.目前在構成要件識別中的工作較少,與之有一定關聯的是案情關鍵要素識別,在計算機任務上可以看做文本分類任務.在案件要素識別方面主要有CAIL2019 法研杯提出的案情要素識別任務,該任務在案情描述中重要事實描述基礎上,識別案情要素.基于速裁案件要素式審判的理論,法律專家梳理了婚姻家庭、勞動爭議和借款合同3 個領域的案情要素體系.該數據集包含民事案件內容,不包括刑事案件內容.王得賢[5]提出基于層次注意力的模型在該數據集上進行測試.劉海順等人[6]提出編碼器解碼器結構,利用BERT 對文本內容進行編碼,提出BERT 模型后三層參數融合策略,然后使用LSTM 作為解碼器得到最終的預測結果.其他工作在可解釋性上,也使用了案情要素這一概念,Devlin 等人[7]構建了一個可解釋的智能量刑模型,該模型一定程度上能解釋模型如何確定其最終輸出.但機器關注的關鍵部分與司法審理中關注的焦點并不相同,現有的通過注意力機制等方法提取出的案件要素并不具備司法上的解釋性.鐘皓曦等[8]基于強化學習和深度學習,提出通過問答的方式,獲取案件事實中的影響定罪的元素,并通過這些元素來確定最終量刑并提供一定的解釋性.但是該文并未詳細闡述如何篩選案件要素,在單個罪名下的案件要素量少,該文選出的案件要素在司法上的支撐薄弱,在實際審理中的參考價值模糊.在實際司法中需要考慮更多的信息,按照本文所述的構成要件來進行審理.
案件構成要件識別的難點在于不同的案件構成要素不同,在梳理時需要法律人士參與,需要針對每個罪名梳理對應的構成要件體系.其次是利用大數據技術或深度學習技術依賴大規模標注數據集,如何利用現有的公開信息,構建一個構成要件數據集,減少人工標注工作量也是案件構成要件識別面臨的挑戰.
根據刑法第二百六十四條,盜竊罪是指以非法占有為目的,盜竊公私財物數額較大或者多次盜竊、入戶盜竊、攜帶兇器盜竊、扒竊公私財物的行為.審理一起盜竊案件時,根據犯罪構成中四要件理論,要判斷一起案件的主體要件、主觀要件、客體要件和客觀要件這4 個構成要件是否存在.主體要件刻畫了行為人是否具有刑事責任能力,主觀要件分析了行為人對自己實施的危害社會的行為及其結果所持的心理態度,客體要件描述犯罪侵犯的法益,客觀要件描述了犯罪行為事實.
本文詳細梳理了盜竊罪的構成要件部分,并闡述了構成要件與法院認定事實之間的關系.在盜竊罪主體要件中主要從主體行為人是否具有刑事責任能力,是否為未成年人,是否有犯罪前科和是否為中國居民這些方面來判斷.
主觀要件可從5 點進行考察,故意、非法占有為目的、牟利為目的、對特殊情節的明知和轉化為其他罪名.故意主要從犯罪嫌疑人有主動參與作案的動機、犯罪過程中有無策劃、是否事先通謀、事后銷贓的行為人,通謀的內容包括盜竊行為和有無共犯這4 個方面進行識別.非法占有為目的從對他人財物的明知和對盜竊后果的明知兩點進行識別.牟利為目的,主要從盜竊他人通信線路、復制他人電信碼或者明知是盜竊、復制的電信設備、設施使用來判斷.對特殊情節的明知,可依常識推論犯罪嫌疑人是否知道被害人是殘疾人、孤寡老人或者喪失勞動能力的人、被盜財物是否為珍貴文物,或者救災、搶險、防汛、優撫、扶貧、移民、救濟款物,盜竊地點是自然災害、事故災害、社會安全事件等突發事件期間的事件發生地.轉化為其他罪名從犯罪嫌疑人對行為對象的性質、功能等特征是否存在明確的認知來判斷是否構成特別罪名.
客體要件從他人占有的財物和價值來考察,他人占有的財物主要從實踐中的表現和學理解釋來認定,如被害人對所盜財物擁有合法權利.學理解釋根據法學理論判斷客體的一些屬性如是否為遺忘物,基于委托關系的占有等.價值在確定刑事處罰時有重要意義,根據被盜物品價值確定案件的基準刑以及在相應的量刑格中確定增減刑.
客觀要件從客觀行為事實來對案件進行考量,不同的客觀行為事實會影響盜竊罪的認定.在盜竊罪的客觀行為事實中需要考慮時間、地點、犯罪參與人、動機、手段、方法、被害人、行為對象、情節和后果這些方面.
法官依據證據以構成要件為指導歸納、認定案件事實,在司法證據中識別案件構成要件,并最終歸納總結出案件事實,最終認定的案件事實包含這起案件所涉及的全部構成要件.盜竊罪構成要件標簽體系如表1中所示.

表1 盜竊罪構成要件標簽體系
本文選取了客觀要件作為識別對象,進一步分析客觀行為事實,篩選識別的要件內容.在案件審理中,法官以客觀要件中的客觀行為事實來判定罪名以及量刑.在上述客觀行為事實中主要考察時間、地點,犯罪參與人、動機、手段方法、被害人、行為對象、情節和后果這些內容,其中手段方法在審理中對案件的罪名有關鍵的作用,是判斷一起案件是否構成盜竊罪,區別此罪與比罪的核心.
審理過程中犯罪情節和后果對最終處罰的基準刑有著關鍵作用.參考《最高人民法院量刑規范化的指導意見》第三節盜竊罪相關量刑基準中涉及到的情節,本文認為在情節和后果中可將盜竊情節分為一般盜竊行為、量刑從輕、減輕的情節和從重處罰情節這3 種方面.一般盜竊行為中根據盜竊數額來判斷對該案件處以多重的刑罰.如設立盜竊財物金額標準,劃分數額較大,數額巨大和數額特別巨大這幾檔來確定基準刑.對被盜物品和時間以及行為人和后果進行劃分,可設立量刑從輕、減輕情節,如盜竊近親屬財物,初犯、偶犯,未成年人犯罪等.對盜竊行為進行劃分可確定從重處罰情節,如多次盜竊,入戶盜竊,教唆未成年人盜竊等.
本文提出的構成要件識別任務根據法院認定的犯罪事實來識別包含的構成要件.在形式上通過給系統輸入案件的事實描述部分,得到該事實中包含的構成要件標簽.給定法官認定的事實句子序列X={x1,x2,x3,···,xm},預測與X對應的構成要件標簽集合其中m是序列X的長度,xi表示序列中的第i個詞.Y={y1,y2,y3,···,yn}為構成要件標簽集合.n為構成要件類別總數,一個案件事實至少對應一個構成要件標簽,可能對應多個構成要件標簽,所以是Y的子集.
在構建數據集時,本文充分利用公開信息,在上述分析基礎上,首先確定構成要件標簽,之后在裁判文書網上篩選相應的數據作為本文的訓練和測試數據.主要方法如下:
(1)本文在盜竊罪客觀構成要件客觀行為事實中情節和后果的基礎上,依據無需金額標準的情形構建數據集,無需金額標準的情形主要包含四類,依據《最高人民法院、最高人民檢察院關于辦理盜竊刑事案件適用法律若干問題的解釋》第三條,分別是多次盜竊,入戶盜竊、攜帶兇器盜竊和扒竊.選取入戶盜竊、攜帶兇器盜竊、多次盜竊和扒竊作為本文分析的盜竊罪構成要件中客觀要件需要識別的部分.并加入其他標簽來區分其他構成要件和其他情形.
(2)從中國裁判文書網[9],通過下載裁判文書網上刑事案件中的盜竊罪一審判決書,分析判決書中本院認為部分,查找上述分析出的關鍵詞.圖1所示,一則盜竊罪案例中,本院認為部分中包含“以非法占有為目的,在公共場所扒竊他人財物,其行為已構成盜竊罪”.從中獲取關鍵詞“扒竊”.將該文書的認定事實部分、被告人基本信息部分抽取出來,作為數據集中文本的內容.

圖1 裁判文書中構成要件示例
上述構成要件識別主要依據認定的犯罪事實.無需個人信息、過往犯罪經過等信息,本文在構建數據集時,將法院裁判文書中認定的事實部分作為數據輸入,將構成要件作為標簽.盜竊罪構成要件數據實例如表2所示.

表2 盜竊罪構成要件數據集示例
本文先構建盜竊罪構成要件數據集,然后基于預訓練模型設計構成要件識別模型,在本文構建的盜竊罪構成要件數據集上進行訓練,并取驗證集上最優模型作為最終的模型,整體流程如圖2所示.

圖2 構成要件識別流程圖
本文提出基于BERT的盜竊罪構成要件識別模型首先通過BERT 獲取語句的向量表示,之后運用BiLSTM模型提取句特征,并結合注意力機制進一步.
獲取對分類結果有重要影響的特征.具體流程如下:
(1)通過預訓練語言模型獲取句向量.預訓練模型的大小會影響下游任務的效果.本文選用了BERTbase 模型,能接受的最長文本長度m=512字符.隱藏層維度d=768,編碼層層數為l=12.在預訓練模型上使用了目前最新的公開中文預訓練數據集.
(2)構建盜竊罪客觀要件識別模型.使用BERT 最后一層輸出向量作為文本表示,并拼接BiLSTM-Att 模型,下游任務設置為多分類任務,通過下游任務對預訓練神經網絡進行微調.具體結構如圖3所示,將得到的文本向量送入BiLSTM-Att 模型中,通過該模型識別盜竊罪構成要件并在最后使用交叉熵損失函數進行訓練.

圖3 BERT-BiLSTM-Att 模型結構圖
在訓練時設置學習率為3e-5,參數優化使用BERT-Adam 優化器.訓練epoch 為60,batch-size 大小為16.
BERT 模型[10]在雙向Transformer[11]編碼器的基礎上實現,其中每個Transformer 編碼單元由6 個Encoder 堆疊在一起,Transformer 編碼器單個Encoder架構圖如圖4所示.
圖4 中N代表編碼器層數,一個Transformer 編碼器包含兩層,一個是多頭的自注意力層,另一個是前饋神經網絡層.多頭自注意力層中自注意力機制能彌補循環神經網絡面臨的長依賴問題,不僅關注當前幾個詞,能夠獲取更長的全文信息.并通過多頭的方式獲取不同的交互關系.

圖4 Transformer encoder 模塊結構圖
自注意力機制的可以看做在一個線性投影空間中建立模型輸入中不同向量之間的交互關系.自注意力機制的運算過程中,首先會計算出3 個新的向量:Q(query),K(key),V(value),這3 個向量是詞嵌入向量與一個矩陣相乘得到的結果,該矩陣是隨機初始化的維度為(64,512)的矩陣.當輸入一個句子時,該句子中的每個詞都與其他的詞進行Attention計算,Attention的計算公式如下:

其中,dk表示每個字的query 和key 向量的維度,Softmax()是歸一化指數函數.最終得到的Attention值是一個矩陣值,矩陣值的每一行代表輸入句子中相應字的Attention向量,其中包含了句子中該詞和其他位置的詞的相互關系信息,是一個新的向量表示.由此,我們可以看到,BERT 模型使用帶有自注意力機制的雙向Transformer 模型獲得了句子的前后語義關系,從而更好地獲得了一個句子的語義表達.
在預訓練過程中,BERT 使用MLM(masked language model)任務和NSP(next sentence prediction)任務進行預訓練.一般使用BERT 做文本分類任務時使用BERT 最后一層池化后的輸出,在其基礎上使用全連接層和交叉熵損失函數進行訓練,如圖5所示.文本選取BERT 輸出作為文本向量表示.

圖5 BERT 文本分類模型
LSTM(long short-term memory network)[12,13]是循環神經網絡的一種變體,通過引入門控機制來控制信息的累計速度,包括有選擇地加入新的信息,并有選擇地遺忘之前累積的信息來改善循環網絡的長依賴問題.BiLSTM-Attention[14]模型在LSTM 基礎上,以其作為基礎的網絡層,通過增加一個逆句子順序的網絡層,來獲取一個詞的上下文關系,增強網絡的表示能力.并在獲取的表示后加入注意力機制來更好的獲取關鍵的信息.
BiLSTM-Att 模型如圖6所示,其中et為詞向量,為某一順序上LSTM 在該時刻的向量,為將兩個向量拼接后的向量,最后將yt通過注意力層得到該句子的表示.在得到的句子表示上加入Attention層之后為BiLSTM-Attention 模型.

圖6 BiLSTM-Att 文本分類模型
本文從裁判文書網上下載盜竊罪一審判決書1 萬份,通過正則的方式獲取文書中案件事實部分,之后對判決書提取判決結果.通過本院認為部分,提取判決結果中包含上述標簽的案件構建2 400 條數據,篩選標簽示例如圖7所示,樣例數據如表2所示.

圖7 判決書中標簽示例
通過對案件事實和標簽進行統計分析,本文構建的數據集在文本長度上按字符統計,平均文本長度為235 字,最大文本長度653 字,最小文本長度為124 字.統計相應的占比,本文構建的數據集中其他文書600 份,入戶盜竊587 份,攜帶兇器盜竊122 份,扒竊836 份,多次盜竊483 份.占比如圖8所示.

圖8 各標簽占數據集比例
實驗硬件設備如表3所示.

表3 實驗環境
將數據集劃分為2 000 條作為訓練數據,200 條作為評測在200 份測試數據中進行,評測上述所有的標簽分類結果,從精度(precision),召回率(recall),F1值3 方面評測算法的結果.
精度(precision)是指標記為正類的元組實際為正類的百分比,計算方法為:

其中,Tp為被分類器正確分類的正元組個數,Fp為錯誤標記為正元組的負元組個數.
召回率計算方法為:

其中,Tp為模型預測出的標簽正確的標簽個數,Fn為被錯誤標記為負元組的正元組個數,即假負例個數.
F1值計算方式為:

其中,precision為上述精度,recall為上述召回率.
對上述3 個指標從micro 指標進行考察,計算方式如下:

其中,B(·)為計算precision,recall和F1算符.
數據集劃分為訓練數據2 000 條,驗證數據200 條,測試數據200 條.實驗對比了目前文本分類中常用的模型和最新的模型.對比了多個預訓練模型,主要有科大訊飛開源的中文預訓練語言模型[15],和清華大學開源的司法數據上的預訓練語言模型.
常用的模型比較了LSTM 和基于LSTM的一些改進模型,主要有LSTM、BiLSTM 和BiLSTM-Att.模型輸入的詞向量本文使用Google 團隊發布的Word2Vec工具[16],通過在CAIL2018 罪名預測數據集[17]的事實部分作為訓練語料庫,使用結巴分詞將語料分詞后進行訓練.Word2Vec 中選擇的方法為CBOW,該方法通過中心詞周圍的詞來預測中心詞.預訓練詞向量維度為300 維,訓練設置的相關參數如表4所示.

表4 Word2Vec 參數設置
主要比較的預訓練模型如下:
BERT-xs:該預訓練模型在663 萬篇刑事文書上進行預訓練,未采用全詞覆蓋訓練策略,訓練時以字為力度進行切分.
BERT-wwm:該預訓練模型在中文維基百度上進行訓練,采用全詞覆蓋訓練策略,訓練時一個完整的詞的部分子詞被覆蓋,則同屬該詞的其他部分也會被覆蓋.
BERT-wwm-ext:該預訓練模型在上述預訓練方法的基礎上增加了數據,其中EXT 數據包括:中文維基百科,其他百科、新聞、問答等數據,總詞數達5.4 B.
RoBERTa-wwm-ext:使用RoBERTa 并使用上述的訓練策略和訓練數據,將模型換為RoBERTa,RoBERTa 相比于原始的BERT 做了如下改進:訓練時間更久,并增大了batch size;移除了BERT 預訓練任務中的NSP 任務;訓練了更長的序列和動態調整mask策略.
經計算得到本文使用的模型precisionmicro為 93.54%,recallmicro為95.75%,F1micro為94.63%.
表5 中BiA 表示BiLSTM-Att 部分,BERT-xs-BiA 代表使用BERT-xs 預訓練模型得到文本句向量,再送入BiLSTM-Att 中做分類,識別構成要件.BERT-xs表示只使用BERT 做分類,識別構成要件,其他模型標識同理可得.

表5 測試結果(%)
從實驗結果可以看到,相比于BiLSTM 和帶注意力層的BiLSTM,BERT 預訓練模型優于傳統的模型,這表明BERT 模型能夠在訓練數據較少的情形下,通過面向下游任務進行微調,取得較好的結果.
通過BERT-xs 和BERT-xs-BiA 對比和其他預訓練模型間比較可知使用了BERT 提取句向量做為輸入比使用Word2Vec 訓練得到詞向量得到的結果好.這表明通過BERT 模型獲取的文本向量能夠更好的表示文本,通過與BiLSTM-Att 結合能進一步提高識別效果.
在基于預訓練語言模型的對比中,預訓練語言模型的選擇也相當重要,選擇合適的預訓練模型能提高一定的準確率,如BERT-wwm、BERT-wwm-ext 和RoBERTa-wwm-ext 模型三者模型大小相差不大,使用RoBERTa-wwm-ext 能提高一定的準確率.在訓練時BERT-xs 能夠更快的學習到司法任務相關的內容,在前幾個epoch 結果優于其他模型.但在最終結果上并非最優,本文認為這與下游任務有關,在司法文本分類任務上通用語料庫上預訓練的語言模型能達到司法文本上預訓練的語言模型的結果.
本文設計了盜竊罪構成要件識別任務,結合量刑理論,提出結合構成要件的司法智能系統構建思路.從案件審理的四要件角度,詳細梳理了盜竊罪的構成要件和識別該要件所需的前置條件.之后構建了首個盜竊罪的構成要件數據集,從公開數據上利用搜索和正則匹配等方式篩選數據,構建了數據集.最后設計了基于BERT 模型的構成要件識別模型,對該數據集進行分類,并測試了相關結果.在本文構建的數據集上,該模型達到了93.54%的準確率,優于傳統模型.本文提出的構成要件識別任務有很強的司法理論支撐,能夠指導規范案情要素識別的內容,并且在本文工作基礎上構建智能審判相關算法,能夠更好的為法官提供指引,有很強的實際意義.