999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于生成對抗網絡的情感對話回復生成

2022-09-21 05:37:48李凱偉
計算機工程與應用 2022年18期
關鍵詞:文本情感模型

李凱偉,馬 力,2

1.西北大學 網絡和數據中心,西安710127

2.西安郵電大學 計算機學院,西安710121

隨著人工智能與機器人領域的不斷發展[1-2],研究者在賦予聊天機器人“智商”的同時,也在繼續思考如何讓聊天機器人具備“情商”,讓大眾獲得更加美好的用戶體驗,情感作為人在理解和表達信息時的重要因素,準確識別和理解文本中的情感,使機器具備感知和表達情感的能力有助于完成心靈安慰和日常閑聊等任務。而現有的很多研究努力在提高會話內容質量(例如相關性、多樣性)[3-4],但忽略了文本中情感因素的生成,多數關于情感對話的研究主要是面向任務的檢索式應用程序,限制了域的適應性以及模型的可伸縮性。造成這種現狀的原因是產生情感文本是非常有挑戰性的,首先,在大規模的語料庫中很難獲得高質量的情感標記數據,情感標注是一項相當主觀的任務。其次,生成回復語句不僅需要考慮語法,還有情感的感知以及互動[5]。

在文獻[6]中,首次在大規模會話中引入情感因素,生成文本質量得到一定提高,但忽略了回復反饋等信息,導致生成文本的情感強度不足。文獻[7]提出了情感文本生成框架Senti-GAN,所提出的模型可以生成多樣的和具有不同情感類別的文本。但結果發現導致經常生成一些沒有意義、通用的安全回答而且回答的情感強度很弱,并不能很好地將情感融合到生成的回復當中。

本文針對會話系統中情感回復的生成問題,提出了一種基于生成對抗網絡的情感回復生成模型,情感類別包含{憤怒,厭惡,快樂,喜歡,悲傷},將其作為條件輸入到生成回復中,判別結果作為獎勵值,引導生成回復,增強語句的多樣性和情感豐富度。例如,在一個帖子“我昨天失業了”和一個指定的回復情感“悲傷”,用“聽到這個我很難過”來表達悲傷是合適的。結果顯示,本文生成的回復內容相關性和情感豐富度更好。

1 相關工作

1.1 基于生成對抗網絡的文本生成模型

目前,基于序列到序列的文本生成模型生成文本的質量還遠遠沒有達到人們所預期的效果[8],越來越多的研究者開始嘗試將生成對抗網絡應用到自然語言處理領域[9-10]。Li 等人[11]提出了基于強化學習的文本序列生成方法,模型使用策略梯度[12]的方法進行訓練,從信息量、相關性和易于理解三個方面定義了獎勵函數的公式,在相關數據集上效果很好。Zhang 等人[13]以LSTM作為GAN 的生成器(generator),用光滑近似的思路來逼近LSTM 的輸出,CNN 判別對話序列{X,Y}是由機器生成的還是從對話庫中采樣生成,并在預訓練方面,利用原始的句子和該句子中交換兩個詞的位置后得到的新句子進行判別訓練。Yu 等人[14]在基于強化學習文本生成的基礎上,開創性地提出基于策略梯度更新的SeqGAN模型,直接將生成器作為強化學習中的隨機策略,通過策略梯度來更新生成器,并利用蒙特卡洛搜索對部分序列進行采樣得到完整序列,用CNN網絡判別生成的序列,指導生成模型學習。Guo等人[15]針對SeqGAN不能生成可變長度的文本,提出了基于SeqGAN 的LeakGAN 模型,通過利用從判別器中泄露出的高維信息來更好地訓練生成器,并且結合層次化強化學習解決了長文本生成問題。Fedus 等人[16]提出了MaskGAN 模型,將文本生成看做填充任務來進行處理,依賴空缺部分周圍的上下文信息來進行預測填充,連續填充任務不僅可以避免模式崩潰,并且有助于文本GAN 的訓練穩定性。

1.2 融合情感因素的對話生成模型

