色屁屁www影院免费观看入口,欧美性猛交ⅹxxx乱大交妖精,欧美激情第5页,欧美性猛交xxxx三人,欧美一a级做爰片大开眼界

達(dá)觀動(dòng)態(tài)

達(dá)觀愿與業(yè)內(nèi)同行分享 助力各企業(yè)在大數(shù)據(jù)浪潮來(lái)臨之際一起破浪前行

達(dá)觀數(shù)據(jù)如何打造一個(gè)中文NER系統(tǒng)

達(dá)觀數(shù)據(jù)如何打造一個(gè)中文NER系統(tǒng)-高翔修改版18

1 NER簡(jiǎn)介

NER(Named Entity Recognition,命名實(shí)體識(shí)別)又稱作專(zhuān)名識(shí)別,是自然語(yǔ)言處理中常見(jiàn)的一項(xiàng)任務(wù),使用的范圍非常廣。命名實(shí)體通常指的是文本中具有特別意義或者指代性非常強(qiáng)的實(shí)體,通常包括人名、地名、機(jī)構(gòu)名、時(shí)間、專(zhuān)有名詞等。NER系統(tǒng)就是從非結(jié)構(gòu)化的文本中抽取出上述實(shí)體,并且可以按照業(yè)務(wù)需求識(shí)別出更多類(lèi)別的實(shí)體,比如產(chǎn)品名稱、型號(hào)、價(jià)格等。因此實(shí)體這個(gè)概念可以很廣,只要是業(yè)務(wù)需要的特殊文本片段都可以稱為實(shí)體。以下將詳細(xì)介紹達(dá)觀數(shù)據(jù)在文本語(yǔ)義理解過(guò)程中是如何構(gòu)建中文NER系統(tǒng)的。(達(dá)觀數(shù)據(jù) 高翔)

 

2 NER問(wèn)題分解

NER問(wèn)題的目標(biāo)是從文本抽取出特定需求實(shí)體的文本片段。針對(duì)這個(gè)任務(wù),通常使用基于規(guī)則的方法和基于模型的方法。

2.1基于規(guī)則的方法

基于規(guī)則進(jìn)行實(shí)體抽取是較容易想到的方式。針對(duì)有特殊上下文的實(shí)體,或?qū)嶓w本身有很多特征的文本,使用規(guī)則的方法簡(jiǎn)單且有效。比如,抽取文本中物品價(jià)格,如果文本中所有商品價(jià)格都是“數(shù)字+元”的形式,則可以通過(guò)正則表達(dá)式”\d*\.?\d+元”進(jìn)行抽取。但是如果待抽取文本中價(jià)格的表達(dá)方式多種多樣,例如“一千八百萬(wàn)”、“伍佰貳拾圓”、“2000萬(wàn)元”,這個(gè)時(shí)候就要修改規(guī)則來(lái)滿足所有可能的情況。隨著語(yǔ)料數(shù)量的增加,面對(duì)的情況也越來(lái)越復(fù)雜,規(guī)則之間也可能發(fā)生沖突,整個(gè)系統(tǒng)也可能變得不可維護(hù)。因此基于規(guī)則的方式比較適合半結(jié)構(gòu)化或比較規(guī)范的文本中的進(jìn)行抽取任務(wù),結(jié)合業(yè)務(wù)需求能夠達(dá)到一定的效果??偨Y(jié)一下基于規(guī)則的實(shí)體抽取方式,優(yōu)點(diǎn):簡(jiǎn)單,快速;缺點(diǎn):適用性差,維護(hù)成本高后期甚至不能維護(hù)。(達(dá)觀數(shù)據(jù) 高翔)

2.2 基于模型的方法

