對(duì)話系統(tǒng)的簡(jiǎn)單綜述及應(yīng)用智能客服

2 評(píng)論 15732 瀏覽 111 收藏 30 分鐘

本篇文章主要講解了對(duì)話系統(tǒng)的邏輯,以及如何實(shí)現(xiàn)應(yīng)用智能客服。

“天貓精靈,放歌”,“送你一首好聽(tīng)的歌《XXX》”,《XXX》音樂(lè)響起……

相信有天貓精靈的用戶對(duì)此場(chǎng)景都不陌生,或者語(yǔ)音操作其他智能音箱設(shè)備,比如操作小愛(ài)同學(xué)”小愛(ài)同學(xué),放歌“。我們都了解如何語(yǔ)音操作智能音箱,通過(guò)喚醒詞(天貓精靈、小愛(ài)同學(xué)),然后再說(shuō)明意圖(放歌),然后智能音箱被喚醒后,根據(jù)說(shuō)明意圖進(jìn)行相關(guān)響應(yīng)。

智能音箱作為對(duì)話系統(tǒng)的一種常見(jiàn)應(yīng)用,還有我們生活常見(jiàn)到的對(duì)話系統(tǒng)應(yīng)用:Siri、Echo、Bixby、小冰… 對(duì)話系統(tǒng)的應(yīng)用到處可見(jiàn),但我們對(duì)對(duì)話系統(tǒng)了解多少以及如何應(yīng)用實(shí)踐呢?

本文主要講解對(duì)話系統(tǒng)的邏輯以及如何實(shí)現(xiàn)應(yīng)用智能客服。

目錄:

1. 對(duì)話系統(tǒng)的定義及發(fā)展

2. 對(duì)話系統(tǒng)的概述

2.1、對(duì)話系統(tǒng)的組件架構(gòu)

3. 智能客服的實(shí)現(xiàn)

3.1、智能客服的概述

3.2、信息檢索

3.3、知識(shí)庫(kù)

3.4、設(shè)計(jì)與評(píng)價(jià)

4. 總結(jié)

5. 參考文獻(xiàn)

一、對(duì)話系統(tǒng)的定義及發(fā)展

對(duì)話系統(tǒng),也稱會(huì)話代理,一種模擬人類與人交談的計(jì)算機(jī)系統(tǒng),即智能agent,旨在可以與人類形成連貫通順的對(duì)話,通信方式主要有語(yǔ)音/文本/圖片,當(dāng)然也可以手勢(shì)/觸覺(jué)等其他方式。

我們說(shuō)對(duì)話系統(tǒng)的發(fā)展,一般都會(huì)從早期經(jīng)典的聊天機(jī)器人ELIZA開(kāi)始(聊天機(jī)器人術(shù)語(yǔ)ChatterBot最早由Michael Loren Mauldin在1994年提及),ELIZA最出名的是以心理治療師的方式行事。不過(guò)對(duì)話系統(tǒng)的技術(shù)發(fā)展主要分為三個(gè)階段:

  • 第一代:基于符號(hào)規(guī)則、模板,80年代末開(kāi)始,目前依然使用,主要依賴專家人工制定的語(yǔ) 法規(guī)則和本體設(shè)計(jì),容易解釋和修補(bǔ),但過(guò)于依賴專家系統(tǒng),跨領(lǐng)域的擴(kuò)展性不足,數(shù)據(jù)用來(lái)設(shè)計(jì)規(guī)則而不是學(xué)習(xí),限定狹窄領(lǐng)域;
  • 第二代:基于數(shù)據(jù)驅(qū)動(dòng)的淺層學(xué)習(xí),90年代開(kāi)始(對(duì)話策略的強(qiáng)化學(xué)習(xí)也是這個(gè)時(shí)候研究出來(lái)),目前商用主流,主要是通過(guò)數(shù)據(jù)學(xué)習(xí)對(duì)話系統(tǒng)的統(tǒng)計(jì)參數(shù),但不容易理解和修補(bǔ),難擴(kuò)展,模型和表示不夠強(qiáng)大,不是端到端,難以擴(kuò)大規(guī)模;
  • 第三代:基于數(shù)據(jù)驅(qū)動(dòng)的深度學(xué)習(xí),近些年開(kāi)始,目前研究主流,與第二代一樣,數(shù)據(jù)學(xué)習(xí)模型的參數(shù),不過(guò)神經(jīng)模型和表示更強(qiáng)大,端到端學(xué)習(xí)變得可行(即完全數(shù)據(jù)驅(qū)動(dòng),模型相當(dāng)黑盒子),但仍然難以理解和調(diào)試更新系統(tǒng),目前尚無(wú)成功商業(yè)案例;

