丁香五月天婷婷久久婷婷色综合91|国产传媒自偷自拍|久久影院亚洲精品|国产欧美VA天堂国产美女自慰视屏|免费黄色av网站|婷婷丁香五月激情四射|日韩AV一区二区中文字幕在线观看|亚洲欧美日本性爱|日日噜噜噜夜夜噜噜噜|中文Av日韩一区二区

您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號安全和更好的產(chǎn)品體驗,強烈建議使用更快更安全的瀏覽器
此為臨時鏈接,僅用于文章預覽,將在時失效
人工智能開發(fā)者 正文
發(fā)私信給黃善清
發(fā)送

0

清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂

本文作者: 黃善清 2018-08-27 15:50
導語:日常對話中的句式可以直接反映一個人的對話目的

雷鋒網(wǎng)AI研習社按:在閑聊對話領域,對話策略研究是近幾年的熱門話題,實現(xiàn)對話策略需要引入一些要素,讓聊天機器人變得更加擬人化,以便能跟用戶更好地交互。來自清華大學的柯沛認為,日常對話中的句式可以直接反映一個人的對話目的,通過引入句式控制,聊天機器人將能生成優(yōu)質的回復——不僅句式受控,還包含了豐富的信息量。

在近日的 AI 研習社大講堂上,柯沛給我們介紹了這項具有開創(chuàng)性的研究成果。

公開課回放地址:

http://www.mooc.ai/open/course/527

分享主題:閑聊對話中的句式控制

分享提綱:

  • 從對話策略分析句式控制的緣由

  • 基于條件變分自編碼器的對話生成模型

  • 生成質量的自動評價和人工評測

  • 未來工作及展望

雷鋒網(wǎng)AI研習社將其分享內(nèi)容整理如下:

很高興能有機會跟大家分享我們的工作,我叫柯沛,是清華大學計算機系的在讀博士生,研究方向是自然語言處理,主要關注自然語言生成和對話系統(tǒng)。

今天分享的是我們今年發(fā)表在 ACL 上的一個工作,研究的是閑聊對話中的句式控制問題。首先,我會從對話策略講起,跟大家談談閑聊對話主要會涉及哪些問題,再結合句式控制的任務介紹我們所使用的模型,然后通過機器評測和人工評測說明模型的效果,同時給出一些對話示例,最后總結我們的工作和未來的發(fā)展方向。

我們先來講一下對話策略的問題。閑聊對話與任務型對話有本質上的區(qū)別,閑聊對話最大的特點是涉獵的話題較廣泛,什么都能聊。目前閑聊對話做得比較好的產(chǎn)品是微軟小冰,只要有足夠的耐心和它聊,對話就會一直持續(xù)下去。

清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂

在閑聊對話領域,對話策略研究是近幾年的熱門話題,實現(xiàn)對話策略需要引入一些要素,讓聊天機器人變得更加擬人化,能夠跟用戶更好地交互。比如我們實驗室所做的一個工作:通過引入情緒因素,讓聊天機器人可以生成帶有不同情緒的回復,提高用戶的聊天體驗。我們實驗室還試圖將人物設定賦予聊天機器人,讓聊天體驗變得更有意思。

我們這篇文章著重要談的是句式(Sentence Function)問題,在我們看來,日常對話中的句式可以直接反映一個人的對話目的,所以我們總結出了常見的 3 種句式類型:

第一種類型是疑問句,在雙方都不熟悉的情況下,如果我想認識你,可能就會更多使用疑問句,通過提問來獲取更多關于你的信息。

第二種類型是祈使句,主要用于發(fā)出請求或者邀請,類似的回復我們一律稱為祈使句,祈使句一般可以促進更深層次的交互。

第三種類型是平時用得比較頻繁的陳述句,從語氣上來講比較平淡,主要用于陳述事實或者解釋原因。

在進一步展開我們文章的話題前,需要跟大家理清幾個近義詞,Sentence Function 被我們暫譯為「句式」,根據(jù) Sentence Function 可以把所有的句子劃分成多種 Sentence Type,比如我們目前考慮的 3 種 Sentence Type:疑問句、祈使句和陳述句。然而單就疑問句而言,其實還包含很多種細分的模式,比如一般疑問句和特殊疑問句,這說明同一類型的句子中也可能存在多種不同的 Sentence Pattern。

既然我們說句式可以反映一個人的說話目的,那么引入句式因素,是否就能有效提高聊天機器人的交互性呢?

清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂

這里我們給了一個例子,用戶說我現(xiàn)在餓了,聊天機器人則可以根據(jù)不同的對話目的,給出不同句式類型的回復。

