自然語言推理(四)

kafat 的照片

4. 語法學與推理
4.1 生成語法的句法推理

語法學(Grammar)一般分為「句法學」(Syntax,亦譯作「語形學」)和「形態學」(Morphology,亦譯作「詞法(學)」)這兩個分支,前者研究句法結構,後者研究各種形態現象和「構詞法」(Word Formation)。我們首先從「句法學」與推理的關係說起。由Chomsky (1957)開創的「生成語法」(Generative Grammar)的早期形式與邏輯推理有很相似的形式。Chomsky (1957)理論的特點是借用「電腦科學」上的「短語結構語法」(Phrase Structure Grammar)加上「轉換」(Transformation)操作來解釋自然語言的句法生成過程(註17)。舉例說,句子

The boys love the teachers.     (36)

便可以用以下「短語結構規則」生成:

S → NP + VP      ( i )
NP → Det + N (ii)
VP → V + NP (iii)
Det → the (iv)
N → boys (v)
N → teachers (vi)
V → love (vii)

在上列規則中,S、NP、VP、Det、N和V是句法成分,分別代表「句子」、「名詞短語」、「動詞短語」、「限定詞」、「名詞」和「動詞」;"the"、"boys"、"teachers"和"love"則是「詞庫」(Lexicon)中的詞項。這些句法成分和詞項合稱「符號」,而由「符號」和「+」號組成的結構稱為「符號串」。「→」則代表「改寫為」,即把「→」號左邊的符號改寫為其右邊的符號串,所以以上規則又稱「改寫規則」(Rewriting Rule)。容易看到,以"S"為起始點,我們可以使用以上改寫規則漸次生成對應於(36)的符號串:"the + boys + love + the + teachers"。


「生成語法」一般把句法結構表示成樹形圖,例如(36)的樹形圖就是:

但我們也可以把上述句法生成過程看成一種類似定理證明的過程,以下稱為「句法推理」(註18)。從形式上看,在一個公理系統中,一個定理T的證明是一個由命題組成的序列,這個序列的最後一個命題必須是T,序列中的每條命題(包括T)必須是某條「公理」(Axiom),或是由「公理」或前面的命題經推理規則推導出來的命題。這樣,我們可以把上面的(i)至(vii)看成公理。此外,還可以加上"S"作為一條「附加公理」,這條「公理」用於每一個證明的開首。這個系統只有以下一條推理規則:

:從x + p + y和p → q推出x + q + y,其中p和q代表任意符號,x和y代表任意(可空)符號串

請注意上述推理規則可被看成經典「肯定前件律」的推廣。利用上述「公理」和推理規則,便可以把生成(36)的過程看成以下證明過程:

(1) S 附加公理
(2) S → NP + VP      公理( i )
(3) NP + VP (1), (2), →
(4) NP → Det + N 公理(ii)
(5) Det + N + VP (3), (4), →
(6) Det → the 公理(iv)
(7) the + N + VP (5), (6), →
......

在上述證明中,第一欄為行號,第三欄代表某一行的理據,例如第(3)行的理據「(1), (2), →」便代表把推理規則「→」應用於第(1)和第(2)行上的命題所得的結果。為免使上述證明過於冗長,以上只提供這個證明的開首七行,讀者可自行完成這個證明,使這個證明的最後一行為"the + boys + love + the + teachers"。



4.2 範疇語法的句法推理

對於「生成語法」學者來說,上述的「句法推理」還只是隱含著的概念;「範疇語法」(Categorial Grammar)則是明確以「句法推理」作為研究的對象。由於「範疇語法」支派繁多,以下僅介紹其某個重要支派「類型-邏輯語法」(Type-Logical Grammar)(以Carpenter (1997)為代表)的內容。「類型-邏輯語法」的特點是在「詞庫」中規定每一個詞的語義表達式和句法範疇,然後利用「自然演繹」(Natural Deduction)方法(註19)同時進行句法和語義推理,以同時生成句子及其語義表達式。