Mayer 等人[17]最先提出了情感智能的概念,認為情感智能是人類智慧的一部分,在人機交互中,對于情感的檢測和合適回復可以豐富交流。如何正確連貫地表達情感,首先必須讓機器人能夠精準識別情感[18]。目前,通過研究者的努力,情感分析任務已經取得了巨大進展,最先進的情感分類器在斯坦福的樹圖資料庫數據集[19]上已經達到了90%左右的準確度。與文本情感分類任務相比,情感文本生成任務需要在識別情感的基礎上,自然連貫地表達情感[20-22]。Ghosh等人[23]提出了情感文本生成框架Affect-LM,能夠通過參數設計控制生成句子中情感內容的程度,生成貼合實際的語句,但卻忽略了句法先驗知識。Peng等人[24]提出TE-ECG模型,采用兩種機制,使用一個潛在的Twitter Dirichlet 分配(LDA)模型獲取輸入序列的主題詞作為額外的先驗信息,確保輸入內容和回復之間的一致性,再使用動態情感注意機制來自適應地獲取與內容相關的信息以及輸入文本和附加主題的情感信息產生豐富的情感反應,但仍然存在枯燥單一的回答。Huang等人[25]比較情感向量嵌入的位置對回復的影響,用情緒分類器來估計情緒對所產生反應的準確性。并設置閾值來強制更高的精度,在評估中選擇最可能的情感,但生成句子重復性高,缺乏多樣性。Xu 等人[26]提出了MTDA 框架,采用了一種基于多任務學習的編碼器將輸入語句分解為內容層和情感層,解碼采用雙重注意機制,確保情緒反應與輸入的內容和情感相一致,但沒有平衡文本的邏輯性與情感細致性,仍有改進空間。

2 人機對話情感回復生成模型

2.1 模型設計

上述的研究工作雖然在人機對話中融入情感信息,但取得的效果一般,生成的回復情感強度很低,內容十分呆板。這是因為這些模型忽略了對話過程中一個重要因素——反饋。對話過程中通常需要考慮生成的回復能否表達觀點、與前文的消息相關程度以及是否符合基本語法。這些反饋是回復生成的重要信息,將其引入到回復生成模型的訓練過程中,能夠引導模型產生有價值的回復。而本文針對上述問題,提出了相應解決方案,第一,采用生成對抗網絡生成文本,為回復生成模型提供反饋,從而使其跳出“通用回復”的狀態并生成有信息量的回復;第二,利用反饋,設置獎勵函數,從內容和情感方面綜合考慮,進一步解決易產生“通用回復”的問題,加強生成回復的多樣性和情感豐富度。

本文應用GAN 網絡機制實現對話生成,如圖1 所示,生成器被訓練生成對話中的回復,將判別器結果作為獎勵,反饋給生成器,指導回復生成。對于生成器:本文充分利用編解碼結構來形成Seq2Seq模型,用于生成句子的回復。對于判別器:本文分為兩個部分,第一部分區分生成的回復是否屬于“通用回復”;第二部分,本文判別GAN生成的回復是否具有感情色彩以及生成語句的情感與指定的情感類別的一致性。

圖1 方法概述Fig.1 Overview of method

2.2 基于Encoder-Decoder框架的生成器

本文的生成器采用Encoder-Decoder框架的Seq2Seq序列模型,LSTM 作為編碼器和解碼器,首先將用戶輸入A={a1,a2,…,am}映射為向量X={x1,x2,…,xm},xi代表第i個詞的向量,每個時間步輸入xi到編碼器,編碼器將輸入序列轉換為隱藏表示h(h1,h2,…,hm)。對于LSTM網絡,隱藏層的當前時刻狀態確定隱藏層的最后一次狀態和輸入,即

直到最后一個輸入值為xm,編碼器才將由每個步驟的輸入形成的語義向量C輸出到解碼器,解碼器實際上是執行編碼器的逆運算,使用語義向量C的輸入逐步對獲得的語義向量C進行解碼,每個步驟都輸出向量yi和隱藏狀態zi,即

每個時間步的yi輸出形成一個序列Y(y1,y2,…,ym)。最后,將Y轉為單詞序列B(b1,b2,…,bm)輸出。解碼器中的條件概率可以定義為:

