Tolegen Gulmira,鄔春學(xué)
(上海理工大學(xué) 光電信息與計算機(jī)工程學(xué)院,上海 200093)
基于深度學(xué)習(xí)方法的句子及語素邊界劃分研究
Tolegen Gulmira,鄔春學(xué)
(上海理工大學(xué) 光電信息與計算機(jī)工程學(xué)院,上海 200093)
針對哈薩克語的句子、單詞及語素邊界檢測問題,文中提出了一種基于深度學(xué)習(xí)的邊界檢測方法:CNN-TSS模型。通過將邊界檢測問題視為序列標(biāo)注任務(wù),將句子、單詞及語素的邊界檢測合并為一種任務(wù)完成。通過對CNN-TSS模型選取最優(yōu)超參數(shù),對不同語言進(jìn)行了測試。實驗結(jié)果表明,該模型在不使用額外特征的情況下,在性能上超過了基于傳統(tǒng)方法的邊界檢測系統(tǒng)。
句子邊界檢測;語素邊界檢測;黏著語;深度學(xué)習(xí)
句子、單詞及語素邊界劃分任務(wù)是詞性標(biāo)注[1]、機(jī)器翻譯、篇章理解等自然語言處理(Natural Language Processing,NLP)任務(wù)的基礎(chǔ)研究之一。該任務(wù)的主要目的是自動找出文本中句子、單詞、語素的左右邊界,使得處理后的文本可以用于其他的NLP任務(wù)當(dāng)中。雖然在NLP研究中,所采用的語料都已經(jīng)經(jīng)過了人工標(biāo)注和劃分,當(dāng)語料庫添加其他新領(lǐng)域文本時,則首先需要對源文本做分句和分詞等處理,如果分句和分詞模型準(zhǔn)確率比較高,則會有利于其他后續(xù)工作的開展。而且多數(shù)NLP應(yīng)用在實際使用時,通常首先就需要對原文本進(jìn)行分句和分詞等處理。所以實現(xiàn)一種準(zhǔn)確率較為理想的分句、分詞模型是NLP任務(wù)的關(guān)鍵之一。
句子的邊界通常由句號、問號、感嘆號和省略號等符號來表示,然而這些符號使用會出現(xiàn)歧異,例如在英語的縮寫詞當(dāng)中就會使用與句號等符號,這對句子邊界的劃分帶來一定困難。此外,對英語及黏著語(Agglutinative Language)來說,如哈薩克語(Kazakh),土耳其語 (Turkish),雖然這些語言的單詞邊界可以通過空格來識別,但是有些復(fù)雜的形態(tài)結(jié)構(gòu)的單詞,在實際中,需要將其分為兩個標(biāo)示符(token)來看待,因為黏著語的構(gòu)詞法是通過對詞根綴加不同后綴而形成,不同的后綴有一定的語義和語法功能,所以這將會有利于語法分析、文本對齊、機(jī)器翻譯等任務(wù)的進(jìn)行。
針對哈薩克語的句子、單詞及語素邊界劃分問題,本文提出了基于深度學(xué)習(xí)方法的邊界劃分模型。并將句子、單詞及語素邊界劃分任務(wù)作為一種序列標(biāo)注任務(wù)一次完成[2]。本文中實現(xiàn)了基于字符的句子及語素邊界劃分模型(Character Neural Networks for Token and Sentence Segmentation, CNN-TSS),簡稱CNN-TSS模型。為有效評估CNN-TSS模型的性能,本文首先對哈薩克的句子,語素邊界劃分任務(wù)進(jìn)行了測試,而且在其他語言上與已有的工作進(jìn)行了系統(tǒng)的比較。
通常,句子、單詞及語素邊界劃分任務(wù)作為獨(dú)立不同的任務(wù)來完成,但為了進(jìn)一步提高模型的準(zhǔn)確率,可以共享不同任務(wù)的信息,即作為一種任務(wù)來解決。一般有兩種解決方法:第一種是基于規(guī)則的方法;另一種是基于機(jī)器學(xué)習(xí)的方法。前者[3-4]需要大量的人工編寫的正則表達(dá)式規(guī)則,通過匹配規(guī)則達(dá)到邊界劃分效果。但該類方法在性能,可擴(kuò)展性及適用性上都比較弱,對新領(lǐng)域語料需要重新設(shè)計和編寫規(guī)則。后者通常分為兩種:有監(jiān)督學(xué)習(xí)和無監(jiān)督學(xué)習(xí)方法的邊界檢測模型。文獻(xiàn)[2]提出了獨(dú)立于語言特征的基于無監(jiān)督學(xué)習(xí)方法的句子邊界識別模型- Punkt系統(tǒng)。該系統(tǒng)主要包含了兩個檢測階段,即縮寫檢測和標(biāo)示符分類階段。從實驗結(jié)果來看,Punkt 在分句任務(wù)上得到了比較理想的結(jié)果,超過了基于規(guī)則的方法。
目前已有的基于有監(jiān)督學(xué)習(xí)方法的分句模型多數(shù)都使用了額外的特征集合,如在英文中使用單詞大小寫,縮寫詞列表等。模型主要采用了最大熵模型(Maximum Entropy Model)[7]和條件隨機(jī)場(Conditional Random Field, CRF)模型[8]。文獻(xiàn)[1]提出了基于CRF的句子及單詞邊界自動劃分模型Elephant系統(tǒng)。該模型將每個字符視為標(biāo)注單元,采用Unicode類別,Unicode編碼,神經(jīng)網(wǎng)絡(luò)模型隱含層特征以及這些特征組合作為特征,在英語、意大利語及荷蘭語上的分詞和分句語料上進(jìn)行了測試,并取得了比較好的結(jié)果。
為避免傳統(tǒng)方法中所需要的特征工程,本文實現(xiàn)了基于深度學(xué)習(xí)方法的句子,單詞及語素邊界劃分模型(CNN-TSS),而且在該模型中,本文將句子,單詞及語素邊界劃分作為一種任務(wù)解決,并且在沒有采用額外的特征的情況下,將其與上述的Punk和Elephant系統(tǒng)進(jìn)行了比較。
IOB標(biāo)注方案是NLP序列標(biāo)注任務(wù),如詞性標(biāo)注,命名實體識別等任務(wù)中常用的一種標(biāo)注方案。本文使用了IOB標(biāo)注方案來識別句子,詞語和語素的邊界。該方案包含了I、O、S、T標(biāo)簽,其中,S和T分別表示句子和token的開始邊界。將token內(nèi)部的字符標(biāo)注為I,token外部的字符標(biāo)注為O。這種標(biāo)注方案的有利之處在于,不僅可以劃分句子的開始和結(jié)束邊界,也可以將一個單詞根據(jù)所需要的需求劃分為幾個token。比如對英語單詞didn’t來說,可以將其劃分為兩個token: did 和 n’t。 Table 1 給出了相應(yīng)的IOB序列標(biāo)注的例子。 這里將句子中的每一個字符標(biāo)注為IOB標(biāo)簽的一個標(biāo)簽來區(qū)分句子和token的邊界。
表1 IOB序列標(biāo)注舉例,每個字符對應(yīng)于一個標(biāo)簽
在大多數(shù)NLP序列標(biāo)注任務(wù)中,基于詞的深度學(xué)習(xí)模型已經(jīng)得到了廣泛的使用[5]。 但本文對句子、單詞及語素邊界劃分任務(wù)引入基于字符的深度學(xué)習(xí)模型,稱其為CNN-TSS模型。該模型主要由基于窗口的字符映射層非線性層和輸出層組成。
3.1 基于窗口的字符映射層
定義C為從訓(xùn)練集中收集的字符集合。其中每個字符xi∈C可以表示為一個d維向量Mxi∈R1×d。將C中的所有字符的向量存入字符嵌入矩陣中M∈Rd×|C|,其中|C|為字符集大小。每個字符xi∈C都有一個索引系數(shù)ki,該系數(shù)為字符xi的向量在字符嵌入矩陣中的位置。對輸入的字符,輸入層能將相應(yīng)字符的向量提取出來表示為LTM(·)
LTM(ki)=Mxi
(1)
本文中采用了滑動窗口方法,定義w為窗口大小,則對w大小窗口的字符,輸入層中得到的向量可以表示為
(2)
3.2 非線性層
非線性層是將前一層的輸出作為輸入,經(jīng)過線性層的映射,并使用激活函數(shù)從原始的向量特征上進(jìn)一步提取高維非線性特征的過程,其計算過程可以表示為
(3)
其中,σ為Tanh激活函數(shù);W1為模型參數(shù);b1為bias項;h為隱含層的輸出。
3.3 輸出層
模型的輸出層將隱含層的輸出作為輸入,對當(dāng)前窗口的中心字符計算出相應(yīng)標(biāo)簽的概率,其可以表示為
Y(x,T,θ)=softmax(W2h+b2)
(4)
為測試CNN-TSS模型的性能,本文安排了兩組實驗:(1)分析不同超參數(shù)對模型性能的影響;(2)進(jìn)行最終測試并與已有工作進(jìn)行比較。實驗中使用了精確率(Accuracy)作為評估模型的性能的指標(biāo)。
4.1 實驗數(shù)據(jù)
本文對不同語言進(jìn)行了測試。對哈薩克語,本文人工標(biāo)注了新聞?wù)Z料,并將其作為訓(xùn)練和測試數(shù)據(jù)。此外,為了與已有系統(tǒng)進(jìn)行比較,本文對英語和意大利語,分別使用了GMB[6]和PAISà[7]數(shù)據(jù)集,該數(shù)據(jù)與已有工作[1-2]所使用的數(shù)據(jù)完全一致,其數(shù)據(jù)為:訓(xùn)練集,驗證集和測試集。驗證集是用于模型和超參數(shù)的選擇。表2給出了不同語言語料統(tǒng)計數(shù)據(jù)。
表2 IOB序列標(biāo)注例子
4.2 超參數(shù)選擇實驗
CNN-TSS模型主要的超參數(shù)包括:學(xué)習(xí)速率,隱含層單元數(shù)量,模型窗口大小和字符向量大小。根據(jù)文獻(xiàn)[12]實驗結(jié)果表明,在深度學(xué)習(xí)模型中學(xué)習(xí)速率是比較敏感的超參數(shù),可以將其他參數(shù)設(shè)置為較小值來調(diào)整模型的學(xué)習(xí)速率,會減少大部分調(diào)參數(shù)時間。對CNN-TSS模型,本文測試了不同的學(xué)習(xí)速率(1~0.000 1)。 表3給出了不同學(xué)習(xí)速率對模型性能的影響,并分別標(biāo)簽S,T及S+T+I計算了精確率,該實驗中使用了哈薩克語語料。 其中,Dev和Test分別為驗證集和測試集上的精確率。
表3 不同學(xué)習(xí)速率對模型性能的影響 /%
從表3中可以看出,當(dāng)學(xué)習(xí)速率設(shè)為0.01時,模型的性能最高,小于或大于該值都會影響模型的性能。標(biāo)簽S的準(zhǔn)確率比較低,其原因是其他超參數(shù)的值比較小的緣故。
表4給出了選擇不同窗口大小對模型性能的影響,將學(xué)習(xí)速率固定為0.01,對3,5,7,9,11不同大小窗口進(jìn)行了測試。
表4 不同窗口大小對模型性能的影響 /%
從表4中可以看出,模型的性能隨著窗口大小的不斷增大。對句子邊界S標(biāo)簽,當(dāng)取5為窗口大小時,其模型性能提升了60.05%,該結(jié)果表明,3個字符的信息量,不足以判斷句子的邊界,導(dǎo)致性能偏低。當(dāng)窗口大小為9時,模型的性能相對較高。但當(dāng)將窗口大小設(shè)為11時,標(biāo)簽S在測試集上的性能降低,結(jié)果表明,在句子邊界劃分上過大的窗口會將“噪聲信息”也會包含進(jìn)來導(dǎo)致錯誤。
表5 不同字符向量大小對模型性能的影響 /%
表5給出了不同大小的字符嵌入向量對模型性能的影響,本文對(5~50)之間的向量大小進(jìn)行了測試??梢钥闯觯?dāng)將每個字符用10維的向量表示時,模型在測試集上的性能相對比較高。當(dāng)增大字符嵌入向量大小后,沒有帶來明顯的性能提升。
表6給出了不同大小的隱含層單元數(shù)量對模型性能的影響??梢钥闯?,取50為隱含層單元數(shù)量時,在綜合考慮S,T和S+T+I標(biāo)簽時性能相對較好。取太大的隱含層數(shù)量并沒有對模型識別性能帶來太大提升,并增加模型計算時間。
表6 隱含層單元數(shù)量對模型性能的影響 /%
通過上述實驗結(jié)果,本文對CNN-TSS模型最終超參數(shù)進(jìn)行了選擇,如表7所示,并將其用于后續(xù)的實驗中。
表7 CNN-TSS模型的超參數(shù)
4.3 實驗結(jié)果
在選擇超參數(shù)后,本文在哈薩克語語料上,訓(xùn)練了CNN-TSS模型,并進(jìn)行了最終測試,其結(jié)果如表8所示。
表8 CNN-TSS模型對哈薩克語的測試結(jié)果 /%
此外,為進(jìn)一步驗證CNN-TSS模型的性能,本文將其與已有的Punkt 和 Elephant系統(tǒng)進(jìn)行了比較,如表9所示。實驗結(jié)果表明,CNN-TSS模型均在英語和意大利語上,性能超過了已有的系統(tǒng),而且該系統(tǒng)中使用了多種額外的特征集合。但CNN-TSS中只采用了上下文特征,實驗結(jié)果表明本文提出的CNN-TSS模型對句子,單詞及語素邊界劃分任務(wù)有較好的建模能力。
表9 CNN-TSS模型與其他系統(tǒng)的比較結(jié)果 /%
本文對哈薩克語的句子,單詞及語素邊界劃分問題提出了基于深度學(xué)習(xí)方法的邊界劃分模型,稱其為CNN-TSS模型。為了分析CNN-TSS模型性能,本文對超參數(shù)進(jìn)行了選擇,分析了不同超參數(shù)對模型性能的影響,實驗結(jié)果表明,CNN-TSS模型在哈薩克語的句子、單詞及語素邊界劃分任務(wù)上精確率達(dá)99.90%。
為進(jìn)一步驗證CNN-TSS模型的性能,本文與已有的模型在英語和意大利語上進(jìn)行了比較。實驗結(jié)果表明,CNN-TSS模型在沒有使用額外任何特征的情況下,其性能均超過了傳統(tǒng)模型,取得了較理想的結(jié)果。
[1] Evang K,Basile V,Chrupaxa G,et al.Elephant:sequence labeling for word and sentence segmentation[C].Washington,USA:In Proceedings of the Conference on Empirical Methods in Natural Language Processing,2013.
[2] Kiss T, Strunk J. Unsupervised multilingual sentence boundary detection[J]. Computational Linguistics, 2006, 32(4): 485-525.
[3] Jurafsky D, Martin J H. Speech and language processing: an introduction to natural language processing, computational linguistics, and speech recognition[M]. Speech and Language Processing : Prentice Hall, 2000.
[4] Read J, Dridan R, Oepen S, et al. Sentence boundary detection: A long solved problem?[C].International Conference on Computational Linguistics,2012.
[5] Collobert R, Weston J, Bottou L, et al. Natural language processing (Almost) from scratch[J]. Journal of Machine Learning Research, 2011, 12(1):2493-2537.
[6] Dridan R, Oepen S. Tokenization: returning to a long solved problem a survey, contrastive experiment, recommendations, and toolkit[C].India:Meeting of the Association for Computational Linguistics: Short Papers,2012.
[7] Reynar J C, Ratnaparkhi A. a maximum entropy approach to identifying sentence boundaries[C].Washington,DC,USA:In Proceedings of the Fifth Conference on Applied Natural Language Processing,Association for Computational Linguistics,1997.
[8] Lafferty J D, Mccallum A, Pereira F C N. Conditional random fields: probabilistic models for segmenting and labeling sequence data[C].CA,USA:In Proceeding of ICML,2001.
[9] Fares M, Oepen S, Zhang Y. Machine learning for high-quality tokenization replicating variable tokenization schemes [M].Berlin Heidelberg:Springer-Verlag,2013.
[10] Basile V,Bos J,Evang K,et al.Developing a large semantically annotated corpus[C].Istanbul,Turkey:In Proceedings of the Eight International Conference on Language Resources and Evaluation,2012.
[11] Castagnoli S, Borghetti C, Brunello M. I testi del web: una proposta di classificazione sulla base del corpus PAISà[M].Russia:Formale Informale-Lavariazione Diregistro Nella Comunicazione Elettronica,2011.
[12] Greff K, Srivastava R K, Koutnik J, et al. LSTM: a search space odyssey[J]. IEEE Transactions on Neural Networks & Learning Systems,2015(3):04069-04073.
Deep Learning for Sentence and Token Boundaries Detection
Toleu Galymzhan, WU Chunxue
(School of Optical-Electronic and Computer Engineering,University of Shanghai for Science and Technology,Shanghai 200093,China)
Sentence and token boundaries detection is one of the important tasks in natural language processing. In order to avoid task-specific feature engineering, we have proposed character-level based neural network model for token and sentence segmentation (CNN-TSS). In order to share the information from these tasks, we have treated them as a combined task. The experimental results show that CNN-TSS can achieve high-accuracy without using any external features.
sentence boundaries detection;token boundaries detection;agglutinative language;deep learning
2016- 11- 15
Tolegen Gulmira (1987-),女,碩士研究生。研究方向:自然語言處理。鄔春雪(1961-),男,教授。研究方向:計算機(jī)網(wǎng)絡(luò)應(yīng)用等。
10.16180/j.cnki.issn1007-7820.2017.09.006
TP391.1
A
1007-7820(2017)09-020-04