自然語言處理課程的第二天今天總算是補(bǔ)完了,課程的時(shí)間有限,但是內(nèi)容繁多,而且都是能深挖的大坑,我的主要研究重點(diǎn)不在這里,所以無法展開,下面是我對這次課的簡單介紹和筆記,來自深藍(lán)學(xué)院。
什么是句法分析 1
按照百度百科的解釋就是指對句子中的詞語語法功能進(jìn)行分析,例如“我來晚了”中,“我”是主語,“來”是謂語,“晚了”就是補(bǔ)語。這塊內(nèi)容其實(shí)在語言學(xué)等領(lǐng)域已經(jīng)有比較深入的研究,但是隨著數(shù)據(jù)的逐漸增多,這種分析就需要利用計(jì)算機(jī)自動化,句法分析就是這樣誕生的。
那么句法分析到底有什么用呢?句法分析的結(jié)果是一句話的句子成分分析,其實(shí)就可以用來做知識發(fā)現(xiàn)和挖掘,例如“張三是李四的兒子”,通過句法分析,能夠知道主謂賓等關(guān)系,能夠抽取具體的消息,例如這里能夠獲取一個(gè)關(guān)系——張三和李四是父子關(guān)系,根據(jù)這些知識,無論是做知識圖譜,還是做問答機(jī)器人等,都有大的作用,可見,句法分析是知識抽取的重要基礎(chǔ)。
句法分析的評價(jià)指標(biāo) 2
要深入研究句法分析,首先要知道,什么樣的句法分析算是好的句法分析,所以句法分析方法的評價(jià)是首要思考的問題,目前進(jìn)行句法分析,主要是用依存句法分析,其具體的評價(jià)指標(biāo)有下面5種。
無標(biāo)記依存正確率(UAS):所有詞中找到正確的頭詞所占的百分比,對于沒有頭詞的根節(jié)點(diǎn),只要根節(jié)點(diǎn)是對的,也將這個(gè)根節(jié)點(diǎn)算作其中(Nivre et al., 2004)
根正確率(RA):所有句子中找到正確根的句子所占的百分比(Yamada and Matsumoto, 2003)
完全匹配率(CM):所有句子中無標(biāo)記依存結(jié)構(gòu)完全正確的句子所占的百分比(Yamada and Matsumoto, 2003)
帶標(biāo)記依存正確率(LAS):所有詞中找到正確的頭詞并分配到正確標(biāo)記的詞所占的百分比,對于沒有頭詞的根節(jié)點(diǎn),只要根節(jié)點(diǎn)是對的,也將這個(gè)根節(jié)點(diǎn)算作其中(Nivre et al., 2004)
標(biāo)記正確率(LA):所有詞中依存標(biāo)記正確的詞所占的百分比,只要根節(jié)點(diǎn)是對的,也將這個(gè)根節(jié)點(diǎn)算作其中(Nivre et al., 2004)
對現(xiàn)行方法的簡單評價(jià) 3
首先看看英文的,英文畢竟是目前自然語言處理的主力和焦點(diǎn),而且英語具有相對嚴(yán)禁的語法結(jié)構(gòu)。
本身UAS的定義相比CM,就較弱,而且USA是無監(jiān)督的方法,所以會比CM的正確率高很多。從CM看來,正確率不足50%,其實(shí)并不高,可見依存句法分析任重道遠(yuǎn)。
然后看中文,中文的自然語言處理相對比較難,一方面是中文本身的語法特性,另一方面中文分詞的時(shí)候本就有誤差,再進(jìn)行句法分析會產(chǎn)生誤差疊加。
可以明顯地看到,UAS和CM相比英文會更加低,說明中文的難度會比英文高,目前的潛力仍比較強(qiáng)。
綜上所述,目前雖然已經(jīng)有比較豐富的方法,但是準(zhǔn)確度還有比較大的上升空間。
句法分析的主要方法 4
糾結(jié)了很久,想了要怎么寫,要是詳細(xì)些,這就不是公眾號,是書了,要是不詳細(xì)寫,又怕你們罵我,于是我想了一個(gè)比較中和的方案,那就是我弄綜述,參考文獻(xiàn)給你們,有興趣的你們自己去看,你們覺得怎么樣?
句法分析,尤其針對依存句法分析,主要有基于動態(tài)規(guī)劃,基于決策,基于融合的方法,當(dāng)然還有一些擴(kuò)展性的方法。
基于動態(tài)規(guī)劃的方法
基于動態(tài)規(guī)劃的方法,其實(shí)就是直接對依存樹進(jìn)行分析。早期,采用的方法是將依存圖中的節(jié)點(diǎn)看作短語結(jié)構(gòu)中的節(jié)點(diǎn),從而可以應(yīng)用上下文無關(guān)文法中成熟的CKY算法(Gaifman, 1965),然而時(shí)間復(fù)雜度非??膳碌剡_(dá)到了O(n5),后來提出了雙詞匯語法,其方法主要分為產(chǎn)生式方法(Eisner, 1996)和判別式方法(McDonald et al., 2005; McDonald, 2006),成功地將復(fù)雜度降低到O(n3)。
生成式和判別式和機(jī)器學(xué)習(xí)里面的生成和判別相同,生成式方法采用聯(lián)合概率模型生成一系列依存句法樹并賦予其概率分值,然后采用相關(guān)算法找到概率打分最高的分析結(jié)果作為最后的輸出,說白了就是把概率分布求出來,然后根據(jù)概率分布進(jìn)行下一步的分析和決策,在句法分析中將詞與詞之間的依存關(guān)系看作是成分結(jié)構(gòu),用類似于短語結(jié)構(gòu)句法分析的方法來獲取依存關(guān)系,其優(yōu)點(diǎn)是能夠得到每種決策的概率關(guān)系,決策更加全面,但是缺點(diǎn)是畢竟在相同的信息下,相比判別式整體決策精度可能會下降,其信息消耗花在進(jìn)行計(jì)算概率分布上太多,導(dǎo)致最后拍板的時(shí)候受到約束。
判別式將依存分析看作是在一個(gè)依存圖上尋找最大生成樹(MST)的問題,該生成樹滿足上述三個(gè)約束條件:連通、單一父節(jié)點(diǎn)、無環(huán),并不需要求概率分布,相比生成式,其優(yōu)點(diǎn)是操作更為簡單,可以運(yùn)用更多的機(jī)器學(xué)習(xí)方法,而且出現(xiàn)下溢的情況更少(計(jì)算機(jī)在計(jì)算10的負(fù)好多次方的時(shí)候會出現(xiàn)下溢情況,精度會大大下降),復(fù)雜度相對較低,最終精度偏高。
基于決策的方法
基于決策的方法把分析過程看成是分析序列,建立詞之間的聯(lián)系,Covington(2001) 將決策的過程從句子的左端開始,逐個(gè)接受每個(gè)詞,并嘗試連接每個(gè)詞與先前的詞并將其作為頭詞或依存詞,這種算法簡單易懂,但是窮舉法計(jì)算低效而且受到語料庫約束較大;Yamada和Matsumoto(2003)通過將關(guān)系分為左依存、右依存和無依存三種情況進(jìn)行動作分析從而得到句法結(jié)構(gòu);Nivre和Scholz(2004)在Yamada和Matsumoto(2003)的基礎(chǔ)上提出新的數(shù)據(jù)結(jié)構(gòu)和動作分析方法,依存句法分析器主要由一個(gè)三元組構(gòu)成,其中S表示一個(gè)棧結(jié)構(gòu), I表示剩余輸入詞序列, A表示在當(dāng)前分析狀態(tài)下所得到的依存關(guān)系集合,將動作從原來的3個(gè)升級為Left-arc, right-arc, reduce, shift四個(gè)。
從整體而言,基于決策的方法模型直觀清晰,但是決策過程是貪婪的,局部的,精度收到很大限制,誤差還會傳遞,所以仍存在較大問題。
基于融合的方法
機(jī)器學(xué)習(xí)中有基本的支持向量機(jī)、決策樹等優(yōu)秀的方法,但是卻各有問題,于是提出了bagging,而基于融合的方法,將上述兩個(gè)方法的優(yōu)點(diǎn)結(jié)合。
基于搜索策略融合的方法(Duan et al., 2007)認(rèn)為整個(gè)決策式依存句法分析過程可以看作是馬爾科夫鏈。在每一步分析中會有若干個(gè)候選分析動作。句法分析的目標(biāo)是在馬爾科夫假設(shè)下尋找最有可能的分析動作序列,這樣既可以利用豐富的上下文特征,又從全局的視角對決策動作建模,而算法的復(fù)雜度介于決策式方法和動態(tài)規(guī)劃方法之間。按照他的說法進(jìn)行實(shí)驗(yàn)得到的精度是這樣的,可見優(yōu)化了不少。
基于特征的融合方法(Nivre and McDonald, 2008)在McDonald和Nivre(2007)的“不同的句法分析器產(chǎn)生不同的錯(cuò)誤”觀點(diǎn)下提出兩種思路,如下圖所示(符號太復(fù)雜所以我就截圖了):
最后還有基于模型的融合方法,Zhang和Clark(2008)將動態(tài)規(guī)劃的方法和決策的方法進(jìn)行加權(quán)組合。
擴(kuò)展性工作
受限于樹庫規(guī)模較小,尤其是有標(biāo)注的材料太少,所以句法分析的性能一直受到嚴(yán)重限制,目前有部分學(xué)者開始在有限的標(biāo)注材料和較多的無標(biāo)注材料下,使用半監(jiān)督或者無監(jiān)督的方法。
面臨的挑戰(zhàn) 5
前人尚且已經(jīng)在句法分析上有豐碩的成果,但是下面幾個(gè)方面仍有巨大的研究價(jià)值和研究潛力。
句法分析的準(zhǔn)確度仍十分有限;
句法分析的評價(jià)指標(biāo)是否合理目前尚無定論,CoNLL仍有一些問題,而且有人針對多個(gè)角度,例如語種等,有無更加靈活的機(jī)制;
句法分析的魯棒性仍不夠高,和評價(jià)指標(biāo)的靈活性類似;
句法分析的速度,目前仍無法投入大數(shù)據(jù)的實(shí)現(xiàn),然而速度和精度的兩大矛盾體的存在性導(dǎo)致兩者相互制約;
運(yùn)用在互聯(lián)網(wǎng)中的研究仍處起步階段,主要針對句法分析的下游技術(shù),面向信息抽取的句法分析,面向社區(qū)問答的句法分析等;
句法分析并不是上游技術(shù),需要依賴分詞、詞性標(biāo)注等關(guān)鍵技術(shù),這些技術(shù)同樣具有較大誤差等問題,于是誤差的傳遞下句法分析的性能受到較大約束。
小結(jié) 6
句法分析不是我的主要研究重點(diǎn),也沒太關(guān)注過這個(gè)重點(diǎn),經(jīng)過一些相關(guān)材料的閱讀和學(xué)習(xí),感覺還是有很大的研究空間,后續(xù)可能會有一些深入的閱讀,擴(kuò)充自己的知識面,也讓自己應(yīng)對各種問題多了一把新的有力武器。
責(zé)任編輯:lq
-
算法
+關(guān)注
關(guān)注
23文章
4618瀏覽量
93036 -
CM
+關(guān)注
關(guān)注
0文章
28瀏覽量
23138 -
自然語言處理
+關(guān)注
關(guān)注
1文章
619瀏覽量
13579
原文標(biāo)題:句法分析綜述
文章出處:【微信號:zenRRan,微信公眾號:深度學(xué)習(xí)自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論