在本文的模型中,假設要生成的回復的情緒是人為指定的,因為情緒是高度主觀的,給定一個話題,可能會有多種情緒類別適合它的回復,它取決于回復者的很多因素,但有些時候需要指定對話的情感,比如客服行業需要積極的對話情緒。對于每一個情感類別,都由一個實值的低維向量表示,每個情感類別都被初始化作為一個大小為6的獨熱向量,情感的嵌入大小分類向量在訓練階段后設置為100。然后通過訓練學習該情感類別的向量,回復生成中建模情緒的最直觀方法是將要生成的回復的情緒類別作為附加輸入,直接指導語境信息的選擇,即輸入為X={x1,x2,…,xm,e},e表示希望得到的回復句子的情感類別,目標是最小化ln(P(Y|X,e))。解碼器中的條件概率可以更新為:

2.3 判別器

一般來說,判別器的目的是判別生成器生成的語句和由人類書寫的真實文本,即判別真假,并提供反饋,指導文本的生成,但這樣的判別顯然過于籠統。在本文中,使用雙鑒器別從內容和情感兩個維度進行判別,并反饋到生成器指導生成回復。

2.3.1 內容判別器

CNN 最近在文本分類中顯示了巨大的有效性,并且本文對文本分類的判斷不需要使用字符間的高階依賴關系[27-28]。假設r為模型生成的回復,文獻[14]提出的SeqGAN 模型,使用卷積神經網絡作為內容判別器,區分r是數據集的真實對話,還是由模型生成,為一個二分類模型。而在本文中則區分r是否屬于通用回復。

輸入一個序列X1:n=x1⊕x2⊕…⊕xn,x∈Rk表示一個長度為n的句子中,第i個詞語的k維詞向量,xi:j表示在長度為n的句子中,第[i,j]個詞語的詞向量的拼接,使用窗口大小為h的卷積核W∈Rh×k進行卷積操作后,再使用激活函數激活得到相應的特征ci,則卷積操作可以表示為:

經過卷積運算之后,可以得到一個n-h+1 維的向量c,即c=[c1,c2,…,cn-h+1]。

池化層,通過對卷積層之后得到的句子局部特征矩陣C進行下采樣,求得局部值的最優解,如公式(6)所示:

最后將特征向量在全連接層進行連接,輸出文本類別的概率。

2.3.2 情感判別器

對于情感判別器,旨在判別回復與預先要求的情感類別的一致性,側重于分析整條微博文本所表達的情緒。本文訓練了幾種不同模型的情感分類器,如表1所示,CNN+BiGRU+Attention 分類準確度在這幾種模型中表現最好。

表1 情感分類器Table 1 Emotion classifier

本文將CNN與RNN結合使用,對CNN提取的文本局部特征和BiGRU 提取的文本全局特征進行特征融合,解決了CNN忽略上下文語義信息的弊端,又避免了RNN梯度消失和梯度爆炸問題,引入注意力機制,獲取文本中的重點特征,提高分類準確度。

將CNN網絡池化后的Mi向量連接成向量Q:Q={M1,M2,…,Mn}作為BiGRU 網絡的輸入,通過BiGRU學習序列Q的特征表示H=[hf;hb],然后利用注意力機制對文本向量分配權重,如下:

生成注意力權重ut,ht是CNN-BiGRU 網絡輸出的隱藏狀態。

然后,將注意力權重概率化。

最后,將注意力權重給到對應的隱層狀態語義編碼ht,經過softmax得到分類結果。

2.4 獎勵計算

但是,GAN網絡在用于對話生成時,生成模型的輸出是離散的,梯度更新從判別模型難以回傳到生成模型。例如,G網絡生成的圖片像素值為1.0,可以將錯誤希望像素值更新為1.001,但如果輸出是一個句子,例如“thank you!”,因為一個句子或字是一個實體,不能通過數值變化返回錯誤。本文借鑒提出的SeqGAN模型,認為文本生成是一個順序決策過程,并通過強化學習優化此過程,此外還添加了一個情感標簽來表示本文想要的回復,本文將使用它作為獎勵的一部分,以便情感的真實反應可以更接近實際。

2.4.1 內容相關性