二、對(duì)話系統(tǒng)的概述

我們先看一段生活常見(jiàn)的對(duì)話:

從上面的對(duì)話,會(huì)發(fā)現(xiàn)我們的對(duì)話,展示我們?nèi)祟惾齻€(gè)基本的智力活動(dòng):

  • 閑聊:語(yǔ)言學(xué)家稱之為寒暄,示例對(duì)話A段落,閑聊一般沒(méi)什么實(shí)質(zhì)性內(nèi)容,主要是拉近人與人之間的關(guān)系,建立信任;
  • 知識(shí)型問(wèn)答:示例對(duì)話B段落,根據(jù)提問(wèn)(多少錢?),一問(wèn)一答,單輪對(duì)話,主要是提供信息;
  • 任務(wù)型對(duì)話:示例對(duì)話C段落,根據(jù)意圖(購(gòu)買手機(jī)),聯(lián)系上下文,多輪對(duì)話,圍繞意圖進(jìn)行對(duì)話,直至完成任務(wù);

從我們對(duì)話活動(dòng)中,我們可以發(fā)現(xiàn),我們說(shuō)話一般都帶有目的行為,比如我想買一部手機(jī),言語(yǔ)行為就是購(gòu)買手機(jī),也就是我們所謂的言語(yǔ)行為理論。言語(yǔ)行為理論,指的是,語(yǔ)言不是用來(lái)陳述事實(shí)或描述事物的,而是附載著言語(yǔ)者的意圖。

根據(jù)對(duì)話活動(dòng),我們的對(duì)話引擎架構(gòu)可以分為三個(gè)層次,如下圖(圖源自周明老師的自然語(yǔ)言對(duì)話引擎的分享內(nèi)容):

閑聊功能,一般可以通過(guò)網(wǎng)上語(yǔ)料庫(kù),找到最相似的句子的回復(fù)當(dāng)作回復(fù);問(wèn)答功能,一般通過(guò)資源知識(shí)庫(kù)(問(wèn)答庫(kù)/知識(shí)圖譜等)進(jìn)行回答;對(duì)話功能,一般通過(guò)識(shí)別意圖,填充信息槽,完成任務(wù);

對(duì)話活動(dòng)中,我們發(fā)現(xiàn)會(huì)有單輪、多輪對(duì)話的概念。單輪對(duì)話,容易理解,也就是一問(wèn)一答,與上下文無(wú)關(guān);多輪對(duì)話,也就是多次對(duì)話,圍繞意圖,聯(lián)系上下文,直至任務(wù)完成結(jié)束話輪。

目前任務(wù)型的多輪對(duì)話的實(shí)現(xiàn),主要是基于有限狀態(tài)的架構(gòu)和基于框架的架構(gòu),也是目前商用主流,當(dāng)然還有信息狀態(tài)的架構(gòu)(包括馬爾可夫決策過(guò)程的概率化模型),基于端到端(神經(jīng)模型)的架構(gòu)。

基于有限狀態(tài)的架構(gòu)和基于框架的架構(gòu),主要是基于腳本方法,一種動(dòng)態(tài)記憶模式,將我們生活場(chǎng)景進(jìn)行框架化,比如,我們?nèi)ゲ宛^就餐時(shí),一般活動(dòng)次序的框架(即腳本):進(jìn)餐館、入座、點(diǎn)菜、用餐、付賬、離開(kāi)。所以,我們對(duì)話活動(dòng)可以根據(jù)意圖框架進(jìn)行信息抽取,填充相應(yīng)的槽,即可完成對(duì)話任務(wù)所需要的信息,做出相應(yīng)的反饋。

基于有限狀態(tài)的架構(gòu),也是最簡(jiǎn)單的架構(gòu),系統(tǒng)采用系統(tǒng)主動(dòng)會(huì)話,控制著與用戶的會(huì)話,向用戶提出一系列問(wèn)題,忽略(或曲解)任何非直接的回答,并繼續(xù)詢問(wèn)下一個(gè)問(wèn)題,比如用戶查詢天氣的任務(wù),系統(tǒng)會(huì)詢問(wèn)用戶的查詢城市/時(shí)間,用戶如果回答不是系統(tǒng)提問(wèn)的問(wèn)題,則忽略回答繼續(xù)重復(fù)提問(wèn)該問(wèn)題。當(dāng)然,系統(tǒng)一般也會(huì)有萬(wàn)能指令的策略,可以在對(duì)話的任何地方使用,以便用戶請(qǐng)求相應(yīng)的操作,比如我們常見(jiàn)的萬(wàn)能指令:幫助(返回幫助菜單)、人工/人工客服(轉(zhuǎn)接人工客服)。