如果機器人想知道用戶為什么餓了,那么他會提問:你早餐吃的什么呀?

如果機器人想向用戶發(fā)出邀請/請求,就會使用祈使句:那我們一起吃晚飯吧!

當然,機器人也可以選擇比較平穩(wěn)的回復,這時會選擇陳述句:我也餓了,可你在午飯時候吃了很多。

為了賦予機器人生成不同句式的回復的能力,我們的工作在生成過程中規(guī)劃了句式控制詞、話題詞以及普通詞的生成位置,以達到理想的生成效果。

清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂

我們的工作涉及到可控對話生成和可控文本生成的任務,也就是說給定一個屬性值,生成的語言必須和這個屬性值相匹配,目前學界做的較多的是跟情緒相關的研究,比如設定一個情緒「喜歡」,聊天機器人自動生成各種與「喜歡」屬性相匹配的對話內(nèi)容;還有一種更加粗線條的情感極性,主要分為「正向情感」和「負向情感」。另外還有一種與英語時態(tài)相關。還有人研究對話意圖,讓生成的對話能夠符合事先設定的對話意圖。也有人做「風格」相關的一些研究工作,不過這方面更多集中在圖像領域,比如說風格遷移,就語言領域的研究來講,這塊還是處于比較初級的階段(比如把對話風格統(tǒng)一調整為「男性」)。

以上這 5 類工作是近幾年比較熱門的研究方向。

回到我們的工作,我們首先會輸入用戶請求以及設定的句式類型,模型會生成一個回復——這個回復不僅在語義上要與用戶的請求對應,并且還要與設置的句式類別相匹配。

完成這項任務會面臨兩個比較大的挑戰(zhàn):第一個是涉及到對生成過程的全局控制,比如生成一個疑問句,開頭可能是個疑問詞,中間還涉及到一些助動詞,最后可能還要考慮標點符號的因素;第二個挑戰(zhàn)在于如何平衡句式控制與信息量兼容性的問題,畢竟生成結果中如果不能包含豐富的信息量,句式控制得再完美也會影響到對話體驗。

基于條件變分自編碼器的對話生成模型

接下來我會給大家介紹我們的模型,看看我們是如何解決以上兩個挑戰(zhàn)的。

清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂

左邊是對話領域中常見的「編碼-解碼」結構,該結構一般帶有 attention,以增強 post 和 Response 間的對齊關系,然而僅僅只有這個結構,生成的結果肯定不是我們想要的,因此我們需要增加控制組件,讓模型能夠達到控制句式的效果。

整個模型主要基于條件變分自編碼器(CVAE 模型),該模型早年更多在圖像領域使用,一直到最近兩年才運用到文本與對話上來,如果只是單純引入 CVAE 作為技術框架,之前提到的全局控制與信息量兼容問題依然無法得到解決,因此我們便在原先的 CVAE 基礎上做了改進。

我會從四個關鍵部件來給大家講解這個模型,分別是:傳統(tǒng)的編碼-解碼器識別/先驗網(wǎng)絡、判別器以及類型控制器。

傳統(tǒng)的編碼-解碼框架會先通過循環(huán)神經(jīng)網(wǎng)絡對用戶的 post 進行編碼,得到每個位置的隱層向量,然后再將隱層向量傳給解碼器,通過逐步解碼最終生成回復。清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂是編碼器每個位置的隱狀態(tài)向量; 清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂是解碼器中每個位置的隱狀態(tài)向量;在我們得到解碼器中每個位置的隱狀態(tài)后,我們通過簡單的映射,即線性變換加上 softmax 層,來得到每一個位置生成每一個詞的概率,然后我們再從詞的概率分布里進行采樣,就能得到最終的解碼結果。這個是一個非常經(jīng)典的帶有 attention 機制的編碼-解碼模型。

清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂

為了讓回復的句式能夠符合我們之前的設定,我們引入了識別網(wǎng)絡和先驗網(wǎng)絡。根據(jù)條件變分自編碼器原理,訓練的過程中我們是知道真實回復的,所以訓練的時候我們會利用后驗網(wǎng)絡對 Post 信息和 Response 信息進行編碼,獲得隱變量分布的參數(shù),隱變量分布選的是高斯分布,這里我們假設協(xié)方差矩陣是對角陣,所以我們要得到的兩個參數(shù)是清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂,那么我們可以設計一個識別網(wǎng)絡,如 MLP,并通過識別網(wǎng)絡得到隱變量的高斯分布。

這個高斯分布的用處是什么呢?實際上引入隱變量的目的,是希望可以將一些跟句式相關的特征編碼到隱變量中,然后再通過隱變量來引導 response 的生成。不過要注意的是,這個是在訓練的過程獲得的,測試過程是看不到真實回復的,所以在測試時我們使用了不包含 response 信息的先驗網(wǎng)絡。

