AAAI 2018 | 阿里巴巴、狗尾草、蘇大聯合論文:基於對抗學習的衆包標註用於中文命名實體識別

 2017-12-28 13:42:00.0

原標題:AAAI 2018 | 阿里巴巴、狗尾草、蘇大聯合論文:基於對抗學習的衆包標註用於中文命名實體識別

主要作者:楊耀晟,張梅山,陳文亮,王昊奮,張偉,張民

國際知名的人工智能學術會議 AAAI 2018 即將於 2 月份在美國新奧爾良舉辦,據瞭解,阿里巴巴共有 11 篇論文被接收。AAAI 2018 論文專欄,將會對其中的數篇論文進行介紹,同時也歡迎讀者推薦更多優質的 AAAI 2018 接收論文。

本文介紹了阿里巴巴業務平臺事業部、深圳 Gowild(中文:狗尾草)智能科技有限公司、蘇州大學聯合發佈的論文《Adversarial Learning for Chinese NER from Crowd Annotations》。該論文提出了一種在中文 NER 任務上,利用衆包標註結果來訓練模型的方法。

1. 文章目的與思想

爲了能用較低的成本獲取新的標註數據,我們採用衆包標註的方法來完成這個任務。衆包標註的數據是沒有經過專家標註員審覈的,所以它會包含一定的噪聲。在這篇文章中,我們提出一種在中文 NER 任務上,利用衆包標註結果來訓練模型的方法。受到對抗學習的啓發,我們在模型中使用了兩個雙向 LSTM 模塊,來分別學習衆包標註數據中的公有信息和屬於不同標註員的私有信息。對抗學習的思想體現在公有塊的學習過程中,以不同標註員作爲分類目標進行對抗學習,從而優化公有模塊的學習質量,使之收斂於真實數據(專家標註數據)。我們認爲這兩個模塊學習到的信息對於任務學習都有積極作用,並在最終使用 CRF 層完成 NER 標註。

模型如下:

數據使用:

我們在對話數據和電商數據上對模型的性能進行驗證。

1)對話數據是由 gowild 公司提供的,我們讓 43 位標註員在兩萬句語料上標註「人名」和「歌名」實體。我們認爲這份數據非常適合我們的任務。

(1)若讓一位專家標註員標註對話數據,由於他的認知是有限的,所以當他出現標註失誤時對模型的影響是比較大的。在這種情況下,多位標註員可以在一定程度上彌補單個標註員對於「歌名」和「人名」的認知不足。例如:歌手「周傳雄」,但並不是所有人都知道他的另一個稱呼「小剛」。多人的知識面肯定要比一個人來的廣。

(2)人機對話語料中包含一定比例的語法錯誤:

  • 你怎麼子我都看的手機死機了,在弄自己開門進來幹嘛都記得。

  • 你說謝謝的詩意哥哥嗎?

不同的標註員對於上述句子的語義理解可能是不同的,我們也希望模型能學習到這些特徵,使模型能更好收斂到最真實的數據分佈,提高模型的泛化能力。

最終,我們的模型在對話數據上取得了近一個點的 F1 提升。

2)電商數據是由阿里巴巴提供。首先我們讓五位標註員對標題數據和用戶請求數據進行標註,目標是標註出已定義好的五類實體:品牌、產品、型號、規格、原料,每句標註任務隨機分配給兩位標註員。對於標註員的標註結果,我們通過樣本抽樣,分析得到造成標註噪聲(標註不一致)的主要原因是不同標註員對於標註規範和每一句標註樣例的認識是不同的。特別是在標題數據集中,產品、型號實體的邊界定義非常容易造成標註不一致。

在上述衆包標註得到的數據集上訓練我們論文中提出的模型,可以得到一個點左右的提升:

文章分塊解析:

相關工作:

(1)序列標註:早期用來處理序列標註問題的模型都十分依賴人工設計的特徵模板,例如:HMM, MEMM 和 CRF 模型,模型的性能很大程度上受限於特徵模板的質量。神經網絡熱潮來臨後,一個成熟的新模型被廣泛應用:它使用雙向 LSTM 來提取序列特徵,並用 CRF 解碼,在序列任務上取得了顯著成果,這也是我們文章中的 baseline 模型。

(2)對抗訓練:對抗網絡最早被成功的應用在計算機視覺領域。近幾年,「對抗」這一概念也被引入到 NLP 任務中,分別在跨語言、跨領域和多任務學習中取得突破。在這些任務中使用「對抗學習」,目的就在於學習到訓練語料中的「共有特徵」。我們的工作也是以這一目的爲出發點,希望通過對抗學習的方式,讓模型能分辨出「衆包」數據中的「標註噪聲」。

(3)衆包標註模式:爲了能在短時間內以較低成本獲取標準語料,我們採用衆包標註的模式,具體得到的數據情況見上面的「數據使用」。

Baseline

在文章的所有實驗中,我們使用 BIOE 的標籤集合。首先,我們訓練 CRF 作爲傳統 baseline 模型。隨後,嘗試將序列特徵映射到更高維度,也就是用 LSTM 模塊提取特徵。在中文任務中,輸入單位爲 char(字符),每個字符經過 lookup-table 映射成向量後,經過雙向的 LSTM 層提取特徵:

最終用 CRF 層進行解碼,使模型能更好得學習標籤之間的依賴關係:

這一部分的 loss 爲:

優化目標爲最小化這個 loss 值。

對抗學習部分:Worker Adversarial

我們使用的是衆包數據作爲訓練語料,數據集中存在一定量的標註錯誤,即「噪聲」。這些標註不當或標註錯誤都是由標註員帶來的。不同標註員對於規範的理解和認識面是不同的,我們可以認爲一位標註質量高的標註員的標註結果和專家標註員是非常相近的。對抗學習模塊如下:

1. baseline 中的 BiLSTM 稱爲「private」,它的學習目標是擬合多爲標註員的獨立分佈;再加入一個名爲「common」的 BiLSTM 模塊,common 與 private 的輸入相同,它的作用是學習標註結果之間的共有特徵:

2. 再引入一個新的 BiLSTM 模塊,名爲「label」,以當前訓練樣例的標註結果序列爲輸入。

3. 分別將 common 和 private 模塊的輸出合併,作爲 NER部分的輸入:

最後用 CRF 解碼,公式與 baseline 相同,不再貼出。

4. label 和 common 的輸出合併,再輸入 CNN 進行特徵提取,最終對標註員進行分類:

要注意的是,我們希望標註員分類器最終失去判斷能力,所以它在優化時要反向更新:


文章來源:機器之心