不過(guò)完全系統(tǒng)主動(dòng)、有限狀態(tài)的對(duì)話管理架構(gòu)的限制過(guò)于嚴(yán)格,要求用戶準(zhǔn)確回答系統(tǒng)剛提問(wèn)的問(wèn)題,使得對(duì)話笨拙;用戶可能一次性回復(fù)幾個(gè)問(wèn)題,或者用戶主動(dòng)提問(wèn),所以就出現(xiàn)了會(huì)話的主動(dòng)權(quán)在系統(tǒng)和用戶之間切換的混合主動(dòng),所以就出現(xiàn)目前一種常用的混合主動(dòng)的對(duì)話架構(gòu)就是依靠框架本身的結(jié)構(gòu)來(lái)引導(dǎo)對(duì)話,即基于框架的架構(gòu)。

基于框架的架構(gòu),對(duì)話系統(tǒng)詢問(wèn)用戶問(wèn)題,然后填充框架里的槽,但是同時(shí)也允許用戶通過(guò)提供填充框架中的其他槽的信息來(lái)引導(dǎo)對(duì)話。這樣,基于框架的架構(gòu)可以去除有限狀態(tài)的架構(gòu)對(duì)用戶提供信息的順序的加強(qiáng)嚴(yán)格約束;當(dāng)然,遇到多個(gè)任務(wù)需要多個(gè)框架處理的時(shí)候,系統(tǒng)必須能夠?qū)o定的輸入填入哪一個(gè)框架模板的哪一個(gè)槽進(jìn)行排歧,然后將對(duì)話控制轉(zhuǎn)換到該模板。

下面我們來(lái)看看一個(gè)基于框架的對(duì)話過(guò)程(圖源自周明老師的自然語(yǔ)言對(duì)話引擎的分享內(nèi)容):

對(duì)話過(guò)程,實(shí)際上就是對(duì)用戶輸入的話,檢測(cè)意圖是什么,如果檢測(cè)不到,系統(tǒng)就判斷可能是聊天,然后通過(guò)聊天的引擎進(jìn)行溝通。如果檢測(cè)到意圖,比如知道用戶是要訂旅館,那么就有對(duì)應(yīng)的訂旅館的對(duì)話狀態(tài)表記錄目前進(jìn)行的狀態(tài)及要填充哪些信息。系統(tǒng)知道要填什么信息的時(shí)候,就會(huì)生成相應(yīng)的問(wèn)題讓用戶回答,用戶回答完之后系統(tǒng)再把信息抽取過(guò)來(lái)填充到這個(gè)表里,直到所有的信息全部填充完畢,就完成了這個(gè)任務(wù)的對(duì)話過(guò)程。

這里就涉及到了對(duì)問(wèn)題的理解,問(wèn)題中有哪些信息要抓取出來(lái),還有對(duì)話管理,比如狀態(tài)的轉(zhuǎn)移,slot的填充或者更改,選擇一個(gè)新的slot開(kāi)始對(duì)話,以及如果要決定填充哪個(gè)slot的時(shí)候,怎么生成對(duì)話可以讓用戶很自然地回答這個(gè)問(wèn)題,從而獲得系統(tǒng)所需要的信息。

2.1 對(duì)話系統(tǒng)的組件架構(gòu)

我們現(xiàn)在已經(jīng)對(duì)對(duì)話系統(tǒng)有了整體的認(rèn)知,接下來(lái)講講我們目前常見(jiàn)的對(duì)話系統(tǒng)的組件架構(gòu)。

上圖為對(duì)話系統(tǒng)的典型架構(gòu),六個(gè)組件,語(yǔ)音識(shí)別和理解組件從輸入中抽取意義,生成器和TTS組件將意義映射到語(yǔ)言,對(duì)話管理器與具有任務(wù)領(lǐng)域知識(shí)(如電商領(lǐng)域知識(shí)庫(kù))的任務(wù)管理器一起對(duì)整個(gè)過(guò)程進(jìn)行控制。