這樣可能造成的一個問題是,兩個不一樣的網(wǎng)絡會導致訓練和測試之間存在隔閡。對此,我們的解決方案是通過設計一個 lost function 讓兩個網(wǎng)絡的隱變量分布盡可能的接近,以保證測試的時候也能得到一個含有句式信息的隱變量分布。

清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂

經(jīng)過識別/先驗網(wǎng)絡后,我們會得到一個隱變量 z 的高斯分布,我們在高斯分布中采樣得到 z,那么又會面臨一個新的問題:網(wǎng)絡的輸入是 x(post)和 y(response),也就是說 z 是提取了 post 和 response 的信息,然而這個信息可能與句式無關,我們要怎么做才能讓 z 編碼到盡可能多的句式信息呢?我們的解決方案是借助判別器,判別器以 z 為輸入,最終得到一個分類結果,這個分類結果就是之前提到的三種句式(疑問句、祈使句、陳述句)上的離散概率。

分類器以輸入時設定的句式類別為監(jiān)督,如果發(fā)現(xiàn)分類結果與人為設置的句式結果不一樣,就會產(chǎn)生一個 loss,進而督促 z 編碼更多在 Post 或者 response 中體現(xiàn)的句式信息??偟膩碚f,判別器主要用于輔助 z 編碼與句式相關的信息。

清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂

接下來要分享的是比較重要的部分,那就是類型控制器,我們當前每一步的生成,解碼器都會計算清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂,這個清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂和編碼句式信息的 z 會通過類型控制器先在詞的類型上生成一個分布,看當前解碼位置上使用哪種類型的詞概率更高。

這里我將詞分成了三種類型:第一類是句式控制相關的詞、第二類是話題相關的詞、第三類是起句子連接作用的普通詞匯。然后我們將類別上的概率分布放進正常的解碼過程中,這個概率分布與生成詞原本的概率分布可以做一個概率混合,最后得到每一個詞的解碼概率,通過采樣即可生成解碼結果。

這個類型控制器的實現(xiàn)也比較簡單,這里用的是 MLP,輸入是把當前的清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂(輸出端語言模型的信息)和 z(句式控制相關的信息)兩個結合起來,再過一個 MLP 和 softmax,最終得到詞類別上的概率分布。

清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂

我們的解碼器與一般解碼器不同的地方在于,在計算每一個詞的解碼概率時,使用的是混合的計算方式——根據(jù)當前清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂的和 z 去挑選當前用哪一類詞更恰當,然后再到每個類型里去看哪一個詞的解碼概率更高一些,以此形成概率混合。其中,每一類的算法各有不同,比如第一類句式控制相關的詞,這一類詞的在計算概率時會用到清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂語言模型的信息、隱變量信息以及 label 信息。第二類主題詞與第三類普通詞的算法會比較類似,但詞表略有不同,是一個比較常規(guī)的清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂的投影過程。我們最終將三個詞表的結果用概率混合進行計算,就能得到我們解碼出每一個詞的概率了,至此,我們的解碼工作也就完成了。

最后我們再來回顧一下整個模型,這個模型會產(chǎn)生 loss 的地方主要有三點:第一點是最終生成的 response 與給定的 response 之間的交叉熵;然后在對 z 做分類時,判斷當前類別與我們設定的類別是否一樣,中間也會存在一個 Loss;第三個點是為了拉近識別網(wǎng)絡與先驗網(wǎng)絡產(chǎn)生的分布距離,我們設置了一個 KL 項,在這過程也會產(chǎn)生 loss。

三者我們做了聯(lián)合優(yōu)化,最終得出一個總的 loss,再通過梯度下降等方法去訓練來得到我們最終的模型參數(shù)。

評測結果

我們工作的另外一項貢獻,是構建了一個帶句式標簽的中文數(shù)據(jù)集,這個數(shù)據(jù)在學界是比較少的。

清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂

數(shù)據(jù)集里大概有 196 萬的 post,response 和 post 在數(shù)量上對等,不過帶了相應的句式標簽,最后我們還保留了 6000 個 post 作為 test set。

如果不考慮話題因素,目前已有其他模型也在試圖做同樣的事情,如 c-seq2seq、MA 以及 KgCVAE 模型等,我們將他們作為基線模型,從生成回復的語法性、多樣性、準確性三個方面進行對比,結果顯示,除了語法性以外,多樣性和準確性方面我們的模型都取得了比較出眾的效果。

