當前位置:
首頁 > 科技 > 專欄 | 學習何時做分類決策,深度好奇提出強化學習模型Jumper

專欄 | 學習何時做分類決策,深度好奇提出強化學習模型Jumper


機器之心專欄


作者:深度好奇研究組(DC-SQUAD)





文本理解是自然語言處理領域的一個核心目標,最近取得了一系列的進展,包括機器翻譯、問答等。不過之前的工作大多數是關心最終的效果,而人們對於模型何時做出決定(或做決定的原因)卻知之甚少,這是一個對於理論研究和實際應用都非常重要的課題。






  • 論文題目:JUMPER: Learning When to Make Classification Decisions in Reading



  • 論文地址:https://www.ijcai.org/proceedings/2018/0589.pdf




深度好奇(DeeplyCurious.AI)最近在 IJCAI-2018 上展示了一個學習何時做分類決策的強化學習模型:Jumper,該論文將文本分類問題建模成離散的決策過程,並通過強化學習來優化,符號化表徵模型的決策過程具有很好的可解釋性,同時分類效果也達到最高水平。




本文提供了一種新的框架,將文本理解建模為一個離散的決策過程。通常在閱讀過程中,人們尋找線索、進行推理,並從文本中獲取信息;受到人類認知過程的啟發,我們通過將句子逐個地遞送到神經網路來模仿這個過程。在每個句子中,網路基於輸入做出決策(也稱為動作),並且在該過程結束時,該決策序列可以視為是對文本有了一些「理解」。



特別一提的是,我們專註於幾個預定義子任務的文本分類問題。當我們的神經網路讀取一個段落時,每個子任務在開始時具有默認值「無」(None)。在每個決策步驟中,段落的句子按順序被遞送到神經網路;之後,網路來決定是否有足夠的信心「跳轉」到非默認值作為特定時間的預測。我們施加約束,即每次跳轉都是最終決定,它不可以在後面的閱讀中被更改。如圖 1 所示,給定一段話,有多個預先定義好的問題等待回答;模型按句子閱讀,在閱讀過程中,問題的答案陸續被找到。模型從默認決策到非默認決策都是一個「跳轉」的過程,正因此我們稱模型為 Jumper。在人類閱讀的過程中,人們通常會獲得一致的閱讀理解的結果,但是閱讀理解過程中的很多環節卻經常是微妙和難以捉摸的。同樣,我們也假設我們的訓練標籤僅包含最終結果,並且沒有給出關於模型應該做出決定的步驟的監督信號。也就是說,我們通過強化學習在弱監督信號情況下訓練 Jumper 模型。


 



圖 1 Jumper 模型在閱讀段落的決策過程




Jumper 模型主要由編碼層、控制器、符號輸出層構成。編碼層將句子編碼成定長的向量,控制器根據歷史和當前輸入產生當前的決定,符號輸出層使模型的輸出滿足跳轉約束,即每個決策過程最多只能有一次跳轉。





圖 2 Jumper 模型的基本框架




跳轉約束的作用在於使模型更加慎重地決定何時跳轉。因此,Jumper 模型的優化目標有兩個,第一個是儘可能早地「跳轉」,第二個是儘可能預測准。假設 t* 是最佳的跳轉時間,那麼如果模型在 t* 時刻之前跳轉,則模型還沒有看到真正的 pattern,那麼得到的答案等同於隨機猜;如果模型在 t* 時刻之後跳轉,而 t* +1 句話可能不存在,因此沒有機會跳轉從而預測錯誤。



通過上述建模,論文把文本分類問題轉化為離散的決策過程,訓練好的 Jumper 輸出的離散決策過程就可以表達模型對文本的理解過程;而決策過程本身並沒有標籤,因此我們用 policy gradient 強化學習演算法來訓練,如果最終的決定和分類標籤一致,就獎勵整個決策動作,如果不一致,則懲罰。




我們對三個任務評估了 Jumper,包括兩個基準數據集和一個實際工業應用。我們首先分析了 Jumper 的分類準確性,並與幾個基線進行了比較。表 1 顯示 Jumper 在所有這些任務上實現了相當或更好的性能,這表明將文本分類建模為順序決策過程不僅不會損害、甚至提高了分類準確性。





表 1 在電影評論數據集(MR)、新聞數據集(AG)和工傷數據集(OI)的測試集上的準確率








我們想指出,「準確性」並不是我們關注的唯一表現。更重要的是,提出的模型能夠減少閱讀過程,或者找到文本分類的關鍵支撐句。只要在閱讀過程中基於「跳轉約束」限制而看到足夠的證據,Jumper 就能做出決定,並且在預測之後不需要再閱讀之後的句子。在表 2 中可以看到,我們的模型與強基線相比達到了相似或更高的性能,與此同時,它還將文本讀取的長度縮減了 30-40%,從而加速了推斷預測。





表 2



除了準確率高和推斷速度快以外,我們更好奇 Jumper 是否能夠在信息提取式任務(例如工傷級別分類任務)中找到正確的位置做出決策。我們在 400 個數據點中標註關鍵支撐句(即最佳跳轉位置)作為測試基礎。需要注意的是,在這個實驗中我們仍然沒有跳轉位置的訓練標籤。我們將 Jumper 與使用相同神經網路的層級 CNN-GRU 模型進行比較,但在訓練方法方面有所不同;層級 CNN-GRU 在訓練時,用段落末尾的交叉熵作為損失函數。在測試期間,我們將預測器應用於每個步驟並找到它做出預測的第一個位置。我們還列出了一個經典 CNN 的結果作為基線模型,並使用了最大池化操作(max-pooling)選擇的單詞最多的那些句子來作為測試數據。我們使用了跳轉動作的準確率來評測 Jumper。通過表 3 可知,Jumper 準確地找到了測試集中所有關鍵支撐句的位置,說明我們的單跳約束迫使模型更仔細地思考何時做出決策,也驗證了強化學習是學習決策正確位置的有效方法。





表 3 各模型在工傷等級分類任務(OI-Level)上尋找關鍵支撐句的效果統計。該任務的關鍵支撐句在文本中通常聚集於一處,不存在歧義,便于衡量各模型效果。CA:分類準確率,JA:跳躍準確率,OA:在分類準確條件下的跳躍準確率







圖 3 則顯示了 Jumper 在閱讀時做出決策的過程。其中,Jumper 在前六個句子中保持默認決策(不做跳轉),而在到達關鍵支撐句時突然跳轉,這體現了 Jumper 可以識別關鍵支撐句,從而找到最佳跳躍位置。因此,在這類關鍵支撐語句集中出現時,Jumper 可以在完成分類任務的同時找到關鍵支撐句,因此具有較強的可解釋性。





圖 3 Jumper 決策序列展示




總結




我們提出了一種新的模型 Jumper,它在閱讀段落時將文本分類建模為逐個句子的順序決策過程。我們通過強化學習訓練帶有跳轉約束的 Jumper,實驗表明:1) Jumper 的性能與基線相當或更高;2) 它在很大程度上減少了文本閱讀量;3) 如果所需信息在文中的分布是局域性的,它可以找到關鍵的支撐句子,具有很好的可解釋性。






本文為機器之心專欄,

轉載請聯繫原作者獲得授權



?------------------------------------------------


加入機器之心(全職記者 / 實習生):hr@jiqizhixin.com


投稿或尋求報道:

content

@jiqizhixin.com


廣告 & 商務合作:bd@jiqizhixin.com

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 機器之心 的精彩文章:

小心!現在,機器人可以控制你了

TAG:機器之心 |