第四章 對話系統

1. 面向任務的對話系統

面向任務的對話系統指通過對話系統能夠指導用戶完成一項特定的任務。對話過程通常具有明確的目的性,主要以任務的完成情況來衡量對話的質量,實際上分爲基於規則和基於數據兩種方式。
平時所說的SDS(Spoken Dialogue System),默認指的是面向任務的對話系統。
對話系統符號表

符號 解釋
Hx 用戶的對話歷史語句
Hy 系統的對話歷史語句
Xn 第n輪的用戶對話語句
Yn 第n輪的系統對話語句
Un 第n輪的用戶動作
Sn 第n輪的對話狀態
An 第n輪的系統動作

給定前n-1輪的對話歷史信息,包括用戶的對話歷史語句Hx = {X1,X1,…,Xn-1}、系統的對話歷史語句Hy = {Y1,Y1,…,Yn-1}及第n輪的用戶對話語句Xn,求Yn。

2. 對話系統技術原理

模塊化的對話系統
分模塊串行處理對話任務,每一個模塊負責特定的任務,並將結果傳遞給下一個模塊,通常由NLUDST(Dialogue State Tracking,對話狀態追蹤)DPL(Dialogue Policy Learning,對話策略學習)NLG4個部分構成。在具體實現上,可以針對任意模塊採用基於規則的人工設計方式,或者基於數據驅動的模型方式。
在這裏插入圖片描述

  • NLU:將用戶的輸入自然語言語句映射爲機器可讀的結構化語義表述,這種結構化語義一般由兩部分構成,分別是用戶意圖(user intention)和槽值(slot-value)。
  • DST:這一模塊的目標是追蹤用戶需求並判斷當前的對話狀態。該模塊以多倫對話歷史、當前的用戶動作爲輸入,通過總計和推理理解在上下文環境下用戶當前輸入自然語言的具體含義。對於對話系統來說,這一模塊有着重大意義,很多時候需要綜合考慮用戶的多輪輸入才能讓對話系統理解用戶的真正需求。
  • DPL:也被稱爲對話策略優化(optimization),根據當前的對話狀態,對話策略決定下一步執行什麼系統動作。系統行動與用戶意圖類似,也由意圖和槽位構成。
  • NLG:負責把對話策略模塊選擇的系統動作轉化爲自然語言,最終反饋給用戶。

2.1 NLU模塊

NLU模塊的輸入是用戶對話語句Xn,輸出是解析Xn後得到的用戶動作Un。該模塊涉及的主要技術是意圖識別和槽位填充,這兩種結束分別對應用戶動作的兩項結構化參數,即意圖和槽位。

  • 意圖和槽位和定義
    意圖和槽位共同構成了“用戶動作”,機器是無法直接理解自然語言的,因此用戶動作的作用便是將自然語言映射爲機器能夠理解的結構化語義表示。
    意圖識別,也被稱爲SUC(Spoken Utterance Classification),意思是將用戶輸入的自然語言會話進行劃分,類別(classification)對應的就是用戶意圖。例如“今天天氣如何”,其意圖爲“詢問天氣”。自然地,可以將意圖識別看作一個典型的分類問題。意圖的分類和定義可參考ISO-24617-2標準。面向任務的對話系統中的意圖識別通常可以視爲文本分類任務。
    槽位,即意圖所帶的參數。一個意圖可能對應若幹個槽位,例如詢問公交車路線時,需要給出出發地、目的地、時間等必要參數。以上參數即“詢問公交車路線”這一意圖對應的槽位。語義槽位填充任務的主要目標時在已知特定領域或特定意圖的語義框架(semantic frame)的前提下,從輸入語句中抽取該語義框架中預先定義好的語義槽的值。語義槽位填充任務可以轉化爲序列標註任務,即運用經典的IOB標記法,標記某一個詞時某一語義槽的開始(begin)、延續(inside),或是非語義槽(outside)。
  • 相比於傳統的機器學習方法,深度學習模型能夠自動學習輸入數據的隱含特徵。例如,將可以利用更多上下文特徵的最大熵馬爾可夫模型引入槽位填充的過程。
  • 也有研究將條件隨機場模型引入槽位填充。
  • 基於RNN地深度學習模型在意圖識別和槽位填充領域也得到了大量的應用。參考文獻:Liu B,Lane I. Attention-Based Recurrent Neural Network Models for Joint Intent Detection and Slot Filling. 2016
  • 與基於RNN的意圖識別和槽位填充相比,基於LSTM模型的槽位填充可以有效解決RNN模型中存在的梯度消失問題。
  • 對各個組成部分進行標註,所以通常也會應用到序列標註方法。由於串行執行的方式存在問題,所以使用參考文獻:Multi-Domain Joint Semantic Frame Parsing Using Bi-Directional RNN-LSTM, INTERSPEECH中提到的聯合學習(joint learning)方式進行意圖識別和槽位填充。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章