聊天機器人的最終目標是讓對話持續不斷地進行下去,所以機器生成的話語是容易被理解的。設想如果在對話中一個人每次的回復都是“嗯嗯”“好的”等非常簡單的回復,對方會很難就此做出回復。因此應該避免聊天機器人生成此類回復。本文構建了一系列包含這類話語的集合,包括收集能作為大部分用戶輸入的通用回復,基本不提供有價值信息的回復,如“我知道了”“我也這么認為”,以及連續出現三次以上的詞與句子,這是因為在實驗中發現有時會生成連續重復的字詞,這些詞句不流暢且沒有信息量。使生成的回復避開這些低信息量的“通用回復”。公式為:

其中,S是沒有意義的回答集合,s是某一時刻對應的生成回復響應,x為輸入。

2.4.2 情感一致性

情感相關度:為保證句子具有豐富的情感,本文引入了一種情感一致性的指標,對句子的情感一致性進行評價,根據預測結果來考察回答是否符合預先要求的情感類別。本文使用CNN+BiGRU+Attention對生成的回復進行情感分類,定義生成回復情感標簽為yt,與制定情感類別一致的概率為yp。通過以下方法來計算回復y的情感一致性:

在本文中,獎勵權重設置為0.5,總的獎勵計算如下:

3 實驗

3.1 實驗數據及參數設置

本文的實驗數據來自于NLPCC 2017 Shared Task 4—Emotional Conversation Generation 語料[29],這個數據集由微博帖子和回復構成,共有1 119 207個回復對,每個post 和response 對都標注有對應于情感類別的情感標簽(快樂,憤怒,悲傷,喜歡,厭惡,其他)。如表2所示。

表2 情感類別Table 2 Emotional categories

在預處理階段,本文通過去掉多余的標點和粵語文本清理原始數據集,每個post 和response 的長度限制為25,以獲得更好的訓練數據,最終保留大約85%的原始訓練數據。

本實驗的相關參數設置,詞匯量設置為40 000,字嵌入大小設置為100,隨機初始化模型的所有參數,批處理大小設置為128,并使用Adam優化器,初始學習率為0.001。

3.2 對比實驗設置

為了充分驗證模型的有效性、增強對比性,本文選擇使用被廣泛研究及應用的深度學習算法,設置了以下對比實驗組:

文獻[1]提出的Seq2Seq 模型:Seq2Seq 方法使用編碼器和解碼器生成句子,已被認為對話生成的基礎模型,本文將其與生成回復文本的多樣性進行比較。

文獻[6]提出的ECM 模型:首次在大規模會話生成中引入情感信息,通過嵌入情感向量和內外部記憶存儲機制,以產生情感回復。本文將其與回復的情感強度和情感準確性進行比較。

3.3 實驗評價方案

情感分類是具有主觀性的,而情感對話生成任務測評還需考慮具體對話語境,因此目前尚無統一的評價標準。本文采用兩種評價方式:自動評價和人工評價相結合的方式來驗證模型生成回復的效果。

3.3.1 自動評估指標

本文旨在減少“通用回復問題”和提高情感豐富度,而評估“通用回復”的重要指標是多樣性,以及評測回復的流暢性和回復情感類別的準確性,具體評價指標如下:

(1)使用困惑度(PPL),評估生成回復的流暢度,公式如下:

(2)多樣性(Novelty)體現回復的多樣性,因為PPL低的模型不一定是更好的,本文使用distinct unigrams(Dist-1)和bigrams(Dist-2)評估生成回復的信息豐富性和多樣性。具體是計算方式如下:

統計模型生成回復中不同的獨個單詞和雙單詞的數量,然后用這個數量除以獨個單詞和雙單詞的總數,分別得到Dist-1 和Dist-2 的值,比值越高表明生成回復具有更多的內容信息和更高的多樣性。

(3)生成文本的情感準確性,通過CNN+BiGRU+Attention情感分類器來實現。

其中,Ntrues表示回復情感類別與指定情感類別一致的測試用例數量,Ntotal表示測試集的大小。

3.3.2 人工評價規則

在人工評測中,評測者根據評分規則對生成回復語句進行評分。具體規則如表3所示。

表3 人工評價標準Table 3 Artificial evaluation criteria

3.4 實驗結果與分析

3.4.1 自動評估