從模型的角度來(lái)看,命名實(shí)體識(shí)別問(wèn)題實(shí)際上是序列標(biāo)注問(wèn)題。序列標(biāo)注問(wèn)題指的是模型的輸入是一個(gè)序列,包括文字、時(shí)間等,輸出也是一個(gè)序列。針對(duì)輸入序列的每一個(gè)單元,輸出一個(gè)特定的標(biāo)簽。以中文分詞任務(wù)進(jìn)行舉例,例如輸入序列是一串文字:“我是中國(guó)人”,輸出序列是一串標(biāo)簽:“SSBME”,其中“BMES”組成了一種中文分詞的標(biāo)簽體系,B表示這個(gè)字是詞的開(kāi)始Begin,M表示詞的中間Middle,E表示詞的結(jié)尾End,S表示單字成詞。因此我們可以根據(jù)輸出序列“SSBME”進(jìn)行解碼,得到分詞結(jié)果“我\是\中國(guó)人“。序列標(biāo)注問(wèn)題涵蓋了自然語(yǔ)言處理中的很多任務(wù),包括語(yǔ)音識(shí)別、中文分詞、機(jī)器翻譯、命名實(shí)體識(shí)別等,而常見(jiàn)的序列標(biāo)注模型包括HMM,CRF,RNN等模型。

2.2.1 HMM

HMM(Hidden Markov Model,隱馬爾可夫模型)是使用非常廣泛經(jīng)典的一個(gè)統(tǒng)計(jì)模型,作為一個(gè)生成式模型,HMM用來(lái)描述一個(gè)含有隱含未知參數(shù)的馬爾可夫過(guò)程。簡(jiǎn)單來(lái)講,HMM模型包括兩個(gè)序列三個(gè)矩陣:觀察序列、隱藏序列、初始狀態(tài)概率矩陣、狀態(tài)轉(zhuǎn)移概率矩陣、發(fā)射概率矩陣。通常情況下,我們要根據(jù)觀察序列和三個(gè)矩陣,來(lái)得到隱藏序列。

達(dá)觀數(shù)據(jù)如何打造一個(gè)中文NER系統(tǒng)-高翔修改版1232

圖1:HMM模型,其中X表示隱藏序列,y表示觀察序列,a表示狀態(tài)轉(zhuǎn)移概率,b表示發(fā)射概率

 

以中文分詞任務(wù)舉例,使用“BMES”標(biāo)簽體系,HMM模型就是從切分好的語(yǔ)料中統(tǒng)計(jì)出初始狀態(tài)概率矩陣、狀態(tài)轉(zhuǎn)移概率矩陣、發(fā)射概率矩陣這三個(gè)矩陣的概率參數(shù)。初始狀態(tài)矩陣指的是序列第一個(gè)字符是BMES的概率,顯然字符是M和E的概率為0。狀態(tài)轉(zhuǎn)移概率矩陣是BMES四種狀態(tài)間轉(zhuǎn)移的概率,顯然B–>S,M–>S,M–>B等狀態(tài)的轉(zhuǎn)移概率為0。發(fā)射概率矩陣指的是一個(gè)字符是BMES四種狀態(tài)其中一種的概率,比如“中–>B:0.3“、“中–>E:0.4“等??梢钥吹?,HMM模型只需按照模型要求,統(tǒng)計(jì)出上述概率矩陣即可,因此HMM的優(yōu)點(diǎn)是模型簡(jiǎn)單訓(xùn)練快,但因?yàn)轳R爾可夫假設(shè)的原因,模型效果相對(duì)較差。

2.2.2 CRF

CRF(Conditional random field,條件隨機(jī)場(chǎng))是一種判別式模型。條件隨機(jī)場(chǎng)是給定隨機(jī)變量X的情況下,隨機(jī)變量Y的馬爾科夫隨機(jī)場(chǎng)。馬爾科夫隨機(jī)場(chǎng)是概率無(wú)向圖模型,滿足成對(duì)、局部及全局馬爾可夫性。對(duì)于序列標(biāo)注問(wèn)題,一般使用線性鏈條件隨機(jī)場(chǎng)。