用戶說(shuō)話,對(duì)話系統(tǒng)的語(yǔ)音識(shí)別器(ASR)將輸入轉(zhuǎn)為文本,文本由自然語(yǔ)言理解組件(NLU)進(jìn)行語(yǔ)義理解(主要為分詞、詞性標(biāo)注、命名實(shí)體識(shí)別、句法分析、指代消解、語(yǔ)義解析),接著對(duì)話管理器分析語(yǔ)義信息,保持對(duì)話的歷史與狀態(tài),并管理對(duì)話的一般流程,通常,對(duì)話管理器聯(lián)系一個(gè)或多個(gè)任務(wù)管理器(知識(shí)庫(kù)),自然語(yǔ)言生成器根據(jù)對(duì)話管理器的對(duì)話策略生成對(duì)話的文本,最后文本通過(guò)語(yǔ)音合成器(TTS)渲染輸出;其中,對(duì)話系統(tǒng)的主體是對(duì)話管理器,它是管理對(duì)話狀態(tài)和對(duì)話策略的組件。

組件介紹:

  • 語(yǔ)音識(shí)別:ASR(Automatic?Speech?Recognition)一般包括四大塊:信號(hào)處理、聲學(xué)模型、解碼器、后處理,首先采集聲音,進(jìn)行信號(hào)處理,將語(yǔ)音信號(hào)轉(zhuǎn)化到頻域,從N毫秒的語(yǔ)音提出特征向量,提供給聲學(xué)模型,聲學(xué)模型負(fù)責(zé)把音頻分類成不同的音素,接著解碼器得出概率最高一串詞串,最后的后處理就是把單詞組合成容易讀取的文本。簡(jiǎn)單的說(shuō),就是接受音頻輸入,返回一個(gè)轉(zhuǎn)錄的詞串;當(dāng)然,對(duì)話系統(tǒng)中,ASR系統(tǒng)一般都做了定制的優(yōu)化,同時(shí),一般對(duì)話系統(tǒng)還要求ASR系統(tǒng)返回句子的置信度,用來(lái)決定是否詢問(wèn)用戶來(lái)確認(rèn)該回答這樣的任務(wù);
  • 自然語(yǔ)言理解:NLU(Natural Language Understanding)產(chǎn)生適合對(duì)話任務(wù)的語(yǔ)義表示(語(yǔ)義表示常見(jiàn)有一階邏輯、語(yǔ)義網(wǎng)絡(luò)、概念依存、基于框架的表示),主要通過(guò)分詞、詞性標(biāo)注、命名實(shí)體識(shí)別、句法分析、指代消解等進(jìn)行語(yǔ)義解析產(chǎn)生句子意義(即理解文本是什么意思),進(jìn)行意圖識(shí)別(一般通過(guò)動(dòng)賓短語(yǔ),事件提及,比如查詢天氣),從中抽取槽的填充值,進(jìn)而完成語(yǔ)義表示;

分詞:將句子切分詞序列,詞是承載語(yǔ)義的基本單元。中文自動(dòng)分詞被認(rèn)為是中文自然語(yǔ)言處理中的一個(gè)最基本的環(huán)節(jié),比如句子“我愛(ài)中國(guó)”,切分為“我/愛(ài)/中國(guó)”;

詞性標(biāo)注:識(shí)別詞的詞性,描述一個(gè)詞在上下文的作用,比如名詞、動(dòng)詞、形容詞;

命名實(shí)體識(shí)別:也稱作專名識(shí)別,是指識(shí)別文本中具有特定意義的實(shí)體,主要包括人名、地名、機(jī)構(gòu)名、專有名詞等;

句法分析:分析詞與詞之間的結(jié)構(gòu)關(guān)系,確定句法結(jié)構(gòu),比如主謂賓關(guān)系;

指代消解:決定哪些實(shí)體被哪些語(yǔ)言表述所指代的任務(wù),比如句子“香蕉熟了,把它給大家吃了”,句子中的它指的是香蕉;

  • 自然語(yǔ)言生成與語(yǔ)音合成:NLG(Natural Language Generation)組件選擇需要向用戶表達(dá)的概念,計(jì)劃如何用詞句表達(dá)這些概念,并賦予這些詞必要的韻律,TTS(Text To Speech)組件接受這些詞句及其韻律注解,并合成波形圖,生成語(yǔ)音;
  • 對(duì)話管理器:DM(Dialog Management)為對(duì)話系統(tǒng)的主體,控制著對(duì)話的架構(gòu)和結(jié)構(gòu),從ASR/NLU組件接受輸入,維護(hù)一些狀態(tài),與任務(wù)管理器(知識(shí)庫(kù))交互,并將輸出傳遞給NLG/TTS模塊;

對(duì)話系統(tǒng)主要有三大模塊:對(duì)話上下文(Dialog Context)、對(duì)話狀態(tài)跟蹤(Dialog State Tracking)和對(duì)話策略(Dialog Policy)。