讓我們看一個簡單的例子,設我們的「詞庫」有以下內容:

詞項
語義表達式:句法範疇
John
j: NP
Mary
m: NP
loves
λy(λx(LOVE(x, y))): (NP\S)/NP

其中"John"那一行的"j: NP"代表"John"這個詞的語義表達式是常項j,其句法範疇則是NP (即名詞短語)。


"loves"的語義表達式則是一個二重「λ表達式」(即一個「λ表達式」內包含另一個「λ表達式」)。「λ表達式」是現代「數理邏輯」和「形式語義學」中常用的工具,它代表一個函數,並由兩部分組成:第一部分包含"λ"符號及其後的「約束變元」(Bound Variable),第二部分由括號括起來,是函數的「主體」(Matrix)。前述的「約束變元」必須與「主體」內的某個函數論元相同。由於「λ表達式」本質上是函數,我們可以把它作用於適當的常項,其作用結果就是以該常項取代函數「主體」中與「約束變元」相同的那個論元,並同時消去"λ"符號及其後的「約束變元」,此一運算稱為「λ-還原」(λ-Reduction)。舉例說,設有「λ表達式」λy(DIE(y)),其中y就是「約束變元」,DIE(y)就是函數的「主體」,這個「主體」的論元y與前述「約束變元」相同。把這個函數作用於常項j,便有

  λy(DIE(y))(j)
= DIE(j)

據此,前述"loves"的語義表達式實質上告訴我們,"loves"這個詞首先作用於其第二論元(亦即賓語),然後再作用於其第一論元(亦即主語)。


"loves"的句法範疇(NP\S)/NP是一個複合範疇,其中「\」和「/」可被分別看成現代數學中「映射」(Mapping)符號「→」的左向和右向變體。NP\S便代表一種向左作用的函數(請注意「函數」是「映射」的一種),當把此函數作用於一個位於其左面的名詞短語(NP)時,便會得到一個句子(S)。因此,NP\S其實代表「不及物動詞短語」,因為把一個「不及物動詞短語」與一個位於其左面的名詞短語結合後,可得到一個句子。同理,可知(NP\S)/NP其實代表「及物動詞短語」,因為把一個「及物動詞短語」與一個位於其右面的名詞短語結合後,可得到一個「不及物動詞短語」。



為進行推理,我們需要以下兩條「消去規則」(Elimination Rule,簡寫為"E"):

上圖左面的規則是說,如果在某行中出現左、右並排的兩個符號串「α: A」和「β: A\B」,其中α和β為任意語義表達式,A和B為任意句法範疇,那麼我們可以從這兩個符號串推得「β(α): B」。請注意在運用上述規則時,我們是同時進行語義表達式和句法範疇的推導,其中β(α)代表把β作用於α,而從A和A\B推得B的過程則類似經典「肯定前件律」的運用。



以上述詞庫作為前提,並輔以上述推理規則和「λ-還原」法則,便可以對"John loves Mary"作如下句法推理:

上述推理的最後一行告訴我們"John loves Mary"是一個句子(S),其語義表達式是LOVE(j, m),跟一般「謂詞邏輯」的表達式相同。




4.3 某些句法現象的語用推理

以上所述的「句法推理」嚴格地說是句法學家(而非一般人)頭腦中的推理。除此以外,一般人在日常語言使用中碰到的某些句法現象其實也包含語用推理的成分,以下僅舉「極性敏感詞」(Polarity Sensitive Item)作為例子。「極性」(Polarity)是指句子的肯定/否定性質(註20),「極性敏感詞」則是指經常用於肯定句或否定句的詞項。舉例說,英語的"some"和"any"便分別為「正極詞」和「負極詞」,分別經常用於肯定句和否定句中。在一般情況下,把它們分別放在否定句和肯定句會導致不合語法(註21),例如

*I borrowed any book.     (37)

*I did not borrow some book.     (38)

