當前位置:
首頁 > 新聞 > 從數據預處理到排序演算法,全方位解讀 Uber 人工智慧客服 COTA

從數據預處理到排序演算法,全方位解讀 Uber 人工智慧客服 COTA

雷鋒網 AI 研習社按,日前,Uber 官網上的一篇文章詳細介紹了基於 NLP 和機器學習構建的 COTA 客服系統。利用該系統,Uber 可以快速高效地解決 90% 以上的客服問題,雷鋒網 AI 研習社將原文編譯整理如下:

為了打造最佳用戶體驗,Uber 持續優化客戶支持流程,讓客戶支持服務更易用,更方便。

為實現這一目標,Uber Customer Obsession 團隊基於其內部平台,提供 5 種不同客服渠道(應用內置客戶支持、官網客戶支持、本地司機網、電話客服、線下服務網點)。這個內部平台具備客服工單功能,以便跟蹤解決問題。每天提交到這個平台上的客服工單有數十萬條,遍布全球 400 多個城市。Customer Obsession 團隊必須確保客服代表能儘可能準確、快速地解決問題。

基於此,Uber 打造了一個人工智慧客服助理平台——COTA(Customer Obsession Ticket Assistant),它利用機器學習和自然語言處理(NLP)技術,幫助客服代表提供更好的客戶支持服務。

在 Uber 客戶支持平台上,利用Michelangelo平台的機器學習服務,COTA 可以快速高效地解決 90% 以上的客服問題。

下面,我們會詳細介紹創造 COTA 的動機,COTA 後端架構,並展示如何利用這一強大工具提高客戶滿意度。

沒有 COTA 之前的客戶支持

當客戶聯繫 Uber 尋求支持時,我們必須及時為他們提供最好的解決方案。

我們可以讓用戶在提交問題報告時,點選問題所屬的類別,填寫細節。這一過程為客服提供了很多背景信息,從而能更快解決問題,如圖 1 所示:

圖 1:Uber 內置的客戶支持服務為用戶提供了一個直觀且易於使用的界面,先提供問題可能的類型,然後突出顯示行程的細節

Uber 內置的客戶支持服務能反映問題的背景信息,雖然這些信息很重要,但要解決客戶的問題,單靠這些信息遠遠不夠,特別是在一個問題有多種工單答案的情況下。此外,同一個問題,客戶可以通過多種方式來描述,因此問題的解決過程更為複雜。

隨著 Uber 的服務規模不斷擴大,客服必須應對不斷增長的客戶支持問題,同時,問題也變得更為多樣化,包括技術故障和費用調整等。事實上,當客服在解決客戶提交的問題時,他們首先要做的是從數千個類別中,確定問題所屬類型,這絕非易事!

縮短識別問題類型的時間非常重要,它能減少客服解決用戶問題的總時間。

確定問題類型後,下一步就是給出正確的解決方案,每種類型的工單都有不同協議和解決方法。此外,還要從成千上萬個可能的解決方案中進行選擇,這也是一個耗時的過程。


COTA:客戶工單助手

基於前面的背景,我們設計 COTA 來幫助客服提高解決問題的速度和準確性,從而改善客戶體驗。

COTA 利用 Michelangelo 平台來簡化、加速和標準化客服工單流程。目前,COTA 由一組向客服推薦解決方案的模型組成,只支持英文工單,我們正試圖建立可以處理西班牙語和葡萄牙語客服工單的模型。

基於我們的支持平台,根據客服工單內容和行程上下文信息,Michelangelo 模型提供三種最可能的問題類型及其解決方案,處理流程如下:

圖 2:COTA 系統架構由七步工作流程組成

如圖 2 所示,COTA 系統包括如下 7 步:

1. 客服工單進入客戶支持平台(CSP),後端服務系統採集工單的相關特徵;

2. 後端服務系統將這些特徵發送到 Michelangelo 機器學習模型;

3. 模型預測每個可能的解決方案的得分;

4. 後端服務系統接收預測方案和分數,並將其保存到 Schemaless 資料庫中;

5. 客服打開客服工單後,前端服務系統將觸發後端服務系統,以檢查客服工單內容是否有更新。如果沒有更新,後端服務系統將檢索保存於資料庫中的解決方案;如果工單有更新,它將抓取更新後的特徵,並再次執行步驟 2-4。

6. 後端服務系統將解決方案按分數高低排列,然後返回至前端服務系統;

7. 將排名前三的解決方案推薦給客服;至此,客服只需做出選擇,就可以解決工單。

COTA 的表現非常優秀:根據客戶服務調查結果顯示,COTA 可以將工單解決時間縮短 10%以上,同時還可以達到之前用人工處理的客戶滿意度,甚至比之前人工處理的滿意度更高。

