學習資料:《統計自然語言處理》第三章
一. 語言的描述
喬姆斯基將語言定義為:“按照一定規律構成的句子和符號串的有限或無限集合。”
我國計算語言學家吳蔚天也給出了自己對語言的定義:“語言可以被看成一個抽象的數學系統。”
無論把語言看作集合還是數學系統,我們都可以用數學的方法來進行刻畫和描述,那么一般地,描述一種語言可以有三種途徑:
-
窮舉法:把語言中的所有句子都枚舉出來。顯然,這種方法只適合句子數目有限的語言。(這種方法顯然不太靠譜啊,我們所使用的語言實在是太多了)
-
文法(產生式系統):語言中的每個句子用嚴格定義的規則來構造,利用規則生成語言中合法的句子。(就是形式語言)
-
自動機法:通過對輸入的句子進行合法性檢驗,區別哪些是語言中的句子,哪些不是語言中的句子。(自動機是和形式語言配合其作用的,每一種形式語言對應着一個自動機)
二. 形式語言
形式語言是用來精確地描述語言(包括人工語言和自然語言)及其結構的手段。形式語言學也稱代數語言學。
1. 形式語法(文法)
通俗的說,終結符號就是語言中用到的基本元素,一般不能再被分解:名詞,動詞,形容詞,助詞,等等基本語言單位.
N:非終結符,不能處於生成過程的終點,即在實際句子中不出現。在推導中起變量作用,相當於語言中的語法范疇;比如,主語,短語,詞組,句子。
T:終結符的有限集合,只處於生成過程的終點,是句子中實際出現的符號,相當於單詞表。
P:重寫規則、生成規則的有限集合.
S:N中的初始符號,相當於語法范疇中的句子。
文法\(G\)的不含非終結符的句子形式稱為\(G\)生成的句子;
由文法 \(G\) 生成的語言,記做 \(L(G)\),指\(G\)生成的所有句子的集合。
2. 形式語法的類型——根據重寫規則P
-
正則文法 3型文法
正則文法規則右邊有約束:左/右線性正則文法 -
上下文無關文法 2型文法
上下文無關和正則文法規則左邊只有一個非終結符;下面兩個文法可以有多個,涉及“上下文內容”
-
上下文有關文法 1型文法
-
無約束文法 0型文法
從0型文法到3型文法,對規則的約束越來越多,每一個正則文法都是上下文無關文法,每一個上下無關文法 都是上下文有關文法,而每一個上下文有關文法都可以認為是0型文 法。因此,從0型文法到3型文法所識別的語言集合越來越小。
我們約定,如果一個文法的產生式集合P中,有分屬於不同類型文 法的產生式,則把屬於包含最廣類型文法的那條產生式所屬的類型作為 這個文法的類型。比如說,某個文法的全部規則分別屬於1型文法、2型 文法和3型文法,則我們稱這個文法為1型文法。同理,如果一種語言能夠由幾種文法所產生,則把這種語言稱為在這幾種文法中受限制最多的那種文法所產生的語言。
三. 自動機
自動機可分為有限自動機(有限狀態機)、下推自動機、線性界限自動機、圖靈機。
各類自動機之間的主要區別是它們能夠使用的信息存儲空間的差異:有限狀態自動機只能用狀態來存儲信息;下推自動機除了使用狀態以外,還可以用下推存儲器(堆棧);線性界限自動機可以利 用狀態和輸入/輸出帶本身,因為輸入/輸出帶沒有“先進后出”的限 制,因此,其功能大於堆棧;而圖靈機的存儲空間沒有任何限制。
從識別語言的能力上來看,有限自動機等價於正則文法;下推自動機等價於上下文無關文法;線性界限自動機等價於上下文有關文法,而圖靈機等價於無約束文法。