傳統認為「極性敏感詞」屬於句法現象,「極性敏感詞」的使用是否合語法純粹視乎句子的「極性」。但有一些學者(例如Linebarger (1987))指出,「負極詞」有時也可以出現於某些帶有否定「預設」/「隱涵」的肯定句中。試比較以下兩句:

He kept writing novels long after he had any reason to believe they would sell.     (39)

*He kept writing novels long after he retired to any Carribbean island.     (40)

根據Linebarger (1987),(39)合語法是因為從該句可以推導出以下「隱涵」:

He wrote novels even when he didn't have any reason to believe they would sell.     (41)

因此,"any"是在(39)的「隱涵」而非(39)本身取得合法性。反之,(40)卻沒有類似的「隱涵」,因此該句不合語法。由此可見,「極性敏感詞」此一句法現象受制於語用推理。




4.4 某些形態現象的語用推理

某些形態現象也涉及語用推理。上文第3.2節提到在日常語言使用中我們常須進行「顯義推理」,以補出句中各個詞欠明的意義。但欠明性不僅存在於詞匯層面,也存在於詞匯以下的形態/構詞層面。以英語的詞尾's為例,雖然這個詞尾傳統稱為「所有格詞尾」(Possessive Case Ending),但它所表達的意思遠遠不只「擁有」。事實上,根據Langacker (1991),這個詞尾表達非常籠統的關係。試看以下例子:

John's book     (42)

以上這個短語可以表達John與書的多種關係,這本書既可以是John擁有的,也可以是John寫的,還可以是John推薦的,甚至可以是John正在坐著的那本書。事實上,只要有適當的語境,這本書可以與John存在任何可能的關係。因此,人們必須根據語境補出(42)中John與書之間存在的關係,而這正是一種推導「顯義」的過程。



跟「所有格詞尾」相似,「複合詞」(Compound Word)中各個構成成分之間也可存在多種關係,試看以下例子:

corn mill       paint mill       wind mill

以上幾個英語「複合詞」都包含"mill" (磨坊)這個中心成分,但"mill"與其前的修飾成分的關係卻各有不同。有趣的是,即使我們是第一次看見這幾個詞,也不難推斷出這些修飾成分與「碾磨」工序的幾種不同關係:"corn" (穀物)是「碾磨」工序的對象,"paint" (顏料)是「碾磨」工序的製品(「碾磨」的對象可能是某些木),而"wind" (風)則是「碾磨」工序所依賴的動力來源。以上例子顯示,「構詞法」只能籠統地告訴我們,「複合詞」中各個構成成分之間存在某種關係,至於是哪一種具體關係,可根據常識推斷出來。就這一點而言,我們對「複合詞」的理解過程與「顯義推理」有相似之處。



註17:「生成語法」其後逐漸放棄「短語結構」的概念,也把「轉換」概括為「移位」(Movement)或「影響」(Affect),所以這裡所述只是「生成語法」的早期形式。此外,為簡化討論,以下例子只包含「短語結構規則」,不包含「轉換」操作。


註18:請不要把這裡所說的「句法推理」與「人工智能」研究的「語法推理」(Grammatical Inference)混淆。後者研究如何讓機器學習某種語言的語法,具有高度技術性,筆者對此認識不多,無法介紹。


註19:「自然演繹系統」與前述的「公理系統」的不同之處在於,前者的定理是建基於專門適用於該條定理的特定前提,而後者的定理則是建基於一套適用於整個系統的「公理」,有時還再加上一些特定前提。有關上述兩種系統的詳細介紹,請參閱拙文《廣義量詞系列:現代推理模式》


註20:肯定句/否定句的分野只是對「極性」的籠統分類,事實上,有些句型(例如疑問句、充分條件句中的前件等)雖然從語法上看不屬否定句,但在與「極性敏感詞」的關係上卻很像否定句,所以也可被視為具有「負極性」。但為簡化討論,以下討論「負極性」時,只以否定句為例。