COTA 中的機器學習模型為客服提供了更快和更準確的工單解決方案,使 Uber 客戶支持服務更加完美。


基於 NLP 和機器學習構建 COTA

表面上看,COTA 只需收集工單問題的上下文信息,並返回可能的解決方案,但幕後還有很多事情要做。COTA 後台負責完成兩項任務:確定工單所屬類型並確定最合理的解決方案。

為了實現這一點,機器學習模型需要從客戶提交的文本消息中提取特徵、行程信息和客戶提交問題時所選的類別。

當模型生成特徵分數時,最有價值的特徵是用戶發送的問題的文本消息。由於用戶發送的文本消息對於理解問題很重要,我們建立了一個 NLP「管道」,能將多種不同語言的文本轉換為對機器學習模型有用的特徵

NLP 模型可以翻譯和解釋不同的文本元素,包括音韻、詞性、語法、句法和語義。根據模型的構造單元,NLP 可以建立字元級、單詞級、短語級和句子/文檔級的語言識別模型。

傳統的 NLP 模型是基於人類語言學專業知識來提取文本信息的特徵,隨著端到端訓練的深度學習模式興起,研究人員開始開發能夠解析整個文本塊的模型,這時候不必明確地解析一個句子中不同單詞之間的關係,而是直接使用原始文本。

在 COTA 中,我們首先構建一個單詞級別的 NLP 模型,以更好地理解文本消息的語義。自然語言處理中一個流行的方法是主題建模,通過單詞的計數統計信息來理解句子的主題。雖然主題建模沒有考慮到字詞的順序,但是對於諸如信息檢索和文檔分類等任務,已經被證明非常有用。

圖 3:為識別工單問題類型和選擇解決方案,我們建立的 NLP「管道」模型由三個不同的步驟組成:預處理,特徵工程和基於點的排序演算法。

在 COTA 中,我們使用基於主題建模的 NLP「管道」模型處理文本消息,信息處理流程如圖 3 所示。

預處理

為了清洗文本,我們首先刪除文本中的 HTML 標籤。

接下來,我們分割工單消息中的句子,並刪除停頓用詞。

然後再進行詞形化,將單詞從不同的時態、派生形式進行還原。

最後,我們將文檔轉換成單詞集合,並建立這些單詞的字典。

主題建模

為了理解用戶意圖,預處理之後我們對單詞包進行主題建模。

具體而言,我們使用詞頻 - 逆向文件頻率(TF-IDF)的統計方法和潛在語義分析演算法(LSA)來提取主題。

圖 4(a)中展示了主題建模中的一些可能的主題類型:

圖 4(a)主題建模:我們使用 TF-IDF 和 LSA 從文本數據中提取主題

( b)特徵工程:將所有工單解決方案和工單問題映射到主題向量空間,計算解決方案和工單之間的餘弦相似度

特徵工程

主題建模使我們能夠直接使用主題向量作為特徵,下游的分類器能將其作為識別問題類型和選擇解決方案的依據。

然而,這種方法太直接,會受到主題向量稀疏性的影響。為了有意義地表達這些主題,我們需要使用數百甚至數千維度的主題向量,而主題向量的之間的相關性接近於零。由於特徵空間的維度非常高,需要處理大量的數據,因此訓練這些模型變得相當困難。

考慮到這些因素,我們決定以間接方式進行主題建模:通過計算餘弦相似度特徵來執行下一步的特徵工程,如圖 4(b)所示。以選擇工單解決方案為例,我們收集每個工單解決方案對應的歷史工單,並形成這一工單解決方案對應的辭彙集。

在這種情況下,主題建模轉換是基於歷史工單的辭彙集表示。我們用向量 Ti表示工單解決方案 i,對所有工單解決方案都進行這種轉換。我們可以將任何新的工單映射到工單解決方案的主題向量空間 T1,T2... Tm,其中 m 是可能使用的工單解決方案的總數。接下來形成工單 j 的矢量 tj。可以計算出 Ti和 tj之間餘弦相似度得分 sij,就可以知道工單解決方案 i 和工單 j 之間的相似度,從而將特徵空間從數百或數千個維度減少到很低維度。

基於點的排序演算法

接下來解釋機器學習演算法是如何選擇工單解決方案的。

為了設計這個演算法,我們將餘弦相似度特徵與其他工單信息、行程特徵進行組合。每種工單類型有超過 1,000 種可能的工單解決方案,COTA 的超大的解空間使區分這些工單解決方案之間的細微差異變得很困難。

為了給客服提供最佳的工單解決方案,我們應用了學習排序 (learning-to-rank) 演算法,並構建了基於檢索的點排序演算法。

