鄭少帥 翁境鴻 蔣小洋



摘要:隨著民航經(jīng)濟(jì)的發(fā)展和人民生活水平的提高,旅客出行的服務(wù)要求越來(lái)越高,而當(dāng)前傳統(tǒng)的民航客服知識(shí)庫(kù)檢索普遍存在檢索準(zhǔn)確率以及效率低的問(wèn)題,已經(jīng)不能滿足旅客的服務(wù)需求。文章通過(guò)結(jié)合Best Match 25算法、文本Embeddings和交叉編碼器對(duì)知識(shí)庫(kù)進(jìn)行檢索,高效檢索出符合座席意圖的答案,進(jìn)而提升民航客服知識(shí)庫(kù)查找效率,縮短座席通話查詢時(shí)長(zhǎng),提升旅客服務(wù)體驗(yàn),助力實(shí)現(xiàn)民航客服數(shù)字化、智能化轉(zhuǎn)型。
關(guān)鍵詞:民航客服;Best Match 25算法;文本Embeddings;交叉編碼器;座席意圖
中圖分類號(hào):TP3? 文獻(xiàn)標(biāo)志碼:A
0 引言
隨著民航經(jīng)濟(jì)與人工智能技術(shù)的不斷發(fā)展,目前傳統(tǒng)的民航客服系統(tǒng)已經(jīng)不能滿足民航業(yè)務(wù)的需要。其中,知識(shí)庫(kù)作為連通知識(shí)加工輸出和知識(shí)應(yīng)用的樞紐,可用于改變傳統(tǒng)的知識(shí)獲取方式,防止座席因在線問(wèn)答時(shí)需要翻閱通告而浪費(fèi)時(shí)間。而目前民航客服知識(shí)庫(kù)沒(méi)有很好地承擔(dān)起作為知識(shí)中心的作用,知識(shí)查找難、知識(shí)搜索效率低,并且當(dāng)前民航客服知識(shí)庫(kù)算法匹配得到的結(jié)果往往不是座席想要的答案,需要再花費(fèi)大量時(shí)間尋找想要的答案,影響旅客問(wèn)題回復(fù)的及時(shí)率,用戶體驗(yàn)感較差,這也說(shuō)明當(dāng)前的知識(shí)庫(kù)搜索功能已經(jīng)不能滿足座席對(duì)知識(shí)的應(yīng)用需求。因此,民航客服知識(shí)庫(kù)亟須通過(guò)更精準(zhǔn)的算法提高座席的檢索準(zhǔn)確率,進(jìn)而高效幫助旅客解決問(wèn)題。
針對(duì)傳統(tǒng)的民航客服知識(shí)庫(kù)檢索普遍存在準(zhǔn)確率不高、座席意圖識(shí)別能力差等問(wèn)題,本文提出一種結(jié)合Best Match 25算法[1]、文本Embeddings[2]和交叉編碼器(Cross-Encoders)[3]的民航客服知識(shí)庫(kù)檢索模型。實(shí)驗(yàn)結(jié)果表明,該模型的檢索準(zhǔn)確率以及平均耗時(shí)都優(yōu)于其他模型,有效縮短座席通話查詢時(shí)長(zhǎng),進(jìn)而提升民航客服智能化服務(wù)水平及用戶體驗(yàn),助力實(shí)現(xiàn)民航客服數(shù)字化轉(zhuǎn)型。
1 算法介紹
1.1 BM25算法
BM25 是基于概率檢索模型[4]提出的算法,可以用來(lái)評(píng)價(jià)文檔與搜索詞之間的關(guān)系。其中,BM是Best Match的縮寫(xiě),25代表已經(jīng)進(jìn)行到第25次迭代。
BM25的一般公式:
Score(Q,d)=∑niWiR(qi,d)
其中,Q為Query;qi為Query中的分詞Q;d為文檔;W為切詞權(quán)重;R為切詞和文檔的相關(guān)性。BM25的計(jì)算主要由幾個(gè)部分組成。
(1)Query中每個(gè)分詞的重要性;
(2)Query中每個(gè)分詞和文檔之間的相關(guān)性;
(3)Query中每個(gè)單詞與Query的相關(guān)性 (只有當(dāng)Query很長(zhǎng)時(shí)才會(huì)使用)。
1.2 文本Embeddings
Word Embeddings技術(shù)是一種采用機(jī)器學(xué)習(xí)方法將單詞映射到實(shí)數(shù)低維向量的技術(shù)。本文采用text2vec-base-chinese模型來(lái)生成文本的Embedding,利用CoSENT方法訓(xùn)練,基于nghuyong/ernie-3.0-base-zh用人工挑選后的中文STS數(shù)據(jù)集[5]訓(xùn)練得到,并在中文各NLI測(cè)試集評(píng)估中達(dá)到較好的效果。
1.3 交叉編碼器(Cross-Encoders)
交叉編碼器模型對(duì)于輸入和候選標(biāo)簽之間的相似性評(píng)分函數(shù)沒(méi)有任何假設(shè)。相反,輸入和候選標(biāo)簽的連接作為新的輸入傳遞給非線性函數(shù),該函數(shù)根據(jù)其所需的任何依賴關(guān)系對(duì)它們的匹配進(jìn)行評(píng)分。例如向交叉編碼器中輸入2個(gè)句子,模型會(huì)輸出一個(gè)介于0到 1的值,表示這2個(gè)句子的相似性,輸出值越大則表明這2個(gè)句子越接近。
2 算法優(yōu)化
2.1 傳統(tǒng)檢索方式分析
2.1.1 BM25算法檢索分析
BM25算法是目前信息索引領(lǐng)域中主流的計(jì)算搜索詞與文檔相似度得分的算法之一,被廣泛地應(yīng)用于搜索引擎、信息檢索等領(lǐng)域,具有快速、可解釋性強(qiáng)等優(yōu)點(diǎn)[6]。
但是BM25算法也存在不足,該算法只是基于文本進(jìn)行比較,如果存在大量同義詞則無(wú)法得到一個(gè)滿意的結(jié)果。由于民航業(yè)務(wù)復(fù)雜,客服對(duì)同一術(shù)語(yǔ)的叫法較多,容易出現(xiàn)使用同義詞的場(chǎng)景,因此單獨(dú)使用BM25算法并不能很好地滿足民航客服這一場(chǎng)景。
2.1.2 文本Embeddings檢索分析
文本Embeddings與傳統(tǒng)的文本表示方法相比,能夠提供更好的語(yǔ)義信息。同時(shí)Word Embeddings技術(shù)可以解決傳統(tǒng)詞向量維度過(guò)高的問(wèn)題,并且解決了向量稀疏的問(wèn)題,因此降低了模型的訓(xùn)練難度[7]。
文本Embeddings相比于BM25,還可以實(shí)現(xiàn)基于語(yǔ)義的相似度匹配,在實(shí)際的生產(chǎn)應(yīng)用中有著更廣闊的應(yīng)用場(chǎng)景。文本Embeddings還可以基于開(kāi)源模型進(jìn)行微調(diào),產(chǎn)生更適合細(xì)分行業(yè)的模型,進(jìn)一步提升準(zhǔn)確率。
但是由于在民航客服場(chǎng)景中,客服容易出現(xiàn)使用短文本來(lái)進(jìn)行搜索,而短文本具有詞少低頻、特征稀疏和表述隨意等特點(diǎn),單純地使用文本Embeddings來(lái)進(jìn)行聚類的效果較差[8]。因此,單獨(dú)使用文本Embeddings進(jìn)行檢索的正確率仍然無(wú)法滿足需求。
2.1.3 交叉編碼器檢索分析
交叉編碼器通過(guò)把文本相似度轉(zhuǎn)化成一個(gè)分類問(wèn)題,對(duì)要比較的2個(gè)句子進(jìn)行拼接,將拼接好的句子傳遞給模型,由模型來(lái)判斷要比較的2個(gè)句子的相關(guān)性。
交叉編碼器的優(yōu)點(diǎn)在于有較高的準(zhǔn)確度。但是其最大的缺點(diǎn)是交叉編碼器模型輸出的結(jié)果只能反映輸入文本對(duì)是否相似,無(wú)法針對(duì)每個(gè)輸入生成獨(dú)立的句子語(yǔ)義表示,因此無(wú)法將編碼結(jié)果應(yīng)用于其他下游任務(wù)。在實(shí)際的使用中,用戶每輸入一次問(wèn)題,都需要把用戶輸入的問(wèn)題與所有的知識(shí)庫(kù)文檔段落進(jìn)行比較,效率非常低,因此單獨(dú)使用交叉編碼器無(wú)法應(yīng)用于實(shí)際生產(chǎn)中。
2.2 組合優(yōu)化
BM25算法的特點(diǎn)在于查詢速度快,無(wú)法識(shí)別語(yǔ)義相近的詞。而文本Embeddings可以查詢語(yǔ)義相近的段落,但是在短文本的情況下準(zhǔn)確度不足。交叉編碼器的準(zhǔn)確度最高,但是由于不產(chǎn)生句子嵌入,因此查詢效率低。根據(jù)上面幾種算法的特性,本文將上述3種算法組合并實(shí)現(xiàn)了一個(gè)知識(shí)庫(kù)檢索系統(tǒng)。該系統(tǒng)的核心思想在于利用BM25算法和文本Embeddings的高性能特點(diǎn),從知識(shí)庫(kù)文檔段落中進(jìn)行預(yù)篩選,縮小交叉編碼器需要比較的段落數(shù)量,最后用交叉編碼器高準(zhǔn)確率的特點(diǎn)來(lái)進(jìn)行檢索,從而得到最終的檢索結(jié)果。組合算法實(shí)現(xiàn)過(guò)程如圖1所示。
2.2.1 BM25算法的使用
首先將準(zhǔn)備好的知識(shí)庫(kù)文檔拆分成段落,將這些段落用Jieba庫(kù)進(jìn)行分詞并生成實(shí)例。用戶提問(wèn)時(shí),在分詞后的知識(shí)庫(kù)文檔段落中搜索最接近的n個(gè)段落,搜索出來(lái)的n個(gè)段落作為下一步文本Embeddings的檢索知識(shí)庫(kù)。
2.2.2 文本Embeddings技術(shù)的使用
首先將準(zhǔn)備好的知識(shí)庫(kù)文檔拆分成段落,將這些段落使用文本通過(guò)量化模型轉(zhuǎn)化為向量,并將這些向量存儲(chǔ)到Qdrant向量數(shù)據(jù)庫(kù)中。用戶提問(wèn)時(shí),先設(shè)定第一步BM25算法查詢到的n個(gè)段落,再?gòu)腝drant向量數(shù)據(jù)庫(kù)中查詢出n個(gè)段落對(duì)應(yīng)的向量記作q。然后將用戶輸入的問(wèn)題轉(zhuǎn)化為向量,使用余弦相似度從q中查找出語(yǔ)義最接近的x個(gè)段落。將搜索出來(lái)的x個(gè)段落作為下一步交叉編碼器的檢索知識(shí)庫(kù)。
2.2.3 交叉編碼器的使用
此時(shí)經(jīng)過(guò)上面2步的過(guò)濾,交叉編碼器需要比較的段落已經(jīng)大大減少,因此比較段落與用戶提問(wèn)所需的耗時(shí)也大幅度減少。在這一步,使用交叉編碼器模型將用戶輸入的問(wèn)題與第二步查詢出來(lái)的x個(gè)段落一一比較,找到與用戶輸入的問(wèn)題含義最接近的y個(gè)段落。最后查詢出來(lái)的y個(gè)段落就是該知識(shí)庫(kù)檢索系統(tǒng)得到的最終結(jié)果。
本文提出的知識(shí)庫(kù)檢索系統(tǒng),利用了BM25以及文本Embeddings耗時(shí)短的特點(diǎn),大幅度減少了交叉編碼器需要比較的段落數(shù)量。在保留了交叉編碼器正確率高的特點(diǎn)的同時(shí),又大幅度減少了其比較段落所需的耗時(shí),讓其在實(shí)際生產(chǎn)應(yīng)用中更有落地空間。
3 實(shí)驗(yàn)
3.1 實(shí)驗(yàn)環(huán)境
為了證明第2節(jié)組合優(yōu)化的有效性,本章節(jié)使用了BM25算法、文本Embeddings、交叉編碼器以及3種檢索方式組合使用進(jìn)行比較分析。其中文本Embeddings使用的是text2vec-base-chinese模型,用于將用戶輸入的問(wèn)題以及文本段落轉(zhuǎn)化為向量。交叉編碼器使用的是cross-encoder/mmarco-mMiniLMv2-L12-H384-v1模型,用于計(jì)算用戶輸入和文本段落之間的相似度得分。
本文實(shí)驗(yàn)數(shù)據(jù)來(lái)源于航司內(nèi)部客服知識(shí)庫(kù)的業(yè)務(wù)以及產(chǎn)品文檔,將這些文檔拆分為段落形式,作為實(shí)驗(yàn)的知識(shí)庫(kù)數(shù)據(jù)。樣本共包含1 000個(gè)段落,并且準(zhǔn)備150個(gè)測(cè)試問(wèn)題以及每個(gè)問(wèn)題對(duì)應(yīng)的正確答案,作為實(shí)驗(yàn)的用戶輸入數(shù)據(jù)。
3.2 評(píng)價(jià)指標(biāo)
為了評(píng)估本系統(tǒng)檢索相似段落的性能,本文采用了正確率以及平均耗時(shí)作為評(píng)價(jià)指標(biāo),定義為:
正確率=TP/N
平均耗時(shí)=TN/N
其中,TP為系統(tǒng)檢索最相似的3個(gè)段落中包含正確答案的樣本總數(shù);TN為系統(tǒng)檢索所有問(wèn)題所消耗的總時(shí)長(zhǎng),s;N為測(cè)試問(wèn)題樣本總數(shù)量。
3.3 實(shí)驗(yàn)結(jié)果
每種檢索方式分別依次輸入準(zhǔn)備好的150個(gè)問(wèn)題,判斷輸出的結(jié)果是否包含正確答案,記錄正確率以及查找答案所消耗的時(shí)間。結(jié)果如表1所示。
可以看出,本文提出的組合BM25算法、文本Embeddings與交叉編碼器的民航客服知識(shí)庫(kù)檢索系統(tǒng)在回答的正確率上相較BM25算法、文本Embeddings這2種方式有了一個(gè)較大的提升,可以達(dá)到86.67%,并且在耗時(shí)方面也沒(méi)有太多的額外開(kāi)銷。而與交叉編碼器相比,雖然正確率下降了6%,但是在耗時(shí)方面,組合使用的方式只需0.74s,相比單獨(dú)使用交叉編碼器少了40.76s。
本文提出的檢索系統(tǒng)充分利用了BM25算法和文本Embeddings的可預(yù)處理、耗時(shí)短的特點(diǎn),盡可能地減小了交叉編碼器需要比較的文本數(shù)量,并結(jié)合了交叉編碼器準(zhǔn)確率高的特點(diǎn),在大幅度提升準(zhǔn)確率的同時(shí)也減少了查找所需的時(shí)間。
4 結(jié)語(yǔ)
本文提出一種結(jié)合BM25算法、文本Embeddings和交叉編碼器(Cross-Encoders)的知識(shí)庫(kù)檢索問(wèn)答研究模型,并進(jìn)行模擬實(shí)驗(yàn)與分析。針對(duì)3個(gè)不同的算法設(shè)置對(duì)照實(shí)驗(yàn),將檢索的準(zhǔn)確率以及平均耗時(shí)作為指標(biāo)進(jìn)行評(píng)估。實(shí)驗(yàn)結(jié)果表明,本文的組合模型相比于單獨(dú)的算法模型在結(jié)果上能短時(shí)間內(nèi)取得較高的檢索準(zhǔn)確率,即在平均耗時(shí)為0.74s的情況下準(zhǔn)確率可以高達(dá)86.67%,解決了傳統(tǒng)民航客服知識(shí)庫(kù)檢索效率低、準(zhǔn)確率低的問(wèn)題,同時(shí)也證明研究方向是可取的。在下一步的研究工作中,將考慮對(duì)各個(gè)模型的算法參數(shù)進(jìn)行調(diào)整以及優(yōu)化。同時(shí),嘗試更多的相似度計(jì)算算法,并通過(guò)實(shí)驗(yàn)對(duì)比分析,研究出更高效、準(zhǔn)確的知識(shí)庫(kù)檢索方法,不斷提升旅客自助服務(wù)的品質(zhì),保障旅客的忠誠(chéng)度以及用戶黏性,推動(dòng)民航客服實(shí)現(xiàn)“十四五”時(shí)期數(shù)字化轉(zhuǎn)型[9]。
參考文獻(xiàn)
[1]王賀,遲呈英,戰(zhàn)學(xué)剛.基于BM25-RoBERTa的法律案例檢索研究[J].電腦編程技巧與維護(hù),2023(3):74-75,130.
[2]牛悅.自聚合短文本的主題模型優(yōu)化問(wèn)題研究[D].合肥:中國(guó)科學(xué)技術(shù)大學(xué),2022.
[3]戚小莎,曾靜,吉根林.雙交叉注意力自編碼器改進(jìn)視頻異常檢測(cè)[J].南京師大學(xué)報(bào)(自然科學(xué)版),2023(1):110-119.
[4]張宇,袁野,王國(guó)仁.一個(gè)基于概率潛語(yǔ)義分析的多模態(tài)多媒體檢索模型[J].小型微型計(jì)算機(jī)系統(tǒng),2015(8):1665-1670.
[5]蘇錦鈿,洪曉斌,余珊珊.基于多模型集成的語(yǔ)義文本相似性判斷[J].華南理工大學(xué)學(xué)報(bào)(自然科學(xué)版),2022(4):1-9.
[6]李杰坷.基于深度學(xué)習(xí)的法律案例檢索方法及應(yīng)用[D].深圳:中國(guó)科學(xué)院大學(xué),2022.
[7]張沖.基于Attention-Based LSTM模型的文本分類技術(shù)的研究[D].南京:南京大學(xué),2016.
[8]崔壯壯.基于Word Embedding的短文本聚類算法研究及應(yīng)用[D].哈爾濱:哈爾濱工業(yè)大學(xué),2019.
[9]趙巍.“十四五”中國(guó)民航兩大主題:復(fù)蘇與發(fā)展[J].大飛機(jī),2022(6):57-61.
(編輯 王雪芬編輯)
Research on civil aviation customer service knowledge base retrieval based on BM25,
text vector method and cross encoder
Zheng? Shaoshuai, Weng? Jinghong, Jiang Xiaoyang
(Xiamen Airlines Co., Ltd., Xiamen 361006, China)
Abstract: With the development of civil aviation economy and the improvement of peoples living standards, the service requirements for passenger travel are becoming higher and higher. However, the traditional civil aviation customer service knowledge base retrieval generally has low retrieval accuracy and efficiency, which can no longer meet the service needs of passengers. This article combines the Best Match 25 algorithm, text Embeddings, and Cross-Encoders to search the knowledge base, efficiently searching for answers that match the intentions of the seat, thereby improving the efficiency of civil aviation customer service knowledge base search, shortening the call query time of the seat, improving the passenger service experience, and laying a solid foundation for the digital and intelligent transformation of civil aviation customer services.
Key words: civil aviation customer services; Best Match 25; text Embeddings; Cross-Encoder; seat intention