摘 要:目前通用大語言模型(如GPT)在專業(yè)領(lǐng)域問答應(yīng)用中存在不穩(wěn)定性和不真實(shí)性。針對這一現(xiàn)象,提出了一種在通用大語言模型上耦合領(lǐng)域知識的意圖識別精準(zhǔn)性增強(qiáng)方法(EIRDK),其中引入了三個(gè)具體策略:a)通過領(lǐng)域知識庫對GPT輸出結(jié)果進(jìn)行打分過濾;b)訓(xùn)練領(lǐng)域知識詞向量模型優(yōu)化提示語句規(guī)范性;c)利用GPT的反饋結(jié)果提升領(lǐng)域詞向量模型和GPT模型的一致性。實(shí)驗(yàn)分析顯示,相比于標(biāo)準(zhǔn)的GPT模型,新方法在私有數(shù)據(jù)集上可以提升25%的意圖理解準(zhǔn)確性,在CMID數(shù)據(jù)集上可以提升12%的意圖理解準(zhǔn)確性。實(shí)驗(yàn)結(jié)果證明了EIRDK方法的有效性。
關(guān)鍵詞:大語言模型知識問答;意圖精準(zhǔn)性增強(qiáng);領(lǐng)域知識集成;GPT反饋學(xué)習(xí)
中圖分類號:TP391 文獻(xiàn)標(biāo)志碼:A 文章編號:1001-3695(2024)10-002-2893-07
doi:10.19734/j.issn.1001-3695.2024.02.0022
Intention recognition accuracy enhancing method for large language model
Ren Yuankaia, Xie Zhenpinga, b
(a.School of Artificial Intelligence & Computer Science, b.Jiangsu Key University Laboratory of Software & Media Technology under Human-Computer Cooperation, Jiangnan University, Wuxi Jiangsu 214122, China)
Abstract:Large language models (such as GPT) exhibit instability and inauthenticity in professional domain Q&A applications. To address this issue, this paper proposed a method to enhance intent recognition by domain knowledge (EIRDK) for large language models. The method involved three specific strategies: a)scoring and filtering the GPT output using a domain knowledge base, b)training the domain knowledge word vector mode to optimize prompt, c)utilizing feedback from GPT to improve the coherence between the domain word vector model and the GPT model. Experimental analysis demonstrates that, compared to the standard GPT model, the new method achieves a 25% improvement in intent understanding accuracy on the private dataset and a 12% increase on the CMID dataset. The results validate the effectiveness of the EIRDK method.
Key words:knowledge Q&A with large language models; intent recognition accuracy enhancement; domain knowledge integration; feedback learning from GPT
0 引言
信息化時(shí)代下,問答系統(tǒng)已經(jīng)成為人工智能領(lǐng)域備受矚目的研究和應(yīng)用方向,涵蓋搜索引擎、虛擬助手、在線教育、醫(yī)療保健等。其核心目標(biāo)在于使人與計(jì)算機(jī)之間的交互更為自然和智能,用戶通過自然語言提出問題,而問答系統(tǒng)則以相應(yīng)的反饋?zhàn)鞒龌貞?yīng)[1,2]?;趩柎鹣到y(tǒng)的工作原理和實(shí)現(xiàn)方式,主要可分為檢索式問答系統(tǒng)和生成式問答系統(tǒng)兩個(gè)類別。生成式問答系統(tǒng)直接根據(jù)用戶提問生成相應(yīng)答案,能夠處理各類問題,但無法確保生成結(jié)果的真實(shí)性和可靠性。當(dāng)面對復(fù)雜問題時(shí),這類系統(tǒng)可能誤導(dǎo)用戶,提供不準(zhǔn)確或不完整的信息,從而降低用戶體驗(yàn)和信任度。相較之下,檢索式問答系統(tǒng)在一定程度上能夠規(guī)避這一問題。該系統(tǒng)依賴高質(zhì)量的知識庫,通過對用戶輸入的自然語言查詢(query)進(jìn)行檢索匹配,從大規(guī)模文本或知識庫中獲取準(zhǔn)確的答案或信息,確保了問答系統(tǒng)的可用性。然而,在理解用戶輸入的自然語言方面,檢索式問答系統(tǒng)存在一些限制,難以準(zhǔn)確理解用戶的意圖。
隨著大語言模型(LLM)的快速發(fā)展,問答系統(tǒng)的研究人員逐漸嘗試?yán)么笳Z言模型對用戶的意圖進(jìn)行解析。最近,OpenAI推出了ChatGPT,這是一種基于GPT-3.5架構(gòu)的革命性大規(guī)模語言模型,能夠勝任目前幾乎所有的自然語言處理任務(wù),包括信息抽取、文本摘要、風(fēng)格續(xù)寫、代碼生成等[3~5]。與現(xiàn)有大規(guī)模語言模型不同的是,ChatGPT利用人類的反饋數(shù)據(jù)進(jìn)行訓(xùn)練,通過強(qiáng)化學(xué)習(xí)的方式,使得ChatGPT能夠生成類似人類的回復(fù)[6~8]。由于在各類任務(wù)上均表現(xiàn)出了驚人效果,ChatGPT發(fā)布僅兩個(gè)月后就吸引了全球1億活躍用戶。隨后在2023年的3月,OpenAI推出了GPT-4,一個(gè)更為強(qiáng)大和智能的語言模型,與GPT-3.5相比,GPT-4擁有更多的參數(shù)以及更大的規(guī)模,在多任務(wù)學(xué)習(xí)方面有著突破性的進(jìn)展,在各個(gè)任務(wù)上均有著顯著的提升。
盡管目前的大語言模型(如ChatGPT)已經(jīng)能夠作為生成式問答系統(tǒng)提供高質(zhì)量的問答交互服務(wù),但仍然無法避免生成虛假或有害信息,尤其在專業(yè)領(lǐng)域的問答上,面對一些未知信息,大語言模型可能會(huì)編造出一些與事實(shí)無關(guān)的回答返回給用戶,這將帶來災(zāi)難性的后果。因此,本文將專注于檢索式問答的模式,利用ChatGPT優(yōu)秀的意圖對齊以及文本生成能力,對用戶的query進(jìn)行意圖解析并從知識庫中檢索召回相應(yīng)的答案?;谠撃J剑疚奶岢隽艘环N基于領(lǐng)域知識的意圖識別精準(zhǔn)性增強(qiáng)框架(enhance intent recognition by domain knowledge, EIRDK),該框架通過與領(lǐng)域知識庫的有機(jī)結(jié)合,旨在尋求一種經(jīng)濟(jì)有效的方法,以提升生物醫(yī)藥領(lǐng)域中檢索式問答系統(tǒng)對自然語言問題的意圖理解能力。
1 相關(guān)工作
1.1 語言模型
自然語言處理領(lǐng)域的語言模型通常采用預(yù)訓(xùn)練的方法進(jìn)行初始化,隨后通過特定數(shù)據(jù)微調(diào)的方式應(yīng)用于下游任務(wù)[9],這一方法的應(yīng)用使得語言模型在一定程度上能夠理解和生成自然語言文本。預(yù)訓(xùn)練語言模型可分為靜態(tài)和動(dòng)態(tài)兩類,早在2003年,Bengio等人[10]提出了NNLM模型,催生了一系列靜態(tài)預(yù)訓(xùn)練模型,如word2vec、GloVe、FastText等[11~13],然而,這些模型在解決多義性和下游任務(wù)改進(jìn)方面存在一定限制。動(dòng)態(tài)預(yù)訓(xùn)練模型的概念首次出現(xiàn)于2018年3月,ELMo利用雙向LSTM進(jìn)行預(yù)訓(xùn)練,有效處理詞語多義性[14]。同年12月,Google發(fā)布雙向語言模型bidirectional encoder representation from Transformers(BERT),引入了雙向Transformer結(jié)構(gòu),BERT的出現(xiàn)標(biāo)志著預(yù)訓(xùn)練技術(shù)的新時(shí)代[15]。自那時(shí)以來,涌現(xiàn)了許多改進(jìn)型模型,如RoBERTa、ALBERT、自回歸語言模型XLNet、通用統(tǒng)一框架T5等[16~19]。
1.2 意圖識別
意圖識別是自然語言處理領(lǐng)域的YCU72+D5OFiR2GHOQUx6Rg==重要研究方向,旨在解決計(jì)算機(jī)對人類語言的意圖理解和問題推斷。這一技術(shù)的核心目標(biāo)是識別并解釋用戶在交流過程中所表達(dá)的意圖,以便更好地響應(yīng)用戶的需求。在實(shí)際應(yīng)用中,意圖識別通常與問答系統(tǒng)、虛擬助手和自動(dòng)客服等領(lǐng)域相結(jié)合,以提升計(jì)算機(jī)系統(tǒng)對用戶輸入的理解程度[20~22]。
為了實(shí)現(xiàn)有效的意圖識別,研究人員采用了多種方法,早期流行基于規(guī)則的方法,隨著統(tǒng)計(jì)學(xué)習(xí)和深度學(xué)習(xí)的發(fā)展,意圖識別的技術(shù)也隨之進(jìn)步[23~26]。2018年,以BERT為代表的預(yù)訓(xùn)練語言模型橫空出世,在自然語言處理的各項(xiàng)任務(wù)上均取得了顯著效果[15]。這些預(yù)訓(xùn)練語言模型通過大規(guī)模數(shù)據(jù)進(jìn)行學(xué)習(xí),能夠捕捉文本中的復(fù)雜語義和上下文信息,同時(shí)擁有極強(qiáng)的泛化性,這使得基于預(yù)訓(xùn)練語言模型的意圖識別方法也擁有較高的精度和泛化性[27,28]。
隨著問答系統(tǒng)的普及,意圖識別在人機(jī)交互、智能客服等場景中的應(yīng)用逐漸增多。通過準(zhǔn)確識別用戶的意圖,系統(tǒng)能夠更加智能地回應(yīng)用戶的需求,提升用戶體驗(yàn)。然而,面對多樣化的語言表達(dá)和復(fù)雜的語境,意圖識別仍然面臨一系列挑戰(zhàn),如歧義消解、長對話建模等問題,需要不斷的研究和改進(jìn)。
1.3 提示工程
隨著參數(shù)量超百億的大規(guī)模語言模型(例如ChatGPT)展現(xiàn)出卓越的文本生成能力,提示工程(prompt engineering)逐漸成為自然語言處理領(lǐng)域的新興范式[29]。提示工程的核心目標(biāo)在于為預(yù)訓(xùn)練模型設(shè)計(jì)恰當(dāng)?shù)奶崾荆源_保在下游任務(wù)中獲得出色的效果,這催生了一種被稱為“預(yù)訓(xùn)練、提示、預(yù)測”的新興范式[30~33]。具體而言,提示工程創(chuàng)建了一個(gè)提示x′=fprompt(x),其中x∈X,為文本輸入(例如“找出治療糖尿病的所有藥物”),并描述了具體的下游任務(wù)(例如文本摘要、text2sql、代碼生成等)。具備提示后,大語言模型執(zhí)行得到最終的答案y=fLLM(x′) 。
目前prompt主要通過四5IQ9CILxHR+hpbBU7Qx4rA==種方式生成:
a)手工構(gòu)建。手工編寫文本段落用于提示語言模型進(jìn)行相關(guān)回答,這是一種簡單而有效的提示生成方式,但性能較為不穩(wěn)定,需要細(xì)致的調(diào)試。
b)大語言模型生成。利用大語言模型為每個(gè)文本輸入生成對應(yīng)的提示,可以彌補(bǔ)手工構(gòu)建的不足,但較為復(fù)雜的場景下,提升的效果無法得到保證。
c)基于檢索的提示。依賴于良好標(biāo)注的外部資源(例如百度百科)來減輕生成不穩(wěn)定性的問題。
d)提示學(xué)習(xí)。構(gòu)建了一個(gè)有監(jiān)督模型,根據(jù)大語言模型的生成和真實(shí)標(biāo)簽(ground truth)自動(dòng)更新提示。
2 方法框架
本文EIRDK方法框架如圖1所示,整個(gè)框架的輸入為用戶的query(例如“糖尿病應(yīng)該吃什么藥物”),框架輸出對應(yīng)意圖(例如“drug|disease_name:糖尿病”),整個(gè)框架可分為兩個(gè)部分:
a)本文利用領(lǐng)域詞向量和領(lǐng)域知識庫對prompt進(jìn)行規(guī)范化。根據(jù)用戶輸入的query,從領(lǐng)域知識庫中提取相關(guān)信息補(bǔ)充到prompt中,提升ChatGPT的領(lǐng)域背景知識,這一步的目標(biāo)是確保系統(tǒng)能夠更精準(zhǔn)地理解用戶的意圖,使得整體框架在處理意圖識別問題時(shí)表現(xiàn)更為卓越。
b)本文借助領(lǐng)域知識對ChatGPT輸出的意圖進(jìn)行打分和排序,以增強(qiáng)意圖識別的穩(wěn)定性。本文旨在提高系統(tǒng)的魯棒性和適用性,確保系統(tǒng)在各種情境下都能可靠地識別用戶的真實(shí)意圖,使其在復(fù)雜的問答環(huán)境中表現(xiàn)更為可靠。
最后,本文探索了一種將領(lǐng)域詞向量模型與ChatGPT對齊的方法。通過ChatGPT的反饋結(jié)果對本地領(lǐng)域詞向量模型進(jìn)行優(yōu)化,并評估其對意圖識別準(zhǔn)確性的提升效果。通過這一創(chuàng)新性的嘗試,本文期望在領(lǐng)域知識與先進(jìn)生成技術(shù)的協(xié)同作用下,進(jìn)一步優(yōu)化意圖識別性能,為生物醫(yī)藥領(lǐng)域的檢索式問答系統(tǒng)提供更為強(qiáng)大的解決方案。
2.1 prompt規(guī)范化策略
2.1.1 通用prompt構(gòu)建
考慮到本文定義的意圖識別結(jié)構(gòu)較為復(fù)雜,決定采用人工構(gòu)建prompt的方案,以此來引導(dǎo)ChatGPT進(jìn)行意圖識別并生成一個(gè)SOLR(search on lucene replication)可識別的檢索式。隨后利用部分?jǐn)?shù)據(jù)集進(jìn)行測試和優(yōu)化,確保最終得到的prompt在生物醫(yī)藥的常規(guī)問題上都能有一個(gè)較好的效果。由于ChatGPT的性能對prompt的設(shè)計(jì)非常敏感,本文參考Wei等人[34]提出的思維鏈(chain of thought,CoT)策略,按照如下形式構(gòu)建prompt:
a)角色和概念定義。首先對ChatGPT進(jìn)行角色定義:“你現(xiàn)在是一位生物醫(yī)藥領(lǐng)域的專家,請幫我根據(jù)下面的例子完成意圖識別任務(wù)”。接著對生物醫(yī)藥領(lǐng)域的知識庫進(jìn)行抽象的表示,包括實(shí)體的語義標(biāo)簽(semantic type)、屬性的標(biāo)準(zhǔn)名稱、意圖所在的索引等。同時(shí),在給出相關(guān)定義后會(huì)提供1、2個(gè)例子作為該條定義的解釋和補(bǔ)充。
b)少樣本學(xué)習(xí)(few-shot learning)。對ChatGPT進(jìn)行角色定義和相關(guān)概念描述后,根據(jù)定義的索引,提供若干條例子作為few-shot learning的例子。理想情況下給出的例子越多越好,但由于prompt長度的限制以及生物醫(yī)藥領(lǐng)域query的多樣性和復(fù)雜性,無法窮舉所有情況的query。因此,本文只提供一些相對通用的例子作為ChatGPT學(xué)習(xí)的模板。prompt構(gòu)成示例如圖2所示,其中第1行表示對ChatGPT角色的定義,第2~5行表示對實(shí)體標(biāo)簽的定義,第7~11行表示數(shù)據(jù)源的定義,第12行表示屬性的定義,第14行開始表示給定的few-shot示例,期望ChatGPT按照示例的格式進(jìn)行意圖識別。最終的prompt在此基礎(chǔ)上進(jìn)行補(bǔ)充,由于篇幅過長,不進(jìn)行詳細(xì)的展示。
2.1.2 領(lǐng)域知識引入
領(lǐng)域知識在自然語言處理任務(wù)中扮演著至關(guān)重要的角色,它有助于模型更深刻地理解和生成特定領(lǐng)域相關(guān)的文本,提供更為準(zhǔn)確和實(shí)用的答案。尤其是在信息檢索和意圖識別任務(wù)中,它可以協(xié)助模型更好地理解用戶的query,識別出關(guān)鍵信息,生成相關(guān)性更高的回復(fù)。以生物醫(yī)藥領(lǐng)域?yàn)槔?,如果用戶提出與醫(yī)學(xué)相關(guān)的問題,模型需要具備關(guān)于醫(yī)療術(shù)語、疾病、藥物、治療方法等方面的知識,以生成準(zhǔn)確的回答。
為了提升ChatGPT的專業(yè)性,本文在之前定義的提示中引入生物醫(yī)藥領(lǐng)域的相關(guān)知識,主要包含兩個(gè)步驟。
a)query領(lǐng)域基本信息。利用領(lǐng)域知識對query中的實(shí)體(entity)信息進(jìn)行解析和抽取,將解析后得到的領(lǐng)域基本信息添加到prompt中。
b)query領(lǐng)域相關(guān)信息。利用領(lǐng)域知識進(jìn)行預(yù)訓(xùn)練得到BERT詞向量模型,隨后利用BERT模型對輸入的query進(jìn)行相似度匹配,從已有的領(lǐng)域知識庫中選取與之最相似的若干條結(jié)果,將其作為query的相關(guān)領(lǐng)域知識和相關(guān)結(jié)構(gòu)知識補(bǔ)充添加到prompt中。
通過以上兩個(gè)步驟,本文將領(lǐng)域知識動(dòng)態(tài)地添加到prompt中,使得ChatGPT在生成回復(fù)時(shí)能夠獲取到這些領(lǐng)域知識,產(chǎn)生更為精準(zhǔn)的意圖結(jié)果。本文將引入了領(lǐng)域知識的意圖識別任務(wù)定義為
y=f(x′,d|θ)(1)
其中: f(·|θ)表示參數(shù)為θ的神經(jīng)網(wǎng)絡(luò);x′表示預(yù)先定義的prompt;d表示額外引入的領(lǐng)域知識;y表示最終得到的意圖。值得注意的是,本次實(shí)驗(yàn)發(fā)現(xiàn)領(lǐng)域知識添加的位置對意圖識別的效果也會(huì)存在一定影響,在prompt結(jié)尾加入領(lǐng)域知識相比于其他位置更有助于ChatGPT的利用。
最終,本文利用領(lǐng)域知識庫作為預(yù)訓(xùn)練數(shù)據(jù),以雙語BERT為基礎(chǔ)模型,采用經(jīng)過三個(gè)epoch進(jìn)行預(yù)訓(xùn)練后的BERT作為領(lǐng)域詞向量模型,通過該詞向量模型對領(lǐng)域知識庫中的文檔和用戶輸入的query進(jìn)行向量化處理并儲存,以此來生成領(lǐng)域知識庫詞向量。
應(yīng)用自動(dòng)引入領(lǐng)域知識的策略時(shí),用戶輸入的query首先被映射成和領(lǐng)域知識向量相同維度的詞向量,然后通過余弦相似度算法進(jìn)行計(jì)算并排序,系統(tǒng)根據(jù)排序后的結(jié)果返回與輸入query相似度得分較高的top-k示例(k值可以作為超參數(shù)設(shè)置,實(shí)驗(yàn)中發(fā)現(xiàn)k=5的效果為最佳),作為領(lǐng)域知識的補(bǔ)充,這些示例不僅能夠提供額外的信息和實(shí)例,還有助于模型更全面地理解用戶的query并生成相關(guān)的回復(fù)。后續(xù)在實(shí)際的應(yīng)用中時(shí),可以考慮將用戶的意圖進(jìn)行收集,不斷地更新領(lǐng)域知識庫并定期進(jìn)行詞向量模型的更新,實(shí)現(xiàn)整個(gè)策略的良性循環(huán)。為了更精準(zhǔn)地提取query的相關(guān)信息,本文構(gòu)建了一個(gè)領(lǐng)域知識詞典,利用后向最大匹配算法,對query中的領(lǐng)域詞進(jìn)行抽取。prompt引入領(lǐng)域知識的具體算法邏輯如算法1所示。
算法1 基于領(lǐng)域知識的prompt自動(dòng)優(yōu)化算法
輸入:D={d1,d2,d3,d4,d5,…,dn},D represents samples in domain knowledge base, and x represents the input query。
輸出: a prompt that integrates domain knowledge。
a) embed D to edoc and embed x to eq /*對領(lǐng)域知識和輸入的問題進(jìn)行向量化*/
b) calculate similarity score sq,doc between eq and edoc /*計(jì)算相似度文檔和輸入問題的相似度*/
c) sort sq,doc in descending order and select top-5 docs Dsub /*獲取和輸入問題最相近的前5條數(shù)據(jù)*/
d) extract entities wx information from x /*利用領(lǐng)域知識詞典進(jìn)行信息提取*/
e) merge Dsub and wx into prompt /*合并第三步和第四步的知識加到prompt中*/
舉例來說,用戶提出一個(gè)生物醫(yī)藥領(lǐng)域的query:“治療高血壓的最新藥物有哪些?”。本文根據(jù)這條query從知識庫中匹配出基本信息和相關(guān)信息。基本信息包括:“disease:高血壓”,“date:最新”,相關(guān)信息包括:“治療高血壓的藥物=>drug|disease_name:高血壓”,“降血壓的藥物有哪些?=>drug|disease_name:降血壓”。
2.2 意圖打分排序策略
生成式大語言模型一直以來以輸出多樣性而著稱,但是在某些任務(wù)中需要限制輸出的多樣性以此來確保結(jié)果的穩(wěn)定性。當(dāng)使用ChatGPT進(jìn)行意圖識別任務(wù)時(shí),可以發(fā)現(xiàn)它的輸出結(jié)果通常會(huì)隨時(shí)間而變化,這對于意圖識別任務(wù)來說可能會(huì)導(dǎo)致嚴(yán)重的不穩(wěn)定性問題。針對上述問題,本文通過領(lǐng)域知識訓(xùn)練打分排序模型,利用ChatGPT能夠一次性生成k條結(jié)果的特性,在其輸出k條意圖后,用領(lǐng)域模型進(jìn)行排序和過濾,選取最佳的結(jié)果,以此來幫助模型獲取穩(wěn)定的意圖結(jié)果。
鑒于query和意圖結(jié)果都需要強(qiáng)大的知識理解和表征能力,本文選擇了BERT語言模型作為領(lǐng)域判別模型的基礎(chǔ)模型,用于文本表示和語義理解。BERT通過特定領(lǐng)域數(shù)據(jù)的微調(diào),可以適應(yīng)該領(lǐng)域的語言風(fēng)格和術(shù)語,對query和意圖結(jié)果將有更好的知識理解和表征能力。模型結(jié)構(gòu)如圖3所示。
在微調(diào)階段,本文根據(jù)BERT預(yù)訓(xùn)練數(shù)據(jù)的結(jié)構(gòu),構(gòu)建出類似的形式,以滿足BERT對query和意圖結(jié)果進(jìn)行聯(lián)合理解的需求。模型的輸入由query和意圖結(jié)果構(gòu)成,將它們拼接后得到一個(gè)聯(lián)合的表征(representation)。這種聯(lián)合表征的構(gòu)建允許模型同時(shí)考慮query和意圖結(jié)果的信息,幫助模型更好地捕捉它們之間的關(guān)聯(lián)性及上下文信息,這一特性在解決信息檢索和意圖識別任務(wù)時(shí)顯得尤為關(guān)鍵。由于query和意圖結(jié)果之間的語義關(guān)系往往復(fù)雜多變,通過拼接的方案,本文為模型提供了更為豐富的輸入,以此來幫助模型理解query和意圖識別結(jié)果之間的內(nèi)在聯(lián)系。打分排序模型的目標(biāo)函數(shù)如下所示。
score=fBERT(x;y|θ)(2)
其中: fBERT(·|θ)表示基于BERT的打分模型;x表示用戶輸入的query;y表示ChatGPT從query中解析出的意圖?;陬I(lǐng)域知識的語義判別算法如下所示。
算法2 基于BERT的語義判別模型
輸入: training samples,Di={(x1,y1),(x2,y2),(x3,y3),(x4,y4),…,(xm,ym),},m represents the number of samples。
輸出: semantic discrimination model after parameter updates。
a) for j=1,…,L
b) for the jth similarity score do
c) assign a null value to Dj;
d) for (x,y)∈Dj
e) build samples for each x, Dsub={(x1,y1),(x1,y2),(x1,y3),(x1,y4),(x1,y5)} /*利用對比學(xué)習(xí)生成的訓(xùn)練樣本組成正負(fù)樣本*/
f) minimize the contrast loss between positive and negative samples in Dsub//最小化正樣本的損失,最大化負(fù)樣本的損失
g) back propagation
h) end for;
i) end for;
j) end for
為了進(jìn)一步提高BERT模型的性能,本文采用對比學(xué)習(xí)的方法來進(jìn)行訓(xùn)練。對比學(xué)習(xí)是一種自監(jiān)督學(xué)習(xí)方法,通過正樣本與負(fù)樣本進(jìn)行比較來學(xué)習(xí)有意義的表示[35]。本次研究的場景中,正樣本是query和正確意圖結(jié)果的聯(lián)合表示,而負(fù)樣本則是來自query和錯(cuò)誤意圖結(jié)果的聯(lián)合表示。
具體地,本文從訓(xùn)練數(shù)據(jù)中隨機(jī)挑選若干對query和意圖結(jié)果,拼接后得到它們的聯(lián)合表示,作為正樣本。隨機(jī)將query和不同的意圖結(jié)果拼接得到負(fù)樣本。模型的目標(biāo)是使正樣本的表示更加相似,同時(shí)使得負(fù)樣本的表示更加不同,本文通過最小化正樣本與負(fù)樣本之間的對比損失來實(shí)現(xiàn)。對于當(dāng)前的意圖識別任務(wù),同一層級的實(shí)體位置可以互相轉(zhuǎn)換,因此,本研究中的正樣本可以通過實(shí)體之間位置的互換增強(qiáng)模型的魯棒性。模型的輸入如圖4所示。
本文利用對比學(xué)習(xí)的訓(xùn)練方式,幫助模型學(xué)習(xí)更具判別性的表示,提升信息檢索和意圖識別的性能。通過強(qiáng)化相同領(lǐng)域的query和意圖結(jié)果之間的關(guān)聯(lián)性,使得整個(gè)模型框架可以更好地捕獲領(lǐng)域特定的知識和語義信息。
2.3 詞向量模型對齊策略
通常情況下本地領(lǐng)域詞向量模型和調(diào)用的ChatGPT模型并不能完全匹配,由于它們之間缺乏一些對齊的手段,有時(shí)候經(jīng)過領(lǐng)域詞向量模型推薦篩選出來的信息并不是ChatGPT模型最期望的,導(dǎo)致某些query語句生成的prompt不是最優(yōu)。
想要解決本地領(lǐng)域詞向量模型與ChatGPT模型之間的不匹配問題,需要深入研究它們之間的差異,并尋找一些對齊的方法來提高它們的一致性。首先,需要認(rèn)識到ChatGPT模型和本地詞向量模型在訓(xùn)練任務(wù)、數(shù)據(jù)集和架構(gòu)設(shè)計(jì)上存在顯著的差異。ChatGPT-3.5是一種基于生成的語言模型,通過大規(guī)模的對話數(shù)據(jù)進(jìn)行無監(jiān)督學(xué)習(xí)。相比之下,本地詞向量模型是在特定領(lǐng)域的監(jiān)督任務(wù)上進(jìn)行訓(xùn)練,使用的數(shù)據(jù)集和目標(biāo)不同于ChatGPT。這種差異可能導(dǎo)致本地詞向量模型在某些情境下難以準(zhǔn)確捕捉到ChatGPT模型的語境和偏好。為了彌補(bǔ)這一差距,本文提出一種創(chuàng)新性的方法,利用ChatGPT生成的結(jié)果作為優(yōu)化信號,輔助本地詞向量模型學(xué)習(xí)到ChatGPT的偏好。
在這一新的方法中,本文將ChatGPT生成的結(jié)果作為監(jiān)督信號,幫助本地詞向量模型學(xué)習(xí)到ChatGPT在特定任務(wù)中的期望輸出。具體而言,首先利用本地詞向量選取query的若干條相關(guān)數(shù)據(jù)組成新的prompt,然后利用ChatGPT進(jìn)行意圖識別,最后利用本地詞向量模型分別對GPT返回的結(jié)果和真實(shí)標(biāo)簽進(jìn)行向量化并計(jì)算余弦相似度Loss,最終引導(dǎo)本地詞向量模型朝著ChatGPT更傾向的方向調(diào)整參數(shù)。由于訓(xùn)練時(shí)采用真實(shí)標(biāo)簽進(jìn)行相似度計(jì)算,而非無監(jiān)督學(xué)習(xí),并且在得到ChatGPT的結(jié)果后,會(huì)利用規(guī)則進(jìn)行判別,丟棄和預(yù)定義結(jié)構(gòu)或者內(nèi)容偏差過大的結(jié)果,以防止ChatGPT生成的異常結(jié)果造成過大的干擾。因此,盡管ChatGPT在生成結(jié)果時(shí)存在不確定性和不真實(shí)性,但可以將這些異常結(jié)果造成的影響盡可能地降低。
這種監(jiān)督信號的引入有望使本地模型學(xué)習(xí)到ChatGPT的一些偏好,進(jìn)而提升本地模型召回領(lǐng)域相關(guān)知識的能力。然而,這仍然是一個(gè)初步的嘗試,需要在實(shí)踐中進(jìn)行深入研究和驗(yàn)證。通過進(jìn)一步的實(shí)驗(yàn)和調(diào)整,有望在兩種模型之間建立更為有效的橋梁,提高它們的協(xié)同效應(yīng),為用戶提供更準(zhǔn)確、流暢的生成式語言服務(wù)。
本次實(shí)驗(yàn)主要涉及ChatGPT和BERT語言模型,其中ChatGPT是一個(gè)生成式模型,它負(fù)責(zé)接收用戶的輸入query并生成相關(guān)的回復(fù),BERT語言模型作為一個(gè)語義理解的詞向量模型,它利用ChatGPT生成的意圖結(jié)果和真實(shí)標(biāo)簽進(jìn)行訓(xùn)練,具體算法流程如下所示。
算法3 基于ChatGPT反饋的領(lǐng)域詞向量對齊方法
輸入: training samples,Di={(x1,y1),(x2,y2),(x3,y3),(x4,y4),…,(xm,ym),}, m represents the number of samples。
輸出: semantic discrimination model after parameter updates。
a) for j=1,…,L
b) for the jth similarity score do
c) assign a null value to Dj;
d) for (x,y)∈Dj
e) dynamically generate prompt for x and get response y′from GPT API /*針對輸入問題動(dòng)態(tài)生成prompt并從GPT獲取對應(yīng)的意圖結(jié)果*/
f) embed y and y′ to ey and ey′ by BERT model /*利用BERT對問題的意圖結(jié)果和GPT生成的意圖結(jié)果進(jìn)行向量化*/
g) calculate similarity score between ey and ey′ /*計(jì)算相似度損失函數(shù)*/
h) back propagation //反向傳播
i) end for
j) end for
h) end for
3 實(shí)驗(yàn)及結(jié)果分析
3.1 任務(wù)定義
主流意圖識別任務(wù)主要用于標(biāo)簽分類,這個(gè)標(biāo)簽通常是預(yù)定義的類別,代表用戶的目的或意圖,比如訂票、查詢天氣、提問等。而在生物醫(yī)藥問答中,無法窮舉這些意圖,為了結(jié)合已有的數(shù)據(jù)庫進(jìn)行檢索式問答,本次的意圖識別任務(wù)主要定義為query到SOLR檢索式的生成,將一個(gè)自然語言描述的query解析成一個(gè)符合SOLR檢索式格式的句子,通過這種意圖轉(zhuǎn)換,可以將大部分的問題進(jìn)行轉(zhuǎn)換,然后從數(shù)據(jù)庫中進(jìn)行相應(yīng)的知識檢索。例如query“新冠病毒的最新研究進(jìn)展”,本文定義的是任務(wù)是將這個(gè)query轉(zhuǎn)換成“disease|disease_name:新冠病毒 AND date:最新 AND key_words:研究進(jìn)展”。其中“|”左側(cè)表示意圖的類型,右側(cè)表示意圖涉及的實(shí)體和關(guān)系。
3.2 數(shù)據(jù)集
本次實(shí)驗(yàn)的數(shù)據(jù)集分為和本領(lǐng)域強(qiáng)關(guān)聯(lián)的私有數(shù)據(jù)集和通用數(shù)據(jù)集CMID兩部分,其中私有數(shù)據(jù)集一共有1 060條query,由生物醫(yī)藥領(lǐng)域內(nèi)的專家結(jié)合實(shí)際問題構(gòu)造而成,具有一定的權(quán)威性。通用數(shù)據(jù)集CMID為中文醫(yī)學(xué)QA意圖理解數(shù)據(jù)集,該數(shù)據(jù)集用于中國醫(yī)療質(zhì)量保證意圖理解任務(wù),由好大夫在線提供。下面是兩份數(shù)據(jù)集的處理方式:
1)私有數(shù)據(jù)集
人工對其進(jìn)行意圖解析和抽象表達(dá)式的轉(zhuǎn)換。按照1∶4的比例進(jìn)行劃分后得到,訓(xùn)練集848條,測試集212條。利用ChatGPT分別對每一條query進(jìn)行意圖解析5次,即每一條query共有6對結(jié)果(1條人工標(biāo)注的標(biāo)準(zhǔn)結(jié)果,5條ChatGPT的結(jié)果),私有數(shù)據(jù)集的示例如圖5所示。
2)CMID數(shù)據(jù)集
由于該原始數(shù)據(jù)集包含一些和本研究無關(guān)的query,故對此數(shù)據(jù)集進(jìn)行一系列的數(shù)據(jù)清洗和篩選,選取問題長度不超過10的query,剔除其中的一些停用詞、標(biāo)點(diǎn)符號并進(jìn)行去重后,得到1 474條query。同樣按照4∶1的比例進(jìn)行數(shù)據(jù)集劃分,得到1 176條訓(xùn)練集數(shù)據(jù)和298條測試集數(shù)據(jù)。最后按照私有數(shù)據(jù)集的標(biāo)注方法對其進(jìn)行意圖解析和抽象表達(dá)式的轉(zhuǎn)換,CMID原始數(shù)據(jù)集如圖6所示,處理后的形式和圖5類似,故不進(jìn)行額外的展示。
3.3 評價(jià)指標(biāo)
為了比較不同方法對ChatGPT生成意圖的提升效果,本文選擇準(zhǔn)確率(accuracy)作為主要評價(jià)指標(biāo),以直觀地評估ChatGPT生成的意圖與人工標(biāo)注的意圖之間的一致性。準(zhǔn)確率是一個(gè)重要的評估指標(biāo),它通過計(jì)算生成結(jié)果中正確預(yù)測的意圖數(shù)與總生成意圖數(shù)的比例,為本文提供了一個(gè)量化的度量,反映了模型生成結(jié)果的準(zhǔn)確性。
意圖結(jié)果對實(shí)體順序不敏感,為了更全面地比較結(jié)果,本文引入了一致性解析的步驟。具體而言,本文對生成的意圖結(jié)果進(jìn)行分塊處理,以捕捉語義一致性,而不僅僅是表面匹配。這意味著即使存在實(shí)體順序上的差異,只要語義塊在生成結(jié)果和人工標(biāo)注結(jié)果中相對應(yīng),仍然可以將其視為一致,這將有助于確保模型評估的一致性。
這種一致性解析的方法使得本文能夠更細(xì)致地評估ChatGPT生成的結(jié)果與人工標(biāo)注結(jié)果之間的相似性,從而提高了評估的靈敏度和準(zhǔn)確性。這種對語義一致性的關(guān)注是因?yàn)樵谧匀徽Z言生成任務(wù)中,僅僅依靠表面匹配可能無法充分反映生成結(jié)果的質(zhì)量,尤其是在語境復(fù)雜或模糊的情況下。因此,本文強(qiáng)調(diào)在評價(jià)中綜合考慮了實(shí)體順序不敏感性和語義一致性,以便全面地了解ChatGPT在生成意圖方面的性能。
3.4 實(shí)驗(yàn)結(jié)果及分析
3.4.1 實(shí)驗(yàn)結(jié)果
本文聚焦于GPT-3.5與GPT-4,并針對提出方法進(jìn)行系統(tǒng)的實(shí)驗(yàn)驗(yàn)證。實(shí)驗(yàn)數(shù)據(jù)集中既包括專屬的私有數(shù)據(jù)集,也包括了廣泛應(yīng)用的CMID數(shù)據(jù)集,兩者均用以檢驗(yàn)意圖識別準(zhǔn)確率的變化情況。
表1匯總了在不同方法應(yīng)用前后,GPT-3.5和GPT-4在兩個(gè)數(shù)據(jù)集上的準(zhǔn)確率對比,結(jié)果顯著揭示了提出方法的有效性;表2則提供了消融實(shí)驗(yàn)的準(zhǔn)確率差異,為評估各組件的單獨(dú)貢獻(xiàn)提供了準(zhǔn)據(jù);表3比較了不同的領(lǐng)域模型過濾策略,表現(xiàn)了領(lǐng)域排序模型的篩選效力。實(shí)驗(yàn)結(jié)果揭示了模型性能的顯著提升,特別在結(jié)合領(lǐng)域模型過濾和領(lǐng)域知識增強(qiáng)策略之后。
3.4.2 領(lǐng)域排序模型
為了評估領(lǐng)域模型對ChatGPT輸出的穩(wěn)定性提升,本文嘗試了三種不同的篩選方案,以表3的形式展現(xiàn)。在不施加任何控制的條件下,隨機(jī)選擇策略的表現(xiàn)作為基線,反映了ChatGPT在常規(guī)場景下的表現(xiàn);投票選擇策略則聚焦于多次輸出中的共識意圖,該策略能反映出ChatGPT在不穩(wěn)定性和不真實(shí)性情況下的真實(shí)表現(xiàn);而領(lǐng)域模型排序策略旨在優(yōu)選與領(lǐng)域相關(guān)性更高的意圖,該策略能在一定程度上反映出ChatGPT輸出的上限。
根據(jù)兩個(gè)數(shù)據(jù)集上三種策略的性能對比,可以看出Chat-GPT的不穩(wěn)定性,在多次輸出的情況下會(huì)更加傾向于輸出正確結(jié)果,私有數(shù)據(jù)集的投票選擇性策略有0.029的提升,CMID數(shù)據(jù)集上有0.027的提升。而領(lǐng)域模型的排序策略則有更高的提升,兩個(gè)數(shù)據(jù)集上分別達(dá)到了0.057和0.034。分析數(shù)據(jù)可以發(fā)現(xiàn),只要ChatGPT能在多次輸出中得到一次準(zhǔn)確結(jié)果,本文提出的領(lǐng)域排序模型就有很大的概率將其篩選出來,證明了領(lǐng)域模型在篩選最佳意圖方面展現(xiàn)出的卓越性和可靠性。
3.4.3 領(lǐng)域知識引入
從表1可以觀察到,通過向GPT-3.5和GPT-4引入領(lǐng)域知識,使得私有數(shù)據(jù)集的準(zhǔn)確率分別從0.443和0.642躍升至0.679和0.755,實(shí)現(xiàn)了顯著提高。在公共數(shù)據(jù)集CMID上的實(shí)驗(yàn)結(jié)果雖不如私有數(shù)據(jù)集上那么突出,但也有0.1和0.03左右的提升。盡管它們的提升可以表現(xiàn)出領(lǐng)域知識嵌入對大語言模型能力的提升,但兩份數(shù)據(jù)集的表現(xiàn)差距有點(diǎn)明顯,尤其是在GPT-4上。針對這一現(xiàn)象,本文對數(shù)據(jù)集進(jìn)行了觀察和分析,發(fā)現(xiàn)CMID數(shù)據(jù)集內(nèi)容十分的豐富,在引入訓(xùn)練集的領(lǐng)域知識時(shí),很多例子并沒有一些相關(guān)的數(shù)據(jù)可以被引入,這也就導(dǎo)致了領(lǐng)域知識引入的提升較小,私有數(shù)據(jù)集則沒有這種情況,這也就導(dǎo)致了私有數(shù)據(jù)集提升明顯,而CMID數(shù)據(jù)集提升不明顯的情況。隨后本文在CMID的訓(xùn)練集中添加部分和測試集擁有共性的數(shù)據(jù)進(jìn)行測試驗(yàn)證,新的領(lǐng)域知識數(shù)據(jù)能夠使得CMID的測試集有進(jìn)一步的提升。
這些結(jié)果表明領(lǐng)域知識的引入對于增強(qiáng)大型預(yù)訓(xùn)練模型在特定領(lǐng)域中的意圖識別能力至關(guān)重要,而且與傳統(tǒng)模型微調(diào)相比,提出方法既簡便又成本效益顯著。
3.4.4 模型對齊
如表1所示,采用領(lǐng)域詞向量模型對齊后,私有數(shù)據(jù)集上在GPT-3.5的模型對齊下有一定的提升,但是在GPT-4的模型對齊下并沒有效果。CMID數(shù)據(jù)集上有類似的情況,僅在GPT-3.5下有提升,但GPT-4的下面沒有任何效果。初步分析,由于GPT在進(jìn)行意圖識別時(shí)會(huì)存在一定的不穩(wěn)定性和不真實(shí)性,模型在訓(xùn)練時(shí)受到了一部分干擾或者進(jìn)行了一部分?jǐn)?shù)據(jù)的丟棄,影響了詞向量模型的訓(xùn)練。同時(shí),由于本實(shí)驗(yàn)的數(shù)據(jù)集較為干凈,補(bǔ)充上一些無關(guān)信息的prompt不會(huì)導(dǎo)致GPT的回答變差,不會(huì)降低其回復(fù)的效果,因此出現(xiàn)了結(jié)果無變化的情況,這也表明了該方法在一定程度上能使得本地詞向量模型對齊GPT模型,但由于GPT模型的不穩(wěn)定性,會(huì)引入一些干擾導(dǎo)致模型沒有提升。
通過迭代訓(xùn)練,在一定程度上可以使得領(lǐng)域詞向量模型更加精準(zhǔn)地定位與特定知識領(lǐng)域相關(guān)的語義要點(diǎn),從而在增強(qiáng)ChatGPT輸出意圖的準(zhǔn)確性方面發(fā)揮了作用。此外,這一模型對齊策略不僅優(yōu)化了ChatGPT與本地?cái)?shù)據(jù)的適配度,也豐富了模型對領(lǐng)域內(nèi)復(fù)雜用戶需求的理解,為達(dá)成高度個(gè)性化和精準(zhǔn)化的意圖識別奠定了基礎(chǔ)。
總體來看,無論是在私有還是公共數(shù)據(jù)集上,利用Chat-GPT的反饋結(jié)果來優(yōu)化領(lǐng)域詞向量模型的策略均得到了驗(yàn)證,顯現(xiàn)了在具體領(lǐng)域上提升意圖識別準(zhǔn)確性的潛力,但仍然需要進(jìn)一步的研究,保證本地詞向量模型可以穩(wěn)定地對齊GPT模型。
3.4.5 消融實(shí)驗(yàn)
如表2所述,進(jìn)行消融實(shí)驗(yàn)揭示了各個(gè)組件對整體意圖識別性能增益的分量。領(lǐng)域打分模型本身就將準(zhǔn)確率提高至05的層次,而基于領(lǐng)域知識優(yōu)化的prompt進(jìn)一步將這一數(shù)字提升至0.66。在CMID數(shù)據(jù)集上,實(shí)驗(yàn)展示了本文方法在更廣泛和多樣化環(huán)境中的魯棒性,領(lǐng)域知識的引入使準(zhǔn)確率從0453提升至0.537,證明即便在規(guī)模更廣的公共數(shù)據(jù)集上,領(lǐng)域知識增強(qiáng)同樣能夠提供有效的性能提升。同樣地,領(lǐng)域打分模型也有一定的效果,將準(zhǔn)確率從0.453提升至0.487。
對比表2兩份數(shù)據(jù)的消融實(shí)驗(yàn)結(jié)果以及表1不同方法的準(zhǔn)確率提升,可以發(fā)現(xiàn),領(lǐng)域數(shù)據(jù)的引入使得打分排序模型的增益降低了。換句話說,引入領(lǐng)域數(shù)據(jù)增強(qiáng)在一定程度上提升了大語言模型的穩(wěn)定性,使其能夠更穩(wěn)定地輸出正確結(jié)果,無需借助打分排序模型進(jìn)行過濾。消融實(shí)驗(yàn)進(jìn)一步驗(yàn)證了領(lǐng)域知識引入對大語言模型的提升效果。
3.4.6 錯(cuò)誤分析
為了更好地分析本文方法的效果提升,針對錯(cuò)誤部分選取一些典型例子進(jìn)行分析。
如query1“脊髓灰質(zhì)炎口服疫苗有哪些”,真實(shí)的意圖結(jié)果為“drug|disease_name:脊髓灰質(zhì)炎 AND drug_type:口服疫苗”。在默認(rèn)prompt情況下,GPT容易將該條的意圖識別成“drug|drug_name:脊髓灰質(zhì)炎口服疫苗”。這類query本身需要較多的信息補(bǔ)充才能幫助GPT理解藥物內(nèi)部的適應(yīng)癥和藥物類型,這類query在生物醫(yī)藥領(lǐng)域中存在較多,如果全部都補(bǔ)充到prompt中,會(huì)導(dǎo)致prompt過于冗余并且可能對GPT造成一定干擾,同時(shí)浪費(fèi)GPT的性能。query2 “Zanidatamab的組合物專利有哪些”,真實(shí)的意圖結(jié)果為“patent|drug_name:Zanidatamab AND patent_type:組合物”。在默認(rèn)的prompt情況下,GPT容易忽略“組合物”這個(gè)標(biāo)簽或者將其識別成藥物類型。這類query如果單純地將定義全部補(bǔ)充上去,反而會(huì)導(dǎo)致GPT識別錯(cuò),而在默認(rèn)定義下補(bǔ)充一些領(lǐng)域知識則能大大提升其準(zhǔn)確率。
query1經(jīng)過了本文提出的領(lǐng)域知識增強(qiáng)框架后,在輸入之前,會(huì)從領(lǐng)域知識庫中補(bǔ)充一些相關(guān)的例子,如:“肺炎疫苗 表示 drug|disease_name:肺炎 AND drug_type:疫苗”。而query2則會(huì)返回 “阿莫西林的組合物專利 表示 patetn|drug_name:阿莫西林 AND patent_type:組合物”。通過這些領(lǐng)域數(shù)據(jù)的增強(qiáng)后,原本GPT識別的錯(cuò)誤問題得到了解決。
盡管如此,還有一些無法解決的例子,如:query“仲景制藥的歸脾丸”,這類query在原本的領(lǐng)域知識庫中缺乏相關(guān)信息,導(dǎo)致本文提出的領(lǐng)域知識增強(qiáng)方案失效,無法提升ChatGPT的識別效果。此類問題后續(xù)可以通過增強(qiáng)領(lǐng)域知識庫的方案解決,但目前來說這部分需要人工審核才能做到,未來希望可以找到自動(dòng)化的解決方案。
3.4.7 實(shí)驗(yàn)總結(jié)
通過這些實(shí)驗(yàn),本文得以理解引入領(lǐng)域模型、引入領(lǐng)域知和模型對齊等策略在復(fù)雜語言模型應(yīng)用背景下的效能和適應(yīng)性。為了能夠在更多的實(shí)際應(yīng)用中實(shí)現(xiàn)高精度的意圖識別,未來也可以考慮將現(xiàn)有方法與其他機(jī)器學(xué)習(xí)技術(shù)相結(jié)合,如強(qiáng)化學(xué)習(xí)等,以引導(dǎo)模型自我學(xué)習(xí)和適應(yīng)不斷變化的用戶需求和語境。
總體來看,實(shí)驗(yàn)結(jié)果驗(yàn)證了本文策略在特定領(lǐng)域的提升,同時(shí)也為未來語言模型在各專業(yè)領(lǐng)域內(nèi)的深度定制和優(yōu)化提供了實(shí)踐依據(jù)。通過增強(qiáng)領(lǐng)域知識、細(xì)化模型對齊技術(shù),以及設(shè)計(jì)更精妙的交互優(yōu)化策略,未來的工作有望在語言理解和信息提取方面達(dá)到更高的高度。
4 結(jié)束語
本文成功地展示了如何通過整合領(lǐng)域排序模型和精確引入領(lǐng)域知識來增強(qiáng)ChatGPT的意圖識別能力。借助領(lǐng)域知識,ChatGPT不僅在深入理解復(fù)雜用戶意圖方面實(shí)現(xiàn)了可觀進(jìn)步,而且促進(jìn)模型在特定場景中性能的顯著提升,在某些場景下實(shí)現(xiàn)超越GPT-4原有的界限,并在降低經(jīng)濟(jì)成本方面取得了積極的效益。此外,根據(jù)ChatGPT的反饋優(yōu)化本地詞向量模型,進(jìn)一步提升了系統(tǒng)對領(lǐng)域知識的捕獲能力。
未來研究可以在自動(dòng)化采集領(lǐng)域知識這方面下功夫,以期從廣闊的信息源中快速更新和增強(qiáng)模型的知識庫,這將為系統(tǒng)的動(dòng)態(tài)演進(jìn)提供堅(jiān)實(shí)的支持,并大幅提高其可擴(kuò)展性和可持續(xù)性。此外,將用戶即時(shí)的反饋整合到意圖識別框架中,不但能夠推動(dòng)模型走向持續(xù)自我優(yōu)化的軌道,而且能令模型對用戶的真實(shí)需求有更深入的理解。未來方向是研究如何將這些研究成果實(shí)際運(yùn)用到工業(yè)環(huán)境中,并探討它們?nèi)绾卧谡鎸?shí)世界中提升操作效能和用戶滿意度。
參考文獻(xiàn):
[1]閆悅, 郭曉然, 王鐵君, 等. 問答系統(tǒng)研究綜述[J]. 計(jì)算機(jī)系統(tǒng)應(yīng)用, 2023, 32(8): 1-18. (Yan Yue, Guo Xiaoran, Wang Tiejun,et al. Review of research on question-answering systems[J]. Computer Systems & Applications, 2023, 32(8): 1-18.)
[2]劉嬌, 李艷玲, 林民. 人機(jī)對話系統(tǒng)中意圖識別方法綜述[J]. 計(jì)算機(jī)工程與應(yīng)用, 2019, 55(12): 1-7, 43. (Liu Jiao, Li Yanling, Lin Min. Review of intent detection methods in Human-Machine dialogue system[J]. Computer Engineering and Applications, 2019, 55(12): 1-7, 43.)
[3]Zhang Kai, Gutiérrez B J, Su Yu. Aligning instruction tasks unlocks large language models as zero-shot relation extractors [EB/OL]. (2023-05-18). https://arxiv.org/abs/2305.11159.
[4]Becker B A, Denny P, Finnie-Ansley J,et al. Programming is hard-or at least it used to be: educational opportunities and challenges of ai code generation[C]// Proc of the 54th ACM Technical Symposium on Computer Science Education. New York: ACM Press, 2023: 500-506.
[5]Yang K, Tian Yuandong, Peng Nanyun,et al. Re3: Generating longer stories with recursive reprompting and revision[C]// Proc of Conference on Empirical Methods in Natural Language Processing. Stroudsburg, PA: Association for Computational Linguistics, 2022: 4393-4479.
[6]Bai Yuntao, Jones A, Ndousse K,et al. Training a helpful and harmless assistant with reinforcement learning from human feedback[EB/OL]. (2022-04-12). https://arxiv.org/abs/2204.05862.
[7]Wu Tianyu, He Shizhu, Liu Jingping,et al. A brief overview of ChatGPT: the history, status quo and potential future development[J]. IEEE/CAA Journal of Automatica Sinica, 2023, 10(5): 1122-1136.
[8]Ouyang Long, Jeff W, Jiang Xu,et al. Training language models to follow instructions with human feedback[J]. Advances in Neural Information Processing Systems, 2022, 35: 27730-27744.
[9]Vaswani A, Shazeer N, Parmar N,et al. Attention is all you need[C]// Proc of the 31st International Conference on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc., 2017: 6000-6010.
[10]Bengio Y, Ducharme R, Vincent P. A neural probabilistic language model[J]. The Journal of Machine Learning Research, 2000, 13: 1137-1155.
[11]Mikolov T, Chen Kai, Corrado G,et al. Efficient estimation of word representations in vector space[EB/OL]. (2013-09-07). https://arxiv.org/abs/1301.3781.
[12]Pennington J, Socher R, Manning C D. GloVe: global vectors for word representation[C]// Proc of Conference on Empirical Methods in Natural Language Processing. Stroudsburg, PA: Association for Computational Linguistics, 2014: 1532-1543.
[13]Bojanowski P, Grave E, Joulin A,et al. Enriching word vectors with subword information[J]. Transactions of the Association for Computational Linguistics, 2017, 5: 135-146.
[14]Peters M, Neumann M, Iyyer M,et al. Deep contextualized word representations[C]// Proc of Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies. Stroudsburg, PA: Association for Computational Linguistics, 2018: 2227-2237.
[15]Devlin J, Chang Mingwei, Lee K,et al. BERT: pre-training of deep bidirectional transformers for language understanding[C]// Proc of Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies. Stroudsburg, PA: Association for Computational Linguistics, 2019: 4171-4186.
[16]Liu Yinhan, Ott M, Goyal N,et al. Roberta: a robustly optimized BERT pretraining approach [EB/OL]. (2019-07-26). https://arxiv.org/abs/1907.11692.
[17]Lan Zhenzhong, Chen Mingda, Goodman S,et al. Albert: a lite bert for self-supervised learning of language representations [EB/OL]. (2020-02-09). https://arxiv.org/abs/1909.11942.
[18]Yang Zhilin, Dai Zihang, Yang Yiming,et al. XLNet: generalized autoregressive pretraining for language understanding[C]// Proc of the 33rd International Conference on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc., 2019: 5753-5763.
[19]Raffel C, Shazeer N, Roberts A,et al. Exploring the limits of transfer learning with a unified text-to-text Transformer[J]. The Journal of Machine Learning Research, 2020, 21(1): 5485-5551.
[20]Weld H, Huang Xiaoqi, Long Siqu,et al. A survey of joint intent detection and slot filling models in natural language understanding[J]. ACM Computing Surveys, 2022, 55(8): 1-38.
[21]曹亞如, 張麗萍, 趙樂樂. 多輪任務(wù)型對話系統(tǒng)研究進(jìn)展[J]. 計(jì)算機(jī)應(yīng)用研究, 2022, 39(2): 331-341. (Cao Yaru, Zhang Liping, Zhao Lele. Research progress on multi-turn task-oriented dialogue systems[J]. Application Research of Computers, 2022, 39(2): 331-341.)
[22]周天益, 范永全, 杜亞軍, 等. 基于細(xì)粒度信息集成的意圖識別和槽填充聯(lián)合模型[J]. 計(jì)算機(jī)應(yīng)用研究, 2023, 40(9): 2669-2673. (Zhou Tianyi, Fan Yongquan, Du Yajun,et al. Joint model for intent recognition and slot filling based on fine-grained information integration[J]. Application Research of Computers, 2023, 40(9): 2669-2673.)
[23]Zhang Xiaodong, Wang Houfeng. A joint model of intent determination and slot filling for spoken language understanding[C]// Proc of the 25th International Joint Conference on Artificial Intelligence. Palo Alto, CA: AAAI Press, 2016: 2993-2999.
[24]Liu Bing, Lane I R. Attention-based recurrent neural network models for joint intent detection and slot filling[C]// Proc of the 17th Annual Conference of the International Speech Communication Association. [S.l.]: ISCA, 2016: 685-689.
[25]Purohit H, Dong Guozhu, Shalin V,et al. Intent classification of short-text on social media[C]// Proc of IEEE International Confe-rence on Smart City/SocialCom/SustainCom. Piscataway, NJ: IEEE Press, 2015: 222-228.
[26]Schuurmans J, Frasincar F. Intent classification for dialogue utte-rances[J]. IEEE Intelligent Systems, 2019, 35(1): 82-88.
[27]Chen Qian, Zhuo Zhu, Wang Wen. BERT for joint intent classification and slot filling[EB/OL]. (2019-02-28). https://arxiv.org/abs/1902.10909.
[28]王堃, 林民, 李艷玲. 端到端對話系統(tǒng)意圖語義槽聯(lián)合識別研究綜述[J]. 計(jì)算機(jī)工程與應(yīng)用, 2020, 56(14): 14-25. (Wang Kun, Lin Min, Li Yanling. A review of joint intent and semantic slot recognition in end-to-end dialogue systems[J]. Computer Engineering and Applications, 2020, 56(14): 14-25.)
[29]Liu Pengfei, Yuan Weizhe, Fu Jinlan,et al. Pre-train, prompt, and predict: a systematic survey of prompting methods in natural language processing[J]. ACM Computing Surveys, 2023, 55(9): 1-35.
[30]Shrivastava D, Larochelle H, Tarlow D. Repository-level prompt gene-ration for large language models of code[C]// Proc of International Conference on Machine Learning. [S.l.]: PMLR, 2023: 31693-31715.
[31]White J, Hays S, Fu Quchen,et al. ChatGPT prompt patterns for improving code quality, refactoring, requirements elicitation, and software design[M]// Nguyen-Duc A, Abrahamsson P, Khomh F. Generative AI for Effective Software Development. Cham: Springer, 2024: 71-108.
[32]王培冰, 張寧, 張春. 基于prompt的兩階段澄清問題生成方法[J]. 計(jì)算機(jī)應(yīng)用研究, 2024, 41(2): 421-425. (Wang Peibing, Zhang Ning, Zhang Chun. Two-stage clarification question generation method based on prompt[J]. Application Research of Compu-ters, 2024, 41(2): 421-425.)
[33]劉濤, 蔣國權(quán), 劉姍姍, 等. 低資源場景事件抽取研究綜述[J]. 計(jì)算機(jī)科學(xué), 2024, 51(2): 217-237. (Liu Tao, Jiang Guoquan, Liu Shanshan,et al. A review of event extraction in low-resource scenarios[J]. Computer Science, 2024, 51(2): 217-237.)
[34]Wei J, Wang Xuezhi, Schuurmans D,et al. Chain-of-thought promp-ting elicits reasoning in large language models[C]// Proc of the 36th International Conference on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc., 2022, 35: 24824-24837.
[35]Zeng Zhiyuan, He Keqing, Yan Yuanmeng,et al. Modeling discriminative representations for out-of-domain detection with supervised contrastive learning[C]// Proc of the 59th Annual Meeting of the Association for Computational Linguistics and the 11th International Joint Conference on Natural Language Processing. Stroudsburg, PA: Association for Computational Linguistics, 2012: 870-878.