對(duì)話上下文(DC):記錄對(duì)話的領(lǐng)域、意圖和詞槽數(shù)據(jù),每個(gè)領(lǐng)域可能包含多個(gè)意圖的數(shù)據(jù), 一般以隊(duì)列的形式存儲(chǔ);

對(duì)話狀態(tài)跟蹤(DST):記錄T-1狀態(tài)與當(dāng)前時(shí)間T的狀態(tài),即會(huì)結(jié)合上下文,確定當(dāng)前對(duì)話狀態(tài),同時(shí)會(huì)補(bǔ)全或替換詞槽;

對(duì)話策略(DP):根據(jù)對(duì)話狀態(tài)和具體任務(wù)決定要執(zhí)行什么動(dòng)作,比如進(jìn)一步詢問(wèn)用戶以獲得更多的信息、調(diào)用內(nèi)容服務(wù)等;

三、智能客服的實(shí)現(xiàn)

自然語(yǔ)言處理(NLP)技術(shù)一直以來(lái)被認(rèn)為是成熟度相對(duì)較低的AI技術(shù)分支,不過(guò),盡管NLP在開(kāi)放領(lǐng)域環(huán)境中表現(xiàn)不佳,但對(duì)于限定場(chǎng)景來(lái)說(shuō),NLP及其背后的知識(shí)圖譜技術(shù)卻能發(fā)揮出巨大價(jià)值。智能客服就是NLP最常見(jiàn)的應(yīng)用之一,也是對(duì)話系統(tǒng)最常見(jiàn)的應(yīng)用之一。

作為企業(yè)客戶關(guān)系管理(CRM)的重要組成部分,客服是連接企業(yè)與客戶的重要橋梁,極大地影響著企業(yè)的銷售成果、品牌影響及市場(chǎng)地位。但是,長(zhǎng)久以來(lái),客服行業(yè)都存在諸多痛點(diǎn),客服人員流動(dòng)性大、培訓(xùn)成本高、客服難以把控、大量重復(fù)性問(wèn)題過(guò)度消耗人工客服,同時(shí),如何提升售前轉(zhuǎn)化,如何優(yōu)化客服流程,如何從客服數(shù)據(jù)中發(fā)現(xiàn)企業(yè)業(yè)務(wù)問(wèn)題等,都是各類企業(yè)面臨的普遍問(wèn)題。因?yàn)檫@些普遍問(wèn)題的存在,智能客服應(yīng)運(yùn)而生。

根據(jù)國(guó)內(nèi)客服行業(yè)的第三方報(bào)告(下圖),智能客服正在以40%-50%的比例替代人工客服工作,AI將為智能客服廠商釋放500-800億市場(chǎng)空間,所以一直以來(lái),大量企業(yè)布局智能客服行業(yè)。

3.1 智能客服的概述

智能客服,也就是我們所說(shuō)的客戶維護(hù)的智能服務(wù),比如我們常見(jiàn)的淘寶小蜜、京東JIMI。

目前受限于NLP算法水平的限制,現(xiàn)在智能客服在實(shí)際使用中更多是發(fā)揮輔助作用。目前智能客服最常見(jiàn)的形式就是在人工客服系統(tǒng)基礎(chǔ)上,擴(kuò)展出智能客服的功能,最常見(jiàn)的功能為單輪問(wèn)答、功能對(duì)話、人機(jī)協(xié)作。

人機(jī)協(xié)作,一般是智能客服優(yōu)先回答問(wèn)題,解決不了再轉(zhuǎn)人工,也就是智能客服解決一定的高頻簡(jiǎn)單問(wèn)題,疑難問(wèn)題轉(zhuǎn)接人工客服。

根據(jù)智能客服目前常見(jiàn)的定位單輪問(wèn)答,知識(shí)庫(kù)問(wèn)答的技術(shù)本質(zhì)也是搜索引擎相似的技術(shù),都是信息檢索。

3.2 信息檢索

信息檢索(Information Retrieval,IR)主要是尋找從文檔集中獲取可用信息的模型和算法,用戶輸入一個(gè)表述需求信息的查詢字段,系統(tǒng)回復(fù)一個(gè)包含所需要信息的文檔列表,比如我們平時(shí)所用的百度、谷歌搜索。

目前大多IR系統(tǒng)都是基于組合語(yǔ)義的一種極端版本,用戶查詢內(nèi)容表示為檢索詞表達(dá)的信息需求,檢索詞進(jìn)行詞義排歧、同義擴(kuò)展等處理(比如同義詞擴(kuò)展,可通過(guò)WordNet同義集),生成對(duì)應(yīng)的向量,查詢向量與文檔向量(彼此向量通過(guò)權(quán)重處理,比如TF-IDF)計(jì)算相似度(可通過(guò)余弦計(jì)算,越接近1越相似,越接近0越獨(dú)立),如下圖。

