日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > java >内容正文

java

Java实现话术词槽匹配_知识图谱与KBQA——槽填充

發(fā)布時間:2025/1/21 java 51 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java实现话术词槽匹配_知识图谱与KBQA——槽填充 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一、相關(guān)概念

開放域?qū)υ?#xff1a;不太嚴謹?shù)亩x可以理解為 ,在不確定用戶意圖前的各種瞎聊,你不知道用戶會問什么樣千奇百怪的問題,但是chatbot都能接住,然后和用戶進行對話,這種就是開放域的對話。

填槽:填槽指的是為了讓用戶意圖轉(zhuǎn)化為用戶明確的指令而補全信息的過程。

準入條件:從一個開放域轉(zhuǎn)入到封閉域,或者從一個封閉域轉(zhuǎn)入到另一個封閉域,中間的跳轉(zhuǎn)是需要邏輯判斷的,而這個邏輯判斷就是準入條件。

封閉域?qū)υ?#xff1a;封閉域?qū)υ捠侵缸R別用戶意圖后,為了明確用戶目的(或者稱為明確任務(wù)細節(jié))而進行的對話。

澄清話術(shù):當(dāng)用戶的需求中缺乏一些必要條件時,需要對話系統(tǒng)主動發(fā)問,把必要條件全部集齊之后再去做最終的滿足執(zhí)行。

二、槽與槽位

1.槽的定義

填槽的專業(yè)表述:從大規(guī)模的語料庫中抽取給定實體(query)的被明確定義的屬性(slot types)的值(slot

fillers)——網(wǎng)絡(luò)文章定義

所以這里槽可以理解為實體已明確定義的屬性。例如打車中的,出發(fā)地點槽,目的地槽,出發(fā)時間槽中的屬性分別是“出發(fā)地點”、“目的地”和“出發(fā)時間”。

2.槽與槽位

槽是由槽位構(gòu)成的,一個槽位就是一種填槽的方式。

(1)槽位的屬性:接口槽與詞槽

詞槽,通過用戶對話的關(guān)鍵詞獲取信息的填槽方式

接口槽,通過其他方式獲取信息的填槽方式

(2)槽位的屬性:槽位優(yōu)先級

當(dāng)有多個槽位的時候,槽該采用那個信息,這時候有個優(yōu)先級。

還是之前的出發(fā)地點槽,如果用戶通過詞槽指定了出發(fā)地點是A,優(yōu)先級就應(yīng)該是最高的,其次才是通過不同的接口槽獲取的B,C等。

3.槽的屬性:可默認填寫/不可默認填寫

有些槽是不可默認填寫的,不填沒辦法繼續(xù)下去,有些即使不填,有默認值也可。

4. 槽的屬性: 澄清話術(shù)

當(dāng)槽不可默認填寫同時又沒有填寫的時候,就要進行澄清

為了澄清而表達的內(nèi)容,就是澄清話術(shù)

不同槽的澄清話術(shù)不同,例如打車三槽中,目的地的澄清話術(shù)可能是“請告訴我您的目的地”,而出發(fā)時間的槽可能是“請告訴我您的出發(fā)時間”

5. 槽的屬性:澄清順序

當(dāng)有多個槽需要澄清的時候,就存在先后順序的問題,所以需要一個澄清順序,先問什么,再問什么。

6. 槽的屬性:平級槽或依賴槽

根據(jù)槽和槽之間是否獨立,后續(xù)的槽是否依賴前面槽的結(jié)果。

可以將槽之間的關(guān)系分為

平級槽,槽與槽之間沒有依賴,例如打車中的三槽

依賴槽,后續(xù)的槽是否依賴前面槽的結(jié)果,例如手機號碼槽,不同國家手機號碼格式不同(槽的屬性不同),所以國家槽會影響選擇哪個手機號碼槽。

7. 槽的能力:多輪記憶狀態(tài)

它能在對話的過程中,在被打斷回到之前的封閉域?qū)υ捄?#xff0c;能記住原有填槽的內(nèi)容,減少重復(fù)填槽。

參考網(wǎng)址:

Chatbot中的填槽(Slot Filling)

填槽與多輪對話:AI產(chǎn)品經(jīng)理需要了解的AI技術(shù)概念

三、槽填充

任務(wù)型對話系統(tǒng)的語言理解部分,通常使用語義槽來表示用戶的需求,如出發(fā)地、到達地、出發(fā)時間等信息。通常把領(lǐng)域識別和用戶意圖檢測當(dāng)做文本分類問題,而把槽填充當(dāng)做序列標注(Sequence Tagging)問題,也就是把連續(xù)序列中每個詞賦予相應(yīng)的語義類別標簽。 因此可以使用序列標注模型來抽取語義槽。

