?

基于N-gram模型的多層融合氣象災害預警文本檢驗方法

2024-01-15 10:53蘭海波宋瑛瑛曹之玉朱小祥沈晨笛
關鍵詞:分詞語料庫氣象

蘭海波,宋瑛瑛,曹之玉,朱小祥,沈晨笛,王 然

(中國氣象局公共氣象服務中心,北京 100081)

氣象災害是自然災害中最為常見且影響十分嚴重的災害。我國氣象災害造成的損失已占自然災害造成損失的70%以上。為防御和減輕氣象災害帶來的危害,保護國家和人員生命財產安全,氣象部門所屬氣象臺向政府部門和社會公眾發布氣象災害預警信息[1]。氣象災害預警信息在農牧業[2]、海洋[3]、地質災害[4]等都發揮了重要的作用,傳播效能在一定程度上決定了氣象災害防御水平[5]。

氣象災害預警信息,通過計算機系統實現了信息的制作、錄入、審核、發布等環節,制定了23類質量控制策略,采用自動化規則性對照檢查和人工復核的方式,保障了對公眾發布預警的準確性[6]。自動化規則性對照檢查并不能有效地核驗識別預警文本存在的錯別字、冗余字、缺失字、字序顛倒等文本錯誤,而人工檢查存在審核效率低下的問題。預警信息正文包含大概100多字,仔細完整檢查需要1分鐘的時間,嚴重影響了預警信息發布的時效性。2018年唐山市氣象臺發布雷電黃色預警信號,預警描述文本中錯將“強降水”拼寫為“強僵尸”,引發眾多媒體熱議。

文本質量控制檢測模型,一般是先對文本進行分詞,再用語言模型對分割的部分進行錯誤檢測,主要的不足之處在于沒有考慮氣象災害文本的專業特性。筆者在統計了2017—2020年全國氣象歷史災害預警信息的基礎上,對預警信息的特征進行分析,基于多模式融合分詞方法,建立了一種以預警專業語料庫為基礎的氣象預警文本分詞方法。利用該方法研發了預警信息文本質量控制檢測模型,識別預警文本中存在的文本錯誤,輔助提高人工預警審核效率。

1 氣象預警信息和分詞方法

1.1 氣象預警信息特征分析

氣象預警信息是按照國際通用警報協議CAP (common alerting protocol)進行數據格式編碼[7]。其中,預警描述文本是直接對政府部門和公眾進行發布的內容,包含了發布單位、發布時間、預警信息類型、預警信息等級、災害因素、影響時間、影響區域、災害影響、防御指南等內容的描述信息?;靖袷綖椤癤氣象臺X年X月X時X分發布X類型X級別預警信號:預計,X日X時至X日X時,將會對A地區、B地區、C地區等造成XXX影響,請注意防范”。預警文本示例為“北京市氣象臺2021年10月29日16時45分發布大霧黃色預警信號:預計,29日20時至30日09時,本市通州、大興、平谷、順義、朝陽、豐臺、東城、西城、石景山、密云大部、海淀大部、懷柔東南部、房山東部、門頭溝東部和昌平東部有霧,能見度小于1 000 m,部分地區小于500 m,請注意防范?!?/p>

通過文本示例和格式要求,可以看出氣象預警信息文本有一定的領域專業特性,以地名、組織機構名稱、時間、災害類型、災害級別、影響描述、防御常見措施、計量單位和專有名詞等為主要文本構成,而且具有特定的格式框架。這些專業特性成為氣象預警信息文本質量檢測的關鍵點。

文本質量檢測主要是精準確定出文本中出現的錯誤類型和錯誤位置,及時發現得到預防性處理。氣象預警信息文本質量檢測的關鍵和難點,是對專業特性名詞的準確分詞。統計總結2017—2020年全國氣象歷史災害預警信息發現,預警描述文本中的錯誤類型涉及錯別字、冗余字、缺失字、多詞四大類。

1.2 多模式融合分詞方法

近年來,隨著互聯網和高性能計算機的發展,自然語言處理領域在情感分析[8]、信息抽取[9]、機器翻譯[10]等文本處理方面有了新的進展和應用。漢語與英語不同,不是以詞出現,而是通過字與字的組合呈現出不同的含義。中文分詞是進行自然語言處理的基礎。

