語音辨識 語意分析 智能語音機器人 語音合成 voicebot

初探智能語音機器人

彭福彬 Willie Peng 2021/12/20 10:12:27
247

什麼是智能語音機器人

  「智能」「語音」機器人就是你可以直接跟它講話,它聽得懂你講了什麼,並依照你講的話來思考如何回應,然後講出來給你聽。

這樣的機器人可能出現在一個顯示器上的可愛玩偶,或是當你打電話到客服中心時,在另一頭跟你對話的專業客服。

 

這樣的機器人有3大核心關鍵,就是 :

  1.「聽得準」: 要能接收使用者的聲音,並且辨識出聲音的文字內容。比如使用者講了「我要去金門」,機器人不能聽成「我要去廈門」。也就是說,機器人要有「聽得準」的耳朵。

  2.「能理解」: 要能依照使用者講話內容去產生回應結果,也就是說要去判斷使用者的意圖與需求,然後做出最適當的反應。比如說使用者講了「我要去訂票」,機器人就要能夠判斷使用者的意圖是想要訂票,然後產生回應結果「好的,請問您的出發日期?」。也就是說,機器人要有「能理解」的大腦。

 3.「很會講」: 當機器人的大腦產生回應內容後,接下來就是要能夠正確把內容講出來,讓使用者能夠聽得懂。也就是說,機器人要有「很會講」的嘴巴。

機器人是這樣運作的

要做到上述的核心關鍵,背後需要2大核心技術的支撐,分別為語音處理技術以及語意分析技術,並利用這些技術來開發3大主要功能,透過功能間的串連合作,讓機器人得以順利運作。

  1.  語音辨識功能:透過語音處理技術中的語音辨識技術,稱為Speech To Text (STT) Automatic Speech Recognition (ASR),來開發語音辨識功能,去辨識語音內容並轉換成文字。此功能要考量 :

(1).    語音來源與辨識率 : 機器人所要接收的語音來源,通常可分為8K Hz16K Hz等兩種取樣頻率。一般而言,8K Hz的辨識率會稍差於16K Hz。辨識率的計算指標則以WERCER較為常用,這兩個指標都是計算錯誤率,所以數值越低則辨識效果越好。

(2).    語音來源串接 : 這會取決於機器人所要支援的語音裝置與通話管道,大致上可分為2 :

n   一般電話 : 使用者撥打電話,並由後端的電話系統(例如IVR)負責接收處理。此時,語音辨識功能必須要與電話系統串接,取得語音串流以進行辨識處理。例如透過MRCP協定來進行串接。

n   數位程式 : 使用者使用行動APP與網站系統等數位程式,並透過手機或電腦上的語音功能來講話。此時,語音辨識功能必須要與這些數位程式串接,取得語音串流以進行辨識處理。例如透過REST協定來進行串接。

(3).    語音辨識模型 : 語音辨識模型是語音辨識功能的核心,主要包含聲學模型、語言模型、逆文本規整等技術,一般會採用名詞、語料以及音檔標註來進行模型訓練,讓模型可以解析聲音並判斷出最適合的對應文字。 

 

(4).    專有詞句處理 : 除了辨識一般性的語音內容,使用者與機器人對話的過程中往往會出現一些專有名詞或語句,例如產品名稱、活動名稱、公司名稱、姓名、活動口號等。這些專有特殊的詞句需要經過特別的處理辨識,才能得到正確的辨識結果。透過事先建立的詞彙庫、語料庫或名單來做為辨識參照是常見的做法。

 

2.     語意分析功能:透過語意分析技術中的自然語言處理技術,稱為Natural Language Processing (NLP),來開發語意分析功能,去解析語音辨識後的文字,並搭配此機器人所要提供的服務與對話流程,運算出要回應的文字內容。此功能要考量 :

  (1).    對話服務規劃

智能語音機器人可提供的對話服務可分為進線服務(inbound)與外撥服務(outbound)兩大類,進線服務是指使用者撥打電話進線,由機器人接聽並提供服務。常見的進線服務包含總機轉接、服務導航、資訊查詢、訂票()、申請作業等,甚至是證券下單、保險投保或是醫療掛號等產業的個別應用。外撥服務是指由機器人主動撥打電話給使用者並提供服務,常見的外撥服務包含資訊告知、事項提醒、訪談調查、銷售推廣等,甚至是銀行帳單催繳、保險保單回訪、證券成交回報、服務滿意度調查等產業的個別應用。

  (2).    對話方式設計

 

智能語音機器人僅透過語音對話的方式與使用者進行互動,並沒有視覺上的呈現介面。所以當語意分析功能要運算出回應結果時,此回應結果中的對話方式必須要能清楚明確地透過語音來表達,常見的對話方式如下

 

項目

用途

例句

1

資訊

提供

引導使用者提供特定項目內容,項目數以3個以內為宜。

請說出您的身分證字號與出生年月日。

2

選項

選擇

引導使用者決定某個選項。選項數不可過多,以5個以內為宜。

請問旅遊地點是國內還是國外?

3

是否

決定

引導使用者於是否2種狀況下決定其中一種。

請問是否要加訂回程?

4

複誦

確認

用於複誦使用者所提供資訊,並請使用者再次確認是否正確。

您的身分證字號為E999999999,請確認是否正確?

5

宣告

訊息

宣告特定資訊內容,常用於服務開始時的訊息告知,或是服務結束前的結果告知。

線上已投保成功,5-10 分鐘後手機會收到投保成功簡訊。