其中,文檔表示被系統(tǒng)索引及提供給檢索的文本單元,文檔列表表示用于滿足用戶需要的一組文檔,檢索詞指文檔列表中出現(xiàn)的詞匯項(xiàng),可用來(lái)當(dāng)索引。

我們可以看到上圖的信息檢索架構(gòu)返回的是文檔列表,而智能客服問(wèn)答返回的是答案內(nèi)容,我們來(lái)看看問(wèn)答與信息檢索的區(qū)別:

我們可以看到,問(wèn)答集成了知識(shí)表示、信息檢索、自然語(yǔ)言處理和智能推理等技術(shù),畢竟用戶希望的是獲取一段特定信息,問(wèn)題的答案,需求的解決方案,比如用戶問(wèn)題怎么重置密碼。

這個(gè)時(shí)候,我們返回的應(yīng)該是用戶問(wèn)題重置密碼的解決方案答案,所以智能客服的問(wèn)答應(yīng)用信息檢索的時(shí)候,做了相應(yīng)的調(diào)整,檢索返回的是答案(即計(jì)算概率最大的候選答案,可以理解為所謂的推薦),同時(shí)一般會(huì)在問(wèn)題查詢處理的時(shí)候,增加問(wèn)題分類模塊,也就是某個(gè)問(wèn)題是什么類型,可以針對(duì)類型更好的回答,分類器可以通過(guò)標(biāo)注類型的對(duì)話數(shù)據(jù)進(jìn)行訓(xùn)練。

3.3 知識(shí)庫(kù)

現(xiàn)在我們了解了智能客服模型的實(shí)現(xiàn),但對(duì)話系統(tǒng)如果沒(méi)有語(yǔ)料庫(kù),還是不會(huì)對(duì)話,正所謂巧婦難為無(wú)米之炊。語(yǔ)料庫(kù)也就是我們智能客服所說(shuō)的知識(shí)庫(kù)。知識(shí)庫(kù)可以來(lái)自我們整理的知識(shí)圖譜或者問(wèn)答庫(kù)等,知識(shí)庫(kù)的難點(diǎn)在于數(shù)據(jù)的冷啟動(dòng)、數(shù)據(jù)的清洗及整理。

數(shù)據(jù)的冷啟動(dòng),也就是生成知識(shí)庫(kù)的原始數(shù)據(jù)有沒(méi)有的問(wèn)題(數(shù)據(jù)冷啟動(dòng)同樣影響信息檢索模型的訓(xùn)練),不過(guò)智能客服一般都是限定于領(lǐng)域,應(yīng)用于自身企業(yè)的服務(wù),前期客服都是人工服務(wù),所以我們一般可以積累人工對(duì)話的數(shù)據(jù)作為知識(shí)庫(kù)的原始數(shù)據(jù)(一般是選擇一定周期內(nèi)的數(shù)據(jù),具有通用性)。

數(shù)據(jù)的清洗及整理,也就是有了原始數(shù)據(jù)后如何生成完整可讀的知識(shí)庫(kù)。我們常見(jiàn)的一種知識(shí)庫(kù)就是所謂的問(wèn)答庫(kù)(即問(wèn)題答案對(duì),當(dāng)然,一般還會(huì)有其他標(biāo)簽,比如人工標(biāo)注的問(wèn)題類型)。問(wèn)答庫(kù)的生成,我們可以通過(guò)原始對(duì)話數(shù)據(jù)對(duì)同一標(biāo)識(shí)的對(duì)話(表示同一用戶與人工客服的完整對(duì)話),根據(jù)對(duì)話身份ID的不同分別對(duì)同一ID的話段通過(guò)N-gram拼接起來(lái)(主要通過(guò)詞袋出現(xiàn)的unigram、bigram、trigram,一般到trigram,太少句子不通順,太多計(jì)算量大,畢竟N元模型的大小幾乎是N的指數(shù)函數(shù)即O(|V|^N),V為詞匯量,然后通過(guò)N-gram拼接算法把N-gram片段拼接起來(lái)即可,一般可以通過(guò)NLTK工具包處理),成為一段較為通順的句段,最后再經(jīng)過(guò)人工審核及標(biāo)注,形成完整可讀的問(wèn)答知識(shí)庫(kù)。

