首席科學家說:NLP的風口在哪裡? 場景化應用!

泰岳语义工厂發表於2019-01-17

首席科學家說:NLP的風口在哪裡? 場景化應用!

同樣,不同部門的銀行業務人員,關注點卻截然不同,可以分屬不同的應用場景。銀行客服部門關注使用者投訴的類別,應用場景是投訴分類,如“信用卡->額度->臨時提額”、“客服->電話->接不通”;而銀行營銷部門關注使用者是否為潛客,可針對性營銷哪些產品,應用場景是潛客獲取,如“出國金融”。

由此可知,同樣的NLP技術,識別出同樣的實體結果,但在不同的應用場景下,輸出的結果卻截然不同。顯而易見,NLP的應用必須是場景化的

應用場景能給NLP什麼?

一、NLP的需求必須結合場景

NLP的需求,無處不在,只要有文字的地方,就有NLP的用武之地。但通常無法簡單概括NLP的需求,都必須結合場景才能明確。比如本文例子,客服場景的需求是投訴分類,而營銷場景的需求是潛客獲取。即使都是客服場景的投訴分類,不同銀行的分類體系也不同,如:臨時提額、額度不夠。這對NLP來說,這顯然是不同的需求。

不似語音識別人臉識別感知技術,需求相對單一明確,與場景關聯度低。如語音識別需要把語音轉換成文字,無論轉錄、聽寫、對話場景,或是教育、司法等應用領域,需求是明確不變的。

NLP需求的場景化,使NLP應用只能針對具體場景定製,無法實現快速複製。這也是在NLP領域尚沒有出現類似科大訊飛商湯科技這樣的獨角獸公司的原因。

二、NLP的任務型別受場景支配

NLP技術是多樣的,底層基礎技術有自動分詞、詞性標註、實體識別,乃至當前流行的深度學習預訓練模型等,應用技術有分類、匹配、關聯、抽取等。每一種技術或演算法,往往都只擅長某類特定的任務,比如谷歌釋出的BERT模型,在文字分類、相似性匹配等任務中表現很好,但是在關聯關係識別任務中的表現沒有那麼驚豔。因此,在NLP領域,沒有一個通用的模型或框架,能適用於所有應用場景,能在所有場景中都表現良好。

NLP任務的確定,演算法與模型的選擇,存在複雜性,且受應用場景支配。既需要行業知識,熟悉場景需求,如客服投訴的需求;又需要有極強的NLP專業知識,對各種演算法的優劣性瞭如指掌,知道在什麼條件下,哪些演算法是表現較好。而這在外人看來,就像藝術一樣,讓人捉摸不透,“state of the art”(最先進的,是藝術級的)。

NLP任務的場景化,是NLP技術走向產業應用的必經之路,也是最容易產生認識誤區的地方。常有人抱怨,某個演算法在論文中可以達到96%的正確率,為什麼放在實際場景中,正確率卻不到70%。這其實都是場景在作祟,論文的封閉實驗場景和實際應用的開放場景不同而已。對待場景化的正確姿勢,是選擇最適合場景需求的NLP技術,而不是最優技術。

三、NLP的常識知識來源於場景

NLP應用需要常識知識。如“股市翻紅”這一簡單描述,到底是利好,還是利空?就涉及到股市常識,如果應用場景是中國股市,那麼“紅色”上漲,“翻紅”為利好;如果應用場景是美股,那麼“紅色”是下跌,“翻紅”則為利空。

常識知識包含兩種。一種是通用常識,如“上漲”的反義詞是“下跌”,“思考”的主語是“人”,“吃食堂”中“食堂”是“吃”的地點(而不是“吃”的內容)等,這些是普通人都掌握的知識。另一種是特定場景下的專業知識,也叫業務知識,如銀行客服的投訴分類體系,每個類別都包含哪些內容等,這些是具體場景下的專業人員所擁有的專業知識,必須來源於場景。這裡關注的是第二種常識。

場景的業務知識,一般是由兩類人掌握。一是具體業務人員,如銀行客服人員,但他們只懂業務,而對技術瞭解甚少;一是提供行業解決方案的應用開發商,如客服系統開發人員,他們往往既懂業務,又懂技術。相反,對一般NLP開發人員來說,場景業務知識是短板。這是很多NLP技術人員,甚至是著名高校的頂級專家,到具體的場景下倍感挫折的原因,不管你跟客戶講“技術是多麼的先進”,客戶最後都會落腳到“你們不懂業務”。NLP應用的落地,一定要將NLP技術與場景的常識知識結合起來

應用場景對NLP的要求

實際的應用場景千變萬化,每個場景都有特定的需求,這要求NLP技術不能只侷限在實驗室環境和論文級別上,而應用工程化思路,提供適合場景的、好用的NLP技術。

一、元件化

將NLP中的演算法和模型元件化,實現在具體場景下的零門檻呼叫。

元件以任務為單位實現標準化。NLP的技術體系龐雜,演算法、模型很多,即使同一個任務,也可用不同演算法實現。如命名實體識別,可選CRF演算法,可與LSTM演算法結合,也可與最新的BERT模型結合。不同演算法有特定的輸入、輸出要求。元件化將不同演算法封裝成統一格式,不論選擇哪種演算法,都可無縫跳轉,不影響元件使用