自動評估結果如表4所示,可以看出,Seq2Seq模型易生成“通用回復”,情感強度非常低,因為它對于不同的情緒類別只有相同的反應;ECM采用Beam Search算法一定程度上避免了安全、通用的回復,使用單純的情感嵌入模型,回復中情感因素較弱;本文加入獎勵機制后,更有可能生成多樣的含有豐富信息量的語句,且情感更豐富。

表4 自動評估結果Table 4 Automatic evaluation results

3.4.2 人工評價

由于人工測評時間和人力成本比較高,本文在測試集上對指定生成的六種情感類別進行隨機選擇,每種情感類別選擇100 條,共600 條。在對比實驗模型上抽取同樣的測試語句對應的回復,選取五位微博經驗豐富的社交達人,被要求按照評測標準測評語句的生成回復,包括本文模型以及對比試驗模型生成的回復語句。

表5 展示了三種模型在不同情感類別上的內容與情感的得分情況,因“其他”不包含具體情感類別,不對其進行打分評價。從表中分析可以看出,在五種情感類別的回復中,相比于Seq2Seq 模型,本文模型加入情感約束后,在內容和情感方面都有很大提高,平均得分上,內容得分比Seq2Seq 高出0.35 分,情感得分比Seq2Seq高出0.12分。相比ECM模型,在情感得分上,本文提出的模型在“喜歡”以及“快樂”這兩種情感類別上表現得更好,在平均得分上,內容得分比ECM 高出0.12 分,情感得分比ECM 高出0.03 分。同時可以看到,三個模型均在“厭惡”和“憤怒”情感類別中生成回復的情感得分較低,分析可能是因為這兩種情感類別的對話訓練語料相對較少,導致生成句子的選擇忽略了“厭惡”和“憤怒”的約束和優化回復的偏差。總體上來看,相比兩個基線模型,本文提出的模型在五種情感類別的回復中,在內容和情感兩個方面都有不錯的提升。

表5 人工評測結果Table 5 Manual evaluation results

3.4.3 案例研究

其次,在3.4.2 小節測試生成的600 條回復中,選取了5 個常見的通用回復,比較了各模型出現的頻率,結果如表6所示。實驗表明,本文提出的方法可以顯著減少通用回復的頻率。

表6 通用回復的頻率Table 6 Frequency of general reply

為了進一步分析模型生成回復的效果,表7給出了三種模型生成回復的實例。下劃線文字表示情感編輯優化部分。可以看到,Seq2Seq模型傾向于生成很短和毫無意義的回答,回復更像是帖子而不是對話。與Seq2Seq模型相比,ECM模型增加了靜態的情感向量嵌入表示、動態的情感狀態記憶網絡和情感詞外部記憶,將當前輸入通過編碼為隱向量,利用Attention機制選擇性加強,得到語義向量C,解碼器將語義向量C,靜態情感向量和初始情感記憶向量作為輸入,計算下個單詞的生成概率與控制生成情感詞或通用詞的權重得到最終詞生成概率,最后輸出情感回復語句。

表7 三種模型產生的回復示例Table 7 Examples of responses generated by three models

然而,在生成的實例中可以看出,由ECM產生的大多數答復情感很弱甚至沒有,這是因為ECM 模型只引入情感嵌入向量來指導生成情感回復的模型,缺少詳細的情緒引導信息生成,導致模糊的情感回復。相反,本文的模型,經過情感編輯的約束,將判別器的結果差異化,生成回復的信息量、多樣性和情感一致性等多個方面的反饋到生成器進行優化,避免“通用回復”,最大化情感相似度,使得生成的回復不僅豐富多樣,而且情感類別與指定情感類別相一致,情感強度更大。更進一步,可以變換約束條件,如文本風格,語句類型等,實現個性化生成。并且觀察輸入和回復之間的情感變化,注意到輸入與回復通常帶有相同的情感標簽。例如,一個貼有“喜歡”標簽的輸入很少會有“憤怒”的回復,同時,每類情感與其余5 種基本情感狀態也存在一定的情感共鳴度,這是因為情感共鳴度不僅與情感相似性相關,而且也受到情感互補性的影響;并在圖2可視化情感轉換信息的分布,可以看到關于對角線并不是完全對稱的,說明交互情感共鳴度存在方向性,比如,“喜歡”與“憤怒”的情感共鳴度與“憤怒”與“喜歡”的共鳴度并不相等,為未來研究自動選擇合適的情感類別生成回復做出了探索。

