句法分析(syntactic parsing)
/ sin-TAK-tik PAR-sing /
句法分析就是要弄清一句话的语法骨架——哪些词组成短语,这些短语又如何彼此挂接。它是机器版的「句子成分图解」。给定「The old man the boats」,分析器得发现那个出人意料的结构:「the old」指的是人(老人们),而「man」是动词(去操控、配备人手)。其输出通常是一棵树,标明主语、谓语动词、宾语,以及每个修饰成分究竟附着在它所描述的什么之上。
主要有两种风味。成分句法分析把词层层嵌套地组成短语(句子里套着名词短语,名词短语里套着形容词),像俄罗斯套娃。依存句法分析则换一种画法,从每个词向它所依赖的词画箭头——动词居于中心,主语和宾语挂在其上。无论哪种,目标都是把一句话隐藏的架构显式地揭示出来,因为同样的词、同样的顺序,可以编码出迥然不同的结构。
为什么要在意?因为结构改变意义。「I saw the man with the telescope」既可以是你用望远镜看,也可以是那个人拿着望远镜——你取哪种解读,全看某个短语附着在哪里。句法分析为翻译、问答和语法检查供料,历史上它更是整个领域的试金石。诚实地说:今天的大语言模型常常隐式地处理这些结构问题,根本不产出一棵显式的树——所以如今显式的句法分析是诸多有用工具之一,而非昔日那个必经的第一步。
「I saw the man with the telescope.」有两种合法的分析:(1)[with the telescope] 附着在「saw」上 → 你用望远镜看;(2)它附着在「the man」上 → 他拿着望远镜。同样的词,两棵树,两种意思。
附着歧义:你选定的结构,决定了意思。
光凭词序定不下意思——结构才行,而一句话可以有好几种合法的分析。现代大语言模型常常隐式地处理句法,所以显式的句法树如今是可选项,而非必经的第一步。