具體而言,我們將工單解決方案和工單之間的正確匹配標記為正(1),從工單解決方案與工單不匹配的集合中,我們隨機抽樣形成子集,並標記為負(0)。使用餘弦相似度以及工單、行程特徵,我們可以建立一個二分法分類器,接下來利用隨機森林演算法來判斷工單解決方案與工單是否匹配。利用演算法對可能的匹配進行評分,我們可以對評分進行排名,並給出排名最高的三個解決方案。

下圖比較了使用主題向量作為特徵的傳統多類分類演算法與使用工程餘弦相似特徵的逐點排序演算法的性能:

圖 5:基於點的排序演算法比多類分類演算法的準確度高 25%

可以看到,使用餘弦相似度作為特徵的,基於點的排序演算法優於直接使用主題向量的多類分類演算法,精度提高了 25%。

比較是在相同的數據集上,使用相同類型的演算法(隨機森林)進行的,且模型的超參數相同。排序框架中使用餘弦相似度作為特徵可以獲得很好的效果。

更便捷更快的工單處理 = 更好的客戶支持

COTA 性能優異,只有應用到實際場景中才有意義。為了衡量 COTA 對客戶支持體驗的影響,我們對多個在線英語工單進行了受控的 A / B 對比實驗。在這些實驗中,我們選擇了幾千名客服,將他們隨機分配到對照組和實驗組。對照組中的客服代表使用原來的工作流程,而實驗組中的客服代表使用 COTA 助理,交互界面包含問題類型和建議的工單解決方案。我們收集了兩個組的工單處理結果,並測量了一些關鍵指標,包括模型準確性、平均處理時間和客戶滿意度得分。

測試進行如下:

我們首先測量了模型的在線表現,並將其與離線表現進行了比較。我們發現模型性能從離線到在線都是一致的。

然後,我們測量了客戶滿意度分數,並比較了對照組和實驗組。總的來說,實驗組的客戶滿意度提高了幾個百分點。這一發現表明,COTA 可以提供相同或略高於人工的客戶服務質量。

最後,為了確定 COTA 對工單處理速度的影響,我們比較了對照組和實驗組的平均工單處理時間。平均而言,COTA 將工單處理時間縮短了大約 10%。

通過提高客服的績效和縮短工單解決時間,COTA 幫助 Customer Obsession 團隊更好地服務於用戶,從而提高客戶滿意度。COTA 加速了工單處理過程,每年可以為 Uber 節省數千萬美元。

下一代 COTA 中的深度學習

COTA 的成功使我們更堅定地持續優化機器學習演算法,以提高系統準確性,並為客服和終端用戶提供更好的體驗。

深度學習框架可以在文本分類、匯總,機器翻譯和許多輔助 NLP 任務(句法和語義分析,文本蘊含,命名實體識別和鏈接)中使用。

與深度學習相關的實驗

在 Uber AI 實驗室的研究人員的支持下,我們嘗試將深度學習應用於下一代 COTA。我們基於卷積神經網路(CNN),遞歸神經網路(RNN)以及這兩者的幾種不同組合,實現了多種體系結構,包括分層結構和基於注意力的體系結構。

使用深度學習框架,我們能夠以多任務學習的方式來訓練我們的模型,使用單一模型既能夠識別問題類型,又能提出最佳工單解決方案。由於問題類型被組織成層次結構,我們可以訓練模型來預測問題在層次結構中的位置,在這其中使用波束搜索的循環解碼器(類似於序列模型的解碼組件),可以進行更精確的預測。

超參數優化選擇最佳模型

為了確定最佳的深度學習架構,我們針對所有類型的架構進行了大規模超參數優化,並在 GPU 集群上進行了並行訓練。最後的結果表明,最精確的體系結構既適用於 CNN 也適用於 RNN,但為了我們的研究目的,我們決定尋求一種更簡單的 CNN 體系結構,該體系結構精準度稍有欠缺,但在訓練和推斷時間上更具優勢。我們最後設計的模型精度比原始隨機森林模型高 10%。

在下圖中,我們展示了工單集的數據覆蓋率(模型正在處理的工單百分比,x 軸)和準確度(y 軸)之間的關係。如下所示,隨著數據覆蓋率的降低,兩種模型都變得更加精確,但是我們的深度學習模型在相同的數據覆蓋率上表現出更高的準確性,在相同準確度下表現出更高的數據覆蓋率。

圖 6:深度學習模型和經典模型(隨機森林)性能比較

我們目前正與 Uber Michelangelo 團隊緊密合作,處於將這個深度學習模型產品化的最後階段。

雷鋒網 AI 研習社編譯整理。

via:Uber


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 雷鋒網 的精彩文章:

全球監管持續升級,美國政府首次起訴虛擬貨幣平台

TAG:雷鋒網 |