目前中文分詞算法和工具應用都比較成熟,這些自然語言處理工具為預警描述文本檢查提供了技術基礎。場景不同,目標不同[11],工具的選擇也不同。根據氣象預警信息文本特征和質量檢測應用場景,綜合考慮處理速度、準確率、社區活躍度、適應范圍、更新頻率和語料結果,JIEBA、北京大學PKUSEG分詞可供選擇使用[12]。JIEBA分詞處理速度最快,應用最廣泛。在預警文本分詞領域,北京大學PKUSEG分詞在準確率、召回率、F評分測試指標上評價最高,筆者使用單一分詞工具PKUSEG分詞作為多模式融合分詞方法的參照對象。氣象預警信息文本的中文分詞,直接應用單一通用分詞工具存在兩方面的問題:①由于氣象預警信息文本的專業特性及分詞工具對地名、組織機構名稱、時間、災害類型、災害級別、影響描述、防御常見措施、計量單位和專有名詞等新詞識別的準確率、召回率和F評分會降低,對整體句子的語義理解將產生負貢獻。在預警文本特征分析中,地名是用來描述預警影響范圍的重要實體。使用單一分詞工具對31個省名稱、3 185個市縣名稱、40 446個鄉鎮名稱進行切分,得到的地名識別準確率、召回率、F評分指標的平均評分,如表1所示。從表1可以看出,地名隨行政級別的降低,分詞的評價指標得分下降得很明顯。②分詞工具在解決歧義問題的方案中,索引時使用細粒度的分詞以保證召回,查詢時使用粗粒度的分詞以保證精度。分詞結果的多個短詞對整體句子的語義理解比一個長詞的貢獻低。例如,使用分詞工具切分詞“森林火險氣象等級”,會被切分為“森林/火險/氣象/等級”。一個長詞對整體句子理解的貢獻比多個短詞的貢獻要高[13]。因此,我們期望“森林火險氣象等級”是作為一個詞被切分出來。

表1 利用單一分詞工具拆分地名的準確率、召回率、F評分

為了解決上述問題,筆者設計了一種多模式融合分詞方法。首先通過雙向最大匹配[14]的方法,根據自建命名實體庫將命名實體切分出來,只有正向最大匹配和逆向最大匹配切分出來的實體一致時才進行切分。命名實體庫主要包括地名、組織機構名稱、時間、計量單位、專業名稱,如表2所示。其次,同時使用JIEBA分詞和PKUSEG分詞兩種分詞工具將句子進行切分,并將分詞結果進行對比,如果兩個分詞結果相同,則返回;否則判定為較少單字或較多長字的分詞結果。

表2 命名實體庫示例

分詞的準確率Pre、召回率Recall、F評分是評價分詞方法的幾種檢驗方法,如式(1)~式(3)所示。

(1)

(2)

(3)

式中:Nr為提取出的正確信息條數;NS為提取出的信息條數;Np為樣本中的信息條數。

以某省2020年發布預警信息中隨機采樣50條省級預警、50條市級預警、50條縣級預警作為中文分詞性能測試數據來源,選擇PKUSEG分詞作為單一分詞工具為對比對象,分別計算分詞的準確率、召回率、F評分。對比測試結果顯示,使用多模式分詞方法的準確率、召回率和F評分在省級發布單位的預警文本、市級發布單位的預警文本、縣級發布單位的預警文本中均有提升。省級預警文本的分詞準確率由80.66%提升至94.94%,市級預警文本的分詞準確率由82.08%提升至95.41%,縣級文本的分詞準確率由82.77%提升至95.14%,平均準確率提升了13.33%。同樣,計算分詞的平均召回率和平均F評分,在省、市、縣三級預警文本中也均有提升,分別為6.76%和10.24%,如圖1所示。

圖1 多模式融合分詞方法與單一分詞方法評分對比

2 氣象預警信息文本質量檢測模型

2.1 字序列組合檢驗模型

氣象災害預警文本具有較高的相似度,甚至很多文本除日期、發布單位、影響范圍(地名)外,其他信息是100%一致的?;诖?設計了字序列組合預警文本庫,字序列組合按以下步驟對歷史預警文本進行抽取、清洗:①對句子按分隔符切分成多個子句;②將每個子句中每個單字wi依次作為組合首字,向右順序按照預設組合長度n進行切字,組合為wiwi+1wi+n-1;③組合長度依次設為n-m(m=1,n=2),重復步驟②;④單字由停頓詞組成,包括物理單位(米、級),連接副詞(和、將),助詞(的),動詞(對、有)等;⑤清洗過濾重復詞。待檢驗預警文本按字序列組合方法切字,字序列組合預警文本庫,如圖2所示。按圖中流程進行全匹配,考慮到模型運行性能適宜性,以及歷史預警文本庫中非專業特性名詞大都為2個字組成,故設置n=3。

