對話機器人開源框架Rasa首著,國內(nèi)外大火的框架,Rasa致力于聊天機器人(bot)平臺和開源NLU工具在商業(yè)領域的應用開發(fā),客戶包括瑞銀銀行、寶馬、瑞士保險公司Helvetia,以及女性健康機器人創(chuàng)業(yè)公司Tia。國內(nèi)用Rasa的大廠有中國電信、微軟小冰、陸金所,博世汽車、一汽等。還有很多的中小型企業(yè)大量使用。
本書能幫你使用機器學習技術快速創(chuàng)建工業(yè)級的對話機器人。
全面解析從0開始構建、配置、訓練和服務不同類型的對話機器人的整體過程,如任務型、FAQ、知識圖譜聊天機器人等。
自然語言處理(Natural Language Processing,NLP)是人工智能領域的一個重要部分。當人工智能已經(jīng)在數(shù)據(jù)建模預測和圖像分類識別等場景大放異彩的時候,隨著深度學習算法和計算機硬件的不斷發(fā)展,擁有悠久歷史的NLP漸漸展現(xiàn)出新的發(fā)展動力和應用落地潛力,而對話機器人是NLP集大成的應用。
對話機器人已經(jīng)在互聯(lián)網(wǎng)和傳統(tǒng)行業(yè)中有了廣泛的應用,應用范圍包括自動化提升工作效率、增加客戶服務智能水平和降低人工運營成本等方面。本書以中文應用為核心,向讀者系統(tǒng)地介紹對話機器人的落地構建。
為什么寫這本書
在深度學習的發(fā)展浪潮中,NLP雖然有了很多重要的進步,但是相比圖像視覺識別等領域,NLP有著特殊的一面。因為圖像中的貓都是一樣的,中國的貓在美國也是貓,不受地區(qū)、語言、文化背景等限制,所以圖像數(shù)據(jù)是通用的,算法也一致。文字則不同:全球各地的書寫語言各不相同,相同書寫語言國家中不同地區(qū)的口語方言也各有千秋,用英語語料訓練出的NLP模型并不適用于中文,因此NLP語料不具備通用性。
加上人類的語言本身具有歧義性、隱蔽性和常識性,如指代不明、諷刺、縮略等,NLP在技術實現(xiàn)上相當困難,在中文方面尤其如此——一方面,中文NLP缺乏學術界質(zhì)量良好的大規(guī)模中文語料庫;另一方面,主流開源框架對中文NLP的支持并不友好。
據(jù)筆者所知,當前的NLP參考數(shù)據(jù),或者完全基于傳統(tǒng)NLP的技術架構,與當前新的技術有所脫節(jié),或者太過理論而缺乏實踐,尤其是對中文NLP任務實踐的深層次積累。
因此,我們在本書借助Rasa介紹構建對話機器人這一NLP集大成的任務,從而展現(xiàn)中文 NLP 的核心技術的實踐和應用。
關于本書作者
孔曉泉 谷歌開發(fā)者機器學習技術專家(Google Developer Expert in Machine Learning),TensorFlow Addons Codeowner,Rasa SuperHero。多年來一直在世界 500 強公司帶領團隊構建機器學習應用和平臺。在NLP和對話機器人領域擁有豐富的理論和實踐經(jīng)驗。
王冠 北京大學學士,香港科技大學碩士,先后于香港應用科技研究院、聯(lián)想機器智能實驗室及瑞士再保險數(shù)據(jù)科學團隊從事數(shù)據(jù)建模、計算機圖像與NLP的研發(fā)工作,發(fā)表過數(shù)篇相關國際期刊論文和專利。當前研究方向為人工智能在金融領域的應用。
本書主要內(nèi)容
本書將詳細地介紹Rasa的生態(tài)體系,按照從入門到內(nèi)部原理,再到實戰(zhàn)的學習路線,讓第一次接觸機器學習和自然語言理解的用戶能夠迅速了解、掌握并實際運用中文NLP的核心技術。本書由初級、中級和高級3個級別的Rasa知識組成。本書內(nèi)容與開發(fā)人員水平等級對應表如下所示。
本書內(nèi)容與開發(fā)人員水平等級對應表
開發(fā)人員水平等級 等級能力要求 對應本書內(nèi)容
初級 熟悉Rasa各個組件的概念,熟練利用現(xiàn)有的常用組件構建一個單機Rasa Bot 第1章、第2章、第3章
中級 熟練利用所有內(nèi)建組件構建一個滿足工業(yè)標準的分布式Rasa Bot 第4章、第5章、第6章、第7章
高級 熟悉Rasa各個系統(tǒng)的工作原理,按照需要新增、改造或創(chuàng)建新的子系統(tǒng)和組件 第8章、第9章、第10章
如何閱讀本書
建議Rasa初學者,從頭開始逐步深入,并按照書中的項目逐一實踐,在確認已經(jīng)掌握基礎概念后再繼續(xù)學習。同時建議,初學者不需要等到完全讀完整本書再去上手做實際的對話機器人,只要學會自己期望的學習內(nèi)容就可以開始進行實戰(zhàn),在實戰(zhàn)中遇到不懂的問題時,再來回顧本書或把本書當作參考手冊反復查閱。
對于已經(jīng)有一定經(jīng)驗的Rasa開發(fā)者,可以按照需求有選擇地精讀某些章節(jié)。有經(jīng)驗的Rasa開發(fā)者快速通讀全書也有好處,一來可以了解最新的Rasa提供了哪些讀者尚不知道的高級技術(Rasa的技術體系進化得相當快),二來可以建立完善的Rasa知識體系,以后在實戰(zhàn)中遇到問題時,可以想起來書中提到的某個技術或方案或許可以解決這一問題。
對于非Rasa系統(tǒng)的對話系統(tǒng)開發(fā)者而言,閱讀本書可以學習Rasa系統(tǒng)是如何設計架構,以保證系統(tǒng)的可擴展性的。同時Rasa對話管理系統(tǒng)的設計是非常值得其他對話系統(tǒng)設計師參考學習的,我們建議重點閱讀第9章“Rasa的工作原理與擴展性”。
致謝
感謝谷歌通過提供谷歌云信用額度(GCP credit)的方式來支持我們的工作。