最近的工作都是小任務(wù),很簡單的小任務(wù),水水的就寫好了。因為覺得自己在自然語言處理方面了解甚少,剩下的時間就在看《人工智能》,最近再看第8章自然語言理解。很認真的看過了解過,現(xiàn)在做一下總結(jié)。
自然語言理解現(xiàn)在大體分為5個層次:語音分析,詞法分析,語義分析和語用分析。
一.語音分析跳過,直接進入詞法分析。所謂詞法分析就是從句子中切分出單詞,找出詞匯的各個詞素,從中獲得單詞的語言學(xué)信息并確定單詞的詞義。
1.for English
repeat
look for word in dictionary
If not found
Then modify the word
Until word found or no further modification possible
所以在自然語言理解的詞典中一般只放詞根,支持詞素分析可以大大的壓縮電子詞典的規(guī)模。英語詞法分析的難度在于詞義判斷,以為單詞有很多解釋,要判定詞義只能依靠句子中其他相關(guān)單詞和詞組的分析。
2.對于漢語
漢語中的每一字都是一個詞素,但是要切分出各個詞就非常困難,最主要的就是切分歧義。一句話可以有多種拆分方式,要是遇到那種“下雨天留客天留我不留”,基本就死翹翹了。
二.句法分析
這個和匯編原理里的那個好像是一樣的,至于到底是不是一個,我也忘卻了。主要分為兩類:基于規(guī)則的方法和基于統(tǒng)計的方法。
1.短語結(jié)構(gòu)語法
2.喬姆斯基形式語法
3.語法分析樹
4.轉(zhuǎn)移網(wǎng)絡(luò)
5.擴充轉(zhuǎn)移網(wǎng)絡(luò)
具體細節(jié)自己查去,我主要寫一下擴充轉(zhuǎn)移網(wǎng)絡(luò)(Augmented Transition Network,ANT),該語法屬于一種增強型的上下文無關(guān)語法。
ANT主要對轉(zhuǎn)移網(wǎng)絡(luò)中的弧附加了過程得到的,過程的主要功能:對文法特征進行賦值。前后把書翻看幾遍也沒有發(fā)現(xiàn)對文法特征進行賦值是什么,暫理解成把一個單詞賦給ART,當(dāng)隨著弧走到這時,檢查詞性部分是否等于ART。如果是則把ART賦值給NP,S\DET,否則,失敗引起回溯。第二個就是檢查數(shù)或人稱條件是否滿足,并據(jù)此允許或不允許轉(zhuǎn)移,整個ANT語法就構(gòu)成了一個句法樹。
三.語義分析(百度去吧,谷歌去吧)
大規(guī)模真實文本的處理
最近做的處理工作好像就是這些,在各種語料中提取各種庫,里面的很多發(fā)現(xiàn)自己也斷斷續(xù)續(xù)的在接觸。
這里的兩個語料庫一個是基于wordnet,另一種是hownet.hownet以前介紹過,直接wordnet.
其實wordnet就是把所有的詞構(gòu)建成一棵樹,整個名詞組成一個繼承關(guān)系。

補充一下:在利用worknet進行相似度計算的時候,詞與詞之間的距離對于路徑相同的,層次高的要比層次低的層次低的距離遠,稀疏的要比稠密的距離遠。所以用worknet要hownet考慮更多的問題。對于句子與句子之間的相似度計算很容易實現(xiàn),但是時間復(fù)雜度太高,上次做優(yōu)化的時候,在89萬次計算中,只有1000+的有效計算,所以選擇把詞與詞之間的距離先算好,直接讀取,要快很多。
最后后面的詞性標注和分詞一直都是直接用公司的代碼去調(diào)用的,自己還在學(xué)習(xí)中,期待在不久的將來能夠掌握這些。
一天比一天多一點的進步就好,快樂碼農(nóng)中。