元件將演算法細節封裝起來。NLP演算法的訓練、調參過程,技術性極強,一般使用者會望而生畏。元件將這些過程都封裝起來,使用者使用元件時,只需選擇正確的元件,無需搞懂元件內每個演算法的引數,也無需對引數進行反覆試錯,以尋找最佳配置。

元件的開發,需要NLP專業人員來做,但元件的使用,應該不需要專業知識,一般場景下的開發人員即可完成。

二、流程可組裝

一個應用場景的實現,經常需要呼叫多個NLP元件,而不同的應用場景,元件的呼叫流程也不同。這就要求NLP的處理流程可組裝

一個典型的客服投訴分析場景,其實現流程包括:

輸入:投訴文字

自動分詞->詞性標註->命名實體識別->情感計算->投訴分類

輸出:投訴分類

該流程中,輸入文字(如本文開始的一段文字),經過多元件處理,上級元件的輸出,作為下級元件的輸入,逐級對資料進行加工,最後輸出投訴分類(如“信用卡->額度->臨時提額”)。

流程可組裝,要做到兩個一致性:一是上下級元件的資料一致性,確保資料能在各元件之間正確傳遞;二是各元件執行環境的一致性,確保所涉及的元件,能在相同的環境下,正確執行。

三、可建模

NLP技術需要學習、使用場景的業務知識,主要通過建模完成,大體分為兩類建模方式:

一種是形式化建模。業務人員利用形式化規則,如產生式規則,直接編寫業務規則。NLP技術自動識別和執行這些形式化規則,從而輸出符合業務人員預期的結果。優點在於簡單直觀,業務人員經過簡單培訓即可操作。缺點是規則泛化能力弱,且規則難免以偏概全,無法覆蓋所有業務現象。

一種是機器學習模型訓練。業務人員標註大量的資料,儘可能地將業務知識體現在標註資料中。NLP技術利用機器學習深度學習演算法,對標註資料進行自動訓練,形成預訓練模型。優點在於自動化程度高,學習的泛化能力強。缺點是對標註資料要求很高,標註資料量、標註語料平衡性等都需要達到演算法要求,才能得到理想效果,而這一點在絕大多數應用場景下都很難做到。

選擇正確的方式建模,是特定場景下NLP應用成功的關鍵

泰嶽語義工廠--場景化的自然語言處理平臺

神州泰嶽在場景化NLP應用方向,已經耕耘了8年時間,積累了豐富的場景化技術和經驗,已在16個行業的上百個典型客戶中實現了落地應用。

泰嶽語義工廠是神州泰嶽推出的場景化自然語言處理平臺,支援場景化應用開發、部署、執行,其核心能力包括:

一、元件化的NLP演算法庫

語義工廠的演算法,我們稱之為智慧語義認知技術。將符號化語義表示與深度學習技術進行結合,包含詞語、句子、篇章、海量文字多層次的NLP分析技術,能有效地識別多種語言結構,實現同一意思、不同結構的歸一化處理;對語言結構的遞迴巢狀處理,表現優異。同時,平臺包含了深度優化的深度學習技術和模型,如中文詞向量ChineseWordVec、基於詞的BERT模型等。智慧語義認知技術,已有200個NLP元件,涵蓋NLP基礎、深度學習、分類聚類資訊抽取情感計算、自動寫作、對話機器人、效果評估等。所有元件均可以通過restful方式呼叫

二、可建模、可組裝、跨平臺的場景化開發工具

DINFO-OEC平臺,是語義工廠中支援場景化開發、部署、執行的NLP工具。具有三大功能支援場景化開發:

1、支援場景化業務建模,可通過概念規則,構建形式化的業務規則,也可通過資料標註,指定機器學習(包括深度學習)演算法,訓練機器學習模型。

2、支援視覺化流程定製,可通過元件拖拽方式,靈活組合自帶的200多個NLP元件,快速搭建NLP應用。業務建模給出的模型,可通過元件方式,加入到定製化流程中。

3、提供統一的、跨平臺的NLP執行環境,支援大資料分散式計算(如Spark)、深度學習TensorFlow等技術環境的靈活配置。可以配置使用平臺自帶環境,也可以配置客戶已有環境。

三、 開放賦能的場景化SAAS服務

語義工廠將神州泰嶽數十年來,在多個行業典型使用者積累的應用場景知識、演算法、模型,打包成面向場景的服務,服務的效果已經在行業使用者中得到驗證。開發者只需要一次呼叫,輸入待處理的非結構化文字,即可輸出想要的結構化資料整個過程,無須開發者標註資料,無須調參,無須長時間訓練,無須二次開發,開發者即使沒有任何NLP技術背景,也可以輕鬆地把NLP技術嵌入到自己的應用中去。泰嶽語義工廠將開放包含NLP基礎服務應用場景服務資料服務等三大類服務,涉及16個行業領域,140多個場景的成熟服務

長風破浪會有時,直掛雲帆濟滄海。

泰嶽語義工廠為場景化而生,場景化NLP應用也必將藉助泰嶽語義工廠的助力,迎風起航!

作者:晉耀紅博士,神州泰嶽AI研究院首席科學家

相關文章