涉獵對話領域的同學可能都知道,自動指標有時候是不靠譜的,這時候我們需要借助一些人工評價,我們這里采取的是一對一比較式評價,我們給標注者一個用戶請求以及對應的模型生成結果,讓他們從我們的模型更好、基線模型更好、以及平局三者之間做出選擇——為了公平起見,標注過程我們會對模型的名稱進行保密。

我們比較的指標主要有三個:語法性、合適性、信息量,從結果來看,只要結果顯示超過 0.5,就表示我們的模型在該項目的表現(xiàn)要比其他模型更好,我們還會做顯著性的測試,結果中我們可以看到除了疑問句(相對而言句式較簡單),其他方面都是我們的模型表現(xiàn)得更顯著,尤其是在信息量上,這也是我們文章所要解決的挑戰(zhàn),使得回復既包含豐富的信息量,又在句式上是可控的。

清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂

為了分析這些回復究竟有什么樣的規(guī)律,我們統(tǒng)計了高頻詞和常見的模式,主要是通過頻繁模式挖掘的算法來分析的。疑問句中較突出的是疑問詞,頻繁出現(xiàn)的模式既包含一般疑問句,還包含特殊疑問句,如果模型確實能夠將這些模式靈活運用到回復上的話,我們即可獲得優(yōu)質的生成結果。祈使句和陳述句同理。

值得一提的是,陳述句的頻繁模式與高頻詞相對疑問句和祈使句而言沒有那么顯著,因為陳述句更多的是轉折和并列,但我們的模型有能力利用這些模式生成多樣的回復。

清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂

接下來我用更加直觀的生成例子來做講解。

這個例子里,post 是「如果有一天我跟你絕交,你會怎樣?」在我們的模型生成的回復里,紅色部分是從句式控制相關的詞表里生成的;藍色則是從話題詞詞表里生成的;而剩余的黑色部分則是從一般詞匯詞表中生成。這也意味著,如果要生成一個好的回復,我們需要將這三種不同類型的詞進行合理的規(guī)劃,這樣在面對不同句式類型的生成要求時,才能夠生成比較優(yōu)質的回復——不僅能夠控制句式,還能夠包含豐富的信息量。

要是我們要求模型生成多個疑問句回復會怎樣?我們的模型可以通過采樣多個隱變量 z 來達成目標。如圖所示,目前的生成結果中,既有一般疑問句的問法,也有特殊疑問句的問法。這說明,我們的模型能夠做到的不僅僅是區(qū)分 3 種句式類別,通過引入隱變量還能夠學習到句式內(nèi)部的多樣性。

結論

總結一下,在單輪對話里通過生成不同句式的回復來實現(xiàn)對話目的,這一點我們的模型已經(jīng)做得比較好了。在初步具備控制能力的情況下,下一步我們需要做感知,即知道用戶表現(xiàn)出什么樣的狀態(tài),這樣我們才能決定我們使用的句式、對話目的與策略,從而在多輪對話里生成較高質量的回復。目前我們的工作只做到了第一步,第二步相對來說比較有難度,因為涉及到的是用戶行為的探測和感知。這個可以看做是我們工作未來發(fā)展的一個方向。

另外,在語義和結構方面,我們的工作目前只是通過類別控制器去做規(guī)劃性的工作,比如回復里哪個地方該用哪種類別的詞。實際上我們還可以做語義和結構的解耦,以保證在同一個結構下表現(xiàn)不同語義時結構能夠不發(fā)生變化,這也是我們工作未來的一個發(fā)展方向。

清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂

最后給大家展示的是可控對話近兩年的一些研究成果,它們都是在解決同一個問題:怎樣控制回復的某種屬性。如果大家對這些話題感興趣的話,都可以考慮看看這些最新的論文。我今天的分享就到這里,謝謝大家。

以上就是本期嘉賓的全部分享內(nèi)容。更多公開課視頻請到雷鋒網(wǎng)AI研習社社區(qū)(https://club.leiphone.com/)觀看。關注微信公眾號:AI 研習社(okweiwu),可獲取最新公開課直播時間預告。

雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權禁止轉載。詳情見轉載須知。

清華大學柯沛:閑聊對話中的句式控制 | AI研習社65期大講堂

分享:
相關文章
當月熱門文章
最新文章
請?zhí)顚懮暾埲速Y料
姓名
電話
郵箱
微信號
作品鏈接
個人簡介
為了您的賬戶安全,請驗證郵箱
您的郵箱還未驗證,完成可獲20積分喲!
請驗證您的郵箱
立即驗證
完善賬號信息
您的賬號已經(jīng)綁定,現(xiàn)在您可以設置密碼以方便用郵箱登錄
立即設置 以后再說