论文浅尝 | 基于模式的时间表达式识别
本文轉載自公眾號:南大Websoft.? ?
? ? ??
時間表達式識別是自然語言理解中一個重要而基礎的任務。在以前的研究工作中,研究人員已經(jīng)發(fā)現(xiàn)時間詞的類型信息可以給識別提供明顯的幫助。本文中我們以詞類型序列作為表達式模式,提出了基于模式的時間表達式識別方法,PTime。我們設計了細分的時間詞類型來從已有的時間表達式上自動歸納出模式,并選擇一個高質量的模式子集用于從新的文本中抽取時間表達式。我們基于表達式模式的方法給結果提供了一定的可解釋性,實驗表明我們的方法在3個benchmark數(shù)據(jù)集中的兩個上都超過了現(xiàn)有的state-of-the-art方法。
Background
自然語言理解中對時間信息的理解是一個重要部分,可以分為對時間表達式的識別(recognition)和時間表達式的標準化(normalization)這兩個步驟,我們關注識別任務。時間表達式的識別多年來已經(jīng)有大量的研究,但仍有明顯的改進空間。目前最常見的時間識別方法,一大類是從序列標注的角度出發(fā)建立黑盒的機器學習模型(如一般的NER任務那樣);另一大類是基于規(guī)則,先識別表達式中基本的詞,然后通過規(guī)則組合或擴展識別出的部分得到完整的表達式。粗略地說,目前在benchmark數(shù)據(jù)集上表現(xiàn)最好的方法,要么是在黑盒的CRF模型上結合有效的詞類型特征,要么是設計基于詞的少數(shù)通用啟發(fā)性規(guī)則來做識別。這些方法雖然識別效果好,但是結果的可解釋性差,不利于后續(xù)的理解;而經(jīng)典的規(guī)則方法雖然能表達復雜的時間表達式結構,在結果上對比這些方法卻沒有優(yōu)勢。
Motivation
目前在數(shù)據(jù)集上表現(xiàn)最好的方法都依賴于時間詞的類型,或在詞類型上人工設計規(guī)則,或將類型信息作為機器學習模型的重要特征使用。實際上,詞的類型告訴了我們表達式的“類型序列”,這種序列提供了時間表達式的模式信息,例如“29 years”、“two days”這兩個不同的表達式共有“數(shù)量 時間單位”這樣一個構成模式。這些模式又可以幫助我們從文本中抽取新的時間表達式,例如“數(shù)量 時間單位”可以從“It took me one month”中抽取出“one month”。然而,我們不能簡單地把可能的模式收集起來直接用于識別,這將導致一些錯誤,因為真實的自然語言是復雜而有歧義的,比如“three quarters”在某些語境中就不是數(shù)量“3”加時間單位“一刻鐘”,而是“3/4” (如下圖所示)。
因此,我們得到了一個新的問題:能否從所有可能的時間表達式模式中選取一部分,允許用戶可調節(jié)地去控制這些模式可能會犯的錯誤,來適應不同精度和召回率的時間表達式識別需求,得到一個盡量好的表現(xiàn)?
為了回答這個問題,我們把模式的選擇過程建模為一個線性約束的子模(submodular)函數(shù)優(yōu)化問題——我們研究組以前提出的the Extended Budgeted Maximum Coverage(EBMC)問題的實例。核心思想是,根據(jù)模式能在多大程度上匹配一個時間表達式來度量它對訓練集上所有時間表達式的覆蓋度,同時用每個模式在訓練集上錯誤抽取的表達式數(shù)量來度量選擇這個模式的代價。引入一個參數(shù)rho來調節(jié)允許的總代價的界限,在總代價不超過界限的前提下,最大化選出的模式對時間表達式集合的總覆蓋度。
Framework
PTime的框架如下圖所示:
在PTime的工作過程中,文本首先被轉換為token的序列。接著我們從語法和語義的角度出發(fā),參考既有工作包括SUTime, SynTime和UWTime,設計了包含32個類別的細分詞類型(Token Types),用于把token轉換為類型,從訓練集的時間表達式上得到模式。針對時間表達式中詞匯難以被人工構造的類型窮盡的問題,我們允許模式中出現(xiàn)“untyped token”,即不向上泛化,而是保留原本的詞作為模式的一部分(例,在Tweets數(shù)據(jù)集上,“1小時”可能被縮寫成“1 hr”,“hr”不在標準詞表中,于是我們保留“數(shù)量?hr”這個模式)。當產(chǎn)生候選的模式集合后,我們將選擇過程建模為一個EBMC問題的實例,通過一個貪心近似算法求解,最終用選出的模式集合去檢查測試集文本,對匹配到的串做簡單的合并處理,作為最終的表達式識別結果。
Evaluation
我們的實驗測試了3個benchmark數(shù)據(jù)集TempEval-3,WikiWars和Tweets,結果如下表所示。
另外,對結果的分析表明各個數(shù)據(jù)集上存在一些類似“序數(shù) 月 年”(例:2018年的第4個月)這樣有意義的“公共模式”,我們的方法可以發(fā)現(xiàn)幫助發(fā)現(xiàn)這些公共模式,并且它們可以反過來提升方法在一般任務上的表現(xiàn)。例如,我們只要簡單地把WikiWars和Tweets上的選出的模式的公共部分加到對TempEval-3的測試中,方法的strict match F_1值就可以上升到0.87+。
具體的結果和代碼預計會在整理后陸續(xù)在http://ws.nju.edu.cn/ptime放出(目前還在整理中)
OpenKG.CN
中文開放知識圖譜(簡稱OpenKG.CN)旨在促進中文知識圖譜數(shù)據(jù)的開放與互聯(lián),促進知識圖譜和語義技術的普及和廣泛應用。
點擊閱讀原文,進入 OpenKG 博客。
總結
以上是生活随笔為你收集整理的论文浅尝 | 基于模式的时间表达式识别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 论文浅尝 | 从树结构的长短期记忆网络改
- 下一篇: 论文浅尝 - EMNLP2020 | 基