黃淑兵 張亞洲 繆新頓 陸楊 楊卓敏
(公安部交通管理科學研究所,江蘇 無錫 214151)
近年來,在我國道路交通基礎設施的建設快速發展,汽車保有量持續增長的背景下,深化警務機制改革工作也在不斷的推進,城市交通管理警務效能水平在不斷提高。對公安交通管理領域來說,“信息引領”和“科技賦能”的概念逐步成為建設現代化警務機制的導向,多種警用設備的研發應用以及各個數據平臺的建設運行匯總了大量的警務數據,為深度研判分析工作提供了有力的支撐。與此同時,公安交管部門相應的信息報送機制也在不斷完善,面對大量的交通安全事故數據分析工作,由人工進行數據量化統計的分析模式正逐步淘汰,取而代之的是數據自動化處理、多維度關聯分析等更加智能化的分析模式,這樣才能滿足對大量數據的多維度分析需求,即構建并維護一個穩健的數據分析模型能夠有效的輔助人工進行分析研判工作。
建立交通安全事故數據分析模型的重點是對事故信息中的文本數據進行結構化處理,通常文本數據主要包括報警人或接警人對發生事故的過程描述以及處警人員對事件處置的結果描述。雖然這些文本數據由人工錄入系統時會按照相關規定對文字描述進行簡化處理,但是簡化后的文本數據并沒有提取關鍵信息,也不能作為結構化數據直接存儲。所以,文本數據中描述事件過程或處置結果的實體和關系需通過NLP(NaturalLanguageProcessing 自然語言處理)技術進一步抽取和篩選。包含實體和關系文本處理完成后,即可對案發時間、案發地點、車輛情況、人員情況、道路設施等多維的因素進行數據分析。每起交通事件看似是偶然性事件,其實伴隨事故與隱患排查工作的深入可發現,事故發生的根源或者安全隱患點往往能關聯起多個類似的歷史警情,如多起事故的案發路段、路口處均存在某個安全隱患;某路口經常發生機動車左轉與非機動車碰撞的事故原因之一是該路口缺乏防護裝置和交通安全標志等等。通過挖掘關聯規則,可以發現一些潛在的規則和產生事故的誘因,最后采取相應的處置措施達到降低此類交通事故發生概率的目的。
中文警情文本數據包括接處警人員錄入數據和系統自動疊加的常規數據,其中事故數據多為非結構化或半結構化數據,針對中文文本復雜的處理流程,陳永俊[1]等人采用BERT+LSTM 的方法進行公安警情數據的命名實體識別、采用BERT 與CNN 結合的方法挖掘關系;張明芳[2]等人引入分層級聯強化學習機制抽取涉案新聞實體關系;哈工大社會計算與信息檢索研究中心研制的語言技術平臺(LTP)[3]在各種自然語言處理場景中被廣泛應用。關聯規則Apriori 等經典數據挖掘算法被廣泛應用于各行業的數據挖掘任務中。可以用來發現事情之間的聯系,但隨著數據量的增長,經典方法在計算支持度的時候時間和空間復雜度較高,越來越多的研究采用使用并行體系架構的GPU 來加速頻繁項集的生成過程。本文設計的主要分析過程如圖1 所示。

圖1 依存句法分析與關聯規則挖掘流程
因為數據包含結構化數據和非結構化數據,結構化數據主要包括警情單編號、數據來源、接警人、管轄部門、警情類型、報警時間、處置結果標記、反饋人、反饋部門、反饋時間、警情倒查標記和警情核實標記等;非結構化數據主要包括從各種平臺接入系統的“報警內容”和“反饋內容”,為了便于后期的關聯規則挖掘,需要對所有數據進行編碼,文本信息的編碼工作放在事故因子匹配之后進行。把結構化數據的屬性進行編碼,并對屬性的值進行再編碼,即某個屬性的值能用維度較低的編碼來表示。維護的部分數據編碼方式示例如表1。

表1
維護的事故因子名稱和編碼方式類似。

表2
使用基于自然語音處理的工具,如LTP 對非結構化數據(報警內容和反饋內容)進行分詞、詞性標注、句法結構描述以及語義依存分析,得到依存句法分析樹。依存分析樹中包含多個依存關系,根據LTP 定義的依存關系如表3。

