本文來自AI新媒體量子位(QbitAI)
大多數自然語言了解(NLU)系統分析語言的過程是一條由分析步驟組成的流水線:先标注詞性,再進行句法依存分析,然後為輸入文本計算出語義表示。
谷歌打破了這條流水線上的所有步驟,把它們捏到了一起,推出了一步到位的自然語言了解系統:SLING。
SLING能夠直接分析自然語言文本,根據它的語義表示生成語義架構圖示。與原有的大多數系統相比,它避免了自然語言了解流水線的一個嚴重缺陷:前面步驟中的錯誤會影響後續步驟的分析。
實際上,流水線式的自然語言了解系統有利于對語言了解的不同階段進行子產品化,但是,早期步驟中的錯誤會在後邊的步驟裡發生連鎖反應,對最終的表示産生影響。
比如說,一個典型的流程可能會在早期步驟中進行句法依存分析,後來又需要共指消解。這種情況下,如果依存分析出現錯誤,共指消解的結果也會受到影響。
而SLING這種直接從文本到語架構圖示的方法中,輸出的架構圖示能直接捕捉到使用者感興趣的語義标注,同時避開了流水線式系統所帶來的陷阱,還能防止出現不必要的計算。SLING使用一個專用的循環神經網絡(RNN),通過架構圖示上的增量編輯運算,來為輸入文本計算輸出表示。
而架構圖示則足夠靈活,能夠捕捉到很多易引發興趣的語義任務。
SLING分析器的訓練隻用到了輸入詞語,不需要依存分析等任何中間注釋。
在推理階段,SLING能夠快速進行分析,它提供了一個高效、可擴充的圖示存儲實作,以及一個生成高效代碼來執行RNN的JIT編譯器。雖然SLING現在還在試驗階段,但它在普通桌上型電腦CPU上的分析速度已經超過了2500 token/秒。
架構語義學将文本(例如一個句子)的意思表示為一組形式語句,每個形式語句成為一個“架構”,可以看作意義或者知識的一個單元,也包含和概念的互動,或者與之相關的其他架構。
SLING将所有語義架構組織成一些列插槽,每個插槽都有自己的名字(角色)和值,這個值可以是文字的,也可以是和另一個插槽之間的連接配接。
比如說這句話:
Many people now claim to have predicted Black Monday.
SLING會從中認出提及的實體(例如人物、地點、事件)、測量值(例如時間、距離)以及其他概念(例如動詞),然後将它們放置在與輸入中動詞相關的正确語義角色上。
比如說句中的“predict”,就表示為PREDICT-01架構。PREDICT-01和施行predict這個動作的主體有互動(插槽),通過ARG0插槽表示,ARG0與表示“people”的PERSON架構相連接配接;PREDICT-01還和被預測的客體有互動,表示為ARG1插槽,和表示“Black Monday”的EVENT架構連接配接。
如下圖所示:

架構語義分析的任務就是直接生成一幅圖示,包含像上圖這樣通過插槽互相連接配接的架構。
上面隻是一個簡單的例子,架構圖示很強大,适用于各種複雜的語義标注任務。對于初學者來說,架構是一種将語言内部和外部資訊結合起來的方式。然後,這就可以用來處理複雜的語言了解問題,比如指代、隐喻、借代等。這些任務的語義架構圖示隻在用到的架構類型、角色、連接配接限制上有所不同。
SLING通過為易引發興趣的語義架構進行優化,訓練了一個RNN。網絡隐藏層中已經學習到的表示取代了流水線系統中手工調整的特征組合和中間表示。
在内部,SLING使用編碼器-解碼器架構,其中使用諸如原始單詞,其字尾,标點符号等簡單詞彙特征将每個輸入詞編碼成向量。而解碼器用這種表示和自己曆史中的循環特征,來計算更新架構圖示以獲得輸入句子的預期架構語義表示所需的轉換序列。
在訓練模型時,SLING使用了TensorFlow和DRAGNN。
下面的動畫展示了如何用一次轉換将架構和角色增量添加到架構圖中。
正如前面用簡單例句所說明的那樣,SLING使用ARG1這一角色來連接配接VERB和EVENT架構,EVOKE轉換從文本中接下來的幾個token中喚起指定類型的架構。同樣,CONNECT轉換将兩個現有架構和一個特定角色連接配接起來。當輸入耗盡,最後一個轉換(STOP)執行完成,架構圖示被視為已完成,并傳回給使用者,使用者可以檢視圖示,得到句子背後的語義。
這個轉換系統中有一個關鍵方面,就是會出現一個固定大小的架構注意力緩沖區,代表最近被喚醒或修改過的架構,如上圖的橙色框所示。這個緩沖區捕捉了我們傾向于想起最近喚醒、提及、增強過的知識。如果架構不再使用,随着新架構的進入,它最終會被重新整理出緩沖區。這個簡單的機制在捕捉大部分架構間連接配接上都非常有效。
SLING是用C++寫成的,開源代碼位址:
https://github.com/google/sling
相關論文SLING: A framework for frame semantic parsing
位址:https://arxiv.org/abs/1710.07032
— 完 —
本文作者:夏乙
原文釋出時間:2017-11-16