圖2 字序列組合模型處理流程

以國家預警信息發布中心2021年全國預警庫作為檢驗樣本,從中隨機抽取正確樣本400條,人工制作錯誤樣本400條。對字序列組合檢驗模型做準確性檢驗分析,結果如表3所示。由表3可知,正確樣本判斷為正確、錯誤樣本判斷為錯誤的準確率=(393+82)/(400+400)=59.38%。

表3 字序列組合檢驗模型檢驗結果

其中,正確樣本判斷為正確的檢驗準確率=393/400=98.25%;錯誤樣本被誤判斷為正確的漏警率=318/400=79.5%。盡管字序列組合模型的準確率(59.38%)并不高,但對正確樣本的檢驗準確率卻非常高,達98.25%。這主要是因為預警文本制作具有一定的模板式和規律性,大量的預警描述文本是由“制作單位+發布(解除)時間+預警類型+預警級別+影響范圍+提示(指導)信息”組成,這些信息都有標準或規范可以遵循,排除日期、字符后,有大量的重復信息,通過切分排列組合達到完全一致的可能性非常高。同時,樣本檢驗的漏警率較高,主要是因為序列組合的方法對缺失字、字序顛倒的檢出率非常低。隨預警文本內容的日益豐富,提示(指導)性的內容越來越多元化,字序列組合檢驗模型的漏警率也會越來越高。

2.2 歸一化N-gram檢驗模型

N-gram在自然語言處理中是一種簡單易理解的概率統計模型,根據前N-1個對象來預測第N個對象,即句子中的前N-1個單詞和該單詞之間有一個概率,可以用來判斷句子是否正確。N-gram模型基于馬爾可夫假設,假設每次出現的概率僅與前面的N-1個字符相關。假設一個句子s由i個詞構成,則其出現的概率可表示為:

p(s)=p(w1w2…wi)=

p(w1)p(w2∣w1)p(w3∣w1,w2)…

p(wi∣w1,w2,…,wi-1)

(4)

式中:p(s)為句子s在語料庫中出現的概率;p(wi|w1,w2,…,wi-1)為句子s在前i-1個詞為w1,w2,…,wi-1的情況下,第i個詞為wi的概率。N-gram在惡意信息檢測[15]、主題識別[16]等方面有很多示范應用。N-gram語料庫規模越大,做出的模型結果才更有用[17]。對于N的選擇,考慮到氣象預警信息文本是短文本,并且短句之間的聯系并不深,因此構建Bi-gram模型足夠解決需要,這意味著當前字詞的條件概率取決于從前1個字詞到該字詞的轉換概率,則式(4)可以近似表示為:

(5)

筆者依據氣象預警信息文本特征分析和多模式融合分詞方法,結合自建命名實體庫,創建了預警專業語料庫。預警專業語料庫是按照N-gram模型運行默認語料庫格式進行擴充增加中文分詞。再利用多模式融合分詞方法對檢驗預警描述文本分詞,得到詞序列,將多個連續地面標記為“AD”,將數字定義為“D”,經歸一處理后得到詞序列,將前文中預警描述處理得到如下詞序列:“北京市氣象臺D年D月D日D時D分發布大霧黃色預警信號預計D日D時至D日D時AD有霧能見度小于D米AD小于D米請注意防范”。計算“AD有霧能見度小于D米”句子評分,部分選擇計算過程如圖3所示,句子評分結果為-21.408 8,比原值-52.861 2提升了59.5%??梢娞幚砗蟮脑~序列對計算機來說更易理解的。

圖3 Bi-gram選擇計算過程

歷史氣象預警信息文本2個詞之間的平均評分值為-4,使用并列歸一方法的N-gram檢驗模型的檢驗規則為:判斷每個詞與詞之間的評分值,如果值小于-4,則認為句子理解存疑。唐山市氣象臺2018年08月11日14時53分發布雷電黃色預警信號:目前我市北部地區已經出現雷電,預計未來六小時中北部大部分地區仍有雷電活動,雷雨時可能伴有短時強僵尸,大風等強對流天氣,請有關單位和人員做好防范準備。使用N-gram模型對該雷電黃色預警信號文本進行檢驗,發現“強”和“僵尸”兩個詞之間的評分值為-100。