其中,詞袋指的是一段文本(比如一個(gè)句子或是一個(gè)文檔)可以用一個(gè)裝著這些詞的袋子來(lái)表示,這種表示方式不考慮文法以及詞的順序;N-gram,即N元語(yǔ)法,指的是文本中連續(xù)出現(xiàn)的n個(gè)語(yǔ)詞,N元語(yǔ)法模型是基于(n-1)階馬爾可夫鏈的一種概率語(yǔ)言模型,通過(guò)前面出現(xiàn)的n-1個(gè)單詞預(yù)測(cè)下一個(gè)單詞,通過(guò)n個(gè)語(yǔ)詞出現(xiàn)的概率來(lái)推斷語(yǔ)句的結(jié)構(gòu);當(dāng)n分別為1、2、3時(shí),又分別稱為一元語(yǔ)法(unigram)、二元語(yǔ)法(bigram)與三元語(yǔ)法(trigram)。

下圖為上述對(duì)話C段落,經(jīng)過(guò)N-gram拼接處理后,再經(jīng)過(guò)人工審核標(biāo)注的問(wèn)答庫(kù)示例:

不過(guò),由于問(wèn)答庫(kù)的問(wèn)題單一性,用戶采用相似問(wèn)法提問(wèn)時(shí),可能由于模型等問(wèn)題找不到對(duì)應(yīng)的答案,導(dǎo)致用戶不滿。即使我們對(duì)問(wèn)題進(jìn)行擴(kuò)展等泛化處理,采用松弛模式允許匹配忽略部分文本的結(jié)果,但會(huì)引起一些不正確的結(jié)果,也引起用戶的不滿。所以為了提高問(wèn)題的準(zhǔn)確性,我們可以通過(guò)種子模式,即采用整理好的知識(shí)庫(kù)的問(wèn)題關(guān)鍵詞,在原始或清洗后的對(duì)話數(shù)據(jù)集上進(jìn)行搜索,查看用戶常見(jiàn)的問(wèn)法,進(jìn)行問(wèn)答擴(kuò)展,增加問(wèn)題的相似問(wèn)法,比如上圖的問(wèn)答庫(kù)的問(wèn)題“購(gòu)買一部2000元的小米手機(jī)”,可擴(kuò)展相似問(wèn)法“推薦一部2000元的手機(jī),品牌不限”。

當(dāng)然,知識(shí)庫(kù)越豐富越好,畢竟越豐富則覆蓋的業(yè)務(wù)范圍問(wèn)題越廣,解決用戶需求的可用性越好,就像我們?nèi)祟愐粯又R(shí)面越廣,則能解決更多問(wèn)題,能力越好。

3.4 設(shè)計(jì)與評(píng)價(jià)

智能客服不是開(kāi)放式的聊天對(duì)話系統(tǒng),而是基于特定業(yè)務(wù)領(lǐng)域和業(yè)務(wù)場(chǎng)景的對(duì)話系統(tǒng),目的是快速解決用戶的需求,一個(gè)最理想的對(duì)話系統(tǒng)就是用最少代價(jià)就能幫助用戶實(shí)現(xiàn)目標(biāo)的系統(tǒng),所以智能客服應(yīng)以用戶為中心的設(shè)計(jì)原則,用戶滿意度至關(guān)重要。

設(shè)計(jì):

智能客服由于自身的目的性,應(yīng)當(dāng)根據(jù)自身的業(yè)務(wù)場(chǎng)景選擇相應(yīng)的對(duì)話策略、提示、錯(cuò)誤信息反饋等設(shè)計(jì)原則。

