學習筆記CB006:依存句法、LTP、n元語法模型、N-最短路徑分詞法、由字構詞分詞法、圖論、機率論

依存句法分析,法國語言學家L.Tesniere1959年提出。句法,句子規則,句子成分組織規則。依存句法,成分間依賴關係。依賴,沒有A,B存在錯誤。語義,句子含義。算法

依存句法強調介詞、助詞劃分做用,語義依存注重實詞間邏輯關係。依存句法隨字面詞語變化不一樣,語義依存不一樣字面詞語可同一意思,句法結構不一樣句子語義關係可相同。依存句法分析和語義分析結合,計算機理解句子含義,匹配到最合適回答,經過置信度匹配實現聊天回答。api

依存句法分析,肯定句式句法結構(短語結構)或句子詞彙依存關係。依存句法分析樹,子節點依存於父節點。依存投射樹,實線表示依存聯結關係,位置低成分依存位置高成分,虛線爲投射線。依存關係五公理:1. 句子只有一個獨立成分。2. 其餘成分直接依存某一成分。3. 任何成分都不能依存兩個或兩個以上成分。4. 若是A成分直接依存B成分,C成分在句子成分A和B之間,C或者直接依存B,或者直接依存A和B間某一成分。5. 中心成分左右兩面其餘成分相互不發生關係。緩存

LTP依存關係標記。主謂關係 SBV subject-verb,動賓關係 VOB 直接賓語,verb-object,間賓關係 IOB 間接賓語,indirect-object,前置賓語 FOB 前置賓語,fronting-object,兼語 DBL double,定中關係 ATT attribute,狀中結構 ADV adverbial,動補結構 CMP complement,並列關係 COO coordinate,介賓關係 POB preposition-object,左附加關係 LAD left adjunct,右附加關係 RAD right adjunct,獨立結構 IS independent structure,核心關係 HED head 。微信

依存關係計算,機器學習和人工標註,機器學習依賴人工標註,分詞詞性、依存樹庫、語義角色,機器學習分析新句子依存句法。網絡

LTP雲平臺。註冊用戶,每個月免費20G流量。http://www.ltp-cloud.com/ 註冊帳號,登錄http://www.ltp-cloud.com/dashboard/ ,查看api_key、流量使用,文檔http://www.ltp-cloud.com/document 。curl -i "http://api.ltp-cloud.com/analysis/?api_key=ApiKey&text=我是中國人。&pattern=dp&format=plain" 。分詞(pattern=ws),詞性標註(pattern=pos),命名實體識別(pattern=ner),語義依存分析(pattern=sdp),語義角色標註(pattern=srl)。框架

天然語言、數學聯繫是語言模型。數學模型,用數理邏輯方法和數學語言建構科學或工程模型。用數學方式解釋事實。數學建模,計算結果解釋實際問題,接受實際檢驗,創建數學模型全過程。語言模型,根據語言客觀事實進行語言抽象數學建模。用數學模型解釋天然語言事實。curl

業界承認有效語言模型,n元語法模型(n-gram model),馬爾可夫模型,話中下一詞出現和最近n個詞有關。n=1,最新詞只和本身有關,獨立,和前面詞不要緊,一元文法。n=2,最新詞和它前面詞有關,二元文法,一階馬爾科夫鏈。工程上n=3最多,n越大約束信息越多,n越小可靠性更高。天然語言處理研究兩大方向:基於規則、基於統計。n元語法模型基於統計。最大似然,和歷史最類似,用歷史出現頻率估計機率。機器學習

變幻無窮天然語言致使0機率問題。有限語料庫難以窮舉語言現象,n元語法模型會出現某一句話出現機率爲0。數據平滑技術,經過數學方式讓每一句話機率都大於0。特定領域特寫詞機率偏大問題。緩存剛剛出現過詞彙提升後面出現機率。單一語言模型弊端。不一樣語料庫差別,致使單一語言模型不許確,多種語言模型混合計算。或多種語言模型分別計算,最後選擇熵最大。神經網絡語言模型,特殊模型平滑方式,經過深度學習獲得更正確機率。函數

語言模型應用,中文分詞、機器翻譯、拼寫糾錯、語音識別、音子轉換、自動文摘、問答系統、OCR。工具

上個世紀,中文自動分詞每句話都要到漢語詞表中查找,正向最大匹配法、逆向最大匹配法、雙向掃描法、助詞遍歷法。中文自動分詞最難兩個問題:1)歧義消除;2)未登錄詞識別。

N-最短路徑分詞法,一元語法模型,每一個詞一元,獨立存在,出現機率基於大量語料統計得出,一句話基於詞表各類切詞結果都列出,字字組合有不少種,有多個候選結果,每一個詞出現機率相乘,獲得最終結果。基於n元語法模型分詞法,在N-最短路徑分詞法基礎上把一元模型擴展成n元模型,統計機率不是一個詞機率,是基於前面n個詞的條件機率。

由字構詞分詞方法。字在詞中有構詞位置,詞首、詞中、詞尾、單獨構詞。根據字不一樣構詞位置,設計特徵,前一個詞、前兩個詞、前面詞長度、前面詞詞首、前面詞詞尾、前面詞詞尾加上當前字組成詞。基於大量語料庫,利用平均感知機分類器對特徵打分,訓練權重係數,得出模型用來分詞,句子右邊多出一個字,用模型計算這些特徵的加權得分,得分最高的是正確分詞方法。