表3
因為接警人會將報警人口述的信息進行簡化,簡單明確的描述出警情的主要信息,且路面經常發生的交通警情類型相對比較固定,所以進行依存分析后以主要謂語為中心,例如報警內容:“在中山路二師附小學校門口,一輛黑色轎車違停在了非機動車道上,轎車后排的乘客打開右側的車門,后面的一輛紅色電動車碰撞到車門,電動車的駕駛員摔倒在地,其頭部、臉部等多處受傷。”把“轎車后排的乘客打開右側的車門”這個關鍵的描述單獨進行依存分析結果如下:
以動詞“打開”與根節點root 的關系為HED 得出“打開”是核心,類似的將文本信息均進行依存句法樹的構建,然后篩選出SBV 主謂關系、VOB 動賓等關系、ATT 定中關系、POB 介賓關系,將抽取結果進行事件三元組的組裝。得出三元組信息如下:
[′一輛黑色轎車′,′違停′,′在非機動車道′]
[′轎車′,′后排′,′乘客打開車門′]
[′乘客′,′打開′,′車門′]
[′一輛紅色電動車′,′碰撞到′,′車門′]
[′電動車駕駛員′,′摔倒′,′在地′]
綜上,對所有待處理的文本信息進行以下技術路線處理得到文本信息的三元組半結構化信息。
引入事故因子與事件三元組匹配方法,根據先驗知識維護事故因子數據,事故因子數據同樣按警情類型進行歸類,根據該條記錄的警情類型進而事故因子與事件三元組的匹配,即該類別的事故因子與事件的三元組逐一匹配。匹配后將該事故的結構化信息與事故因子進行綁定。
以下是list 類型的數據為例進行說明:待匹配的事故因子列表:[壓實線,逆行,違停,逃逸,碾壓行人,刮撞行人,開車門,側翻,翻滾,墜車,…,交通擁堵]。綁定后數據擴充為:案發時間:“某年某月某日某時某分”、案發地點:“某某地點”、違法行為:“開關車門妨礙其他車輛違法和行人通行”、是否逃逸:“是”、是否有現場“無”、是否受傷“有”、現場通行情況“擁堵”、車輛是否可移動“是”、涉事車輛類型“02 小型汽車”、事故類型“車輛與非機動車碰撞”、事故因子“開車門、違停”等,將這些字段安裝預定的編碼方式進行屬性和屬性值的編碼。
構建Apriori 算法模型對每個事故因子對應多條綁定的結構化數據進行關聯規則的挖掘,首先,根據事故因子和事故類型的不同,對項集D 的項目也進行不同的設計,交通事故類的項集Dtrans字段:案發時間、案發地點、違法行為、是否逃逸、是否有現場、是否受傷、現場通行情況、車輛是否可移動、涉事車輛類型、人員類型、事故類型、事故因子等。


設置最小置信度閾值,即min(Confidencem)。
在上述挖掘步驟中,我們的數據格式是“橫向表達的”,即每一條警情結構化處理后的數據有很多個字段,所以在求頻繁1 階項集至頻繁k 階項集的過程要重復的遍歷每一行待挖掘數據集,這樣產生了較大的計算量,而龐大的警情結構化數據不適合選擇經典的挖掘方法,文獻[4]均提到了將“橫向數據”進行“縱向表達”,再利用GPU 并行計算的優勢來優化頻繁K 階項集的尋找。基于GPU 的挖掘方法,均提進行了大量的可行性分析和測試,本文選擇利用GPU 來加速頻繁k項集的生成。
將上述生成的將關聯規則進行屬性還原,建立并維護一個分析結果與評價的映射關系表。例如將2021 年9 月以來的接處警業務實驗數據經過置信度計算后進一步得到某條關聯規則為:[事故因子:刮撞非機動車,違法行為:碰撞非機動車輛,是否有現場:無現場,車輛是否逃逸:是,是否有人受傷:是,案發時段:上午7 點至8 點]→案發地點:育紅小學北門],即該規則等得到的結果為育紅小學北門,此時記評價因子的數據類型為Map,Map 的key 記錄的是生成的規則結果,對應的value 是結論對應的評價,如Map 的某個Key 值是:“小學”,對應的Value 維護的內容是“加強學校周邊巡邏及監控覆蓋面”。
若產生的關聯規則沒有相匹配的評價信息,則需要進一步人工分析,如果規則符合常識,的確需要排查,就將此映射關系添加至評價關系映射表中,例如實驗得出以下部分規則:
1:[違法行為:妨礙其他車輛和行人通行,是否有警示標志:無,案發地點:濱河西路XX 路口北向南,道路類型:一般城市道路,案發時段:上午09 點至10 點]→事故因子:開車門。
2:[事故因子:別車,事故類型:車輛間事故,隔離設施:中央護欄,是否有警示標志:無,道路類型:一般城市道路,案發時段:上午09 點至10 點]→案發地點:XX 路XX 橋下。
本文通過基于自然語言的處理工具以及關聯規則分析算法,對非結構化的文本信息進行事件三元組提取,并結合大量數據對不同的事故誘因匹配,利用并行計算能力,生成有效的關聯規則,進而提升接處警系統的警情分析能力,能夠更有針對性的開展事故原因排查和相關行為整治行動,本文亦可結合知識圖譜構建技術將警情數據和挖掘結果信息可視化展示。