常見(jiàn)的設(shè)計(jì)要點(diǎn):

  • 研究用戶和業(yè)務(wù):分析用戶畫像,以及調(diào)研用戶常見(jiàn)的問(wèn)題,獲知用戶的潛在問(wèn)題進(jìn)行相應(yīng)的推薦引導(dǎo),以及個(gè)性化回答用戶;比如每個(gè)用戶進(jìn)入智能客服,界面的問(wèn)題引導(dǎo)都不一樣;
  • 對(duì)話策略:?jiǎn)栴}高相似即反饋答案,一定程度相似可反饋相似的幾個(gè)問(wèn)題,收斂引導(dǎo)用戶提問(wèn),低相似的問(wèn)題可引導(dǎo)用戶重新提問(wèn)或引導(dǎo)轉(zhuǎn)接人工客服;同時(shí),增加閑聊庫(kù),保證用戶對(duì)話的順暢性,避免部分用戶閑聊無(wú)應(yīng)答。當(dāng)然,還有快速收斂,用戶輸入時(shí)通過(guò)聯(lián)想提問(wèn)顯示提示問(wèn)題引導(dǎo)用戶選擇提問(wèn),一般也會(huì)有萬(wàn)能指令的策略,可以在對(duì)話的任何地方使用,以便用戶請(qǐng)求相應(yīng)的操作,比如我們常見(jiàn)的萬(wàn)能指令:幫助(返回幫助菜單)、人工/人工客服(轉(zhuǎn)接人工客服);
  • 對(duì)話數(shù)據(jù)完整性:用戶轉(zhuǎn)接人工客服后,保證用戶與系統(tǒng)對(duì)話的數(shù)據(jù)同時(shí)轉(zhuǎn)接至人工客服對(duì)話窗口,方便人工客服快速了解用戶需求,也避免用戶再次提問(wèn),提高客服接線率和時(shí)間效率,提高用戶滿意度;
  • 對(duì)設(shè)計(jì)進(jìn)行迭代:數(shù)據(jù)監(jiān)控,根據(jù)指標(biāo)數(shù)據(jù)分析優(yōu)化;根據(jù)用戶滿意度的意見(jiàn)進(jìn)行優(yōu)化;知識(shí)庫(kù)的維護(hù)及更新(包括模型自主學(xué)習(xí));

評(píng)價(jià):

用戶滿意度是我們智能客服的衡量標(biāo)準(zhǔn),用戶可以在系統(tǒng)界面滿意度問(wèn)卷進(jìn)行顯性反饋,這是我們直接拿到的用戶真實(shí)評(píng)價(jià)。但反饋用戶滿意度畢竟需要操作成本,很多用戶都不會(huì)去反饋,所以我們拿到直接的滿意度評(píng)價(jià)比較少,更多會(huì)結(jié)合其他衡量指標(biāo)進(jìn)行綜合評(píng)價(jià)系統(tǒng)。

評(píng)價(jià)一般有外在和內(nèi)在的評(píng)價(jià)指標(biāo),外在指標(biāo)指的是我們業(yè)務(wù)可見(jiàn)的一些指標(biāo),比如智能客服的問(wèn)題解決率、人工客服系統(tǒng)的接線率/會(huì)話時(shí)長(zhǎng)等衡量指標(biāo);內(nèi)在指標(biāo)指的是模型算法的一些指標(biāo),信息檢索常見(jiàn)的評(píng)價(jià)指標(biāo):準(zhǔn)確率(precision)、召回率(recall)、F-測(cè)度值。可根據(jù)具體業(yè)務(wù)場(chǎng)景選取適合的評(píng)價(jià)指標(biāo)。

總結(jié)

當(dāng)前受限NLP算法水平的限制,目前智能客服更多是輔助人工客服,未來(lái),想進(jìn)一步替代人工客服,NLP技術(shù)理應(yīng)做到實(shí)現(xiàn)更好的多輪對(duì)話建模以及個(gè)性化回復(fù),從而理解用戶的真實(shí)意圖及對(duì)話自然。

畢竟對(duì)于智能客服來(lái)說(shuō),重要前提就是準(zhǔn)確理解用戶問(wèn)題,同時(shí)可以聯(lián)系上下文,與用戶進(jìn)行自然地多輪對(duì)話,理解用戶意圖,解決用戶問(wèn)題,這樣才能更好進(jìn)一步替代人工客服。

參考文獻(xiàn):

《自然語(yǔ)言處理綜論》(第二版)

https://36kr.com/p/5136136.html

https://www.leiphone.com/news/201703/6PNNwLXouKQ3EyI5.html

https://www.msra.cn/zh-cn/news/features/ming-zhou-conversation-engine-20170413

 

作者:鉛筆小葵(微信號(hào):gaokaikui ?知乎專欄:鉛筆小葵),產(chǎn)品經(jīng)理,負(fù)責(zé)產(chǎn)品從0到1的開(kāi)發(fā),曾任Java工程師,參與后臺(tái)開(kāi)發(fā)。歡迎大家互相交流關(guān)注。

本文由 @鉛筆小葵 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。

題圖來(lái)自Unsplash,基于CC0協(xié)議

更多精彩內(nèi)容,請(qǐng)關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評(píng)論
評(píng)論請(qǐng)登錄
  1. 我也在做這塊 :mrgreen: ,個(gè)人感觸最深的是智能客服機(jī)器人與普通機(jī)器人的最大區(qū)別是,用最少的節(jié)點(diǎn),最簡(jiǎn)單易懂的話術(shù)在最短時(shí)間內(nèi)幫用戶完成需求。

    來(lái)自廣東 回復(fù)
    1. 我也是做這一塊的,方便交流交流嗎?

      回復(fù)