達(dá)觀數(shù)據(jù)如何打造一個(gè)中文NER系統(tǒng)-高翔修改版1718

圖2:一種線性條件隨機(jī)場(chǎng)

對(duì)于條件隨機(jī)場(chǎng)的模型訓(xùn)練,通常使用基于BFGS、SGD等算法的優(yōu)化算法,不同軟件包的實(shí)現(xiàn)上也有所區(qū)別。理論上CRF算法性能要優(yōu)于HMM,因?yàn)镃RF可以使用更多的特征,但同時(shí),特征選擇對(duì)于模型的性能有一定的影響,除此之外,相對(duì)于HMM,CRF模型的訓(xùn)練也更加復(fù)雜,時(shí)間相對(duì)較長(zhǎng)。

2.2.3 RNN

隨著深度學(xué)習(xí)的興起,RNN、LSTM、BILSTM等模型已經(jīng)被證明在NLP任務(wù)上有著良好的表現(xiàn)。相比傳統(tǒng)模型,RNN能夠考慮長(zhǎng)遠(yuǎn)的上下文信息,并且能夠解決CRF特征選擇的問(wèn)題,可以將主要的精力花在網(wǎng)絡(luò)設(shè)計(jì)和參數(shù)調(diào)優(yōu)上,但RNN一般需要較大的訓(xùn)練數(shù)據(jù),在小規(guī)模數(shù)據(jù)集上,CRF表現(xiàn)較好。在學(xué)術(shù)界,目前比較流行的做法是將BILISTM和CRF進(jìn)行結(jié)合,借鑒兩個(gè)模型各自的優(yōu)點(diǎn),來(lái)達(dá)到更好的效果。

達(dá)觀數(shù)據(jù)如何打造一個(gè)中文NER系統(tǒng)-高翔修改版2078

圖3:BILSTM+CRF標(biāo)注模型

3基于CRF模型打造中文NER系統(tǒng)

上面介紹了用于序列標(biāo)注不同模型的特點(diǎn)。雖然深度學(xué)習(xí)有著廣闊的前景,并且在機(jī)器翻譯等任務(wù)上表現(xiàn)優(yōu)異,但對(duì)于序列標(biāo)注任務(wù)而言,CRF模型老而彌堅(jiān)且比較成熟,在工業(yè)界中被廣泛使用,因此本章使用CRF模型打造一個(gè)中文NER系統(tǒng)。(達(dá)觀數(shù)據(jù) 高翔)

 

3.1 明確標(biāo)注任務(wù)

前文講過(guò),NER可以根據(jù)業(yè)務(wù)需求標(biāo)注各種不同類(lèi)型的實(shí)體,因此首先要明確需要抽取的實(shí)體類(lèi)型。一般通用場(chǎng)景下,最常提取的是時(shí)間、人物、地點(diǎn)及組織機(jī)構(gòu)名,因此本任務(wù)提取TIME、PERSON、LOCATION、ORGANIZATION四種實(shí)體。

3.2 數(shù)據(jù)及工具準(zhǔn)備

明確任務(wù)后就需要訓(xùn)練數(shù)據(jù)和模型工具。對(duì)于訓(xùn)練數(shù)據(jù),我們使用經(jīng)典的人民日?qǐng)?bào)1998中文標(biāo)注語(yǔ)料庫(kù),其中包括了分詞和詞性標(biāo)注結(jié)果,下載地址為:http://icl.pku.edu.cn/icl_groups/corpus/dwldform1.asp。對(duì)于CRF,有很多開(kāi)源的工具包可供選擇,在此使用CRF++進(jìn)行訓(xùn)練。CRF++官方主頁(yè)為https://taku910.github.io/crfpp/,包括下載及使用等說(shuō)明。

3.3 數(shù)據(jù)預(yù)處理