很多機器學(xué)習(xí)算法都能夠解決序列標注問題,包括HMM/CFG,hidden vector state(HVS)等生成式模型,以及CRF, SVM等判別式模型。

CRF (條件隨機場)是過去經(jīng)常使用的序列標注模型,但是受限于馬爾科夫假設(shè),它無法很好的處理長距離依賴問題。

隨著深度學(xué)習(xí)方法的流行,人們使用循環(huán)神經(jīng)網(wǎng)絡(luò),如雙向 LSTM 來解決長距離依賴問題,同時還避免了繁瑣的特征工程工作。

最近,人們將這兩種方法進行融合,即雙向 LSTM-CRF 模型,進一步提高了槽填充的準確率。

1.基于RNN的槽填充

本次實驗主要參考論文《Using Recurrent Neural Networks for Slot Filling in Spoken Language Understanding 》 ,基于RNN來實現(xiàn)語義槽填充。

本次實驗基于ATIS(Airline Travel Information Systems )數(shù)據(jù)集。顧名思義,ATIS數(shù)據(jù)集的領(lǐng)域為"Airline Travel"。ATIS數(shù)據(jù)集采取流行的"in/out/begin(IOB)標注法": "I-xxx"表示該詞屬于槽xxx,但不是槽xxx中第一個詞;"O"表示該詞不屬于任何語義槽;"B-xxx"表示該詞屬于槽xxx,并且位于槽xxx的首位。

總的來說,將槽填充問題當(dāng)做序列標注問題是一種有效的做法,而RNN能夠較好的對序列進行建模,提取相關(guān)的上下文特征。雙向RNN的表現(xiàn)優(yōu)于單向RNN,而LSTM的表現(xiàn)優(yōu)于Simple RNN。

從實驗設(shè)置可以看出,本次實驗沒有過多的調(diào)參。如果想取得更好的結(jié)果,可以進行更細致的調(diào)參,包括 :

改變詞向量維度和隱狀態(tài)維度;

考慮采用預(yù)訓(xùn)練詞向量,然后固定或者進行微調(diào);

采用正則化技術(shù),包括L1/L2, Dropout, Batch Normalization, Layer Normalization等;

嘗試使用不同的優(yōu)化器(如Adam),使用mini-batch,調(diào)整學(xué)習(xí)率;

增加epoch次數(shù)。

此外,可以考慮在輸入時融入詞性標注和命名實體識別等信息,在輸出時使用Viterbi算法進行解碼,也可以嘗試不同形式的門控RNN(如GRU,LSTM變體等)以及采用多層RNN,并考慮是否使用殘差連接等。

參考網(wǎng)址:“你什么意思”之基于RNN的語義槽填充(Pytorch實現(xiàn))

2.使用Attention-Based RNN模型識別意圖和槽填充

Attention-Based Recurrent Neural Network Models for Joint Intent Detection and Slot Filling

這篇文章主要介紹了使用Attention-Based RNN模型識別意圖和槽填充(slot filling)。意圖識別通常使用分類的方法將句子分為相應(yīng)的意圖種類。槽填充則可以看做是序列標注問題,即對于給定的句子中的每個詞分別打上相應(yīng)的標簽。

槽填充既可以用RNN模型也可以用encoder-dedoder 模型解決。即源輸入是句子序列,目標輸出則是標注序列,同時意圖識別也可以用encoder-dedoder 模型解決。即源輸入是句子序列,目標輸出則是意圖種類。但是對與槽填充來說,句子與相應(yīng)的標簽是一 一對應(yīng)的,也就是說有“explicit alignment”。作者提出了兩種模型,一種是將“alignment information”加入到encoder-dedoder 模型中,另一種就是將“alignment information”和”attention“加入到RNN模型中來解決槽填充和意圖識別問題。

參考網(wǎng)址:意圖識別與槽填充

3.基于BLSTM-CNN-CRF 的聯(lián)合槽填充和意圖識別模型

該模型使用來自ATIS 數(shù)據(jù)集中所有可用問句及其對應(yīng)的語義幀進行訓(xùn)練,模型的輸入是問句的序列編碼(如 one-hot編碼),并利用 BLSTM 訓(xùn)練出的標簽向量與通過CNN 得到的特征向量進行拼接,然后將其組合送至CRF 層解碼出包含意圖信息和槽值信息的完整語義幀。

參考文獻:基于 BLSTM-CNN-CRF 模型的槽填充與意圖識別_華冰濤,袁志祥,肖維民,鄭 嘯

總結(jié)

以上是生活随笔為你收集整理的Java实现话术词槽匹配_知识图谱与KBQA——槽填充的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。