n元語法((n-gram grammar)建立在馬爾可夫模型上的一種機率語法。
基本介紹
- 中文名:n元語法
- 領域:計算機
簡介,馬爾可夫鏈,語言模型,示例,
簡介
n元語法(英語:n-gram)指文本中連續出現的n個語詞。n元語法模型是基於(n-1)階馬爾可夫鏈的一種機率語言模型,通過n個語詞出現的機率來推斷語句的結構。這一模型被廣泛套用於機率論、通信理論、計算語言學(如基於統計的自然語言處理)、計算生物學(如序列分析)、數據壓縮等領域。
當n分別為1、2、3時,又分別稱為一元語法(unigram)、二元語法(bigram)與三元語法(trigram)。
馬爾可夫鏈
馬爾可夫鏈(英語:Markov chain),又稱離散時間馬爾可夫鏈(discrete-time Markov chain,縮寫為DTMC),因俄國數學家安德烈·馬爾可夫(俄語:Андрей Андреевич Марков)得名,為狀態空間中經過從一個狀態到另一個狀態的轉換的隨機過程。該過程要求具備“無記憶”的性質:下一狀態的機率分布只能由當前狀態決定,在時間序列中它前面的事件均與之無關。這種特定類型的“無記憶性”稱作馬爾可夫性質。馬爾科夫鏈作為實際過程的統計模型具有許多套用。
在馬爾可夫鏈的每一步,系統根據機率分布,可以從一個狀態變到另一個狀態,也可以保持當前狀態。狀態的改變叫做轉移,與不同的狀態改變相關的機率叫做轉移機率。隨機漫步就是馬爾可夫鏈的例子。隨機漫步中每一步的狀態是在圖形中的點,每一步可以移動到任何一個相鄰的點,在這裡移動到每一個點的機率都是相同的(無論之前漫步路徑是如何的)。
語言模型
統計式的語言模型是藉由一個機率分布,而指派機率給字詞所組成的字串:
語言模型經常使用在許多自然語言處理方面的套用,如語音識別,機器翻譯,詞性標註,句法分析和資訊檢索。由於字詞與句子都是任意組合的長度,因此在訓練過的語言模型中會出現未曾出現的字串(資料稀疏的問題),也使得在語料庫中估算字串的機率變得很困難,這也是要使用近似的平滑n元語法(N-gram)模型之原因。
在語音辨識和在資料壓縮的領域中,這種模式試圖捕捉語言的特性,並預測在語音串列中的下一個字。
示例
領域 | 單位 | 示例 | 一元語法 | 二元語法 | 三元語法 |
---|---|---|---|---|---|
蛋白質測序 | … Cys-Gly-Leu-Ser-Trp … | …, Cys, Gly, Leu, Ser, Trp, … | …, Cys-Gly, Gly-Leu, Leu-Ser, Ser-Trp, … | …, Cys-Gly-Leu, Gly-Leu-Ser, Leu-Ser-Trp, … | |
…AGCTTCGA… | …, A, G, C, T, T, C, G, A, … | …, AG, GC, CT, TT, TC, CG, GA, … | …, AGC, GCT, CTT, TTC, TCG, CGA, … | ||
…to_be_or_not_to_be… | …, t, o, _, b, e, _, o, r, _, n, o, t, _, t, o, _, b, e, … | …, to, o_, _b, be, e_, _o, or, r_, _n, no, ot, t_, _t, to, o_, _b, be, … | …, to_, o_b, _be, be_, e_o, _or, or_, r_n, _no, not, ot_, t_t, _to, to_, o_b, _be, … | ||
… to be or not to be … | …, to, be, or, not, to, be, … | …, to be, be or, or not, not to, to be, … | …, to be or, be or not, or not to, not to be, … |