3 月 23 日,TGO 鯤鵬會成都分會舉辦了一場關(guān)于「AI 如何賦能產(chǎn)業(yè)發(fā)展」的專場活動,達觀數(shù)據(jù) CTO &TGO 鯤鵬會會員紀(jì)達麒和大家分享了「文本智能處理在企業(yè)的應(yīng)用實踐」。以下內(nèi)容根據(jù)現(xiàn)場分享整理而成:
達觀數(shù)據(jù) CTO &TGO 鯤鵬會會員紀(jì)達麒在做分享
我這邊主要分五個部分:第一部分主要是介紹文本處理的基本概念和常識;第二部分是文本處理技術(shù)發(fā)展歷程以及每個階段技術(shù)原理和優(yōu)缺點;第三部分文本智能處理在具體的應(yīng)用實踐中如何操作,會遇到哪些問題以及如何解決;第四部分是結(jié)合達觀的實踐案例來分享;第五部分是對未來的展望。
人工智能從處理數(shù)據(jù)角度劃分,可以分成三個方面:一個是圖像;一個是語音;一個是文本,而文本處理需要對文本進行更深入的思考、推導(dǎo)、歸納、總結(jié),它是有很多認(rèn)知智能在這里面的。
文本處理叫自然語言處理,也叫 NLP,是指讓計算機代替人類進行文字處理。從應(yīng)用的角度來說,可以分成兩個方面:一個叫自動閱讀,就是讓機器去閱讀文章,然后做一些應(yīng)用上的處理,比如說應(yīng)用搜索、推薦、審批、比對、分析等等;另外一個叫自動寫作,只是讓機器代替人,比如說寫文章或者改寫文章。
為什么人類需要機器來自動進行文本處理?
因為機器運算速度非???,24 小時工作,不會提離職,不會要求加薪。同時,人類在處理文本時有一些不足,比如說短期閱讀可以很快,但是長期其實很容易遺忘,無法記住細(xì)節(jié)。比如說數(shù)字,大家能記自己的電話號碼還有 11 位身份證號,還能知道更多數(shù)字嗎?人更擅長去記一些宏觀的、有感覺的東西,比如回去的路有很多條但還知道怎么走,所以這一塊就可以讓計算機進行歸納、搜索。
其次,人類閱讀速度可以一目十行,但在寫文章時其實很慢。千字的文章很多人要好幾個小時甚至幾天,所以可以讓計算機來協(xié)助完成。
最后,是人從文字中解讀整理意思容易,但是做局部的內(nèi)容操作非常痛苦。比如說在文章中找錯別字,我們需逐字去看,效率是非常低的。在這種場景下,也可以讓計算機來協(xié)助操作、提升效率。
第二部分我想跟大家談一下文本處理的發(fā)展歷程,文本處理發(fā)展了四代:
第一代是 50 年代,準(zhǔn)確地說是在 1956 年美國的某一次會議上,真正提出了人工智能概念。當(dāng)時美國科學(xué)家提出什么叫人工智能,他覺得機器能夠做機器翻譯和下期這兩件事情的話,就已經(jīng)達到人工智能的水平了。第一代自然語言處理技術(shù)是符號主義,就是計算處理的每個信息都當(dāng)成一個符號。比如說翻譯,那時候的認(rèn)知是只要把每個字、每個詞翻譯就好。但是符號主義很快被驗證是行不通的,因為文字含義是有上下文語境。比如說“文章”這個詞,可以代表寫某篇文章,也有可能是某個演員。
第二代是 70 年代,我們從小到大要學(xué)習(xí)語法結(jié)構(gòu)、句法結(jié)構(gòu),所以第二代技術(shù)研究時,科學(xué)家找了大量的語言學(xué)家來配各種語法規(guī)則,希望加入語法規(guī)則后機器就可以像人一樣,掌握各種語言。但事實證明也不可行,因為人在學(xué)語法規(guī)則時會舉一反三,但是機器不會。
第三代是 90 年代的統(tǒng)計學(xué)習(xí),也叫機器學(xué)習(xí)。它不需要人去規(guī)定規(guī)則,而是靠計算機自動從大量文字里統(tǒng)計出規(guī)律來自動學(xué)習(xí)。這個過程需要我們做大量的特征工程,讓機器去統(tǒng)計這些特征的含義概率來解決問題。統(tǒng)計學(xué)習(xí)效果已經(jīng)有非常大的提升,所以可以看到現(xiàn)在在大量場景下,統(tǒng)計學(xué)習(xí)都是很重要的方法。但在長文章的閱讀理解方面,統(tǒng)計學(xué)習(xí)還是有很大不足。
所以就到了第四代技術(shù),2012 年左右提出了深度學(xué)習(xí)的概念,深度學(xué)習(xí)就是通過深度神經(jīng)網(wǎng)絡(luò),模擬人去學(xué)習(xí)一些特征,想做端到端的解決方案,它在閱讀理解長篇上確實已經(jīng)達到甚至超過人類,深度學(xué)習(xí)也是現(xiàn)在研究非常熱的一個點。
在文本識別里有個很重要的任務(wù)叫命名實體識別,為了讓大家更好地理解,我舉個例子,比如現(xiàn)在做一個任務(wù)——從文本里提取出公司名,可以看四代技術(shù)是怎么解決的。
首先是符號主義,對這個任務(wù)來說,首先可以把所有公司收集起來,當(dāng)給到文本時可以通過公司名匹配;這種方式實現(xiàn)非常容易,但問題也有很多:能否把它整理完全?每天有新公司產(chǎn)生如何快速發(fā)現(xiàn)?有簡稱的公司如何處理?這就是第一代符號主義的做法和它的問題。
接下來就是語法規(guī)則,這就需要把所有的語法盡可能列進去。比如說有一些簡單的策略,公司前面就有公司名,可以通過列大量語法規(guī)則來識別出公司名。但問題也有:人類的書寫規(guī)范非常多,能夠列的只是最嚴(yán)謹(jǐn)?shù)谋硎痉椒ǎ欢揖浞ㄒ?guī)則非常多,沒列出來的句法程序解析不出來。規(guī)則多了前后還會有沖突,這時候維護成本會非常高。
第三代是基于統(tǒng)計的機器學(xué)習(xí),它的原理非常簡單。比如我告訴機器達觀數(shù)據(jù)是人工智能公司,達觀數(shù)據(jù)是公司名,然后我要讓機器預(yù)測虛擬數(shù)據(jù)是人工智能公司。假設(shè)沒有任何的語法知識,必須預(yù)測出虛擬數(shù)據(jù)是個公司,對機器來說也不難。更難一點——上海的虛擬數(shù)據(jù)是人工智能公司,如果按之前的方法預(yù)測,可能得到錯誤的答案,就是“上海的虛擬數(shù)據(jù)”是公司名。如果希望能夠正確識別,我們就需要給它加特征,需要告訴機器“上海的”是修飾虛擬數(shù)據(jù)的詞,機器人學(xué)到這個原理、特征,就能正確地識別出虛擬數(shù)據(jù)是公司名字。這就是機器學(xué)習(xí)的過程,它一點都不復(fù)雜,原理非常簡單。
第四代深度學(xué)習(xí),它像人腦一樣,能夠?qū)W習(xí)出來“上海的”是修飾詞,這時候搭建一個比較復(fù)雜的網(wǎng)絡(luò),讓機器自動把規(guī)律學(xué)習(xí)出來,然后做端到端的解決方案,人類就不用再做特征工程了,這是深度學(xué)習(xí)和機器學(xué)習(xí)很重要的區(qū)別。深度學(xué)習(xí)在一些場景下效果非常好,但是需要具備幾個條件:第一個就是需要大量的標(biāo)注數(shù)據(jù),在現(xiàn)實的很多場景里是沒有辦法做的,人工標(biāo)注非常耗資源;第二個就是它可解釋性比較弱,比如說張三很聰明,想解釋為什么是張三其實是不知道的,在具體的運用場景里會有很大的挑戰(zhàn),就是需要大量的計算資源,也會有成本上的考慮。
下面這部分想和大家討論文本智能處理的難點是什么?如何來解決?
我想先說為什么文本資源處理挺難。以文本閱讀為例,有些企業(yè)清算時按投資額年復(fù)利 20% 給予補償,這句話是有問題的,但是大部分人都看不出來,因為它需要行業(yè)知識,行業(yè)上來說年復(fù)利超過 15% 都是不可能的,所以機器來處理起來有問題。第二部分是上下文語境的理解,比如“夏天天氣很熱,能穿多少穿多少”、“冬天天氣好冷,能穿多少穿多少”,都是同樣幾個字,但是在不同的上下語境下確實有不同的含義。還有命名實體概念的區(qū)別,比如說 G7 預(yù)計幾點到上海站,這應(yīng)該是一個列車的名字。G7 是今年發(fā)布的最新型號,浮點運算性能比上一代提升 150%,這個可能就是一個 cpu 的型號,所以這些其實都是文本處理的難點。
目前,我們處理的產(chǎn)品豐富多樣,如何用機器來解決問題。我的觀點是:大家先不要去想機器如何解決問題,可以先思考人是如何解決的。比如說文章主要的觀點是什么?人類會把每句話進行分詞,讀完一句話會記住句法結(jié)構(gòu)、核心人物,地點;一句句話讀完后就得到整個篇章,就知道核心詞和觀點,這就是篇章級需要去處理的事情。
這里面也會涉及到很多分別的處理。
比如說詞匯級,剛才提到需要去分詞,我們還要做詞性判斷,哪個是名詞、動詞、形容詞,還需要做同近義詞的處理,還要知道物質(zhì)的關(guān)系,比如說北京大學(xué)和北京的大學(xué)完全不一樣。
在句法級,我們也是要做很多的事情,比如文本糾錯、詞位置分析、語義歸一化。
在篇章級,我們需要得到核心信息,需要文檔審閱,需要根據(jù)前面的結(jié)果來做相關(guān)的處理。
大家不要覺得第四代比第三張好,第三代比第二代好,其實每一代技術(shù)局限性,在實際的工作中更多是幾種技術(shù)相結(jié)合。比如說剛才命名實體識別里面,業(yè)界里面最常用的就是深度學(xué)習(xí)和機器學(xué)習(xí)結(jié)合。我們在解決問題的時候,不要動不動就搞深度學(xué)習(xí),要結(jié)合實際的情況,對這幾層技術(shù)做更好的分析和結(jié)合。
第四點我覺得非常重要,就是要專門做特殊的定制化處理,讓前面的技術(shù)更簡單。
比如說要處理專業(yè)領(lǐng)域的合同或法律文書,它里面有很多專業(yè)名詞,我們可以靠前面的技術(shù)來識別,把關(guān)鍵信息整理出來,輸入各種算法幫助它們更好地解決問題。第二塊就是一些復(fù)雜邏輯,在處理文本里面有些句子比較費解,沒有必要讓計算機處理,因為業(yè)務(wù)需求可能并不需要做這方面的技術(shù)判斷。如果真的需,我們就得針對場景里面的需求,來看是否需要加額外一些信息或者功能來解決復(fù)雜邏輯的處理。在這里其實想和大家強調(diào)的是,我們要結(jié)合具體業(yè)務(wù)的場景,想明白是否可以做特殊的定制和處理。
接下來想和大家說一下,這半年來非常熱門的技術(shù)。它是在 2018 年 10 月份被提出來——Transform 雙向編碼表示技術(shù),它是機器閱讀理解的頂級水平,測試時全面超過人類閱讀,此外,它在 11 種 NLP 測試中都取得了歷史上的最好成績。這項技術(shù)做出來后適用于很多的場景,有時候會把 BERT 技術(shù)叫做 4.5 代技術(shù),因為它用了深度學(xué)習(xí)技術(shù)。
BERT 技術(shù)為什么那么火?有三點本質(zhì)原因:
首先它是用非標(biāo)注的方式形成的模型,自然語言發(fā)展很大的一個因素,就是我們需要標(biāo)注大量的數(shù)據(jù),但 BERT 算法的原理,是技術(shù)上的改進,而不需要人工標(biāo)注,這是非常重要的。
其次,它在 11 種 NLP 測試中表現(xiàn)很好,這很有價值。因為傳統(tǒng)在做 NLP 任務(wù)時,會遇到一個調(diào)整就是可以做好一個業(yè)務(wù)場景,但換了新場景后,就會發(fā)現(xiàn)幾乎用不上;但 BERT 可以適用它在很多場景。
最后就是它效果足夠有力,比人做得還好。
接下來想結(jié)合達觀落地的業(yè)務(wù)場景,跟大家討論智能處理的實踐。
文本自動化處理的常見應(yīng)用場景主要有三塊:第一塊就是重復(fù)性強,數(shù)量很大的處理場景;第二塊就是需要很快速獲得結(jié)果的場景,比如審批貸款金額;第三塊就是進行多次復(fù)核或檢查的產(chǎn)品,就類似給你一百頁文章找出一個錯別字。
其實任何文本都可以處理,我們列一些最常見的比如法律法規(guī)、金融文本、政府公文、用戶意見、業(yè)務(wù)單據(jù)合同等等,這些東西都可以進行處理。團隊需求也很多,我們要抽取,需要關(guān)聯(lián),需要審核,需要起草等,很多場景都是可以來處理。
下面是我們的一些案例:比如說我們給德勤做了機器人的業(yè)務(wù),這里面有一個應(yīng)用比較廣泛的處理場景,就是把非結(jié)構(gòu)化數(shù)據(jù)變成結(jié)構(gòu)化數(shù)據(jù)。非結(jié)構(gòu)化數(shù)據(jù)就是長文本,如果需要對長文本進行分析、進行更深層次理解的話,就需要先把非結(jié)構(gòu)化改成結(jié)構(gòu)化,需要把關(guān)鍵信息取出來,才能做后續(xù)的接觸。具體到德勤應(yīng)用場景,他們要審大量的合同,合同有幾十上百頁,其實這非常耗費人力,這部分可以通過機器自動地把關(guān)鍵信息抽取出來,之后需要審核,他們可以把業(yè)務(wù)的規(guī)則配到我們的后臺,我們自動對抽取結(jié)果進行審核。
接下來是給華為做的理性分析項目,他們會有很多用戶意見,這些評論數(shù)是非常巨大,可以通過機器自動處理,可以知道用戶是好評還是差評,好評的點是在某款機器還是哪個部件?差評的觀點是什么?是手機過熱還是覺得你屏幕太???
如果得到評價,他們希望可以直接推送到對應(yīng)部門,結(jié)合他們內(nèi)部部門的分布,我們又做了組成分類樹。分析了一個評論之后,就可以把信息發(fā)送給對應(yīng)部門。
這個是幫海爾做的人崗匹配,海爾集團每天會招上千個員工,之前招聘就是去各個平臺搜索,效果不太好。
所以我們也幫他們做了人崗匹配的業(yè)務(wù),它可以直接輸入長文本,我們自動根據(jù)語義分析的技術(shù),來理解這個 JD 里面希望獲取的信息是什么,再從簡歷庫里面進行搜索。同時我們還做自動推薦,以此來提高他們的工作效率。
這個是給一些媒體做的項目。澎湃他們之前的文章需要打標(biāo)簽、分類,這些事情其實可以讓機器來進行處理的。另外還有一塊也是現(xiàn)在互聯(lián)網(wǎng)非常重要的個性化推薦,需要根據(jù)每一個人的偏好給他推薦他所喜歡的文章,這里面就需要更好的用戶畫像,通過他的一些行為,知道他配套的是哪些東西,我們來進行千人千面的個性化推薦。
我們總結(jié)一下,其實很多應(yīng)用場景下都能運用到自然語言處理技術(shù),包括審核、檢索、提取、分析、推廣,通過技術(shù)來進行效率的提升,獲得效果改進。
對未來我們有自己的判斷:
10 年內(nèi),計算機對具備固定規(guī)范的文字處理能力會超過人類;在一些規(guī)定范疇內(nèi),完全是有可能做得比人類好。
10 年內(nèi) 50% 的重復(fù)性文字審閱會用計算機代替人類完成,其實現(xiàn)在我們也做很多這方面的項目。
10 年內(nèi),簡單的文章寫作可以由計算機來輔助完成,計算機要寫好一篇文章難度是很大,但是它可以幫助人類復(fù)核和檢查,以此來提高效率。
10 年內(nèi),大型企業(yè)都將配備智能化文檔處理系統(tǒng),因為這個能夠提升很多場景的效率。
我的分享就這些,謝謝!
馬蜂窩張矗:績效考核是為了激發(fā)工作潛力
而不是逃避問題
你想與阿里巴巴高級技術(shù)專家 & TGO 鯤鵬會會員王濤一起學(xué)習(xí)交流嗎?
聯(lián)系客服