人民日?qǐng)?bào)1998語(yǔ)料庫(kù)下載完畢后,解壓打開(kāi)“199801.txt”這個(gè)文件(注意編碼轉(zhuǎn)換成UTF-8),可以看到內(nèi)容是由word/pos組成,中間以兩個(gè)空格隔開(kāi)。我們需要的提取的實(shí)體是時(shí)間、人名、地名、組織機(jī)構(gòu)名,根據(jù)1998語(yǔ)料庫(kù)的詞性標(biāo)記說(shuō)明,對(duì)應(yīng)的詞性依次為t、nr、ns、nt。通過(guò)觀察語(yǔ)料庫(kù)數(shù)據(jù),需要注意四點(diǎn):1,1998語(yǔ)料庫(kù)標(biāo)注人名時(shí),將姓和名分開(kāi)標(biāo)注,因此需要合并姓名;2,中括號(hào)括起來(lái)的幾個(gè)詞表示大粒度分詞,表意能力更強(qiáng),需要將括號(hào)內(nèi)內(nèi)容合并;3,時(shí)間合并,例如將”1997年/t ?3月/t”?合并成”1997年3月/t”;4,全角字符統(tǒng)一轉(zhuǎn)為半角字符,尤其是數(shù)字的表示。

通過(guò)腳本將語(yǔ)料庫(kù)數(shù)據(jù)進(jìn)行處理,處理前后的結(jié)果如圖4和圖5所示。

達(dá)觀數(shù)據(jù)如何打造一個(gè)中文NER系統(tǒng)-高翔修改版3050

圖4:人民日?qǐng)?bào)1998標(biāo)注語(yǔ)料數(shù)據(jù)處理前

 

達(dá)觀數(shù)據(jù)如何打造一個(gè)中文NER系統(tǒng)-高翔修改版3074

圖5:人民日?qǐng)?bào)1998標(biāo)注語(yǔ)料數(shù)據(jù)處理后

 

3.4 模型訓(xùn)練

根據(jù)我們的NER任務(wù)需求及CRF++的訓(xùn)練要求,模型訓(xùn)練需要4個(gè)步驟:1,確定標(biāo)簽體系;2,確定特征模板文件;3,處理訓(xùn)練數(shù)據(jù)文件;4,模型訓(xùn)練。(達(dá)觀數(shù)據(jù) 高翔)

 

3.4.1 確定標(biāo)簽體系

對(duì)于NER任務(wù),常見(jiàn)的標(biāo)簽體系包括IO、BIO、BMEWO、BMEWO+。下面舉例說(shuō)明不同標(biāo)簽體系的區(qū)別。

Tokens IO BIO BMEWO BMEWO+
O O O O
O O O O
O O O O_PERSON
I_PERSON B_PERSON B_PERSON B_PERSON
I_PERSON I_PERSON M_PERSON M_PERSON
I_PERSON I_PERSON E_PERSON E_PERSON
O O O PERSON_O
O O O O_LOCATION
I_LOCATION B_LOCATION B_LOCATION B_LOCATION
I_LOCATION I_LOCATION E_LOCATION E_LOCATION
。 O O O LOCATION_O

表格1:不同標(biāo)簽體系的標(biāo)注示例

 

大部分情況下,標(biāo)簽體系越復(fù)雜準(zhǔn)確度也越高,但相應(yīng)的訓(xùn)練時(shí)間也會(huì)增加。因此需要根據(jù)實(shí)際情況選擇合適的標(biāo)簽體系。本文選擇和分詞系統(tǒng)類(lèi)似的BMEWO標(biāo)簽體系。

3.4.2 特征模版設(shè)計(jì)

特征模版是一個(gè)文本文件,其內(nèi)容如圖6所示,其中每行表示一個(gè)特征。圖6使用了unigram特征,并且僅以字符本身作為特征而不考慮其他特征。除當(dāng)前字符外,還使用了其前后3個(gè)字,以及上下文的組合作為特征。CRF++會(huì)根據(jù)特征模版生成相關(guān)的特征函數(shù)。關(guān)于特征模版的詳細(xì)解釋可以查看官網(wǎng)文檔,并且對(duì)于特征的選擇和設(shè)計(jì)可以靈活配置,圖6僅作為參考。

