在剛剛過(guò)去的由神策數(shù)據(jù)舉辦的年度數(shù)據(jù)分析行業(yè)盛會(huì)—— 2017 數(shù)據(jù)驅(qū)動(dòng)大會(huì)上,達(dá)觀數(shù)據(jù)創(chuàng)始人兼CEO陳運(yùn)文,作為自然語(yǔ)言處理領(lǐng)域的專(zhuān)家受邀出席了本次會(huì)議。并在人工智能分論壇上進(jìn)行了題為《文本挖掘技術(shù)幫助企業(yè)智能化運(yùn)營(yíng)》的精彩演講。在這次為期兩天的大會(huì)中,參會(huì)出席的還有微軟、IBM、普華永道、廣發(fā)證券、曠視(Face++)分別就各自的研究和服務(wù)領(lǐng)域進(jìn)行了前沿認(rèn)知與商業(yè)智能應(yīng)用情況的分享。
陳運(yùn)文博士作為國(guó)內(nèi)早期自然語(yǔ)言處理領(lǐng)域的專(zhuān)家,在文本挖掘方面已經(jīng)積累了十余年的行業(yè)和技術(shù)經(jīng)驗(yàn)。本次大會(huì)上,陳運(yùn)文博士主要就人工智能的基本發(fā)展、自然語(yǔ)言處理技術(shù)的基本內(nèi)容、自然語(yǔ)言處理應(yīng)用的現(xiàn)狀和對(duì)企業(yè)的應(yīng)用價(jià)值等幾個(gè)方面做了詳細(xì)的講解。
以下內(nèi)容根據(jù)陳運(yùn)文博士在演講中的分享整理所得(內(nèi)容略有刪減)。
非常高興跟大家分享文本挖掘技術(shù)方面的經(jīng)驗(yàn)。我是達(dá)觀數(shù)據(jù)的創(chuàng)始人陳運(yùn)文。自己是做文本挖掘出身,達(dá)觀數(shù)據(jù)也是專(zhuān)注于做文本挖掘的公司。目前中國(guó)的文本挖掘企業(yè)服務(wù)還是比較早期的方向,借由這次大會(huì)給大家做一個(gè)簡(jiǎn)單的科普介紹,由淺入深分享一些知識(shí)和經(jīng)驗(yàn)。希望對(duì)大家有收獲。
人工智能與企業(yè)大數(shù)據(jù)挖掘的價(jià)值
人工智能和大數(shù)據(jù)對(duì)企業(yè)應(yīng)用的意義
企業(yè)希望通過(guò)數(shù)據(jù)挖掘技術(shù)提升效率,增加收入降低成本,但是具體如何做?首先要把數(shù)據(jù)基礎(chǔ)打好,比如盡可能的采集數(shù)據(jù),需要較好地去分析數(shù)據(jù)把數(shù)據(jù)展示出來(lái)。在這個(gè)基礎(chǔ)上我們認(rèn)為這些挖掘運(yùn)用可以進(jìn)行自動(dòng)化?,F(xiàn)在很多挖掘還是人工來(lái)用手工的規(guī)則和腳本實(shí)現(xiàn),但是我們認(rèn)為計(jì)算機(jī)可以自動(dòng)處理,并且做的更快、更好,減輕人的重復(fù)勞動(dòng),幫助企業(yè)提升效率。
我們有非常多的數(shù)據(jù),圖象,語(yǔ)音等類(lèi)型的內(nèi)容需要操作,識(shí)別歸類(lèi)和搜索。人工智能就是把這兩者聯(lián)結(jié)在一起,讓計(jì)算機(jī)自動(dòng)完成從數(shù)據(jù)的采集到識(shí)別搜索以及歸類(lèi)轉(zhuǎn)化。
常見(jiàn)數(shù)據(jù)類(lèi)型以及其中文本數(shù)據(jù)的特點(diǎn)
從企業(yè)角度來(lái)說(shuō)公司都有很多數(shù)據(jù)。傳統(tǒng)意義上會(huì)認(rèn)為像阿拉伯?dāng)?shù)字一樣的叫做數(shù)據(jù),比如企業(yè)的財(cái)務(wù)報(bào)表,經(jīng)營(yíng)狀況,APP每天日活……除了這些之外還有一些其他數(shù)據(jù),比如文字型的數(shù)據(jù):新聞內(nèi)容,商品介紹,用戶(hù)評(píng)論,企業(yè)內(nèi)部各種各樣的合同……這些都是數(shù)據(jù),達(dá)觀數(shù)據(jù)就是專(zhuān)業(yè)處理文字型數(shù)據(jù)的企業(yè)。
文字?jǐn)?shù)據(jù)處理有什么特點(diǎn)?它是信息的抽象提煉。這些數(shù)據(jù)其實(shí)是“一句話(huà)濃縮了很多內(nèi)容”。文字?jǐn)?shù)據(jù)的場(chǎng)景非常多,差別也很大。比如說(shuō)有的場(chǎng)景中用戶(hù)的評(píng)論數(shù)據(jù)都是很短幾十個(gè)字的,同時(shí)也會(huì)有一些合同文本和法律文書(shū),這些內(nèi)容的字?jǐn)?shù)則是上千字和上萬(wàn)字。
各種各樣的長(zhǎng)短文本,如果能夠讓計(jì)算機(jī)代替原來(lái)的人工進(jìn)行自動(dòng)化做處理,便可以發(fā)揮很大的價(jià)值。在一些垂直行業(yè)中,比如人事行業(yè),法律行業(yè),財(cái)務(wù)行業(yè)都有大量的資料。讓計(jì)算機(jī)自動(dòng)來(lái)分析這些文字資料,并自動(dòng)來(lái)理解這些內(nèi)容,這是非常有意義的事情。
文本挖掘技術(shù)的應(yīng)用現(xiàn)狀
大家知道谷歌、百度這樣搜索引擎,搜索引擎本身就是一個(gè)文字挖掘的人工智能系統(tǒng)。文字搜索這件事情創(chuàng)造了非常大的經(jīng)濟(jì)效益。但這個(gè)領(lǐng)域遇到挑戰(zhàn)也非常大,尤其是中文的文字處理困難重重,雖然我們每天都在流暢地使用中文,但計(jì)算機(jī)識(shí)別中文的時(shí)候發(fā)現(xiàn)中文語(yǔ)法非常不嚴(yán)格,行文很隨意,這導(dǎo)致了讓計(jì)算機(jī)處理、理解這些文字的時(shí)候很難處理的非常好,這也是由于中文天然存在著某些問(wèn)題。
文本挖掘的三個(gè)技術(shù)挑戰(zhàn)
讓計(jì)算機(jī)來(lái)做自然語(yǔ)言處理或者挖掘,有什么新的技術(shù)挑戰(zhàn)?首先來(lái)看一些具體的例子。
挑戰(zhàn)一:字詞關(guān)系的處理
對(duì)于漢語(yǔ)來(lái)說(shuō)表達(dá)一個(gè)基本概念就是一個(gè)詞。但是讓計(jì)算機(jī)來(lái)理解字詞之間的關(guān)系很困難,因?yàn)橛?jì)算機(jī)需要挖掘很多詞和其他詞之間的關(guān)系。比如說(shuō)相關(guān)詞,同義詞,甚至還有單詞。進(jìn)一步還要做同義詞、反義詞、近義詞的關(guān)系和挖掘,然后還要跨語(yǔ)言,還有英文的同義詞,外文的簡(jiǎn)稱(chēng)等等。
比如“中華人民共和國(guó)”是一個(gè)大詞,它有很多詞構(gòu)成。共和國(guó)跟它的意思接近,中國(guó)和中華人民共和國(guó)的意思也有接近,甚至有時(shí)候一個(gè)單詞叫“中”,比如說(shuō)中美談判,這個(gè)“中”的單字在這個(gè)語(yǔ)境里面表達(dá)的意思就是中華人民共和國(guó)。那么計(jì)算機(jī)如何判斷“中”是不是表達(dá)中華人民共和國(guó)還是表達(dá)河南方言“好”的意思?
還有局部轉(zhuǎn)義問(wèn)題。比如說(shuō)巧克力囊腫是一種常見(jiàn)的腫瘤名稱(chēng),但是把巧克力拿出來(lái)是一個(gè)食物,在理解時(shí)它不會(huì)看到這句話(huà)把其理解為一個(gè)可以吃的東西。比如還有球鞋,運(yùn)動(dòng)鞋,跑步鞋需要判斷什么時(shí)候是同義詞,什么時(shí)候是有差別的。
中文上下文有很多歧異地地方?!耙馑肌边@個(gè)詞就有很多的意思。比如說(shuō)“什么意思”“小意思”“沒(méi)意思”“意思意思”每一個(gè)表達(dá)都不一樣。漢語(yǔ)非常復(fù)雜,比如說(shuō)“我不方便”“他在方便”。一個(gè)老外學(xué)中文,中文老師告訴他方便就是上廁所的時(shí)候,第二天這個(gè)人聽(tīng)到說(shuō)“你什么時(shí)候方便我請(qǐng)你吃飯?!崩贤猱?dāng)時(shí)就暈倒了。中文中復(fù)雜的的歧異,這也是讓計(jì)算機(jī)像人一樣閱讀文章時(shí)必須克服的困難。
挑戰(zhàn)二:歧義語(yǔ)義的理解
像“咬死了獵人的狗”,這句話(huà)一種是主語(yǔ)被省略了,主語(yǔ)可能是一只老虎、一只狗,它咬死獵人的狗,這時(shí)狗是賓語(yǔ)。還有一種情況狗是主語(yǔ),咬死了獵人是修飾詞。這兩種理解方式都對(duì),我們需要結(jié)合上下文才能理解。比如說(shuō)“做手術(shù)的是他的父親”這句話(huà)有兩種理解方法,有一種是他的父親是醫(yī)生做手術(shù),一種是他的父親生病了做手術(shù)。漢語(yǔ)不像英語(yǔ)有主動(dòng)時(shí)態(tài)和被動(dòng)時(shí)態(tài),它很模糊。還有“五個(gè)公司的工程師”工程師是五個(gè)人,還是公司是五個(gè)人,這個(gè)范圍也不一樣。
這些代表著計(jì)算機(jī)處理詞語(yǔ)歧義是非常大的問(wèn)題,需要很多算法解決歧義識(shí)別問(wèn)題。像章詞法、句法、上下文等等。
挑戰(zhàn)三:多樣化的句式結(jié)構(gòu)的解析
搜索引擎經(jīng)常需要處理意思一樣,但是文字表達(dá)方式不一樣的情況。這種情況下我們常見(jiàn)的處理方法叫做語(yǔ)義的規(guī)一劃,這也是處理搜索引擎詞時(shí)經(jīng)常遇到的問(wèn)題。他的字一樣但是順序不一樣。
漢語(yǔ)很神奇,我們說(shuō)“你上班了嗎?”、“班你上了嗎”、“你上班了嗎”、“你班上了嗎”意思是接近的。常見(jiàn)的做法是通過(guò)定位和調(diào)整主謂賓定狀補(bǔ)等句子元素,生成句法依存樹(shù)來(lái)理解句子結(jié)構(gòu)。
“達(dá)觀是技術(shù)驅(qū)動(dòng)的企業(yè)”這句話(huà)中達(dá)觀是一個(gè)主語(yǔ)?還是一個(gè)謂語(yǔ)?做這樣的解析才可以理解這句話(huà)的意思。我們語(yǔ)言系統(tǒng)經(jīng)過(guò)幾千年的進(jìn)化非常發(fā)達(dá),但計(jì)算機(jī)只能拆開(kāi)來(lái),揉碎了,才可以像人一樣閱讀文字,理解人的功能。
追本溯源:文本挖掘技術(shù)發(fā)展歷程
1956年達(dá)特茅斯會(huì)議參與者首先提出了AI概念
講人工智能必須講1956年的達(dá)將矛斯會(huì)議,機(jī)器翻譯和密碼破譯其實(shí)是1956年這些計(jì)算機(jī)的大牛們提出人工智能時(shí)一個(gè)很重要的驅(qū)動(dòng)因素。當(dāng)時(shí)達(dá)將矛斯會(huì)議十幾位大牛提出人工智能技術(shù)成熟的兩個(gè)標(biāo)志性目標(biāo)是:
1.?在國(guó)際象棋上可以戰(zhàn)勝人類(lèi)
2.?在機(jī)器翻譯上能夠超越人類(lèi)
大家都知道了目標(biāo)1早已經(jīng)完成。所有的棋類(lèi)中圍棋是最后一個(gè)被攻克的。但是目標(biāo)2仍然未能完全實(shí)現(xiàn),這也可見(jiàn)語(yǔ)言理解的復(fù)雜度。
文本挖掘技術(shù)發(fā)展歷程和現(xiàn)階段流行方法
關(guān)于自然語(yǔ)言處理,學(xué)術(shù)界有兩個(gè)派別:
1.?理性派,做結(jié)構(gòu)主義??認(rèn)為所有語(yǔ)言其實(shí)都有潛在內(nèi)生結(jié)構(gòu),都是有內(nèi)在的語(yǔ)法。
2.?經(jīng)驗(yàn)派,是功能主義??認(rèn)為只要完成某一個(gè)功能就可以了,計(jì)算機(jī)完全不需要理解人說(shuō)什么。
早期人工智能剛剛提出來(lái),符號(hào)主義流行。在60年代時(shí)候用了很多的詞典和符號(hào)規(guī)則做自然語(yǔ)言的處理,但是后來(lái)發(fā)現(xiàn)這樣翻譯走不通。在70-80年代,在語(yǔ)法規(guī)則的基礎(chǔ)上,加上了語(yǔ)言模型,當(dāng)時(shí)很多語(yǔ)言專(zhuān)家做自然語(yǔ)言處理時(shí)遇到非常嚴(yán)峻的挑戰(zhàn),因?yàn)檎Z(yǔ)言不是特別嚴(yán)格的模型。例如:漢語(yǔ)特別靈活,很多時(shí)候是甚至沒(méi)有規(guī)則可言,習(xí)慣這么說(shuō),幾萬(wàn)年來(lái)講著講著就講成現(xiàn)在這個(gè)狀態(tài)了。
90年代開(kāi)始,統(tǒng)計(jì)學(xué)習(xí)模型異軍突起,今天看到大量自然語(yǔ)言處理的應(yīng)用都是基于統(tǒng)計(jì)學(xué)習(xí)的模型。能夠講大數(shù)據(jù)也是因?yàn)楝F(xiàn)在已經(jīng)積累的文本數(shù)據(jù)非常多,我們每天在各種平臺(tái)上看到、寫(xiě)下的文字?jǐn)?shù)據(jù)都可以成為計(jì)算機(jī)訓(xùn)練的語(yǔ)料,通過(guò)訓(xùn)練能讓計(jì)算機(jī)發(fā)現(xiàn)語(yǔ)言的規(guī)律。
2010年以后深度學(xué)習(xí)是一波浪潮??梢钥闯錾疃葘W(xué)習(xí)是經(jīng)驗(yàn)派功能主義的典型表現(xiàn)。近幾年知識(shí)圖譜非常流行,它帶有結(jié)構(gòu),所以是理性派結(jié)構(gòu)主義的表現(xiàn)。目前很多主流方法是兩者做結(jié)合,統(tǒng)計(jì)學(xué)習(xí)方法加上一些結(jié)構(gòu),才能夠更好的理解、處理文字內(nèi)容。
文本結(jié)構(gòu)解析的三個(gè)層次
現(xiàn)在流行的方法從結(jié)構(gòu)的角度來(lái)說(shuō)分三個(gè)層次:
1.詞語(yǔ)級(jí) ?2.句法級(jí) ?3.篇章級(jí)
詞匯級(jí)有很多具體的模塊開(kāi)發(fā),結(jié)構(gòu)分析包括句子結(jié)構(gòu)之間的關(guān)系等。想想我們學(xué)漢語(yǔ)的時(shí)候先認(rèn)識(shí)基本字,再找詞。在漢語(yǔ)里面單詞表現(xiàn)很弱,兩個(gè)字或者三個(gè)字才構(gòu)成一個(gè)有表達(dá)力的詞。
比如【公司】是一個(gè)詞,但是拆出來(lái),公沒(méi)有表達(dá)能力,司也沒(méi)有表達(dá)能力。組詞之后是造句,很多句法構(gòu)成了一篇作文。同樣,讓計(jì)算機(jī)來(lái)閱讀文字從結(jié)構(gòu)角度來(lái)說(shuō)是相似的,先讓計(jì)算機(jī)看字、詞,然后理解句子的意思,最后理解整篇文章每個(gè)段落的含義。
知識(shí)圖譜的作用是沉淀領(lǐng)域知識(shí),利用這些結(jié)構(gòu)化的背景知識(shí)更好的理解文本語(yǔ)義。例如你是一個(gè)律師,在閱讀法律的文章的時(shí)候,背后隱藏著對(duì)這個(gè)法律行業(yè)相關(guān)知識(shí),建立起這個(gè)行業(yè)領(lǐng)域知識(shí)的知識(shí)圖譜才可以更好完成文字閱讀。知識(shí)圖譜的核心在于構(gòu)建{實(shí)體E – 屬性A – 關(guān)系R}三元素。
確保文本挖掘技術(shù)效果的兩個(gè)要點(diǎn)
要點(diǎn)1:因地制宜 針對(duì)特定應(yīng)用場(chǎng)景定制語(yǔ)言模型
雖然用的都是漢語(yǔ)或英語(yǔ),但在在不同的場(chǎng)景需要的方法有很大不同。例如:讓計(jì)算機(jī)自動(dòng)提取合同文本信息,自動(dòng)判斷合同文本中關(guān)聯(lián)的要素和法律風(fēng)險(xiǎn),這些文本都有一定的潛在的語(yǔ)法結(jié)構(gòu)。在做具體的專(zhuān)家文本判別時(shí),我們需要建立這些具體的行業(yè)文本的知識(shí)庫(kù),這些都有文本派別和語(yǔ)言模型。
評(píng)論分析是目前很多企業(yè)應(yīng)用的領(lǐng)域。很多企業(yè)每天會(huì)收到網(wǎng)上用戶(hù)留下的成千上萬(wàn)條評(píng)論意見(jiàn),甚至其中有一些是競(jìng)爭(zhēng)對(duì)手的情報(bào)信息和評(píng)論信息。比如說(shuō)手機(jī)行業(yè)分析用戶(hù)評(píng)論意見(jiàn)時(shí),通常評(píng)論有大量的省略和簡(jiǎn)稱(chēng),小米手機(jī)第六代通常說(shuō)米6,計(jì)算機(jī)沒(méi)有專(zhuān)業(yè)領(lǐng)域知識(shí)很難像人一樣解讀這句話(huà)。
還有一個(gè)問(wèn)題是口語(yǔ)和書(shū)面語(yǔ)的分別處理方式不同,書(shū)面語(yǔ)是常寫(xiě)在內(nèi)部文件中,但是通常彈幕、網(wǎng)絡(luò)評(píng)論都是口語(yǔ)表達(dá)。比如說(shuō)杯具、稀飯都不是吃的東西。
要點(diǎn)2:持續(xù)的學(xué)習(xí)能力,?確保泛化能力始終提升
機(jī)器學(xué)習(xí)的好處是可以通過(guò)反復(fù)迭代,實(shí)現(xiàn)持續(xù)學(xué)習(xí)、持續(xù)提升的效果。在文本挖掘中很多企業(yè)的挖掘都是依照規(guī)則的方法,但長(zhǎng)期來(lái)看這種方法泛化能力或自主學(xué)習(xí)能力不夠。通過(guò)機(jī)器學(xué)習(xí)以及用算法提升算法的能力,來(lái)提升挖掘的效果是計(jì)算機(jī)處理模塊時(shí)很重要的能力。
文本挖掘基礎(chǔ)性應(yīng)用類(lèi)型劃分
計(jì)算機(jī)不像人一樣真的可以閱讀文字,計(jì)算機(jī)很多時(shí)候是輸入一段字庫(kù),輸出相應(yīng)的結(jié)構(gòu)。一邊是編碼,一邊是解碼。
文本挖掘基礎(chǔ)應(yīng)用的類(lèi)型可以分為四大類(lèi):
1.?抽取?計(jì)算機(jī)想要自動(dòng)解析文本,需要能夠識(shí)別很多關(guān)鍵要素。例如,當(dāng)計(jì)算機(jī)閱讀一份法律合同文書(shū)時(shí),能夠識(shí)別里面的判決書(shū)編號(hào)、被告人、辯護(hù)人、判決依據(jù)等等,并能夠從文本中提取出這些要素進(jìn)行結(jié)構(gòu)化處理。對(duì)于很多文本密集的行業(yè),抽取這件事情很有價(jià)值。
2.劃分?舉一個(gè)應(yīng)用的案例,企業(yè)拿到大量客戶(hù)的意見(jiàn),需要知道這些意見(jiàn)哪些是好的哪些是壞的,不同的意見(jiàn)需要后續(xù)給哪個(gè)部分負(fù)責(zé)處理,這些是典型評(píng)論意見(jiàn)觀點(diǎn)的識(shí)別和觀點(diǎn)劃分的應(yīng)用。
3.轉(zhuǎn)換?談到轉(zhuǎn)換我們既可以讓計(jì)算機(jī)進(jìn)行語(yǔ)言的轉(zhuǎn)換,也可以讓計(jì)算機(jī)把文本轉(zhuǎn)換成更正確的語(yǔ)言方式。例如下面這份刑事裁定書(shū)里面有很多不符合語(yǔ)法習(xí)慣的地方,“政治權(quán)力”“云南省趨近市”這些都是錯(cuò)誤的表達(dá),計(jì)算機(jī)能智能的幫人們發(fā)現(xiàn)并修改錯(cuò)誤。
4.?合成?計(jì)算機(jī)寫(xiě)作也許是未來(lái)比較熱門(mén)的行業(yè)。目前的寫(xiě)作還是以模板為主,比如基于一些合同模板把要素填寫(xiě)進(jìn)來(lái)。但未來(lái)我們希望除了模板外,計(jì)算機(jī)還可以幫助人們修改潤(rùn)色文章。甚至可以擺脫模板的方式,通過(guò)“閱讀”大量的文字來(lái)實(shí)現(xiàn)機(jī)器寫(xiě)作。
文本挖掘技術(shù)的延伸應(yīng)用
上面提到的抽取、劃分、轉(zhuǎn)換和合成可以對(duì)文字進(jìn)行很多處理,在滿(mǎn)足企業(yè)的一些應(yīng)用需求后,還可以進(jìn)一步延伸。比如大家每天都在用的搜索和推薦都是進(jìn)一步的應(yīng)用。
搜索其實(shí)是非常典型的自然語(yǔ)言處理的應(yīng)用。它的核心技術(shù)有兩部分,其一是對(duì)文本語(yǔ)義的深入理解,第二是解決搜索時(shí)間的性能問(wèn)題。通常索引資料庫(kù)很大,可能有上千億的內(nèi)容,在搜索的過(guò)程中我們不需要計(jì)算機(jī)一個(gè)一個(gè)找,而是在很短的時(shí)間內(nèi),用零點(diǎn)幾秒解決響應(yīng)的問(wèn)題。這些需要用特殊的數(shù)據(jù)結(jié)構(gòu)來(lái)完成。
另外,在搜索時(shí)如何讓計(jì)算機(jī)幫助人來(lái)匹配更多優(yōu)質(zhì)資源,其實(shí)需要做更多語(yǔ)義的延伸。同一句話(huà)不同的人可以用不同的語(yǔ)言方式來(lái)表達(dá)。計(jì)算機(jī)幫助人做語(yǔ)義的擴(kuò)展需要了解詞和詞,句子和句子之間的關(guān)系,才能更好做語(yǔ)義之間理解的功能。
除搜索之外,個(gè)性化推薦也是語(yǔ)義理解中重要的應(yīng)用。做內(nèi)容和人的連接時(shí),更好的完成用戶(hù)畫(huà)像需要分析出哪一個(gè)人之前看過(guò)這些內(nèi)容,它的語(yǔ)義如何。文本挖掘技術(shù)在提升企業(yè)的運(yùn)營(yíng)質(zhì)量方面發(fā)揮了很大作用,達(dá)觀數(shù)據(jù)的個(gè)性化推薦引擎在幫助企業(yè)用戶(hù)提升點(diǎn)擊率、留存以及關(guān)鍵指標(biāo)上都有著明顯的效果。