同樣以2021年全國預警庫為本樣,對N-gram模型做準確性檢驗分析,檢驗結果如表4所示。

表4 N-gram檢驗模型檢驗結果

根據表4可以得到模型檢驗的準確率=(296+366)/(400+400)=82.75%,漏警率=34/400=8.5%。對比分析表3和表4的結果,可見N-gram模型檢驗錯誤句子的檢出率更高,對詞與詞之間的邏輯關聯關系要求更嚴格,在錯別字詞、缺失字、冗余字、詞序顛倒的檢出上均有較好的表現。與字序列組合模型相比,漏警率由79.5%減少至8.5%。但由于2017—2020年預警描述文本范圍較小,重復詞語較多,當出現未出現詞時,即便是正確樣本也會被認為是錯誤。

2.3 多級檢驗模型

為解決上述問題,提出了多級檢驗的方式,除將2017—2020年歷史預警描述文本整理成預警專業語料庫外,引入了人民日報語料庫,擴大了詞庫的范圍。預警信息描述文本來自國家預警信息發布中心2017—2020年歷史預警庫。地名信息來自民政部網“2012年中華人民共和國縣以下行政區劃代碼及統計代碼”。正確檢驗預警信息描述文本來自國家預警信息發布中心2021年預警庫。多級檢驗模型以預警專業語料庫為主,輔以人民日報語料庫,以歸一化N-gram檢驗模型為主,輔以字序列組合檢驗模型,其檢驗邏輯關系如圖4所示。

圖4 多級檢驗模型流程圖

多級檢驗模型檢驗結果如表5所示。

表5 多級檢驗模型檢驗結果

由表5結果可以得到模型檢驗的準確率=(379+366)/(400+400)=93.13%,漏警率=34/400=8.5%。多級檢驗模型整合了字序列組合檢驗模型和歸一化N-gram檢驗模型的優勢,大大提高了樣本整體的準確率,降低了漏警率。

3 模型應用

使用JAVA語言將多級檢驗模型封裝成API服務接口,嵌入國家突發事件預警信息監控系統中應用。接口示例:輸入為預警描述文本;接口為http://127.0.0.1:5896/sentcheck?sentence=預警描述文本;返回值為正確(0);錯誤為質疑詞的首字。

截止到2021年12月,共檢測了34條語義錯誤類預警內容錯誤,占錯誤攔截總數的85.2%,大大提高了錯誤檢出率,并減少了人為審核的工作量。當前模型所不能識別的錯誤類型,也在系統應用工作過程中做了積累和通過其他方式解決了業務應用中的實際問題。雖然多級檢驗模型的錯誤樣本被誤判斷為正確的漏警率為8.5%,但在實際應用中暫未出現錯誤未被檢測出來的情況。由于漏警率是在特定的人為制作的錯誤樣本測試數據樣本上的結果,模型應用的過程中,會進行自學習訓練樣本,進而改變模型精準度。多級檢驗模型在業務應用系統中,主要實現文本錯誤的定位和錯誤類型的提示,示例如圖5所示。

圖5 國家突發事件預警信息監控系統提示錯誤信息

4 結論

(1)結合氣象預警描述文本的特征分析,提出了一種多模式融合分詞方法,并創建了預警專業語料庫,建立了以歸一化N-gram檢驗模型為主,以字序列組合檢驗模型為輔的多級檢驗模型。

(2)對比試驗顯示,多級檢驗模型的準確率有所提升,漏警率有所下降,在實際應用中取得了較好的效果。

(3)在應用中發現分詞對預警專有語料庫的依賴性高,當地名不在語料詞庫表中,如縮寫詞、分詞會產生錯誤,從而導致檢驗失敗。針對這個問題,未來將通過建立地名和縮寫詞之間的標簽關系圖譜的方式,繼續優化分詞方法的研究。

猜你喜歡
分詞語料庫氣象
氣象樹
《內蒙古氣象》征稿簡則
分詞在英語教學中的妙用
《語料庫翻譯文體學》評介
結巴分詞在詞云中的應用
結巴分詞在詞云中的應用
大國氣象
美麗的氣象奇觀
基于JAVAEE的維吾爾中介語語料庫開發與實現
論英語不定式和-ing分詞的語義傳承
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合