達(dá)觀數(shù)據(jù)如何打造一個(gè)中文NER系統(tǒng)-高翔修改版3871

圖6:特征模板設(shè)計(jì)

 

3.4.3 訓(xùn)練數(shù)據(jù)生成

CRF模型的訓(xùn)練數(shù)據(jù)是一行一個(gè)token,一句話由多行token組成。每一行可以分為多列,除最后一列外,其他列表示特征。本文所描述的NER系統(tǒng),單字表示token,并且僅使用字符這一種特征,因此可以根據(jù)語(yǔ)料庫(kù)中每個(gè)字在詞中的位置和詞性,以及所選的標(biāo)簽系統(tǒng),生成CRF++的訓(xùn)練數(shù)據(jù)。生成的訓(xùn)練數(shù)據(jù)如圖7所示。

達(dá)觀數(shù)據(jù)如何打造一個(gè)中文NER系統(tǒng)-高翔修改版4052

圖7:CRF++訓(xùn)練數(shù)據(jù)示例

 

3.4.4 模型訓(xùn)練

準(zhǔn)備好特征模版和訓(xùn)練數(shù)據(jù)后就可以進(jìn)行模型訓(xùn)練,如圖8所示。使用crf_learn命令,指定模版文件、訓(xùn)練數(shù)據(jù)文件和輸出模型文件就可以進(jìn)行訓(xùn)練。參數(shù)-f 1表示過(guò)濾頻次低于1的特征,在這里不進(jìn)行特征過(guò)濾,-c 1.0用來(lái)調(diào)節(jié)CRFs的超參數(shù),c值越大越容易過(guò)擬合。除此之外,還有-a等其他參數(shù)進(jìn)行控制調(diào)整。圖9展示了訓(xùn)練完畢的相關(guān)數(shù)據(jù)。

達(dá)觀數(shù)據(jù)如何打造一個(gè)中文NER系統(tǒng)-高翔修改版4249

圖8:CRF++訓(xùn)練過(guò)程

達(dá)觀數(shù)據(jù)如何打造一個(gè)中文NER系統(tǒng)-高翔修改版4264

圖9:CRF++訓(xùn)練結(jié)果

3.5 模型預(yù)測(cè)及使用

模型訓(xùn)練完畢后就可以進(jìn)行預(yù)測(cè)。CRF++提供crf_test命令進(jìn)行測(cè)試,我們使用文本“北京市委組織部長(zhǎng)姜志剛調(diào)任寧夏副書(shū)記“進(jìn)行測(cè)試,測(cè)試文件中每字一行,每句話使用空行隔開(kāi)。測(cè)試結(jié)果如圖10所示。

達(dá)觀數(shù)據(jù)如何打造一個(gè)中文NER系統(tǒng)-高翔修改版4391

圖10:CRF++測(cè)試結(jié)果

從圖10的結(jié)果我們可以看到,CRF模型能夠?qū)斎胛淖中蛄休敵鱿鄳?yīng)的標(biāo)簽從而完成NER任務(wù)。在模型預(yù)測(cè)時(shí),CRF++主要使用了維特比算法進(jìn)行nbest輸出。在模型訓(xùn)練時(shí),可以指定-t參數(shù)輸出文本格式的模型,方便debug或編寫(xiě)自己的模型加載及解碼程序。

對(duì)于一個(gè)完整的NER過(guò)程,除了得到序列標(biāo)簽外,還要對(duì)標(biāo)簽序列進(jìn)行解碼得到最終的結(jié)果。CRF++同時(shí)提供了python接口,可以方便的在python 程序中進(jìn)行模型的調(diào)用得到標(biāo)簽序列,然后通過(guò)標(biāo)簽解碼得到最終的結(jié)果。圖11展示了一個(gè)完整的NER預(yù)測(cè)結(jié)果。

