1 / 30

計算語言學概論 詞法分析

計算語言學概論 詞法分析. R94922056 吳憲國 2007/06/21. Introduction. 詞法分析簡介 分詞方式 最大匹配法 最大概率法 詞性的標注 HMM (Hidden Markov Model) 演算法 V iterb i 演算法 詞義的排歧 Bayesian Discrimination. 詞法分析研究的意義與目的. 機器翻譯 ︰ 簡繁轉換 后 面  後 面 , 皇 后  皇 後 松 绑  鬆 綁 , 松 树  鬆 樹 訊息檢索 ︰ 搜尋引擎 開發  土地 開發 ( 開發 票 )

kyle
Download Presentation

計算語言學概論 詞法分析

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 計算語言學概論 詞法分析 R94922056 吳憲國 2007/06/21

  2. Introduction • 詞法分析簡介 • 分詞方式 • 最大匹配法 • 最大概率法 • 詞性的標注 • HMM (Hidden Markov Model)演算法 • Viterbi演算法 • 詞義的排歧 • Bayesian Discrimination

  3. 詞法分析研究的意義與目的 • 機器翻譯︰簡繁轉換 • 后面 後面 , 皇后  皇後 • 松绑  鬆綁 , 松树  鬆樹 • 訊息檢索︰搜尋引擎 • 開發  土地開發(開發票) • 便衣  便衣警察 (簡便衣物) • 文本處理︰拼寫校對 • 繁體子 繁體字 • 于涉  干涉 • 語音處理︰電腦發音、重音復原 • 倒垃圾跌倒

  4. 詞法分析研究的意義與目的 • 詞法分析的過程 1.分詞 : 將句子中的單詞切割出來 2.詞性標注 : 決定每個詞的詞性 3.詞義排岐 : 決定每個詞的意義 文章 資料庫 句子 分詞 詞串 詞性標注 詞串 詞義排歧

  5. 漢語的分詞方式 • 從句子轉換到詞串,會因為切割方式的不同,而有不同的意義 • 學生會長是誰 • 學生會 / 長 / 是 / 誰 • 學生 / 會長 / 是 / 誰 • 學生 / 會 / 長 / 是 / 誰 • 分詞的基本方法 • 最大匹配法(Maximum Match based approach) • 機率分詞法(Probability approach to Word Segmentation)

  6. 最大匹配法 待分割句子S1 輸出詞串S2=“” 最大詞長 MaxLen Y S1是否為空 輸出S2 • 詞典中較長的詞,會被優先取出 • 缺點 • 最大詞長設定 MaxLen • 太小無法切割出長詞 • 太長效率太差 • 正向與反向的分詞差異 • 句子“有意見分歧” 正向匹配有意 / 見 / 分歧 反向匹配有 / 意見 / 分歧 N 從S1左邊取出候選 字串W,長度不超 過Maxlen Y S1=S1 - W S2=S2 + W + ” /” W是否在詞典中 N 去掉W最右邊一個字 Y N W是否長度為1

  7. 機率分詞法 • 基本概念 • 一個待切割的字串可能包含多種分詞結果 • 求得其中機率最大的切割方式作為該字串的分詞結果 路徑A: 0 – 1 – 3 – 5 路徑B: 0 – 2 – 3 – 5 哪條路徑的機率較高

  8. 機率分詞法 • 字串S =“有意見分歧“ • 詞串W1 =有 / 意見 / 分歧 • 詞串W2 =有意 / 見 / 分歧 Max( P(W1|S), P(W2|S) ) ? (independent) wi在語料庫中出現的次數 語料庫中總詞數

  9. 機率分詞法 • 詞串W1 = 有 / 意見 / 分歧 P(W1) = P(有)*P(意見)*P(分歧) • 詞串W2 = 有意 / 見 / 分歧 P(W2) = P(有意)*P(見)*P(分歧) • P(W1) > P(W2) 有意見分歧  有 / 意見 / 分歧

  10. 詞性的標注 • 兼類現象 • Time flies like an arrow. n-v v-n p-v det n • 把 這 篇 報導 編輯 一 下 q-p-v-n r q v-n v-n m-c f-q-v

  11. 詞性的標注 –兼類現象 北大計算語言所《現代漢語語法訊息詞典》1997年版

  12. 詞性的標注 –兼類現象

  13. 詞性的標注 –兼類現象

  14. p v n n m q r q q n v v c v f 把 這 篇 報導 編輯 一 下 詞性的標注 –尋找最佳路徑 • 把 | 這 | 篇 | 報導 | 編輯 | 一 | 下 q-p-v-n | r | q | v-n | v-n | m-c | f-q-v • 4 X 1 X 1 X 2 X 2 X 2 X 3 = 96 種可能詞性的組合

  15. Hidden Markov Model • 路徑集合T = (t1,t2,t3,………,t96) • 每一步的轉移機率 = 詞性轉移機率 * 單詞出現機率 P(t1|W) = P(q|$) P(把|q) x P(r|q) P(这|r) x …… x P(f|m) P(下|f) P(t2|W) = P(q|$) P(把|q) x P(r|q) P(这|r) x …… x P(q|m) P(下|q) …… P(t96|W) = P(n|$) P(把|n) x P(r|q) P(这|r) x …… x P(v|c) P(下|v) q f n n m p $ r q q n 起始狀態 v v c n v 把 這 篇 報導 編輯 一 下 計算出最大機率路徑

  16. HMM複雜度 • 假定有N個詞性標記,給定的詞串中有M個單詞,考慮最壞的情況下,每個詞都有N個可能的詞性出現,則可能的路徑有NM條,隨著M的增加,需要計算的可能路徑數目以指數模式增長,即演算法時間複雜性成指數成長。 p p p p p p q q q q q q n n n n n n …… v v v v v v N M

  17. Viterbi • Viterbi演算法是dynamic programing的一種 • 假設有N種詞性,在長度為M的詞串中 • 遞迴計算並儲存每個單詞中每種詞性的最佳到達路徑與機率值 • 當到達最後一個單詞時,計算最佳的詞類 • 由最後一個單詞的最佳詞類所儲存的路徑,依序回推前一個的最佳詞性,如此便能找到最佳解 p p 每一個單詞的詞性狀態裡皆紀錄著最佳到達的路徑△及最佳路徑的機率δ q q n n aij v v m m+1

  18. Viterbi複雜度 • 考慮最壞的情況,掃描到每一個單詞時,從前一個單詞的N個詞性標記到當前一個單詞的N個詞性標記,有N2條路經,掃描長度為M的詞串後,計算次數為N2×M次。 • 對於確定的詞性標注系統而言,N是固定的,因此,隨著M長度的增加,計算時間以線性模式增長。也就是說,Viterbi演算法的時間複雜度是線性的。

  19. 詞義的排歧(Word Sense Disambiguation) • 詞的多義現象 • 打醬油 打電話 打毛衣 打手勢 打哈欠 • 修門 進門門上有把鎖 • 拍子壞了 打拍子 • 生意很清淡 口味比較清淡 • 我就來 我就是不來 我就記得一句話 • 開車 吃你的車

  20. 詞義的排歧 - 多義詞的分類 • 多義詞有兩種 • 不同的詞性,不同的意思 • 編輯n-v • 建議n-v … • 相同的詞性,不同的意思 • 兄弟哥哥或弟弟 or 朋友 • 薄人際關係 or 顏色或氣味的密度 or 物品的厚度

  21. 詞義的排歧 • 進行詞義的排歧(WSD)需要的基本資料 • 決定如何判斷一個詞是否為多義詞、如何表示詞的不同意思 • 需要做詞義標注的詞,對詞義必須有清楚的區分標準 • WSD的目的 • 針對目前句子的具體語境,給予多義詞合適的意義

  22. Bayesian Discrimination • 所需要的基本資訊 • 標注好詞義的語料庫(training corpus) • 從標注語料庫訓練“語境”與詞義之間的相依關係,得到“詞義知識庫” • 對於一個輸入句子中的多義詞,根據“詞義知識庫”中的知識,計算它在當前“語境”下,取哪一個義項的可能性最高,就將該義項判定為這個多義詞在當前語境下的意思。

  23. Bayesian Discrimination • 假設語境(句子)C底下的某個多義詞T有si種詞義 • 計算最有可能的詞義s’ s’ = arg max P(si | C) = arg max P(C| si)P(si) / P(C) = arg max P(C| si)P(si) = arg max [logP(C| si) + logP(si)] = arg max [log ΠP(wj | si) + logP(si)] = arg max [Σlog P(wj | si) + logP(si)] 詞義知識庫

  24. Bayesian Discrimination • 我看過由同名武俠小說改編的電影 • Score(看1) = log0.3 + log 0.1 + log 0.27 + log 0.01 • Score(看2) = log0.5 + log 0.25 + log 0.15 + log 0.5 • Score(看3) = log0.2 + log 0.3 + log 0.05 • 看2的詞義較符合這個句子的語境 詞義知識庫

  25. 報告完畢

  26. 英文的詞彙處裡 • Tokenization:句子  詞串 • I’m a student  I’ + m + a + student • Lemmatization:單詞 前綴+詞根+後綴+詞尾 • took  take + ed

  27. 英文的詞彙處裡 • 數字︰123,456.781,90.7%,3/8,11/20/2000 • 縮寫︰ • 字母+點號+字母︰U.S.,i.e. • 字母開頭,點號結束︰Mr.,eds.,prof. • 包含特殊符號︰AT&T,Micro$oft • 帶破折號的詞串︰three-years-old,one-third,so-called • 帶單引號的詞串︰I'm,can't,dog's,let's • 帶空格的詞串︰"and so on","ad hoc"

  28. 英文的詞彙處裡 • 英文的構詞模式 • [前綴 + 詞根 +後綴] + [詞尾] |----------詞幹---------| • boy-s(複數詞尾) • happi-ness(名詞後綴) • im-possible,im-correct(前綴) • re-im-port (多個前綴) • strongest(形容詞最高級詞尾) • housewarmings(複合詞+複數詞尾)

More Related