n元語法模型方法,詞表裏已有詞分詞。字構詞方法,未登錄詞的識別。

jieba中文分詞,基於前綴詞典詞圖掃描,生成句子中漢字全部可能成詞狀況有向無環圖 (DAG),動態規劃查找最大機率路徑, 找出基於詞頻最大切分組合,對於未登陸詞,採用基於漢字成詞能力HMM模型,使用Viterbi 算法。結合詞表和由字構詞分詞。

ik分詞器,基於詞表最短路徑切詞。

ltp雲平臺分詞,基於機器學習框架並部分結合詞表方法。

其餘分詞工具判斷方法相似,網上對各類分詞工具好壞的判斷多數是功能上比較,我的建議經過原理來判斷,若是結合了基於詞表和由字構詞而且充分利用統計學習的方法,這樣的分詞工具纔是最好的

圖論。圖,把孤立點用線連起來,任何點之間都有可能連着。區別於樹,樹有父子關係,圖沒有。圖表達事物之間關聯關係,轉化關係。表達關聯程度,表達轉化可能性大小。

機率論,投硬幣出正面機率是1/2,條件機率P(B|A),聯合機率P(A,B),貝葉斯公式 P(B|A)=P(A|B)P(B)/P(A)。

貝葉斯(Bayes),基於條件機率P(B|A)。馬爾可夫(Markov),鏈式結構或過程,前n個值決定當前這個值,當前這個值跟前n個值有關。熵(entropy),熱力學術語,表示物質系統混亂狀態。延伸數學,表達不肯定性。延伸信息論,計算機網絡信息傳輸基礎理論,不肯定性函數 f(p)=-logp,信息熵 H(p)=-∑plogp。信息論鼻祖香農(Shannon)。場(field),域,取值空間。隨機場,隨機變量賦值全體空間。

機率圖模型,用圖說明,用機率計算。有向圖模型和無向圖模型,圖裏面的邊是否有方向。有方向表達推演關係,A前提下出現B,生成式模型。沒有方向表達「這樣就對了」關係,A和B同時存在就對了,判別式模型。生成式模型用聯合機率計算,判別式模型一用條件機率計算。生成式模型,n元語法模型、隱馬爾可夫模型、樸素貝葉斯模型。判別式模型,最大熵模型、支持向量機、條件隨機場、感知機模型。

貝葉斯網絡,條件機率,生成式模型,有向圖模型。若是x1爲False狀況下x6爲True的機率,P(x6=T|x1=F)=P(x6=T,x1=F)/P(x1=F)。繼續推導,最終由每一個節點機率數據計算求得。貝葉斯網絡模型經過樣本學習估計每一個節點機率,達到預測各類問題結果。貝葉斯網絡在已知有限的、不完整的、不肯定信息條件下學習推理,普遍應用在故障診斷、維修決策、漢語自動分詞、詞義消歧等問題。

馬爾可夫模型和隱馬爾可夫模型。一個值跟前面n個值有關,條件機率,生成式模型,有向圖模型。馬爾可夫模型,關於時間t的狀態轉換過程,隨機有限狀態機,狀態序列機率經過計算造成該序列全部狀態之間轉移弧上機率乘積得出。訓練樣本得出每個機率值,經過訓練模型根據前兩個預測下一個機率。隱馬爾可夫模型,其中某一階的信息未知,缺乏信息較多,模型算法比較複雜。隱馬爾可夫模型普遍應用在詞性標註、中文分詞。最初不知道怎麼分詞,前面詞分出來,才知後面邊界在哪裏,後面分詞後還要驗證前面分詞是否正確,先後有依賴關係,不肯定中間狀態狀況最適合用隱馬爾可夫模型來解釋。

最大熵模型,H(p)=-∑plogp。某信息條件B下,得出某種可能結果A最大機率,條件機率P(A|B)最大候選結果。最大熵不肯定性最大,條件機率最大,求最大條件機率等同求最大熵,熵 H(p)=H(A|B)=-∑p(b)p(a|b)log(p(a|b))。使用訓練數據估計,p(a|b)經過訓練數據特徵估計,好比特徵fi(a,b),模型訓練∑λf(a,b)中λ參數過程。機器學習線性迴歸了。因此最大熵模型,利用熵原理和熵公式,描述具備機率規律現實。

條件隨機場,場表示取值範圍,隨機場表示隨機變量取值範圍,每一個隨機變量固定取值,條件指隨機變量取值由必定條件機率決定,條件來自觀察值。條件隨機場,無向圖模型,它給定觀察序列X時某個特定標記序列Y機率是指數函數exp(∑λt+∑μs),t是轉移函數,s是狀態函數。須要訓練λ和μ。條件隨機場應用在標註和切分有序數據,天然語言處理、生物信息學、機器視覺、網絡智能。

參考資料:

《Python 天然語言處理》

http://www.shareditor.com/blogshow?blogId=77

http://www.shareditor.com/blogshow?blogId=78

http://www.shareditor.com/blogshow?blogId=80

http://www.shareditor.com/blogshow?blogId=81

歡迎推薦上海機器學習工做機會,個人微信:qingxingfengzi

相關文章
相關標籤/搜索