本發(fā)明涉及人機(jī)交互領(lǐng)域,尤其涉及一種具有共情機(jī)制的多模態(tài)人機(jī)交互方法。
背景技術(shù):
1、隨著人工智能和人機(jī)交互技術(shù)的發(fā)展,多模態(tài)人機(jī)交互已經(jīng)成為提高智能系統(tǒng)響應(yīng)能力和交互體驗(yàn)的重要手段。多模態(tài)人機(jī)交互通過融合語音、面部表情、手勢和觸控等多種輸入方式(或稱模態(tài)),使系統(tǒng)能夠從多維度感知和理解用戶的需求。
2、不過,現(xiàn)有的多模態(tài)人機(jī)交互方法存在不足:
3、首先,現(xiàn)有的多模態(tài)人機(jī)交互方法主要將目標(biāo)集中于完成交互任務(wù)的準(zhǔn)確性和效率,諸如僅僅是將目標(biāo)集中在準(zhǔn)確識別出用戶情緒為“高興”或者“悲傷”等情緒狀態(tài)(或稱情感),缺乏對用戶情緒和意圖的深層理解,導(dǎo)致人機(jī)交互過程過于機(jī)械化,缺乏對用戶情緒的共情能力,無法在交互過程中對用戶情緒狀態(tài)進(jìn)行細(xì)膩感知和共情,難以根據(jù)用戶情緒(如焦慮或者沮喪等情緒狀態(tài))提供諸如安慰或支持的交互內(nèi)容,交互效果不夠人性化;
4、其次,由于用戶在人機(jī)交互過程中的情緒狀態(tài)通常會發(fā)生動態(tài)變化,尤其是在持續(xù)交互過程中的情緒狀態(tài)會發(fā)生顯著波動變化,而現(xiàn)有的多模態(tài)人機(jī)交互方法無法根據(jù)用戶情緒波動變化進(jìn)行適時調(diào)整,這降低了人機(jī)交互過程的自然性和靈活性,在很大程度上降低了人機(jī)交互過程的體驗(yàn)效果。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明所要解決的技術(shù)問題是針對上述現(xiàn)有技術(shù)提供一種具有共情機(jī)制的多模態(tài)人機(jī)交互方法。該多模態(tài)人機(jī)交互方法不僅可識別用戶情緒狀態(tài),而且還能夠在交互過程中輸出共情交互內(nèi)容給用戶,實(shí)現(xiàn)人機(jī)交互過程的人性化,進(jìn)而提高人機(jī)交互過程的體驗(yàn)效果。
2、本發(fā)明解決上述技術(shù)問題所采用的技術(shù)方案為:具有共情機(jī)制的多模態(tài)人機(jī)交互方法,其特征在于,包括如下步驟:
3、步驟1,對用戶在人機(jī)交互過程中的情感特征做多模態(tài)實(shí)時提取,分別得到每一個模態(tài)所對應(yīng)的情感特征;其中,多模態(tài)包括用戶的面部表情圖像信號、音頻信號和對話文本語義信號;
4、步驟2,將提取到的各情感特征做融合處理,形成表征用戶當(dāng)前時刻情感的多模態(tài)情感特征向量;其中,在該多模態(tài)情感特征向量中,每一個模態(tài)具有與其對應(yīng)的情感特征向量;
5、步驟3,對多模態(tài)情感特征向量做處理,得到用戶在當(dāng)前時刻的用戶情感;
6、步驟4,將所得用戶在當(dāng)前時刻的用戶情感輸入到自身的對話模型處理,以預(yù)測得到用戶將來時刻的情感,且將與該用戶將來時刻的情感相匹配的共情交互內(nèi)容輸出給用戶。
7、改進(jìn)地,在所述具有共情機(jī)制的多模態(tài)人機(jī)交互方法中,在步驟2中,對各情感特征做融合處理以形成所述多模態(tài)情感特征向量的過程包括如下步驟a1~a3:
8、步驟a1,采用特征級融合方法,將基于面部表情圖像信號提取到的情感特征和基于用戶音頻信號提取到的情感特征進(jìn)行融合處理,得到用戶的非語言情感特征;
9、步驟a2,提取用戶對話文本語義信號中的語義特征,且將該語義特征與情感詞典結(jié)合以生成情感標(biāo)簽,得到用戶的語言情感文本特征;
10、步驟a3,將所得用戶的非語言情感特征和語言情感文本特征進(jìn)行融合處理,得到所述多模態(tài)情感特征向量。
11、進(jìn)一步地,在所述具有共情機(jī)制的多模態(tài)人機(jī)交互方法中,在步驟4中,對多模態(tài)情感特征向量做處理以預(yù)測得到用戶將來時刻的情感的過程包括如下步驟b1~b3:
12、步驟b1,對基于用戶面部圖像信號提取到的情感特征向量和基于用戶音頻信號提取到的情感特征向量進(jìn)行拼接,得到聚合的語義向量;
13、步驟b2,將聚合的語義向量輸入到卷積神經(jīng)網(wǎng)絡(luò)的全連接層處理,再利用極性一致性交叉熵?fù)p失函數(shù)對全連接層處理后的語義向量做情感分類訓(xùn)練處理;
14、步驟b3,利用訓(xùn)練好的對話模型對輸入的所述多模態(tài)情感特征向量做處理,且將該對話模型的輸出作為預(yù)測所得用戶將來時刻的情感。
15、再改進(jìn),在所述具有共情機(jī)制的多模態(tài)人機(jī)交互方法中,在步驟3中,通過處理與用戶對話文本語義信號模態(tài)所對應(yīng)情感特征向量,以得到用戶在當(dāng)前時刻的用戶情感的過程包括如下步驟c1~c10:
16、步驟c1,對所接收用戶的對話文本語義信號進(jìn)行詞嵌入處理;其中,所接收用戶的對話文本語義信號標(biāo)記為u=[cls,u1,u2,…,un],cls表示整個語句的聚合語義信息,ui表示第i個令牌,并且采用詞嵌入和位置嵌入分別將每個令牌ui映射做向量表示,1≤i≤n,n表示令牌總數(shù)量;令牌ui的詞嵌入表示為令牌ui的位置嵌入表示為d為詞向量的維度;
17、步驟c2,將說話者識別向量嵌入到每個令牌表示中;其中,說話者識別向量嵌入到令牌ui表示中標(biāo)記為
18、步驟c3,根據(jù)嵌入所得詞嵌入、位置嵌入和說話者識別向量嵌入,處理得到每個令牌的最終語義嵌入;其中,第i個令牌ui的最終語義嵌入標(biāo)記為si;
19、
20、步驟c4,利用多層堆疊的transformer編碼器分別對每個令牌進(jìn)行語義上下文信息的編碼,計算得到每個令牌的隱藏向量和每個令牌的最終表示;其中:
21、
22、其中,hi表示令牌ui的隱藏向量,layernorm表示用于對輸入特征進(jìn)行標(biāo)準(zhǔn)化的層歸一化,表示第i個令牌在transformer網(wǎng)絡(luò)中第i-1層的輸入特征,mhatt表示多頭自注意力機(jī)制,表示第i-1層的第i個令牌,表示第i個令牌經(jīng)過多頭自注意力機(jī)制的輸出,表示殘差連接,表示第i個令牌在transformer網(wǎng)絡(luò)中第l層的最終輸出向量,fnn表示一個兩層前饋神經(jīng)網(wǎng)絡(luò),該fnn的激活函數(shù)為relu函數(shù);l表示transformer網(wǎng)絡(luò)中的總層數(shù);
23、步驟c5,生成表征語義上下文語義的情境表示,以用于情感識別;其中,情境表示標(biāo)記為ω:
24、ω=[ω1,ω2,…,ωn];
25、其中,ωn是序列中第n個令牌的最終特征向量,也即第n句話的最終表示,每一句話的最終表示的主要信息都存儲于句首向量中;
26、步驟c6,基于生成的情境表示,使用自注意力機(jī)制捕捉每輪人機(jī)對話過程中的全局情感信息;其中:
27、ci=selfatt([cls]i);
28、mi=wci+b;
29、其中,ci為第i個令牌ui的情感上下文向量,selfatt表示自注意力機(jī)制,mi為情感上下文向量ci映射到的一個可學(xué)習(xí)的情感表示;w和b分別是可學(xué)習(xí)的參數(shù),[cls]i為位于人機(jī)對話過程中且與第i個令牌ui相對應(yīng)的一句話的句首向量;
30、步驟c7,通過lstm網(wǎng)絡(luò)學(xué)習(xí)對人機(jī)對話語篇的內(nèi)在邏輯順序,并緩存上下文線索;其中,lstm網(wǎng)絡(luò)學(xué)習(xí)對話語篇的內(nèi)在邏輯順序的公式如下:
31、
32、其中,為第t輪人機(jī)對話的輸出向量,為第t輪人機(jī)對話的工作記憶,k表示上下文的索引;為第t-1輪人機(jī)對話的輸出向量,為第t-1輪人機(jī)對話的工作記憶;
33、步驟c8,在每輪人機(jī)交互對話中,使用注意力機(jī)制檢索與當(dāng)前用戶話語相關(guān)的上下文線索,并通過加權(quán)和計算分別得到與用戶話語匹配的上下文信息;其中,計算所得與用戶話語匹配的上下文信息標(biāo)記為
34、
35、其中,是通過softmax函數(shù)計算的注意力權(quán)重,表示全局記憶中第n個元素gn在當(dāng)前檢索中的重要性;表示在第t-1輪人機(jī)對話中用戶輸入的話語,表示話語與全局記憶中第n個元素gn之間的相關(guān)性分?jǐn)?shù),表示對元素gn和話語做點(diǎn)積運(yùn)算;
36、步驟c9,將當(dāng)前用戶話語與已檢索到的上下文信息做結(jié)合處理,形成更新后的語義上下文向量,并處理得到所接收用戶對話文本的用戶情感;其中,更新后的語義上下文向量標(biāo)記為處理所得所接收用戶對話文本的用戶情感表示標(biāo)記為oγ:
37、
38、其中,表示整個人機(jī)交互對話上下文中的情感向量,表示說話者在整個人機(jī)交互對話中所輸入的語句的情感向量,用戶情感表示oγ由情感向量和情感向量級聯(lián)得到;表示上下文信息的語義向量,描述了當(dāng)前對話中語義背景的綜合表達(dá);表示當(dāng)前說話者語句的語義向量;m表示模型的預(yù)訓(xùn)練參數(shù),其包含了與情緒推理相關(guān)的通用知識,用于對輸入內(nèi)容進(jìn)行推理;t表示用于約束生成共情響應(yīng)的規(guī)則或模板選擇機(jī)制,以確保語義一致性和情感匹配;reason(·)表示推理函數(shù),通過上下文或說話者信息結(jié)合模型參數(shù)和規(guī)則,計算語義或情感向量;
39、步驟c10,使用softmax函數(shù)對所得所接收用戶對話文本的用戶情感表示進(jìn)行分類處理,得到用戶的情感類別。
40、進(jìn)一步地,在所述具有共情機(jī)制的多模態(tài)人機(jī)交互方法中,在步驟4中,所述智能體將與該用戶的將來情感相匹配的共情交互內(nèi)容輸出給用戶的過程包括如下步驟d1~d5:
41、步驟d1,將預(yù)測所得用戶將來時刻的情感進(jìn)行線性轉(zhuǎn)化處理,得到表征用戶將來時刻情感的情感信息;其中,預(yù)測所得用戶將來時刻情感標(biāo)記為emo,與該用戶將來時刻的情感emo對應(yīng)的情感信息標(biāo)記為emo';
42、步驟d2,將所得用戶將來時刻的情感信息與對應(yīng)的解碼器輸入標(biāo)記嵌入進(jìn)行結(jié)合處理,構(gòu)成解碼器的輸入序列;其中,對應(yīng)的解碼器輸入標(biāo)記的嵌入標(biāo)記為[tag1,tag2,…,tagv-1],解碼器的輸入序列標(biāo)記為eγ:
43、eγ=[tag0,tag1,tag2,…,tagv-1],tag0=emo';
44、其中,v為生成的回應(yīng)的長度,tagv-1表示在生成響應(yīng)的第v-1個時間步時所對應(yīng)解碼器的輸入序列eγ中的嵌入表示,這些嵌入表示包含多模態(tài)情感識別結(jié)果轉(zhuǎn)換后的信息和解碼器輸入標(biāo)記的嵌入,能為解碼器提供綜合的上下文和特征,符合transformer解碼器對輸入的要求,以便其通過多頭交叉注意力mhcatt方法從對話上下文中提取上下文向量,進(jìn)而生成高質(zhì)量且具共情性的響應(yīng),以實(shí)現(xiàn)共情反應(yīng)生成的目標(biāo);
45、步驟d3,預(yù)先構(gòu)建生成共情交互內(nèi)容的回應(yīng)生成器;其中,回應(yīng)生成器如下:
46、φ=y(tǒng)+w·mhcatt(y,cont);
47、
48、其中,φ是經(jīng)交叉注意力機(jī)制調(diào)整后的文本表示,y是調(diào)整前的文本向量,w是可學(xué)習(xí)的模型參數(shù),mhcatt表示多頭交叉注意力機(jī)制,cont表示對話上下文,表示文本表示φ經(jīng)過層歸一化后的表示,ffn表示前饋神經(jīng)網(wǎng)絡(luò);是調(diào)整后的文本向量;
49、步驟d4,回應(yīng)生成器根據(jù)調(diào)整后的文本向量在詞匯表上生成下一個令牌的概率分布函數(shù),且基于最大似然估計處理該概率分布函數(shù)的優(yōu)化目標(biāo),以計算生成回應(yīng)的損失函數(shù);其中,生成的該下一個令牌標(biāo)記為yv,令牌yv的概率分布函數(shù)標(biāo)記為生成回應(yīng)的損失函數(shù)定義為lgen,lgen=-log[p(yv|y1,y2,…,yv-1)];此處生成的下一個令牌序號與生成響應(yīng)的時間步時序號為一一對應(yīng);
50、步驟d5,根據(jù)計算所得生成回應(yīng)的損失函數(shù),得到最終的聯(lián)合損失函數(shù);其中,聯(lián)合損失函數(shù)標(biāo)記為lg:
51、lg=β1·lemp+β2·lgen;
52、其中,lemp為共情損失,lgen為生成回應(yīng)的損失,β1為對應(yīng)調(diào)節(jié)損失lemp權(quán)重的參數(shù),β2為對應(yīng)調(diào)節(jié)損失lgen權(quán)重的參數(shù)。
53、改進(jìn)地,在該發(fā)明中,所述具有共情機(jī)制的多模態(tài)人機(jī)交互方法還包括:生成語義鑒別器的過程;其中,該語義鑒別器的生成過程如下步驟e1~e5:
54、步驟e1,通過lstm(long?short-term?memory,長短期記憶網(wǎng)絡(luò))網(wǎng)絡(luò)編碼生成回應(yīng)和金標(biāo)準(zhǔn)回應(yīng),分別得到對應(yīng)生成回應(yīng)的回應(yīng)向量和對應(yīng)金標(biāo)準(zhǔn)回應(yīng)的回應(yīng)向量;其中,對應(yīng)生成回應(yīng)的回應(yīng)向量標(biāo)記為zgen,對應(yīng)金標(biāo)準(zhǔn)回應(yīng)的回應(yīng)向量標(biāo)記為zgold;
55、步驟e2,將隱藏向量通過卷積層處理,得到卷積特征;其中,卷積特征標(biāo)記為θhidden:
56、θhidden=relu(zhidden*wθ+bθ);wθ∈rv×d,bθ∈rv×d;
57、其中,θhidden是通過卷積操作從隱藏向量zhidden中提取到的特征表示,relu是激活函數(shù),*表示卷積操作,wθ和bθ均是卷積濾波器中的可學(xué)習(xí)參數(shù);
58、步驟e3,將所得卷積特征與語義反饋向量以及對話上下文向量做結(jié)合處理,得到語義分類結(jié)果;其中:
59、
60、其中,zsem(zhidden)表示語義分類器的輸出,也即表示對隱藏表示的語義分類結(jié)果;zθ為用于提供上下文信息的語義反饋向量,即lstm編碼器的最后一個隱藏狀態(tài);為對話上下文向量,wz和bz均為語義鑒別器模型參數(shù);
61、步驟e4,調(diào)整語義鑒別器模型的參數(shù),使得語義鑒別器模型對正樣本和負(fù)樣本的輸出分布盡可能分開;其中:
62、
63、其中,表示語義鑒別器的損失函數(shù),n表示人機(jī)對話的總輪數(shù),表示對生成響應(yīng)的語義分類結(jié)果,表示對真實(shí)標(biāo)簽的語義分類結(jié)果,μ為梯度懲罰系數(shù),表示語義鑒別器zsem對中間變量zt'的梯度,表示梯度的l2范數(shù),δ為隨機(jī)值,表示用于確保zsem滿足1-lipschitz約束的梯度懲罰項;
64、步驟e5,構(gòu)建與用戶情感共情的共情鑒別器,分別識別生成響應(yīng)、黃金響應(yīng)和用戶反饋中的情感詞,以實(shí)現(xiàn)語義鑒別器通過識別這些情感詞能夠判斷所生成響應(yīng)是否具有共情能力;其中:
65、
66、其中,表示共情鑒別器的損失函數(shù),n表示人機(jī)對話的總輪數(shù),表示對生成響應(yīng)的共情分類結(jié)果,表示對真實(shí)標(biāo)簽的共情分類結(jié)果,μ為梯度懲罰強(qiáng)度的梯度懲罰系數(shù),表示zsem對zt'的梯度,表示梯度的l2范數(shù),δ為隨機(jī)值,表示用于確保zemp滿足1-lipschitz約束的梯度懲罰項。
67、與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)在于:該發(fā)明的具有共情機(jī)制的多模態(tài)人機(jī)交互方法通過對用戶在人機(jī)交互過程中的情感特征做多模態(tài)實(shí)時提取,以分別得到每一個模態(tài)對應(yīng)的情感特征,并融合處理提取到的各情感特征,形成表征用戶當(dāng)前時刻情感的多模態(tài)情感特征向量,而后再對多模態(tài)情感特征向量做處理得到用戶在當(dāng)前時刻的用戶情感,最后將所得用戶在當(dāng)前時刻的用戶情感輸入到智能體的對話模型處理,以預(yù)測得到用戶將來時刻的情感,且將與該用戶將來時刻的情感相匹配的共情交互內(nèi)容輸出給用戶。如此,不僅可以從面部表情圖像信號、音頻信號和對話文本語義信號這樣的多模態(tài)提取用戶在人機(jī)交互過程中的情感特征,提高對用戶當(dāng)前時刻情感的識別率,而且還可以基于所識別到用戶當(dāng)前時刻的情感來預(yù)測該用戶將來時刻的情感,并且將與用戶將來時刻的情感相匹配的共情交互內(nèi)容輸出給用戶,使得人機(jī)交互過程更具個性化和自適應(yīng)主動調(diào)整能力,且對用戶情緒更具親和力,緩解用戶壓力,實(shí)現(xiàn)人機(jī)交互過程的人性化,進(jìn)而提高人機(jī)交互過程的體驗(yàn)效果,增強(qiáng)了針對復(fù)雜情感交互場景應(yīng)用能力。