達(dá)觀數(shù)據(jù)如何打造一個(gè)中文NER系統(tǒng)-高翔修改版4660

圖11:使用python代碼進(jìn)行NER的預(yù)測(cè)結(jié)果

 

圖11展示了較好的結(jié)果,能夠識(shí)別出諸如“北京小米科技有限責(zé)任公司”這樣的組織機(jī)構(gòu)名。通過(guò)使用1998年的數(shù)據(jù)識(shí)別出了2010年才成立的公司,這就是模型算法的力量。當(dāng)然模型也有瑕疵,諸如“郁亮“、”海聞”這樣的人名沒(méi)有識(shí)別出來(lái),這除了和模型特征選擇相關(guān)外,也和語(yǔ)料庫(kù)的規(guī)模和標(biāo)注有關(guān),因此語(yǔ)料庫(kù)的建設(shè)和積累更加重要。(達(dá)觀數(shù)據(jù) 高翔)

4 總結(jié)

本文講述了NER任務(wù)的基本概念及方法,并使用業(yè)界成熟的語(yǔ)料和工具開(kāi)發(fā)了一個(gè)簡(jiǎn)單能work的基于CRF模型的中文NER系統(tǒng),而實(shí)際提供線上服務(wù)的NER系統(tǒng)要比這個(gè)復(fù)雜的多。在自然語(yǔ)言處理的實(shí)際工作中,除了不同模型、算法、工具的使用和參數(shù)調(diào)優(yōu)外,語(yǔ)料庫(kù)的選擇和積累也非常重要。對(duì)于中文文本語(yǔ)義分析技術(shù),達(dá)觀數(shù)據(jù)擁有多年的技術(shù)積累并緊跟行業(yè)潮流,對(duì)已有成熟技術(shù)進(jìn)行深挖,對(duì)新興技術(shù)進(jìn)行研究集成。同時(shí),針對(duì)不同行業(yè)及任務(wù)積累了豐富的文本語(yǔ)料,并源源不斷的使用新數(shù)據(jù)對(duì)語(yǔ)料模型進(jìn)行升級(jí)更新,保證分析結(jié)果的準(zhǔn)確性和實(shí)時(shí)性,為客戶提供高品質(zhì)服務(wù)。(達(dá)觀數(shù)據(jù) 高翔)

 

作者簡(jiǎn)介

高翔,達(dá)觀數(shù)據(jù)聯(lián)合創(chuàng)始人,首席數(shù)據(jù)官聯(lián)盟成員,達(dá)觀數(shù)據(jù)前端項(xiàng)目組、文本語(yǔ)義理解組負(fù)責(zé)人,自然語(yǔ)言處理技術(shù)專(zhuān)家,上海交通大學(xué)通信專(zhuān)業(yè)碩士,曾代表達(dá)觀數(shù)據(jù)參加2016青年互聯(lián)網(wǎng)創(chuàng)業(yè)大賽并贏得全國(guó)總冠軍榮譽(yù)、第五屆中國(guó)創(chuàng)新創(chuàng)業(yè)大賽優(yōu)秀企業(yè)獎(jiǎng)、中國(guó)電子i+創(chuàng)新創(chuàng)效創(chuàng)意大賽總決賽一等獎(jiǎng)。曾就職于騰訊文學(xué),盛大文學(xué),盛大創(chuàng)新院,負(fù)責(zé)文本閱讀類(lèi)產(chǎn)品、搜索引擎、文本挖掘及大數(shù)據(jù)調(diào)度系統(tǒng)的開(kāi)發(fā)工作。在自然語(yǔ)言處理和機(jī)器學(xué)習(xí)等技術(shù)方向有著豐富的經(jīng)驗(yàn)。