6

加強

描述

針對特定內容加入描述說明,協助使用者能確實瞭解該內容。

您的編號是國字七英文E數字1

7

請求

重複

引導使用者再重複提供一次資訊。

很抱歉,您提供的資訊無法辨識,請再說一次。

8

轉接

真人

用於使用者之服務需求非機器人所能服務之範圍,改由真人服務。

您好,將改由客服人員為您服務。

9

按鍵

要求

針對重要資訊需要使用者按下按鍵來進行確認。

委買台積電6003

正確請按1,錯誤請按2

10

條列

說明

用於說明多筆資訊,以逐筆方式來說明各筆內容。

您好,您的資料有兩筆,第一筆是XXX,第二筆是XXX

  (3).    整體流程控制

語意分析功能扮演大腦的角色,依照使用者的服務需求與對話,控制服務流程與回應內容。常見的流程控制動作如下 :

 

項目

運用狀況

動作回應

1

正常

回應

可以識別對話的意圖與實體資訊,並符合某項之服務項目。

依照該服務之流程來決定回應對話內容。

2

多輪

跳轉

可以識別對話的意圖與實體資訊,但服務需求已不屬於原有服務範圍。例如原本正在報失物品遺失,中間要求查詢遺失物是否被尋獲。

紀錄原有流程的資訊,再切換至新的服務流程,完成後切換回原有流程來繼續往下。

3

外部

介接

需要介接外部系統取得資訊,或是需要將資訊傳遞給外部系統,已完成後續動作。

取得外部系統的回傳資訊,依照目前服務流程來產生回應對話內容。

4

要求

重講

當使用者對話無法被正確辨識或是使用者一直沒有講話時。

發出要求重講對話內容,例如「請再說一次」。

5

轉接

真人

當系統判斷符合特定條件時,例如無法繼續提供使用者所需服務,或使用者對話出現某些關鍵字詞。

串聯真人客服系統,改由真人接手與使用者對話。

6

流程

串聯

服務需求除了透過語音對話來完成外,尚需要串聯其他方式的作業流程,例如到網頁填寫資訊。

依照要串聯的流程來產生回應對話內容。例如後續需要到網頁填寫資訊,可以發信連結簡訊或告知連結等方式來引導使用者。

7

結束

服務

當使用者需求之服務已完成或是當使用者一直沒講話且已多次提醒並要求重講。

發出結束對話之回應內容,並結束本次服務。

3. 語音合成功能:透過語音處理技術中的語音合成技術,稱為Text To Speech (TTS),來開發語音合成功能,將語意分析功能所產生的回應對話內容合成為語音串流,並傳輸撥放給使用者聆聽。此功能要考量 :

(1).    語音擬真度與流暢性

為了讓使用者有良好的聆聽體驗,合成輸出的語音應該要近似真人口音,而以目前的TTS技術,也能產生相當擬真的合成聲音。關鍵的細節在於能否依照字詞、語句與上下文等關係來輸出聲音,即使內容中有動態產生的資訊,也能流暢地發音,不能有明顯的口音差異或停頓。

(2).    合成口音

語音合成功能可以特定聲音為基礎,依照其聲音特徵來產生合成語音,例如以湯姆漢克斯的聲音來發音,或是以唐老鴨的聲音來發音。使用合成口音的好處是可以建立企業單位的形象識別,或是讓語音機器人的服務能更有特色。

(3).    特定發音念法

語音合成功能需要針對特定項目去提供正確且適當的發音念法,例如姓氏中的破音字「單」與名詞「簡單」,就應該要以不同的發音念法來處理。通常會需要考量的項目包含姓氏、數字、金額、時間、年代、符號單位、中英混合與英數混合等項目。

語音機器人應用考量

下圖透過智能語音機器人來提供訂票服務的對話情境示意,並分享幾點有關語音機器人的應用考量,希望語音機器人能有效協助各位提供最佳的服務!

  1.做為客戶來電時的第一線接聽並提供初步服務,包含提供歡迎語以及訊息公告,詢問客戶所需的服務,或作為總機來轉撥分機,或核對客戶身分等。

  2.可與真人客服人員協同合作,由語音機器人負責第一線服務,當語音機器人無法服務時再轉由真人客服人員接手處理。

  3.可於特定時段提供服務,例如真人客服人員下班時間或離峰時段等。此種模式時語音機器人通常提供簡單服務,或僅負責記錄客戶資訊,再請客戶於上班時間再來電。

  4.提供資訊查詢服務,例如時刻表查詢以及票價查詢等資訊查詢,通常會需要詢問客戶需求,再依照客戶所提供之需求資訊至後端系統查詢資料,再將查詢結果告知客戶。

  5.提供進線服務,依照客戶來電所描述之需求,提供所需之服務。大致來說,並沒有特定服務類型限制。但若是服務流程過長,或是需要客戶提供的資訊過多,則需要特別規劃設計,或偕同真人服務流程一起進行。若服務項目過多時,則建議可先提供最客戶常用的3~5個服務,以免語音機器人告知過多服務項目時,造成客戶不耐。

  6.提供外撥服務,由機器人致電客戶並提供服務。此類服務通常需要考量如何核對接聽者身分,並須先確認客戶當下是否同意要繼續進行服務,或是需要另行安排時間。

本文有說明缺漏或錯誤之處,也歡迎讓我知道,謝謝!

Willie Peng

 

 

彭福彬 Willie Peng