提交 52b8cd2b 编写于 作者: W wizardforcel

2020-12-29 17:26:09

上级 705cc24b
......@@ -492,7 +492,7 @@ True
## 4.1 基于特征的语法中的合成语义学
在本章开头,我们简要说明了一种在句法分析的基础上建立语义表示的方法,使用在 9 开发的语法框架。这一次,不是构建一个 SQL 查询,我们将建立一个逻辑形式。我们设计这样的语法的指导思想之一是组合原则。(也称为 Frege 原则;下面给出的公式参见[(Gleitman & Liberman, 1995)](./bibliography.html#partee1995lsc) 。)
在本章开头,我们简要说明了一种在句法分析的基础上建立语义表示的方法,使用在 9 开发的语法框架。这一次,不是构建一个 SQL 查询,我们将建立一个逻辑形式。我们设计这样的语法的指导思想之一是组合原则。(也称为 Frege 原则;下面给出的公式参见(Gleitman & Liberman, 1995) 。)
**组合原则**:整体的含义是部分的含义与它们的句法结合方式的函数。
......@@ -844,9 +844,9 @@ d1: ['s0-r1', 's1-r0'] : ([z12,z15],[boy(z12), (([x],[dog(x)]) ->
## 7 深入阅读
关于本章的进一步材料以及如何安装 Prover9 定理证明器和 Mace4 模型生成器的内容请查阅`http://nltk.org/`。这两个推论工具一般信息见[(McCune, 2008)](./bibliography.html#mccune)
关于本章的进一步材料以及如何安装 Prover9 定理证明器和 Mace4 模型生成器的内容请查阅`http://nltk.org/`。这两个推论工具一般信息见(McCune, 2008)
用 NLTK 进行语义分析的更多例子,请参阅`http://nltk.org/howto`上的语义和逻辑 HOWTO。请注意,范围歧义还有其他两种解决方法,即[(Blackburn & Bos, 2005)](./bibliography.html#blackburn2005rin)描述的 Hole 语义和[(Dalrymple, 1999)](./bibliography.html#dalrymple:1999:rrb)描述的 Glue 语义。
用 NLTK 进行语义分析的更多例子,请参阅`http://nltk.org/howto`上的语义和逻辑 HOWTO。请注意,范围歧义还有其他两种解决方法,即(Blackburn & Bos, 2005)描述的 Hole 语义和(Dalrymple, 1999)描述的 Glue 语义。
自然语言语义中还有很多现象没有在本章中涉及到,主要有:
......@@ -857,17 +857,17 @@ d1: ['s0-r1', 's1-r0'] : ([z12,z15],[boy(z12), (([x],[dog(x)]) ->
`(1)``(2)`可以使用一阶逻辑处理,`(3)``(4)`需要不同的逻辑。下面的读物中很多都讲述了这些问题。
建立自然语言前端数据库方面的结果和技术的综合概述可以在[(Androutsopoulos, Ritchie, & Thanisch, 1995)](./bibliography.html#androutsopoulos1995nli)中找到。
建立自然语言前端数据库方面的结果和技术的综合概述可以在(Androutsopoulos, Ritchie, & Thanisch, 1995)中找到。
任何一本现代逻辑的入门书都将提出命题和一阶逻辑。强烈推荐[(Hodges, 1977)](./bibliography.html#hodges1977l),书中有很多有关自然语言的有趣且有洞察力的文字和插图。
任何一本现代逻辑的入门书都将提出命题和一阶逻辑。强烈推荐(Hodges, 1977),书中有很多有关自然语言的有趣且有洞察力的文字和插图。
要说范围广泛,参阅两卷本的关于逻辑教科书[(Gamut, 1991)](./bibliography.html#gamut1991il)[(Gamut, 1991)](./bibliography.html#gamut1991illg),也包含了有关自然语言的形式语义的当代材料,例如 Montague 文法和内涵逻辑。[(Kamp & Reyle, 1993)](./bibliography.html#kampreyle1993)提供段落表示理论的权威报告,包括涵盖大量且有趣的自然语言片段,包括时态、体和形态。另一个对许多自然语言结构的语义的全面研究是[(Carpenter, 1997)](./bibliography.html#carpenter1997tls)
要说范围广泛,参阅两卷本的关于逻辑教科书(Gamut, 1991)和(Gamut, 1991),也包含了有关自然语言的形式语义的当代材料,例如 Montague 文法和内涵逻辑。(Kamp & Reyle, 1993)提供段落表示理论的权威报告,包括涵盖大量且有趣的自然语言片段,包括时态、体和形态。另一个对许多自然语言结构的语义的全面研究是(Carpenter, 1997)
有许多作品介绍语言学理论框架内的逻辑语义。[(Chierchia & McConnell-Ginet, 1990)](./bibliography.html#chierchia1990mg)与句法相对无关,而[(Heim & Kratzer, 1998)](./bibliography.html#heim1998sgg) and [(Larson & Segal, 1995)](./bibliography.html#larson1995km)都更明确的倾向于将语义真值条件整合到乔姆斯基框架中。
有许多作品介绍语言学理论框架内的逻辑语义。(Chierchia & McConnell-Ginet, 1990)与句法相对无关,而(Heim & Kratzer, 1998) and (Larson & Segal, 1995)都更明确的倾向于将语义真值条件整合到乔姆斯基框架中。
[(Blackburn & Bos, 2005)](./bibliography.html#blackburn2005rin)是致力于计算语义的第一本教科书,为该领域提供了极好的介绍。它扩展了许多本章涵盖的主题,包括量词范围歧义的未指定、一阶逻辑推理以及段落处理。
(Blackburn & Bos, 2005)是致力于计算语义的第一本教科书,为该领域提供了极好的介绍。它扩展了许多本章涵盖的主题,包括量词范围歧义的未指定、一阶逻辑推理以及段落处理。
要获得更先进的当代语义方法的概述,包括处理时态和广义量词,尝试查阅[(Lappin, 1996)](./bibliography.html#lappin1996hcs)[(Benthem & Meulen, 1997)](./bibliography.html#vanbenthem1997hll)
要获得更先进的当代语义方法的概述,包括处理时态和广义量词,尝试查阅(Lappin, 1996)或(Benthem & Meulen, 1997)
## 8 练习
......@@ -990,7 +990,7 @@ d1: ['s0-r1', 's1-r0'] : ([z12,z15],[boy(z12), (([x],[dog(x)]) ->
12. ★ 实施前面的练习,但使用 DRT 作为意思表示。
13. [(Warren & Pereira, 1982)](./bibliography.html#warren1982eea)为出发点,开发一种技术,转换一个自然语言查询为一种可以更加有效的在模型中评估的形式。例如,给定一个`(P(x) & Q(x))`形式的查询,将它转换为`(Q(x) & P(x))`,如果`Q`的范围比`P`小。
13. (Warren & Pereira, 1982)为出发点,开发一种技术,转换一个自然语言查询为一种可以更加有效的在模型中评估的形式。例如,给定一个`(P(x) & Q(x))`形式的查询,将它转换为`(Q(x) & P(x))`,如果`Q`的范围比`P`小。
## 关于本文档...
......
......@@ -150,7 +150,7 @@ Kappa 系数 K 测量两个人判断类别和修正预期的期望一致性的
最简单的方法是获得出版的网页文本的文集。Web 语料库 ACL 特别兴趣组(SIGWAC)在`http://www.sigwac.org.uk/`维护一个资源列表。使用定义好的 Web 语料库的优点是它们有文档、稳定并允许重复性实验。
如果所需的内容在一个特定的网站,有许多实用程序能捕获网站的所有可访问内容,如 *GNU Wget* `http://www.gnu.org/software/wget/`。For maximal flexibility and control, a web crawler can be used, such as *Heritrix* `http://crawler.archive.org/`. 为了最大的灵活性和可控制,可以使用网络爬虫如[(Croft, Metzler, & Strohman, 2009)](./bibliography.html#croft2009)。例如:如果我们要编译双语文本集合,对应两种语言的文档对,爬虫需要检测站点的结构以提取文件之间的对应关系,它需要按照捕获的对应方式组织下载的页面。写你自己的网页爬虫可能使很有诱惑力的,但也有很多陷阱需要克服,如检测 MIME 类型、转换相对地址为绝对 URL、避免被困在循环链接结构、处理网络延迟、避免使站点超载或被禁止访问该网站等。
如果所需的内容在一个特定的网站,有许多实用程序能捕获网站的所有可访问内容,如 *GNU Wget* `http://www.gnu.org/software/wget/`。For maximal flexibility and control, a web crawler can be used, such as *Heritrix* `http://crawler.archive.org/`. 为了最大的灵活性和可控制,可以使用网络爬虫如(Croft, Metzler, & Strohman, 2009)。例如:如果我们要编译双语文本集合,对应两种语言的文档对,爬虫需要检测站点的结构以提取文件之间的对应关系,它需要按照捕获的对应方式组织下载的页面。写你自己的网页爬虫可能使很有诱惑力的,但也有很多陷阱需要克服,如检测 MIME 类型、转换相对地址为绝对 URL、避免被困在循环链接结构、处理网络延迟、避免使站点超载或被禁止访问该网站等。
## 3.2 从字处理器文件获取数据
......@@ -734,21 +734,21 @@ OLAC 元数据是描述语言资源的标准。通过限制某些元数据元素
本章的附加材料发布在`http://nltk.org/`,包括网络上免费提供的资源的链接。
语言学语料库的首要来源是*语言数据联盟**欧洲语言资源局*,两者都有广泛的在线目录。本书中提到的主要语料库的细节也有介绍:美国国家语料库[(Reppen, Ide, & Suderman, 2005)](./bibliography.html#reppen2005anc)、英国国家语料库[({BNC}, 1999)](./bibliography.html#bnc1999),Thesaurus Linguae Graecae[({TLG}, 1999)](./bibliography.html#tlg1999)、儿童语言数据交换系统 (CHILDES) [(MacWhinney, 1995)](./bibliography.html#macwhinney1995childes)和 TIMIT[(S., Lamel, & William, 1986)](./bibliography.html#garofolo1986timit)
语言学语料库的首要来源是*语言数据联盟**欧洲语言资源局*,两者都有广泛的在线目录。本书中提到的主要语料库的细节也有介绍:美国国家语料库(Reppen, Ide, & Suderman, 2005)、英国国家语料库({BNC}, 1999),Thesaurus Linguae Graecae({TLG}, 1999)、儿童语言数据交换系统 (CHILDES) (MacWhinney, 1995)和 TIMIT(S., Lamel, & William, 1986)
计算语言学协会定期组织研讨会发布论文集,它的两个特别兴趣组:SIGWAC 和 SIGANN;前者推动使用网络作为语料,发起去除 HTML 标记的 CLEANEVAL 任务;后者鼓励对语言注解的互操作性的努力。
[(Buseman, Buseman, & Early, 1996)](./bibliography.html#buseman1996shoebox)提供 Toolbox 数据格式的全部细节,最新的发布可以从`http://www.sil.org/computing/toolbox/`免费下载。构建一个 Toolbox 词典的过程指南参见`http://www.sil.org/computing/ddp/`。我们在 Toolbox 上努力的更多的例子记录在[(Tamanji, Hirotani, & Hall, 1999)](./bibliography.html#bird1999nels)[(Robinson, Aumann, & Bird, 2007)](./bibliography.html#robinson2007toolbox)[(Bird & Simons, 2003)](./bibliography.html#bird2003portability)调查了语言数据管理的几十个其他工具。也请参阅关于文化遗产数据的语言技术的 LaTeCH 研讨会的论文集。
(Buseman, Buseman, & Early, 1996)提供 Toolbox 数据格式的全部细节,最新的发布可以从`http://www.sil.org/computing/toolbox/`免费下载。构建一个 Toolbox 词典的过程指南参见`http://www.sil.org/computing/ddp/`。我们在 Toolbox 上努力的更多的例子记录在(Tamanji, Hirotani, & Hall, 1999)和(Robinson, Aumann, & Bird, 2007)。(Bird & Simons, 2003)调查了语言数据管理的几十个其他工具。也请参阅关于文化遗产数据的语言技术的 LaTeCH 研讨会的论文集。
有很多优秀的 XML 资源(如`http://zvon.org/`)和编写 Python 程序处理 XML 的资源。许多编辑器都有 XML 模式。XML 格式的词汇信息包括 OLIF`http://www.olif.net/`和 LIFT`http://code.google.com/p/lift-standard/`
对于语言标注软件的调查,见`http://www.ldc.upenn.edu/annotation/`*语言标注页*。对峙注解最初的提出是[(Thompson & McKelvie, 1997)](./bibliography.html#thompson1997standoff)。语言标注的一个抽象的数据模型称为“标注图”在[(Bird & Liberman, 2001)](./bibliography.html#bird2001annotation)提出。语言描述的一个通用本体(GOLD)记录在`http://www.linguistics-ontology.org/`中。
对于语言标注软件的调查,见`http://www.ldc.upenn.edu/annotation/`*语言标注页*。对峙注解最初的提出是(Thompson & McKelvie, 1997)。语言标注的一个抽象的数据模型称为“标注图”在(Bird & Liberman, 2001)提出。语言描述的一个通用本体(GOLD)记录在`http://www.linguistics-ontology.org/`中。
有关规划和建设语料库的指导,请参阅[(Meyer, 2002)](./bibliography.html#meyer2002)[(Farghaly, 2003)](./bibliography.html#farghaly2003) 。关于标注者之间一致性得分的方法的更多细节,见[(Artstein & Poesio, 2008)](./bibliography.html#artsteinpoesio2008)[(Pevzner & Hearst, 2002)](./bibliography.html#pevzner2002windowdiff)
有关规划和建设语料库的指导,请参阅(Meyer, 2002)和(Farghaly, 2003) 。关于标注者之间一致性得分的方法的更多细节,见(Artstein & Poesio, 2008)和(Pevzner & Hearst, 2002)
Rotokas 数据由 Stuart Robinson 提供,勉方言数据由 Greg Aumann 提供。
有关开放语言档案社区的更多信息,请访问`http://www.language-archives.org/`,或参见[(Simons & Bird, 2003)](./bibliography.html#simonsbird2003llc)
有关开放语言档案社区的更多信息,请访问`http://www.language-archives.org/`,或参见(Simons & Bird, 2003)
## 9 练习
......
......@@ -36,7 +36,7 @@ g. There are two ways to do this, AFAIK :smile: (internet discussion archive)
另一个密切相关的发展是组合原理,即一个复杂表达式的意思由它的各个部分的意思和它们的组合模式组成(10)。这一原理提供了句法和语义之间的有用的对应,即一个复杂的表达式的含义可以递归的计算。考虑句子 It is not true that p,其中 p 是一个命题。我们可以表示这个句子的意思为 not(p)。同样,我们可以表示 John saw Mary 的意思为 saw(j, m)。现在,我们可以使用上述信息递归地计算 It is not true that John saw Mary 的表示,得到 not(saw(j,m))。
刚刚简要介绍的方法都有一个前提,自然语言计算关键依赖于操纵符号表示的规则。NLP 发展的一个特定时期,特别是 1980 年代,这个前提为语言学家和 NLP 从业人员提供了一个共同的起点,导致一种被称为基于归一(基于特征)语法的形式化语法家族(参见 9),也导致了在 Prolog 编程语言上实现 NLP 应用。虽然基于语法的自然语言处理仍然是一个研究的重要领域,由于多种因素在过去的 15-20 年它已经有些黯然失色。一个显著的影响因素来自于自动语音识别。虽然早期的语音处理采用一个模拟一类基于规则的音韵处理的模型,典型的如 *Sound Pattern of English* [(Chomsky & Halle, 1968)](./bibliography.html#chomskyhalle68),结果远远不能够解决实时的识别实际的讲话这样困难的问题。相比之下,包含从大量语音数据中学习的模式的系统明显更准确、高效和稳健的。此外,言语社区发现建立对常见的测试数据的性能的定量测量的共享资源对建立更好的系统的过程有巨大帮助。最终,大部分的 NLP 社区拥抱面向数据密集型的语言处理,配合机器学习技术和评价为主导的方法的越来越多地使用。
刚刚简要介绍的方法都有一个前提,自然语言计算关键依赖于操纵符号表示的规则。NLP 发展的一个特定时期,特别是 1980 年代,这个前提为语言学家和 NLP 从业人员提供了一个共同的起点,导致一种被称为基于归一(基于特征)语法的形式化语法家族(参见 9),也导致了在 Prolog 编程语言上实现 NLP 应用。虽然基于语法的自然语言处理仍然是一个研究的重要领域,由于多种因素在过去的 15-20 年它已经有些黯然失色。一个显著的影响因素来自于自动语音识别。虽然早期的语音处理采用一个模拟一类基于规则的音韵处理的模型,典型的如 *Sound Pattern of English* (Chomsky & Halle, 1968),结果远远不能够解决实时的识别实际的讲话这样困难的问题。相比之下,包含从大量语音数据中学习的模式的系统明显更准确、高效和稳健的。此外,言语社区发现建立对常见的测试数据的性能的定量测量的共享资源对建立更好的系统的过程有巨大帮助。最终,大部分的 NLP 社区拥抱面向数据密集型的语言处理,配合机器学习技术和评价为主导的方法的越来越多地使用。
## 当代哲学划分
......
......@@ -1192,11 +1192,11 @@ WordNet 同义词集的集合上定义的相似度能够包括上面的概念。
这些语料库和许多其他语言资源使用 OLAC 元数据格式存档,可以通过`http://www.language-archives.org/`上的 OLAC 主页搜索到。Corpora List 是一个讨论语料库内容的邮件列表,你可以通过搜索列表档案来找到资源或发布资源到列表中。*Ethnologue* 是最完整的世界上的语言的清单,`http://www.ethnologue.com/`。7000 种语言中只有几十中有大量适合 NLP 使用的数字资源。
本章触及语料库语言学领域。在这一领域的其他有用的书籍包括[(Biber, Conrad, & Reppen, 1998)](./bibliography.html#biber1998), [(McEnery, 2006)](./bibliography.html#mcenery2006), [(Meyer, 2002)](./bibliography.html#meyer2002), [(Sampson & McCarthy, 2005)](./bibliography.html#sampson2005), [(Scott & Tribble, 2006)](./bibliography.html#scott2006)。在语言学中海量数据分析的深入阅读材料有:[(Baayen, 2008)](./bibliography.html#baayen2008), [(Gries, 2009)](./bibliography.html#gries2009), [(Woods, Fletcher, & Hughes, 1986)](./bibliography.html#woods1986)
本章触及语料库语言学领域。在这一领域的其他有用的书籍包括(Biber, Conrad, & Reppen, 1998), (McEnery, 2006), (Meyer, 2002), (Sampson & McCarthy, 2005), (Scott & Tribble, 2006)。在语言学中海量数据分析的深入阅读材料有:(Baayen, 2008), (Gries, 2009), (Woods, Fletcher, & Hughes, 1986)
WordNet 原始描述是[(Fellbaum, 1998)](./bibliography.html#fellbaum1998)。虽然 WordNet 最初是为心理语言学研究开发的,它目前在自然语言处理和信息检索领域被广泛使用。WordNets 正在开发许多其他语言的版本,在`http://www.globalwordnet.org/`中有记录。学习 WordNet 相似性度量可以阅读[(Budanitsky & Hirst, 2006)](./bibliography.html#budanitsky2006ewb)
WordNet 原始描述是(Fellbaum, 1998)。虽然 WordNet 最初是为心理语言学研究开发的,它目前在自然语言处理和信息检索领域被广泛使用。WordNets 正在开发许多其他语言的版本,在`http://www.globalwordnet.org/`中有记录。学习 WordNet 相似性度量可以阅读(Budanitsky & Hirst, 2006)
本章触及的其它主题是语音和词汇语义学,读者可以参考[(Jurafsky & Martin, 2008)](./bibliography.html#jurafskymartin2008)的第 7 和第 20 章。
本章触及的其它主题是语音和词汇语义学,读者可以参考(Jurafsky & Martin, 2008)的第 7 和第 20 章。
## 8 练习
......@@ -1232,7 +1232,7 @@ WordNet 原始描述是[(Fellbaum, 1998)](./bibliography.html#fellbaum1998)。
25. ★ 定义一个函数`find_language()`,用一个字符串作为其参数,返回包含这个字符串作为词汇的语言的列表。使用《世界人权宣言》`udhr`的语料,将你的搜索限制在 Latin-1 编码的文件中。
26. ★ 名词上位词层次的分枝因素是什么?也就是说,对于每一个具有下位词——上位词层次中的子女——的名词同义词集,它们平均有几个下位词?你可以使用`wn.all_synsets('n')`获得所有名词同义词集。
27. ★ 一个词的多义性是它所有含义的个数。利用 WordNet,使用`len(wn.synsets('dog', 'n'))`我们可以判断名词`dog`有 7 种含义。计算 WordNet 中名词、动词、形容词和副词的平均多义性。
28. ★ 使用预定义的相似性度量之一给下面的每个词对的相似性打分。按相似性减少的顺序排名。你的排名与这里给出的顺序有多接近?[(Miller & Charles, 1998)](./bibliography.html#millercharles1998)实验得出的顺序:`car-automobile, gem-jewel, journey-voyage, boy-lad, coast-shore, asylum-madhouse, magician-wizard, midday-noon, furnace-stove, food-fruit, bird-cock, bird-crane, tool-implement, brother-monk, lad-brother, crane-implement, journey-car, monk-oracle, cemetery-woodland, food-rooster, coast-hill, forest-graveyard, shore-woodland, monk-slave, coast-forest, lad-wizard, chord-smile, glass-magician, rooster-voyage, noon-string`
28. ★ 使用预定义的相似性度量之一给下面的每个词对的相似性打分。按相似性减少的顺序排名。你的排名与这里给出的顺序有多接近?(Miller & Charles, 1998)实验得出的顺序:`car-automobile, gem-jewel, journey-voyage, boy-lad, coast-shore, asylum-madhouse, magician-wizard, midday-noon, furnace-stove, food-fruit, bird-cock, bird-crane, tool-implement, brother-monk, lad-brother, crane-implement, journey-car, monk-oracle, cemetery-woodland, food-rooster, coast-hill, forest-graveyard, shore-woodland, monk-slave, coast-forest, lad-wizard, chord-smile, glass-magician, rooster-voyage, noon-string`
## 关于本文档...
......
......@@ -1203,7 +1203,7 @@ WordNet 词形归并器只在产生的词在它的词典中时才删除词缀。
20.250994070456922
```
在其他情况下,文本可能只是作为一个字符流。在将文本分词之前,我们需要将它分割成句子。NLTK 通过包含`Punkt`句子分割器[(Kiss & Strunk, 2006)](./bibliography.html#kissstrunk2006)使得这个功能便于使用。这里是使用它为一篇小说文本断句的例子。(请注意,如果在你读到这篇文章时分割器内部数据已经更新过,你会看到不同的输出):
在其他情况下,文本可能只是作为一个字符流。在将文本分词之前,我们需要将它分割成句子。NLTK 通过包含`Punkt`句子分割器(Kiss & Strunk, 2006)使得这个功能便于使用。这里是使用它为一篇小说文本断句的例子。(请注意,如果在你读到这篇文章时分割器内部数据已经更新过,你会看到不同的输出):
```py
>>> text = nltk.corpus.gutenberg.raw('chesterton-thursday.txt')
......@@ -1260,7 +1260,7 @@ def segment(text, segs):
return words
```
现在分词的任务变成了一个搜索问题:找到将文本字符串正确分割成词汇的字位串。我们假定学习者接收词,并将它们存储在一个内部词典中。给定一个合适的词典,是能够由词典中的词的序列来重构源文本的。根据[(Brent, 1995)](./bibliography.html#brent1995),我们可以定义一个目标函数,一个打分函数,我们将基于词典的大小和从词典中重构源文本所需的信息量尽力优化它的值。我们在 3.8 中说明了这些。
现在分词的任务变成了一个搜索问题:找到将文本字符串正确分割成词汇的字位串。我们假定学习者接收词,并将它们存储在一个内部词典中。给定一个合适的词典,是能够由词典中的词的序列来重构源文本的。根据(Brent, 1995),我们可以定义一个目标函数,一个打分函数,我们将基于词典的大小和从词典中重构源文本所需的信息量尽力优化它的值。我们在 3.8 中说明了这些。
![Images/brent.png](Images/ced4e829d6a662a2be20187f9d7b71b5.jpg)
......@@ -1583,9 +1583,9 @@ After (5), all (3), is (2), said (4), and (3), done (4), , (1), more
本章的附加材料发布在`http://nltk.org/`,包括网络上免费提供的资源的链接。记得咨询`http://docs.python.org/`上的的参考材料。(例如:此文档涵盖“通用换行符支持”,解释了各种操作系统如何规定不同的换行符。)
更多的使用 NLTK 处理词汇的例子请参阅`http://nltk.org/howto`上的分词、词干提取以及语料库 HOWTO 文档。[(Jurafsky & Martin, 2008)](./bibliography.html#jurafskymartin2008)的第 2、3 章包含正则表达式和形态学的更高级的材料。Python 文本处理更广泛的讨论请参阅[(Mertz, 2003)](./bibliography.html#mertz2003tpp)。规范非标准词的信息请参阅[(Sproat et al, 2001)](./bibliography.html#sproat2001nor)
更多的使用 NLTK 处理词汇的例子请参阅`http://nltk.org/howto`上的分词、词干提取以及语料库 HOWTO 文档。(Jurafsky & Martin, 2008)的第 2、3 章包含正则表达式和形态学的更高级的材料。Python 文本处理更广泛的讨论请参阅(Mertz, 2003)。规范非标准词的信息请参阅(Sproat et al, 2001)
关于正则表达式的参考材料很多,无论是理论的还是实践的。在 Python 中使用正则表达式的一个入门教程,请参阅 Kuchling 的《Regular Expression HOWTO》,`http://www.amk.ca/python/howto/regex/`。关于使用正则表达式的全面而详细的手册,请参阅[(Friedl, 2002)](./bibliography.html#friedl2002mre),其中涵盖包括 Python 在内大多数主要编程语言的语法。其他材料还包括[(Jurafsky & Martin, 2008)](./bibliography.html#jurafskymartin2008)的第 2.1 节,[(Mertz, 2003)](./bibliography.html#mertz2003tpp)的第 3 章。
关于正则表达式的参考材料很多,无论是理论的还是实践的。在 Python 中使用正则表达式的一个入门教程,请参阅 Kuchling 的《Regular Expression HOWTO》,`http://www.amk.ca/python/howto/regex/`。关于使用正则表达式的全面而详细的手册,请参阅(Friedl, 2002),其中涵盖包括 Python 在内大多数主要编程语言的语法。其他材料还包括(Jurafsky & Martin, 2008)的第 2.1 节,(Mertz, 2003)的第 3 章。
网上有许多关于 Unicode 的资源。以下是与处理 Unicode 的 Python 的工具有关的有益的讨论:
......@@ -1594,13 +1594,13 @@ After (5), all (3), is (2), said (4), and (3), done (4), , (1), more
* David Beazley, Mastering Python 3 I/O, `http://pyvideo.org/video/289/pycon-2010--mastering-python-3-i-o`
* Joel Spolsky, *The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)*, `http://www.joelonsoftware.com/articles/Unicode.html`
SIGHAN,ACL 中文语言处理特别兴趣小组`http://sighan.org/`,重点关注中文文本分词的问题。我们分割英文文本的方法依据[(Brent, 1995)](./bibliography.html#brent1995);这项工作属于语言获取领域[(Niyogi, 2006)](./bibliography.html#niyogi2006)
SIGHAN,ACL 中文语言处理特别兴趣小组`http://sighan.org/`,重点关注中文文本分词的问题。我们分割英文文本的方法依据(Brent, 1995);这项工作属于语言获取领域(Niyogi, 2006)
搭配是多词表达式的一种特殊情况。一个多词表达式是一个小短语,仅从它的词汇不能预测它的意义和其他属性,例如词性[(Baldwin & Kim, 2010)](./bibliography.html#baldwinkim2010)
搭配是多词表达式的一种特殊情况。一个多词表达式是一个小短语,仅从它的词汇不能预测它的意义和其他属性,例如词性(Baldwin & Kim, 2010)
模拟退火是一种启发式算法,找寻在一个大型的离散的搜索空间上的一个函数的最佳值的最好近似,基于对金属冶炼中的退火的模拟。该技术在许多人工智能文本中都有描述。
[(Hearst, 1992)](./bibliography.html#hearst1992hyp)描述了使用如 x and other ys 的搜索模式发现文本中下位词的方法。
(Hearst, 1992)描述了使用如 x and other ys 的搜索模式发现文本中下位词的方法。
## 3.12 练习
......@@ -1749,7 +1749,7 @@ SIGHAN,ACL 中文语言处理特别兴趣小组`http://sighan.org/`,重点
44. ★ 写一个程序处理文本,发现一个词以一种新的意义被使用的情况。对于每一个词计算这个词所有同义词集与这个词的上下文的所有同义词集之间的 WordNet 相似性。(请注意,这是一个粗略的办法;要做的很好是困难的,开放性研究问题。)
45. ★ 阅读关于规范化非标准词的文章[(Sproat et al, 2001)](./bibliography.html#sproat2001nor),实现一个类似的文字规范系统。
45. ★ 阅读关于规范化非标准词的文章(Sproat et al, 2001),实现一个类似的文字规范系统。
## 关于本文档...
......
......@@ -1373,11 +1373,11 @@ NLTK 中的聚类包`nltk.cluster`中广泛使用 NumPy 数组,支持包括 k-
本章已经触及编程中的许多主题,一些是 Python 特有的,一些是相当普遍的。我们只是触及了表面,你可能想要阅读更多有关这些主题的内容,可以从`http://nltk.org/`处的本章深入阅读材料开始。
Python 网站提供大量文档。理解内置的函数和标准类型是很重要的,在`http://docs.python.org/library/functions.html``http://docs.python.org/library/stdtypes.html`处有描述。我们已经学习了生成器以及它们对提高效率的重要性;关于迭代器的信息,一个密切相关的话题请看`http://docs.python.org/library/itertools.html`。查询你喜欢的 Python 书籍中这些主题的更多信息。使用 Python 进行多媒体处理包括声音文件的一个优秀的资源是[(Guzdial, 2005)](./bibliography.html#guzdial2005)
Python 网站提供大量文档。理解内置的函数和标准类型是很重要的,在`http://docs.python.org/library/functions.html``http://docs.python.org/library/stdtypes.html`处有描述。我们已经学习了生成器以及它们对提高效率的重要性;关于迭代器的信息,一个密切相关的话题请看`http://docs.python.org/library/itertools.html`。查询你喜欢的 Python 书籍中这些主题的更多信息。使用 Python 进行多媒体处理包括声音文件的一个优秀的资源是(Guzdial, 2005)
使用在线 Python 文档时,要注意你安装的版本可能与你正在阅读的文档的版本不同。你可以使用`import sys; sys.version`松地查询你有的是什么版本。特定版本的文档在`http://www.python.org/doc/versions/`处。
算法设计是计算机科学中一个丰富的领域。一些很好的出发点是[(Harel, 2004)](./bibliography.html#harel2004), [(Levitin, 2004)](./bibliography.html#levitin2004), [(Knuth, 2006)](./bibliography.html#knuth2006trees)[(Hunt & Thomas, 2000)](./bibliography.html#hunt2000)[(McConnell, 2004)](./bibliography.html#mcconnell2004)为软件开发实践提供了有益的指导。
算法设计是计算机科学中一个丰富的领域。一些很好的出发点是(Harel, 2004), (Levitin, 2004), (Knuth, 2006)。(Hunt & Thomas, 2000)和(McConnell, 2004)为软件开发实践提供了有益的指导。
## 4.11 练习
......@@ -1444,7 +1444,7 @@ Python 网站提供大量文档。理解内置的函数和标准类型是很重
23. ◑ 写一个递归函数`lookup(trie, key)`在查找树中查找一个关键字,返回找到的值。扩展这个函数,当一个词由其前缀唯一确定时返回这个词(例如`vanguard`是以`vang-`开头的唯一的词,所以`lookup(trie, 'vang')`应该返回与`lookup(trie, 'vanguard')`相同的内容)。
24. ◑ 阅读关于“关键字联动”的内容([(Scott & Tribble, 2006)](./bibliography.html#scott2006)的第 5 章)。从 NLTK 的莎士比亚语料库中提取关键字,使用 NetworkX 包,画出关键字联动网络。
24. ◑ 阅读关于“关键字联动”的内容((Scott & Tribble, 2006)的第 5 章)。从 NLTK 的莎士比亚语料库中提取关键字,使用 NetworkX 包,画出关键字联动网络。
25. ◑ 阅读有关字符串编辑距离和 Levenshtein 算法的内容。尝试`nltk.edit_distance()`提供的实现。这用的是动态规划的何种方式?它使用的是自下而上还是自上而下的方法?(另见`http://norvig.com/spell-correct.html`
......@@ -1453,7 +1453,7 @@ Python 网站提供大量文档。理解内置的函数和标准类型是很重
1. 编写一个递归函数计算第`n`个卡塔兰数`C[n]`。
2. 现在写另一个函数使用动态规划做这个计算。
3. 使用`timeit`模块比较当`n`增加时这些函数的性能。
27. ★ 重现有关著作权鉴定的[(Zhao & Zobel, 2007)](./bibliography.html#zhao07)中的一些结果。
27. ★ 重现有关著作权鉴定的(Zhao & Zobel, 2007)中的一些结果。
28. ★ 研究性别特异词汇选择,看你是否可以重现一些`http://www.clintoneast.com/articles/words.php`的结果
......
......@@ -1067,7 +1067,7 @@ N 元标注器不应考虑跨越句子边界的上下文。因此,NLTK 的标
一般情况下,标注过程会损坏区别:例如当所有的人称代词被标注为`PRP`时,词的特性通常会失去。与此同时,标注过程引入了新的区别从而去除了含糊之处:例如`deal`标注为`VB``NN`。这种消除某些区别并引入新的区别的特点是标注的一个重要的特征,有利于分类和预测。当我们引入一个标记集的更细的划分时,在 N 元标注器决定什么样的标记分配给一个特定的词时,可以获得关于左侧上下文的更详细的信息。然而,标注器同时也将需要做更多的工作来划分当前的词符,只是因为有更多可供选择的标记。相反,使用较少的区别(如简化的标记集),标注器有关上下文的信息会减少,为当前词符分类的选择范围也较小。
我们已经看到,训练数据中的歧义导致标注器准确性的上限。有时更多的上下文能解决这些歧义。然而,在其他情况下,如[(Church, Young, & Bloothooft, 1996)](./bibliography.html#abney1996pst)中指出的,只有参考语法或现实世界的知识,才能解决歧义。尽管有这些缺陷,词性标注在用统计方法进行自然语言处理的兴起过程中起到了核心作用。1990 年代初,统计标注器令人惊讶的精度是一个惊人的示范,可以不用更深的语言学知识解决一小部分语言理解问题,即词性消歧。这个想法能再推进吗?第 7 中,我们将看到,它可以。
我们已经看到,训练数据中的歧义导致标注器准确性的上限。有时更多的上下文能解决这些歧义。然而,在其他情况下,如(Church, Young, & Bloothooft, 1996)中指出的,只有参考语法或现实世界的知识,才能解决歧义。尽管有这些缺陷,词性标注在用统计方法进行自然语言处理的兴起过程中起到了核心作用。1990 年代初,统计标注器令人惊讶的精度是一个惊人的示范,可以不用更深的语言学知识解决一小部分语言理解问题,即词性消歧。这个想法能再推进吗?第 7 中,我们将看到,它可以。
## 6 基于转换的标注
......@@ -1204,7 +1204,7 @@ Statement User121 18/m pm me if u tryin to chat
1. 创建一种新的一元标注器,查看前一个词的标记,而忽略当前词。(做到这一点的最好办法是修改`UnigramTagger()`的源代码,需要 Python 中的面向对象编程的知识。
2. 将这个标注器加入到回退标注器序列(包括普通的三元和二元标注器),放在常用默认标注器的前面。
3. 评价这个新的一元标注器的贡献。
38. ★ 思考 5 中的代码,它确定一个三元标注器的准确性上限。回顾 Abney 的关于精确标注的不可能性的讨论[(Church, Young, & Bloothooft, 1996)](./bibliography.html#abney1996pst)。解释为什么正确标注这些例子需要获取词和标记以外的其他种类的信息。你如何估计这个问题的规模?
38. ★ 思考 5 中的代码,它确定一个三元标注器的准确性上限。回顾 Abney 的关于精确标注的不可能性的讨论(Church, Young, & Bloothooft, 1996)。解释为什么正确标注这些例子需要获取词和标记以外的其他种类的信息。你如何估计这个问题的规模?
39. ★ 使用`nltk.probability`中的一些估计技术,例如 *Lidstone**Laplace* 估计,开发一种统计标注器,它在训练中没有遇到而测试中遇到的上下文中表现优于 N 元回退标注器。
40. ★ 检查 Brill 标注器创建的诊断文件`rules.out``errors.out`。通过访问源代码(`http://www.nltk.org/code`)获得演示代码,创建你自己版本的 Brill 标注器。并根据你从检查`rules.out`了解到的,删除一些规则模板。增加一些新的规则模板,这些模板使用那些可能有助于纠正你在`errors.out`看到的错误的上下文。
41. ★ 开发一个 N 元回退标注器,允许在标注器初始化时指定“anti-n-grams”,如`["the", "the"]`。一个 anti-n-grams 被分配一个数字 0,被用来防止这个 N 元回退(如避免估计`P(the | the)`而只做`P(the)`)。
......
......@@ -719,13 +719,13 @@ VAN('annie_lennox', 'eurythmics')
本章的附加材料发布在`http://nltk.org/`,包括网络上免费提供的资源的链接。关于使用 NLTK 词块划分的更多的例子,请看在`http://nltk.org/howto`上的词块划分 HOWTO。
分块的普及很大一部分是由于 Abney 的开创性的工作,如[(Church, Young, & Bloothooft, 1996)](./bibliography.html#abney1996pst)。`http://www.vinartus.net/spa/97a.pdf`中描述了 Abney 的 Cass 词块划分器器。
分块的普及很大一部分是由于 Abney 的开创性的工作,如(Church, Young, & Bloothooft, 1996)。`http://www.vinartus.net/spa/97a.pdf`中描述了 Abney 的 Cass 词块划分器器。
根据 Ross 和 Tukey 在 1975 年的论文[(Church, Young, & Bloothooft, 1996)](./bibliography.html#abney1996pst),单词词缝最初的意思是一个停用词序列。
根据 Ross 和 Tukey 在 1975 年的论文(Church, Young, & Bloothooft, 1996),单词词缝最初的意思是一个停用词序列。
IOB 格式(有时也称为 BIO 格式)由[(Ramshaw & Marcus, 1995)](./bibliography.html#ramshaw1995tcu)开发用来`NP`划分词块,并被由《Conference on Natural Language Learning》在 1999 年用于`NP`加括号共享任务。CoNLL 2000 采用相同的格式标注了华尔街日报的文本作为一个`NP`词块划分共享任务的一部分。
IOB 格式(有时也称为 BIO 格式)由(Ramshaw & Marcus, 1995)开发用来`NP`划分词块,并被由《Conference on Natural Language Learning》在 1999 年用于`NP`加括号共享任务。CoNLL 2000 采用相同的格式标注了华尔街日报的文本作为一个`NP`词块划分共享任务的一部分。
[(Jurafsky & Martin, 2008)](./bibliography.html#jurafskymartin2008)的 13.5 节包含有关词块划分的一个讨论。第 22 章讲述信息提取,包括命名实体识别。有关生物学和医学中的文本挖掘的信息,请参阅[(Ananiadou & McNaught, 2006)](./bibliography.html#ananiadou2006)
(Jurafsky & Martin, 2008)的 13.5 节包含有关词块划分的一个讨论。第 22 章讲述信息提取,包括命名实体识别。有关生物学和医学中的文本挖掘的信息,请参阅(Ananiadou & McNaught, 2006)
## 9 练习
......
......@@ -412,7 +412,7 @@ NLTK 语料库也收集了*中央研究院树库语料*,包括 10,000 句已
随着句子长度增加到`(3, 5, 7, ...)`,我们得到的分析树的数量是:`1; 2; 5; 14; 42; 132; 429; 1,430; 4,862; 16,796; 58,786; 208,012; …`(这是卡塔兰数,我们在 4 的练习中见过)。最后一个是句子长度为 23 的分析树的数目,这是宾州树库 WSJ 部分的句子的平均长度。对于一个长度为 50 的句子有超过`10^12`的解析,这只是 Piglet 句子长度的一半`(1)`,这些句子小孩可以毫不费力的处理。没有实际的自然语言处理系统可以为一个句子构建数以百万计的树,并根据上下文选择一个合适的。很显然,人也不会这样做!
请注意,这个问题不是只在我们选择的例子中存在。[(Church & Patil, 1982)](./bibliography.html#church1982csa)指出`PP`附着句法歧义在像`(18)`这样的句子中也是按卡塔兰数的比例增长。
请注意,这个问题不是只在我们选择的例子中存在。(Church & Patil, 1982)指出`PP`附着句法歧义在像`(18)`这样的句子中也是按卡塔兰数的比例增长。
```py
def give(t):
......@@ -429,7 +429,7 @@ def print_node(t, width):
print(output)
```
我们可以观察到一种强烈的倾向就是最短的补语最先出现。然而,这并没有解释类似`give NP: federal judges / NP: a raise`的形式,其中有生性起了重要作用。事实上,根据[(Bresnan & Hay, 2006)](./bibliography.html#bresnan2006gg)的调查,存在大量的影响因素。这些偏好可以用加权语法来表示。
我们可以观察到一种强烈的倾向就是最短的补语最先出现。然而,这并没有解释类似`give NP: federal judges / NP: a raise`的形式,其中有生性起了重要作用。事实上,根据(Bresnan & Hay, 2006)的调查,存在大量的影响因素。这些偏好可以用加权语法来表示。
概率上下文无关语法(或 *PCFG*)是一种上下文无关语法,它的每一个产生式关联一个概率。它会产生与相应的上下文无关语法相同的文本解析,并给每个解析分配一个概率。PCFG 产生的一个解析的概率仅仅是它用到的产生式的概率的乘积。
......@@ -476,11 +476,11 @@ grammar = nltk.PCFG.fromstring("""
本章的附加材料发布在`http://nltk.org/`,包括网络上免费提供的资源的链接。关于使用 NLTK 分析的更多的例子,请看在`http://nltk.org/howto`上的分析 HOWTO。
有许多关于句法的入门书籍。[(O'Grady et al, 2004)](./bibliography.html#ogrady2004)是一个语言学概论,而[(Radford, 1988)](./bibliography.html#radford1988tg)以容易接受的方式介绍转换语法,推荐其中的无限制依赖结构的转换文法。在形式语言学中最广泛使用的术语是生成语法,虽然它与生成并没有关系[(Chomsky, 1965)](./bibliography.html#chomsky1965)。X-bar 句法来自于[(Jacobs & Rosenbaum, 1970)](./bibliography.html#chomsky1970rn),并在[(Jackendoff, 1977)](./bibliography.html#jackendoff1977xs)得到更深的拓展(我们使用素数替代了 Chomsky 印刷上要求更高的单杠)。
有许多关于句法的入门书籍。(O'Grady et al, 2004)是一个语言学概论,而(Radford, 1988)以容易接受的方式介绍转换语法,推荐其中的无限制依赖结构的转换文法。在形式语言学中最广泛使用的术语是生成语法,虽然它与生成并没有关系(Chomsky, 1965)。X-bar 句法来自于(Jacobs & Rosenbaum, 1970),并在(Jackendoff, 1977)得到更深的拓展(我们使用素数替代了 Chomsky 印刷上要求更高的单杠)。
[(Burton-Roberts, 1997)](./bibliography.html#burtonroberts1997as)是一本面向实践的关于如何分析英语成分的教科书,包含广泛的例子和练习。[(Huddleston & Pullum, 2002)](./bibliography.html#huddleston2002cge)提供了一份最新的英语句法现象的综合分析。
(Burton-Roberts, 1997)是一本面向实践的关于如何分析英语成分的教科书,包含广泛的例子和练习。(Huddleston & Pullum, 2002)提供了一份最新的英语句法现象的综合分析。
[(Jurafsky & Martin, 2008)](./bibliography.html#jurafskymartin2008)的第 12 章讲述英语的形式文法;13.1-3 节讲述简单的分析算法和歧义处理技术;第 14 章讲述统计分析;第 16 章讲述乔姆斯基层次和自然语言的形式复杂性。[(Levin, 1993)](./bibliography.html#levin1993)根据它们的句法属性,将英语动词划分成更细的类。
(Jurafsky & Martin, 2008)的第 12 章讲述英语的形式文法;13.1-3 节讲述简单的分析算法和歧义处理技术;第 14 章讲述统计分析;第 16 章讲述乔姆斯基层次和自然语言的形式复杂性。(Levin, 1993)根据它们的句法属性,将英语动词划分成更细的类。
有几个正在进行的建立大规模的基于规则的语法的项目,如 LFG Pargram 项目`http://www2.parc.com/istl/groups/nltt/pargram/`,HPSG LinGO 矩阵框架`http://www.delph-in.net/matrix/`以及 XTAG 项目`http://www.cis.upenn.edu/~xtag/`
......
......@@ -631,23 +631,23 @@ Feature Bottom Up Predict Combine Rule:
本章进一步的材料请参考`http://nltk.org/`,包括特征结构、特征语法和语法测试套件。
X-bar 句法:[(Jacobs & Rosenbaum, 1970)](./bibliography.html#chomsky1970rn), [(Jackendoff, 1977)](./bibliography.html#jackendoff1977xs)(我们使用素数替代了 Chomsky 印刷上要求更高的单杠)。
X-bar 句法:(Jacobs & Rosenbaum, 1970), (Jackendoff, 1977)(我们使用素数替代了 Chomsky 印刷上要求更高的单杠)。
协议现象的一个很好的介绍,请参阅[(Corbett, 2006)](./bibliography.html#corbett2006a)
协议现象的一个很好的介绍,请参阅(Corbett, 2006)
理论语言学中最初使用特征的目的是捕捉语音的音素特性。例如,音`/b/`可能会被分解成结构`[+labial, +voice]`。一个重要的动机是捕捉分割的类别之间的一般性;例如`/n/`在任一`+labial`辅音前面被读作`/m/`。在乔姆斯基语法中,对一些现象,如协议,使用原子特征是很标准的,原子特征也用来捕捉跨句法类别的概括,通过类比与音韵。句法理论中使用特征的一个激进的扩展是广义短语结构语法(GPSG; [(Gazdar, Klein, & and, 1985)](./bibliography.html#gazdar1985gps)),特别是在使用带有复杂值的特征。
理论语言学中最初使用特征的目的是捕捉语音的音素特性。例如,音`/b/`可能会被分解成结构`[+labial, +voice]`。一个重要的动机是捕捉分割的类别之间的一般性;例如`/n/`在任一`+labial`辅音前面被读作`/m/`。在乔姆斯基语法中,对一些现象,如协议,使用原子特征是很标准的,原子特征也用来捕捉跨句法类别的概括,通过类比与音韵。句法理论中使用特征的一个激进的扩展是广义短语结构语法(GPSG; (Gazdar, Klein, & and, 1985)),特别是在使用带有复杂值的特征。
从计算语言学的角度来看,[(Dahl & Saint-Dizier, 1985)](./bibliography.html#kay1984ug)提出语言的功能方面可以被属性-值结构的统一捕获,一个类似的方法由[(Grosz & Stickel, 1983)](./bibliography.html#shieber1983fip)在 PATR-II 形式体系中精心设计完成。词汇功能语法(LFG; [(Bresnan, 1982)](./bibliography.html#kaplan1982lfg))的早期工作介绍了 F 结构的概念,它的主要目的是表示语法关系和与成分结构短语关联的谓词参数结构。[(Shieber, 1986)](./bibliography.html#shieber1986iub)提供了研究基于特征语法方面的一个极好的介绍。
从计算语言学的角度来看,(Dahl & Saint-Dizier, 1985)提出语言的功能方面可以被属性-值结构的统一捕获,一个类似的方法由(Grosz & Stickel, 1983)在 PATR-II 形式体系中精心设计完成。词汇功能语法(LFG; (Bresnan, 1982))的早期工作介绍了 F 结构的概念,它的主要目的是表示语法关系和与成分结构短语关联的谓词参数结构。(Shieber, 1986)提供了研究基于特征语法方面的一个极好的介绍。
当研究人员试图为反面例子建模时,特征结构的代数方法的一个概念上的困难出现了。另一种观点,由[(Kasper & Rounds, 1986)](./bibliography.html#kasper1986lsf)[(Johnson, 1988)](./bibliography.html#johnson1988avl)开创,认为语法涉及结构功能的描述而不是结构本身。这些描述使用逻辑操作如合取相结合,而否定仅仅是特征描述上的普通的逻辑运算。这种面向描述的观点对 LFG 从一开始就是不可或缺的(参见[(Huang & Chen, 1989)](./bibliography.html#kaplan1989fal)),也被中心词驱动短语结构语法的较高版本采用(HPSG; [(Sag & Wasow, 1999)](./bibliography.html#sag1999st))。`http://www.cl.uni-bremen.de/HPSG-Bib/`上有 HPSG 文献的全面的参考书目。
当研究人员试图为反面例子建模时,特征结构的代数方法的一个概念上的困难出现了。另一种观点,由(Kasper & Rounds, 1986)和(Johnson, 1988)开创,认为语法涉及结构功能的描述而不是结构本身。这些描述使用逻辑操作如合取相结合,而否定仅仅是特征描述上的普通的逻辑运算。这种面向描述的观点对 LFG 从一开始就是不可或缺的(参见(Huang & Chen, 1989)),也被中心词驱动短语结构语法的较高版本采用(HPSG; (Sag & Wasow, 1999))。`http://www.cl.uni-bremen.de/HPSG-Bib/`上有 HPSG 文献的全面的参考书目。
本章介绍的特征结构无法捕捉语言信息中重要的限制。例如,有没有办法表达`NUM`的值只允许是`sg``pl`,而指定`[NUM=masc]`是反常的。同样地,我们不能说`AGR`的复合值必须包含特征`PER``NUM``gnd`的指定,但不能包含如`[SUBCAT=trans]`这样的指定。指定类型的特征结构被开发出来弥补这方面的不足。开始,我们规定总是键入特征值。对于原子值,值就是类型。例如,我们可以说`NUM`的值是类型`num`。此外,`num``NUM`最一般类型的值。由于类型按层次结构组织,通过指定`NUM`的值为`num`的子类型,即要么是`sg`要么是`pl`,我们可以更富含信息。
In the case of complex values, we say that feature structures are themselves typed. So for example the value of `AGR` will be a feature structure of type `AGR`. We also stipulate that all and only `PER`, `NUM` and `GND` are appropriate features for a structure of type `AGR`. 一个早期的关于指定类型的特征结构的很好的总结是[(Emele & Zajac, 1990)](./bibliography.html#emele1990tug)。一个形式化基础的更全面的检查可以在[(Carpenter, 1992)](./bibliography.html#carpenter1992ltf)中找到,[(Copestake, 2002)](./bibliography.html#copestake2002itf)重点关注为面向 HPSG 的方法实现指定类型的特征结构。
In the case of complex values, we say that feature structures are themselves typed. So for example the value of `AGR` will be a feature structure of type `AGR`. We also stipulate that all and only `PER`, `NUM` and `GND` are appropriate features for a structure of type `AGR`. 一个早期的关于指定类型的特征结构的很好的总结是(Emele & Zajac, 1990)。一个形式化基础的更全面的检查可以在(Carpenter, 1992)中找到,(Copestake, 2002)重点关注为面向 HPSG 的方法实现指定类型的特征结构。
有很多著作是关于德语的基于特征语法框架上的分析的。[(Nerbonne, Netter, & Pollard, 1994)](./bibliography.html#nerbonne1994ghd)是这个主题的 HPSG 著作的一个好的起点,而[(M{\"u}ller, 2002)](./bibliography.html#mueller2002cp)给出 HPSG 中的德语句法非常广泛和详细的分析。
有很多著作是关于德语的基于特征语法框架上的分析的。(Nerbonne, Netter, & Pollard, 1994)是这个主题的 HPSG 著作的一个好的起点,而(Muller, 2002)给出 HPSG 中的德语句法非常广泛和详细的分析。
[(Jurafsky & Martin, 2008)](./bibliography.html#jurafskymartin2008)的第 15 章讨论了特征结构、统一的算法和将统一整合到分析算法中。
(Jurafsky & Martin, 2008)的第 15 章讨论了特征结构、统一的算法和将统一整合到分析算法中。
## 6 练习
......@@ -688,7 +688,7 @@ In the case of complex values, we say that feature structures are themselves typ
| (58) | | Heute sieht der Hund die Katze. |
6. ◑ 同义动词的句法属性看上去略有不同[(Levin, 1993)](./bibliography.html#levin1993)。思考下面的动词`loaded``filled``dumped`的语法模式。你能写语法产生式处理这些数据吗?
6. ◑ 同义动词的句法属性看上去略有不同(Levin, 1993)。思考下面的动词`loaded``filled``dumped`的语法模式。你能写语法产生式处理这些数据吗?
| (59) | |
......@@ -708,7 +708,7 @@ In the case of complex values, we say that feature structures are themselves typ
7. ★ 形态范例很少是完全正规的,矩阵中的每个单元的意义有不同的实现。例如,词位`walk`的现在时态词性变化只有两种不同形式:第三人称单数的`walks`和所有其他人称和数量的组合的`walk`。一个成功的分析不应该额外要求 6 个可能的形态组合中有 5 个有相同的实现。设计和实施一个方法处理这个问题。
8. ★ 所谓的核心特征在父节点和核心孩子节点之间共享。例如,`TENSE`是核心特征,在一个`VP`和它的核心孩子`V`之间共享。更多细节见[(Gazdar, Klein, & and, 1985)](./bibliography.html#gazdar1985gps)。我们看到的结构中大部分是核心结构——除了`SUBCAT``SLASH`。由于核心特征的共享是可以预见的,它不需要在语法产生式中明确表示。开发一种方法自动计算核心结构的这种规则行为的比重。
8. ★ 所谓的核心特征在父节点和核心孩子节点之间共享。例如,`TENSE`是核心特征,在一个`VP`和它的核心孩子`V`之间共享。更多细节见(Gazdar, Klein, & and, 1985)。我们看到的结构中大部分是核心结构——除了`SUBCAT``SLASH`。由于核心特征的共享是可以预见的,它不需要在语法产生式中明确表示。开发一种方法自动计算核心结构的这种规则行为的比重。
9. ★ 扩展 NLTK 中特征结构的处理,允许统一值为列表的特征,使用这个来实现一个 HPSG 风格的子类别分析,核心类别的`SUBCAT`是它的补语的类别和它直接父母的`SUBCAT`值的连结。
......@@ -716,7 +716,7 @@ In the case of complex values, we say that feature structures are themselves typ
11. ★ 扩展 NLTK 的特征结构处理,允许指定类型的特征结构。
12. ★ 挑选一些[(Huddleston & Pullum, 2002)](./bibliography.html#huddleston2002cge)中描述的文法结构,建立一个基于特征的语法计算它们的比例。
12. ★ 挑选一些(Huddleston & Pullum, 2002)中描述的文法结构,建立一个基于特征的语法计算它们的比例。
## 关于本文档...
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册