章 亮,徐 戈,陳 芳
(1.閩江學院實驗室與設(shè)備管理處,福建 福州 350108;2.閩江學院計算機與控制工程學院,福建 福州 350108;3.閩江學院學生工作部,福建 福州 350108)
2014年以來,隨著數(shù)據(jù)量爆炸式的增長和深度學習模型的引入,對話系統(tǒng)從規(guī)則編寫時代過度到由數(shù)據(jù)驅(qū)動的深度學習時代,其有效性和實用性得到了廣大研究者的肯定。學術(shù)界將對話系統(tǒng)的研究主要分為任務(wù)型和非任務(wù)型兩類[1]。在工業(yè)界具有代表性的對話系統(tǒng)有微軟小冰(xiaoIce)、亞馬遜Alexa、蘋果Siri、小米小愛同學等。它們已經(jīng)逐漸進入人們的生活,幫助用戶處理相對簡單的任務(wù),以提升用戶體驗[2]。
2020年初,新冠疫情席卷而來,全國高校轉(zhuǎn)向以網(wǎng)絡(luò)形式開展線上授課,嚴重地打亂了學生們的正常學習,由此引發(fā)的恐懼、焦慮、抑郁等心理問題更加凸顯。無法得到及時有效的線下心理咨詢和開導(dǎo),導(dǎo)致更為嚴重的心理失衡狀態(tài)和心理應(yīng)激反應(yīng)[3]。我國出臺的《健康中國行動(2019-2030年)》[注]《健康中國行動(2019-2030年)》國發(fā)〔2019〕13號.國家衛(wèi)鍵委,2019年7月。文件指出高校應(yīng)該積極為學生提供心理咨詢服務(wù),監(jiān)控學生心理健康。因此高校應(yīng)該提供在線預(yù)約心理咨詢服務(wù)、在線測評相關(guān)量表(抑郁癥、焦慮癥)等,加強對學生心理問題的疏導(dǎo)和監(jiān)控,結(jié)合現(xiàn)代科學技術(shù),設(shè)計開發(fā)一套針對高校的心理咨詢對話系統(tǒng)以適應(yīng)不斷變化的就學環(huán)境。
任務(wù)型對話系統(tǒng)的優(yōu)化集中在分詞、意圖識別、對話管理及對話生成算法上,而忽視了由于用戶錯誤的輸入導(dǎo)致的實體識別準確率低下的問題,同時現(xiàn)有的實體糾錯算法內(nèi)存占用大、效率低、準確率依舊有待提升??紤]到心理咨詢過程中用戶輸入的不確定性,在意圖識別過程中直接使用閾值作為判斷用戶輸入是否屬于已知意圖的方法過于簡單,且正確率較低的問題,本文構(gòu)建了一套基于實體模糊識別的高校心理咨詢對話系統(tǒng)。它包含以下功能:1)預(yù)約線下心理咨詢師;2)量表測評并反饋;3)常規(guī)QA問答。本文的創(chuàng)新點在于:1)提出一種實體模糊識別算法,糾正錯誤實體,提升實體命中率;2)提出一種構(gòu)建噪聲數(shù)據(jù)的方案,匹配系統(tǒng)未知意圖;3)設(shè)計并實現(xiàn)一套應(yīng)用于高校心理咨詢的對話系統(tǒng)。
任務(wù)導(dǎo)向型對話系統(tǒng)以完成特定任務(wù)為主要目標,適用于定制化場景。例如教室預(yù)約、酒店/機票預(yù)訂、心理咨詢預(yù)約等。通過人工制定相關(guān)語料完成數(shù)據(jù)的冷啟動問題,任務(wù)導(dǎo)向型對話系統(tǒng)可以細分為基于管道框架的對話系統(tǒng)和基于端到端框架的對話系統(tǒng)。
基于管道框架的對話系統(tǒng)將用戶輸入到結(jié)果輸出過程中的各個部分結(jié)合,數(shù)據(jù)在不同模塊間流轉(zhuǎn)都有明確的輸入與輸出,優(yōu)點在于:1)有效降低對話系統(tǒng)的耦合程度,易于理解;2)各模塊任務(wù)明確,界限清楚,方便獨立優(yōu)化;3)降低模塊之間的誤差傳播[4]。而重點研究3個部分:自然語言理解(NLU)、對話管理、對話生成。自然語言理解(NLU)是理解用戶輸入的核心部分[5]。使用RNN建立實體提取模型存在長時依賴問題,命名實體識別一般使用Bi-LSTM和CRF[6],其中CRF解決了Bi-LSTM輸出獨立性,Bi-LSTM又可學習到上下文信息,獲得更準確的結(jié)果。近年來,由于BERT模型的提出,Wu等人提出了ToDo-BERT模型,該模型顯著提高了意圖分類的準確率,有效緩解任務(wù)型對話系統(tǒng)的數(shù)據(jù)量少的問題[7]。
對話管理包含對話狀態(tài)跟蹤和對話策略選擇兩個子任務(wù),根據(jù)用戶輸入歷史記錄更新當前對話狀態(tài),提供對話策略,以便抉擇最佳回復(fù)或動作。近年來結(jié)合transformer的對話管理進展迅速,Tuan等人提出基于BERT的DST模型,該模型的參數(shù)數(shù)量不會隨著本體的大小而增加,模型可以在動態(tài)變化下運行,最后應(yīng)用知識蒸餾的方法壓縮模型并取得顯著效果[8]。Huang等人提出了MERET模型,是一種對話狀態(tài)生成器,通過一種梯度強化學習進修微調(diào)[9]。Xu等人使用知識圖譜提供Action集合的先驗知識,通過圖形方式(graph-grounded)解決了策略選擇問題[10]。
對話生成是將對話管理決策出的回復(fù)或動作轉(zhuǎn)換為表層用戶可理解的語言,或具體設(shè)備執(zhí)行的指令。Elder等人提出一種限制響應(yīng)的數(shù)據(jù)增強方法,雖然犧牲回復(fù)的多樣性,但增強了對話系統(tǒng)的可靠性[11]。Baheti等人通過多種管道結(jié)構(gòu)來提高生產(chǎn)響應(yīng)的流暢性和語義的正確性,最后引入BERT對結(jié)果進行排名,降低了QA對話的不可靠性[12]。
心理咨詢過程中用戶輸入具有不可預(yù)測性,心理咨詢領(lǐng)域要求對話回復(fù)更嚴謹、準確,因此對意圖識別準確率要求更高。本文在訓(xùn)練數(shù)據(jù)構(gòu)建階段引入噪聲構(gòu)建方法,增加了噪聲意圖,結(jié)合閾值來判斷未知意圖,提高意圖識別的準確率。從基于管道的任務(wù)型對話系統(tǒng)框架出發(fā),結(jié)合高校心理咨詢對話數(shù)據(jù)集,將實體糾錯算法應(yīng)用到高校心理咨詢對話領(lǐng)域,提出了基于實體模糊識別的高校心理咨詢對話系統(tǒng),為驗證系統(tǒng)有效性,對實體模糊識別算法和系統(tǒng)整體進行測評,實驗表明實體糾錯正確率的第一和第二組實驗結(jié)果分別為94.6%和93.3%,內(nèi)存占用48.8 MB以及響應(yīng)速度0.3 ms,顯著優(yōu)于現(xiàn)有算法,且引入噪聲數(shù)據(jù)構(gòu)建方法在低閾值0.2時可提高未知意圖識別率52%。
高校心理咨詢的對話內(nèi)容屬于敏感內(nèi)容,因此對回復(fù)的質(zhì)量要求較高。為了識別未知意圖的能力,有效提高對話系統(tǒng)意圖識別的正確率,設(shè)置了噪聲意圖。構(gòu)建噪聲意圖的樣例數(shù)據(jù)流程圖如圖1所示。
圖1 噪聲數(shù)據(jù)構(gòu)建流程圖Fig.1 The flow of noise data construction
1)構(gòu)建亂序噪聲數(shù)據(jù)集:為了更強的魯棒性,盡量收集包含字母、字符、數(shù)字等詞語的文本,通過jieba分詞后將詞打亂構(gòu)建大型噪聲庫,詞之間用空格隔開,例如:“杰瑞 們 的 你 a b 臺 那 哪 c 好 沒什么 你 新人 1 你 的 23 的…”。
2)獲取所有意圖下的樣例數(shù)據(jù)長度:獲取本文所構(gòu)建的高校心理咨詢所有已知意圖下用于訓(xùn)練的樣例句子長度。
3)根據(jù)樣例數(shù)據(jù)長度,構(gòu)建高斯分布。
4)根據(jù)高斯分布構(gòu)建噪聲樣例數(shù)據(jù):從噪聲庫中順序取出對應(yīng)數(shù)量的詞組成句子,并保證構(gòu)建的噪聲樣例數(shù)據(jù)量與已知意圖樣例數(shù)據(jù)量一致。若噪聲數(shù)據(jù)庫取到最后一個詞,可從噪聲數(shù)據(jù)庫起始位置循環(huán)取詞。
鑒于現(xiàn)有的基于CRF等實體提取算法無法提取用戶錯誤輸入中的實體,本文設(shè)計了實體模糊識別算法,主要包含兩個模塊(圖2):1)模板生成;2)拼音模糊識別。
圖2 實體模糊識別算法結(jié)構(gòu)圖Fig.2 The structure of entity fuzzy recognition algorithm
模板生成模塊在模型訓(xùn)練階段完成,主要負責將訓(xùn)練數(shù)據(jù)轉(zhuǎn)換成拼音模糊識別模塊所需的實體和詞條信息,并保存至內(nèi)存中,實時更新。拼音模糊識別模塊負責接收自然語言理解(NLU)模塊的結(jié)果P0,判斷P0是否進行實體的模糊識別,糾正用戶輸錯的實體。全語料模板TP=[tp0,tp1,…,tpm]共m個模板,其中第k個模板由式(1)給出:
tpk=[regk,ik,ek],
(1)
其中,regk是根據(jù)訓(xùn)練語料庫中含實體的訓(xùn)練數(shù)據(jù)自動生成的正則表達式。ik為意圖名稱。ek對應(yīng)第k個模板中訓(xùn)練數(shù)據(jù)的實體列表。例如“我來自[計算機](academy)學院,性別是[男](gender)”是訓(xùn)練語料庫中的一條樣例數(shù)據(jù),意圖為academy_and_gender。則regk為:我來自(.*)學院,性別是(.*);ik為:academy_and_gender;ek則代表[academy,gender]。模板生成模塊不僅需要構(gòu)建TP,還需構(gòu)建實體和詞條的關(guān)系,得到詞條的全拼、模糊拼音、聲調(diào)信息。
全拼即詞條的全拼音表示;聲調(diào)采用《漢語拼音方案》(1958)中規(guī)定的5種,以數(shù)字形式表示:陰平對應(yīng)1;陽平對應(yīng)2;上聲對應(yīng)3;去聲對應(yīng)4;輕聲對應(yīng)0。本文所提出的模糊拼音采用的對應(yīng)關(guān)系:zh對應(yīng)z;ch對應(yīng)c;sh對應(yīng)s;ang對應(yīng)an;eng對應(yīng)en;ing對應(yīng)in。
定義1用戶輸入U0,經(jīng)過NLU模塊后得到P0,可根據(jù)式(2)給出:
P0=[i0,e0,w0,U0],
(2)
其中i0指意圖名稱,e0指得到的實體列表,w0指與實體列表對應(yīng)的詞條列表。進入實體模糊識別之前需進行P0的有效性判斷。
定義2判斷NLU輸出P0的有效性用f表示,由式(3)給出:
(3)
當P0中的i0在模板tpk中,且P0中實體個數(shù)與tpk中的實體個數(shù)相同,則f為True,即P0有效,否則P0無效,進入拼音模糊識別模塊。
定義3獲取候選模板C_tps由式(4)給出:
C_tps=g(U0,TP),
(4)
定義4計算兩個詞的相似度分數(shù)score
計算候選模板中用戶輸入與訓(xùn)練語料中實體的詞條相似度,本文從字數(shù)、全拼、模糊拼音、正確漢字數(shù)、相同聲調(diào)數(shù)這5個維度設(shè)計了式(5)作為兩個詞的相識度。
(5)
(6)
(7)
(8)
(9)
其中,same函數(shù)判斷輸入的兩個參數(shù)是否相同,相同為1,不同為0。α1、α2、α3、α4是超參數(shù),拼音模糊識別算法偽代碼如圖3所示。
圖3 拼音模糊識別偽代碼Fig.3 Pseudo code of Pinyin fuzzy recognition
基于實體模糊識別的高校心理咨詢對話系統(tǒng)整體框架如圖4所示。用戶層為用戶的操作終端;接入層采用標準Restful API,便于各類終端接入;代理層是心理咨詢對話系統(tǒng)各部件相互溝通的中間部件,通過代理Agent控制數(shù)據(jù)流按照管道pipeline指定方向流轉(zhuǎn);AI引擎層是對話系統(tǒng)的核心,包含各子模塊的算法,同時與數(shù)據(jù)庫進行交互,提供算法運行時所需知識庫數(shù)據(jù);數(shù)據(jù)層用于存放高校心理咨詢QA問答數(shù)據(jù)、量表數(shù)據(jù)、多輪對話等訓(xùn)練數(shù)據(jù),系統(tǒng)內(nèi)部數(shù)據(jù)流圖如圖5所示。
圖4 高校心理咨詢對話系統(tǒng)整體框架圖Fig.4 Overall framework of college psychdogical counseling dialogue system
圖5 高校心理咨詢對話系統(tǒng)內(nèi)部數(shù)據(jù)流圖Fig.5 Internal data flow diagram of college psychdogical conseling dialogue system
高校心理咨詢對話系統(tǒng)的實現(xiàn)過程包含訓(xùn)練過程和預(yù)測過程,圖5中的虛線框代表了訓(xùn)練過程。分詞模塊采用jieba分詞,添加高校心理相關(guān)詞匯,保證分詞的準確性,只需要從模型保存與提取模塊中提取分詞模型即可。特征抽取、實體檢測、意圖識別、實體模糊識別和對話管理需要結(jié)合高校心理咨詢領(lǐng)域數(shù)據(jù)進行訓(xùn)練,將訓(xùn)練后的模型保存到模型保存與提取模塊,用于預(yù)測階段對模型的提取。本系統(tǒng)不僅結(jié)合高校心理咨詢領(lǐng)域數(shù)據(jù),還設(shè)計自定義Action模塊優(yōu)化對話系統(tǒng)在高校心理咨詢領(lǐng)域的應(yīng)用能力,其中包含:1)對大學生心理咨詢量表等用戶輸入校驗;2)對不同量表測評后得分的計算和推送建議;3)對具有嚴重心理問題學生的預(yù)警并轉(zhuǎn)人工服務(wù);4)對未知意圖的回復(fù)響應(yīng)等。心理咨詢階段由用戶主動發(fā)起,并根據(jù)圖5管道模型中實線箭頭引導(dǎo)的方向流轉(zhuǎn),經(jīng)過各個模塊后返回給用戶。
心理QA問答主要包含:高校學校心理咨詢中心相關(guān)信息,例如辦公地址、服務(wù)時間、咨詢師介紹等;還包含其他心理咨詢常見問題,例如:什么是抑郁、如何治療抑郁癥等、強迫癥有哪些表現(xiàn)、焦慮癥會傳染嗎、焦慮是如何引起的、如何與舍友相處融洽等。
心理咨詢預(yù)約提供預(yù)約心理咨詢師的功能,收集學生信息,避免線下資料重新填寫。為驗證實體模糊識別算法效果,本文將與以下算法進行正確率對比:基于BERT相似度算法[13]、基于Electra糾錯算法[14]、基于Pycorrect糾錯算法[15]、基于BERT的中文字符糾錯算法[15]。實驗發(fā)現(xiàn),式(5)中的超參數(shù)設(shè)置α1=3;α2=2;α3=1;α4=0.8最為合理。
在構(gòu)建的包括“咨詢師姓名”“學院”“咨詢心理類型”“專業(yè)”等內(nèi)容的150個高校心理咨詢常用實體數(shù)據(jù)集中進行實體糾錯測試,共進行兩組實驗。第一組任意抽取所有詞條中一個字改成同音字或相似字,第二組任意抽取所有詞條中詞語改成同音詞或相似詞,實驗結(jié)果如表1所示。表1結(jié)果表明所提出的實體模糊識別算法在實體糾錯中表現(xiàn)明顯優(yōu)于其他算法,兩組實驗中正確率最高為94.6%,由于實體數(shù)據(jù)集中部分字是多音字,例如“音樂學院”中的“樂”,全拼有“yue”和“l(fā)e”兩種,當“音”字輸錯為“英”時,糾錯失敗,因為“英樂學院”中“樂”的拼音是“l(fā)e”而不是“yue”?;贐ERT相似度算法直接將詞條的詞向量對比,并選擇最相似詞作為糾正詞,隨著詞條中字數(shù)錯誤數(shù)越多,正確率也越低,因此第一組正確率明顯要高于第二組正確率。基于Pycorrect糾錯算法和基于BERT的中文字符糾錯算法雖無需訓(xùn)練就具有在句子中直接糾正詞語的能力,可當詞語本身無問題時,無法根據(jù)已知實體進行糾正,因此第二組結(jié)果明顯比第一組效果差。
表1 各算法在不同維度性能對比
在實際心理咨詢預(yù)約中向?qū)W生收集個人相關(guān)信息時得到的回復(fù)信息一般為詞槽所填內(nèi)容。當學生使用語音作為輸入,語音轉(zhuǎn)文字易出現(xiàn)同義詞錯誤、同義字錯誤、音調(diào)錯誤等等?;趯嶓w模糊識別算法通過對拼音、模糊拼音、音調(diào)等維度對實體進行糾錯,能極大提升實際用戶體驗效果,因此兩組實驗都較其他算法更好。
為了進一步驗證所提出的算法不僅在正確率上較其他算法具有更強的糾錯能力,同時對比了各算法的內(nèi)存占用和響應(yīng)速度兩個維度。實驗結(jié)果表明基于實體模糊識別算法無論是內(nèi)存占用和響應(yīng)速度上都明顯優(yōu)于其他對比算法。高校心理咨詢領(lǐng)域的實體的數(shù)量和生成的模板信息有限,因此較其他基于深度學習框架的算法相比內(nèi)存占用具有天然的優(yōu)勢,且較低的算法啟動開銷也使得響應(yīng)速度極大的提升。在對話系統(tǒng)的部署過程中,由于基于深度學習框架的算法參數(shù)和結(jié)構(gòu)越復(fù)雜,所需使用的內(nèi)存、耗費的CPU和GPU資源都將大大提升,因此具有較小內(nèi)存占用和快速的響應(yīng)速度能降低硬件條件,便于推廣和實際應(yīng)用。
本系統(tǒng)實際運行效果見圖6。本文所設(shè)計的信息收集部分內(nèi)容過多,故將未展示的信息使用“..//其他信息收集”代替,從圖6中可得到當用戶輸入“南”“機空學院”“人機關(guān)系”這些錯誤實體時,實體模糊識別算法能保證多輪對話流程正常運行,并在最后給出的總結(jié)時,將正確詞條“男”“計控學院”“人際關(guān)系”展示給用戶,也證明了實體模糊識別算法的有效性。
圖6 實體模糊識別算法運行效果圖Fig.6 Running effect diagram of ertity fuzyy recognition
為了及時了解學生心理狀態(tài),本文將心理咨詢中常用的量表功能加入系統(tǒng)中。以抑郁癥量表為例,實驗如圖7所示。實驗中“..//其他信息收集”代表量表的其他相關(guān)問題,最后根據(jù)自定義Action計算得分,并反饋用戶。
圖7 抑郁癥量表測試Fig.7 The test of depression scale
本文對所設(shè)計的系統(tǒng)進行整體測評。采用的實驗配置如下:CPU為AMD Ryzen 7 3800X;顯卡為NVIDIA GeForce RTX2060 SUPER,內(nèi)存16G。實驗數(shù)據(jù)來自采集的高校心理咨詢相關(guān)數(shù)據(jù),經(jīng)過1 000次常見問答測試,平均系統(tǒng)響應(yīng)時間1.6 s,在網(wǎng)頁對話等場景下屬于用戶可接受的范圍。為了驗證所提出的噪聲數(shù)據(jù)構(gòu)建方法,系統(tǒng)整體測評時分成兩組:第一組不包含噪聲數(shù)據(jù)及其意圖;第二組包含噪聲數(shù)據(jù)及其意圖。在保證系統(tǒng)所有算法參數(shù)一致的前提下調(diào)整閾值,當所識別的意圖中最高得分都低于設(shè)置的閾值時,將對話轉(zhuǎn)為未知意圖類別,所使用的數(shù)據(jù)為100條閑聊數(shù)據(jù),驗證未知意圖的命中率,結(jié)論如表2所示。
表2 噪聲數(shù)據(jù)構(gòu)建方法對比結(jié)果
從表2中可以看出第二組(包含噪聲數(shù)據(jù)構(gòu)建方法)在低閾值0.2時,未知意圖正確率明顯高出第一組(不包含噪聲數(shù)據(jù)構(gòu)建方法)52%,且隨著閾值的增加,第一組實驗結(jié)果都低于第二組實驗結(jié)果,特別是當閾值取0.2時第二組實驗就取得81%的正確率,說明噪聲數(shù)據(jù)構(gòu)建方法的有效性。當意圖越多,通過softmax層得到的每個意圖的概率就越小,因此閾值設(shè)置較低時正確率越高說明系統(tǒng)的可用性越強,用戶體驗也越好。系統(tǒng)的實體糾錯率可參考表1,第一組正確率和第二組正確率都大于90%,說明了實體糾錯效果符合預(yù)期,后續(xù)的改進會考慮多音字這類特殊情況,以進一步提高系統(tǒng)整體實體糾錯率。
本文設(shè)計并實現(xiàn)了基于實體模糊識別的高校心理咨詢對話系統(tǒng),利用噪聲數(shù)據(jù)的構(gòu)建方法增強了系統(tǒng)對未知意圖的識別能力。實體模糊識別算法主要包含模板生成和拼音模糊識別模塊,通過自定義Action,針對高校心理咨詢領(lǐng)域進行優(yōu)化。對比了目前較為流行的文本糾錯算法,實驗表明,所提出的實體模糊識別算法在第一組和第二組實體糾錯實驗中正確率分別高于其他對比算法13.4%和51.3%、內(nèi)存占用48.8 MB以及響應(yīng)速度0.3 ms明細優(yōu)于其他比較算法。功能上,高校心理咨詢對話系統(tǒng)添加QA問答功能、心理咨詢在線預(yù)約功能以及量表測試功能,最后測評系統(tǒng)整體性能,進一步驗證了基于實體模糊識別高校心理咨詢對話系統(tǒng)的有效性。