3

我最初使用的是来自 NLTK 的以下 Penn Treebank 标记器:

POS_Tagger = UnigramTagger(treebank.tagged_sents(), backoff=DefaultTagger('NN'))

但是,这在口语文本方面有所不足。例如,“你好”不应该被识别为感叹词。我从这里读到(在 NLTK pos_tag 中,为什么“hello”被归类为名词?)如果我想标记口语文本,我将“需要在整个 Penn Treebank 上训练标记器,其中包括大约 300 万个单词英语口语。” 我现在的问题是我该怎么做?我来过这里(Penn Treebank Project),但在上面找不到任何东西。

如果对整个 Penn Treebank 进行培训太难了,还有什么替代方案?我正在考虑使用 Brown 语料库,但是 POS 标签不同,这让我不得不重写程序的其他部分。

4

3 回答 3

3

您可能需要考虑美国国家语料库。尽管并非所有内容都可以免费获得,但其中很大一部分是(大约 1400 万字)。该部分被称为“OANC”(“O”代表“Open”)。它带有 Penn Treebank POS 标签。

它还包括更高级别的注释,例如段落、句子、名词和动词“块”,您可能需要也可能不需要,但当然可以忽略。

http://www.anc.org/

于 2014-05-12T15:21:58.190 回答
3

不幸的是,Penn Treebank 只能通过语言数据联盟( Linguistic Data Consortium )收取高额费用。如果您的需求是非商业性的,您也许可以找到一位可以授予您访问权限的学者。

或者,您可以通过在您的一些其他数据(新闻文章、布朗、维基百科等)上运行现有的 POS 标记器(如ClearNLP 工具斯坦福 CoreNLP 工具)来创建自己的银标准(而不是金标准)数据。然后,您可以获取这些标记数据并训练 NLTK 标记器。当然,如果您需要更适合语音的数据,您可能需要查看 Switchboard 语料库。看起来有一个通过知识共享许可提供的带有一些 POS 和句法注释的版本。

于 2013-10-09T05:56:18.793 回答
1

NLTK 中的 Penn Treebank 语料库只是真实 Penn Treebank 的一个样本,请参阅https://en.wikipedia.org/wiki/User:Alvations/NLTK_cheatsheet/CorporaReaders#Penn_Tree_Bank

该样本仅包含 3000 多个句子,而 NLTK 中的棕色语料库包含超过 50,000 个句子。除非您可以访问整个 PTB,否则最好使用其他语料库。

于 2015-06-19T07:48:21.217 回答