微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python – NLTK提取chunker解析树的术语

John Edward Grey started running Now that he kNows he is fat

She was listening to smack that by that awful singer

我想从一个句子中提取有趣的术语.我目前使用POS标记来识别每个实体的语法类型.然后我将每个标记更新为一个计数器(名词,动词和形容词的权重不同).

我现在希望使用一个chunker.我认为解析树的叶节点包含所有有趣的单词和短语.如何从chunker输出提取术语?

解决方法:

在语言学中,“有趣的词”是称为开放的课堂词.
你所指的任务实际上并不是一个分块/解析任务.您正在寻找某种标记器/注释器/贴标机来标记每个单词以查看它是否“有趣”.

序列标记

如果你接近你的任务作为一个序列标签任务,那么约翰爱德华格雷开始运行的句子,他知道他很胖,将被标记为:

[('John','B'),('Edward','I'),('Grey','I'),('started','O'),('running','B'),
('Now','O'),('that','O'),('he','O'),('kNows','O'),('he','O'),
('is','O'),('fat','B')]

>所以用B标记的任何东西都意味着你的“有趣”块的开始
>随后标记为O的单词将是“有趣”块的结尾或
>它也可能最终得到一个后续的B来标记一个“有趣”块的结尾和一个新的“有趣”块的开始.

有趣与否?

实际上有趣与否取决于你完成任务的最终目的是什么,对我而言,我会说开始运行是一个“有趣”的块,因为它开始修改不定式意义或运行以给它一个开始动作模态.

封闭类与开放类单词

如果您想到了什么是非有趣的单词,那么我建议您构建一个字典,然后运行一个序列标记脚本来检测那些不在密文字词典中的字典.

机器学习方法

另一种方法是执行机器学习分类任务,其中您已经预先注释了有趣和不有的样本数据.然后,您可以识别一些分类功能并运行分类,以使用B,I,O标记自动标记数据.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