註21:這有很多例外,最常見的例外情況是"any"可以出現於含有模態/類指意義的肯定句中,例如"You can borrow any book"。有些學者把這種"any"稱為「任指詞」(Free Choice Item),並因而認為應區分兩個不同的"any":「極性any」和「任指any」,學界對此爭論不休。此外,當"some"一詞重讀且取寬域時,也可出現於否定句中。為免令問題複雜化,以下所引句子都不含上述例外情況。


參考文獻

  • Carpenter, B. (1997), Type-Logical Semantics, Cambridge: MIT Press
  • Chomsky, N. (1957), Syntactic Structures, The Hague: Moulton
  • Langacker, R.W. (1991), Foundations of Cognitive Grammar - Volume II: Descriptive Application, Stanford: Stanford University Press
  • Linebarger, M. (1987), "Negative Polarity and Grammatical Representation" in Linguistics and Philosophy, 10, pp. 325-387

回應瀏覽選項

選擇你喜歡的顯示回應的模式,並點選「儲存設定」,以啟用你所做的改變。
Nick 的照片

._.

連續幾篇都是語言學中晚生最感興趣的課題。謝謝家發兄。

這篇比較難D

尤其是那些符號,較專門。

冷眼 的照片

我對下一期的內容更感興趣

有關認知/心理語言學與推理的關係。

對外行人而言

本期確實技術性較強。

kafat 的照片

把句法推導看成定理證明這種觀點對我們來說較為陌生

這篇較難明除了因為技術性較強外,還可能因為把句法推導看成定理證明這種觀點對我們來說較為陌生,因為我們自小學習的語法(不論是英語還是漢語語法)都不是這樣看語法的。事實上,近年來語義學界也興起了「證明論語義學」,比傳統的「模型論語義學」似乎較難明。

建議大家先看本期的4.3和4.4小節,因為這兩小節的內容與前面介紹的「語用推理」一脈相承。畢竟4.1和4.2小節所講的「句法推理」實際上是句法學家頭腦中的推理,只有4.3和4.4小節所講的「語用推理」才是一般人頭腦中的推理。

張海澎 的照片

我真是孤陋寡聞

把句法推導看成定理證明,我是第一次聽到。謝謝Kafat兄,開了眼界。

張海澎 的照片

內涵邏輯

QQ 寫到 :
尤其是那些符號,較專門。

內涵邏輯是一個強有力的工具,它能揭示概念的深層結構。而且十分優美。
messiahhong也許並不喜歡形式語義學。

kafat 的照片

「語義」和「句法」兩種觀點

張海澎 寫到 :
把句法推導看成定理證明,我是第一次聽到。

對於邏輯推導或定理證明,向來有「語義」(semantic)和「句法」(syntactic)兩種觀點。「語義」觀點建基於「真」的概念,在這種觀點下,推理是一種「保真」(truth-preserving)過程,即從真的前提出發推出真的結論。在此觀點下,把句法推導看成定理證明較難令人接受。

但在純形式的「句法」觀點下,命題可被看成沒有意義的「符號串」,推理規則可被看成把符號串變形的「變形規則」。這樣定理證明就可被看成以下這種純形式過程:從一組被稱為「公理」或「前提」的符號串出發,根據變形規則把這些「公理」或「前提」逐步變形,以期最後得到被稱為「定理」或「結論」的那個符號串。在此觀點下,定理證明便跟句法推導很相似。

加騰鷹 的照片

以前讀 computer theory 時讀過, 唔係好明

宜家讀完 kafat 先生的文章後明左好多, 謝謝 kafat 先生.

^_^ 

kafat 的照片

範疇語法的實際用途

蔣嚴、潘海華 (1998),“漢語語句的類型表達”, 《1998中文信息處理國際會議論文集》,北京:清華大學,pp. 323 – 329一文介紹了如何用範疇語法分析漢語,指出使用範疇語法有助進行自動語句分析。這是範疇語法的一種實際用途。