减少歧义的另外一种方法是重新定义需要的输出结果以改变游戏的规则。比如,句子中相当多的歧义都是由类似于附着歧义(attachment ambiguity)这样的问题引起的,也有的是由并列关系结构引起的,并列关系通常会在同一重要的信息上存在许多不同的解释。动词短语“saw the man in the house with a telescope”存在介词短语附着歧义,图1给出了不同解释的示例。不同的附着可以生成5种解释,每种都对应于不同的语义解释。从图2中,可以看到名词修饰名词的歧义,比如“pot holder adjustment screw”,它所采用的语法分析如下:
5. NP → N2
6. N2→N
7. N2 → N2 N2
这些过程中的复杂因素相互作用,因此,包含两个介词短语的VP和由四个名词序列组成的NP会有25种解释,其他情况也是类似的。采用一个合理的语法,一个长度中等的句子,比如包含12个词的句子,居然会有1000多种不同的结构解释!显然,我们需要引入一些技术来帮助解决这样的困难。
图1“saw the man in the house with a telescope”的5种解释
图2 “pot holder adjustment screw”的5种解释
在这一部分,将简略地探讨表示大量解释结果的高效方法。实际上,到目前为止,我们一直在使用的chart数据结构已经往这一目标迈出了非常重大的一步,因为它允许在所有解释之间共享语法成分。例如,图1给出了PP附着的解析结果,如果采用chart图表示,其结果见
图3。我们对chart图中的每一项进行编号,并将每个子成分列在括号中。例如,对应于“the man in the house”(房子里的男人)的NP是11号成分,并且包含子成分2和子成分7。在图1中,我们使用了32个非词汇节点,而chart分析表只用了21个非词汇节点就表示了同样的5种解析结果。这种节约下来的资源相当可观,而且会随着歧义数目的增长而越来越多。但是,在处理这个问题方面,chan图常常达不到要求。