圖2 情感從輸入到回復的可視化Fig.2 Visualization of emotions from input to response

4 結束語

本文提出了EC-GAN 模型來模擬會話生成中的情感回復,詳細展示了EC-GAN 如何生成帶情感的回復,加強內容質量和情感相關性,驗證交互情感共鳴度存在方向性,為自動決定回復情感類別做出了探索。實驗結果表明,本文的模型不僅在內容上可以產生適當的回答,而且在情感方面更加突出。

在本文未來的工作中,將探索引入其他知識(如音調、文本風格和語句類型等),增強模型的靈活性和定制個性化,滿足實際生活中的需要。然而,這可能具有一定的挑戰,因為會涉及用戶的性格和上下文歷史。

猜你喜歡
文本情感模型
一半模型
如何在情感中自我成長,保持獨立
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
失落的情感
北極光(2019年12期)2020-01-18 06:22:10
情感
在808DA上文本顯示的改善
基于doc2vec和TF-IDF的相似文本識別
電子制作(2018年18期)2018-11-14 01:48:06
如何在情感中自我成長,保持獨立
3D打印中的模型分割與打包
主站蜘蛛池模板: 亚洲天堂区| 韩日免费小视频| 亚洲美女一级毛片| 在线人成精品免费视频| 亚洲天堂久久新| 欧美国产在线看| A级毛片无码久久精品免费| 国产精品无码一区二区桃花视频| 国产亚卅精品无码| 亚洲日韩精品综合在线一区二区| 国产欧美综合在线观看第七页| 免费午夜无码18禁无码影院| 亚洲中文精品人人永久免费| 亚洲色无码专线精品观看| 99精品视频九九精品| 久久久久免费看成人影片| 老司机久久99久久精品播放| 国产精品吹潮在线观看中文| 亚洲国产精品日韩欧美一区| 91色在线视频| 国产综合亚洲欧洲区精品无码| 欧美人与性动交a欧美精品| 久久国产毛片| 女人天堂av免费| 国产哺乳奶水91在线播放| 2020国产在线视精品在| 在线观看精品自拍视频| 国产夜色视频| 囯产av无码片毛片一级| 亚洲第一精品福利| 拍国产真实乱人偷精品| 欧美成人综合视频| 精品無碼一區在線觀看 | 欧美精品v| 亚洲国产精品无码AV| 久久亚洲日本不卡一区二区| 日本不卡在线播放| 久久semm亚洲国产| 成人国产小视频| 精品欧美视频| 亚洲高清在线天堂精品| 日韩av资源在线| a级毛片一区二区免费视频| 91免费国产高清观看| 精品国产电影久久九九| 国产成人高清亚洲一区久久| 成人午夜亚洲影视在线观看| 亚洲精品在线影院| 久久国产高清视频| 午夜人性色福利无码视频在线观看| 欧美国产日本高清不卡| 国产黄网永久免费| 亚洲成人精品久久| 亚洲欧美综合另类图片小说区| 国产三级毛片| 欧美a网站| 91毛片网| A级毛片无码久久精品免费| 国产精品久久久久久久伊一| 亚洲精品不卡午夜精品| 超清人妻系列无码专区| 欧洲日本亚洲中文字幕| 欧美不卡在线视频| 大香伊人久久| 久久精品无码一区二区日韩免费| 亚欧美国产综合| 特级做a爰片毛片免费69| 毛片基地视频| 欧美国产菊爆免费观看| 欧美国产视频| 国产精品xxx| 国产人碰人摸人爱免费视频| 高潮毛片无遮挡高清视频播放| 亚洲国产日韩在线成人蜜芽| 婷婷开心中文字幕| 国产手机在线ΑⅤ片无码观看| 色综合天天综合| 欧美成一级| 国产无遮挡裸体免费视频| 伊人蕉久影院| 在线观看国产精品第一区免费| 一级香蕉人体视频|