组块分析(Chunking)
组块分析是从非结构化文本中提取短语的过程。相对于POS-Tagging来说,POS-Tagging返回了解析树的最底层,就是一个个单词。但是有时候你需要的是几个单词构成的名词短语,而非个个单词,在这种情况下,您可以使用chunker获取您需要的信息,而不是浪费时间为句子生成完整的解析树。举个例子(中文):与其要单个字,不如要一个词,例如,将“南非”之类的短语作为一个单独的词,而不是分别拆成“南”和“非”去理解。

组块分析是可以接着词性标注工作继续完成,它使用词性标注作为输入,并提供分析好的组块做为输出。与词性标注的标签类似,它也有一组标准的组块标签,如名词短语(np)、动词短语(vp)等,当你想从诸如位置,人名等文本中提取信息时,分块是非常重要的。在NLP中,称为命名实体识别,举个例子‘李雷的杯子’是分块分出的一个短语,而抽取’李雷’这个人名,就是命名体识别。所以,组块分析也是命名体识别的基础。
————————————————
版权声明:本文为CSDN博主「追风箭0211」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Sirow/article/details/89306934

NLTK 工具

#对句子进行词汇分割和正规化,有些情况如aren‘t需要分割为are和n’t;或者i‘m要分割为i和’m。
#tokens_1=nltk.word_tokenize('what your')
#print(tokens_1)
import nltk
sent="Sirhan , in his first television interview , called Sen. Robert F. Kennedy his hero , but said he killed the presidential candidate more than 20 years ago because he felt betrayed by Kennedy 's support for Israel"
text = nltk.word_tokenize(sent)
sentence=nltk.pos_tag(text)
#grammar = "NP:{<JJ|NN|NNS.*><POS|IN.*><NN|NNS.*>}"
grammar = r"""NP:{<JJ|NN><POS|IN>?<NN>+}PP:{<NN|NNS|NNP|NNPS>}"""
cp = nltk.RegexpParser(grammar) #生成规则
result = cp.parse(sentence) #进行分块
print(result)
substring=[]
finalstring=''
for subtree in result.subtrees():if ((subtree.label() == 'NP')|(subtree.label()=='PP')):substring.append(subtree)
for each in substring:length=len(each)#for i in (0,length-1):#print(each[i])for i in range(0,length):finalstring+=each[i][0]+' 'finalstring+=', '
output=finalstring.split(', ')
out=[i for i in output if len(i.split(' '))>=3]
print(output)
print(out)sent_split=sent.split(' ')for i in out:ind=sent_split.index(i.split(' ')[-2])sent_split.insert(ind+1,'( '+i+')')
sent_res=' '.join(i for i in sent_split)
print(sent_res)

spacy

import spacy
# 必须导入pytextrank,虽然表面上没用上,
import pytextrank# example text
text = "Sirhan Sirhan , in his first television interview , called Sen. Robert F. Kennedy his hero , but said he killed the presidential candidate more than 20 years ago because he felt betrayed by Kennedy 's support for Israel ."# 加载模型和依赖
nlp = spacy.load("en_core_web_sm")# 此处调用“PyTextRank”包
nlp.add_pipe("textrank")
doc = nlp(text)# 读出短语、词频和权重
for phrase in doc._.phrases:# 短语print(phrase.text)# 权重、词频print(phrase.rank, phrase.count)'''# 短语的列表print(phrase.chunks)'''

组块(chunking)-nltkspacy相关推荐

  1. tensorflow2 存取模型_思维导图:长短期记忆模型

    注:本文资料主要来自小能熊终生学习学院<千熊5月做到--21天费曼模型>,有兴趣的朋友可以查看「小能熊(candobear)」官网. 一.What | 什么是什么 [5月做到 费曼训练] ...

  2. 长短期记忆网络_思维导图:长短期记忆模型

    注:本文资料主要来自小能熊终生学习学院<千熊5月做到--21天费曼模型>,有兴趣的朋友可以查看「小能熊(candobear)」官网. 一.What | 什么是什么 [5月做到 费曼训练] ...

  3. 系统学习机器学习之系统认识

    机器学习(MachineLearning, ML)是一门多领域交叉学科,涉及概率论.统计学.逼近论.凸分析.算法复杂度理论等多门学科.专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能, ...

  4. 机器学习简介及常用算法

    概念 什么是机器学习? 机器学习是英文名称Machine Learning(简称ML)的直译.机器学习涉及概率论.统计学.逼近论.凸分析.算法复杂度理论等多门学科.专门研究计算机怎样模拟或实现人类的学 ...

  5. 麦子学院学习视频之机器学习(1):1.1 机器学习介绍

    今天开始学习机器学习,在网上找了很多视频还有书籍.由于本人不是计算机专业的学生,基础知识还是比较薄弱,但我非常想学习机器学习以及深度学习.最后还是选择了麦子学院的彭亮老师的<机器学习基础介绍&g ...

  6. 机器学习: 专家系统、认知模拟、规划和问题求解、数据挖掘、网络信息服务、图象识别、故障诊断、自然语言理解、机器人和博弈等领域。...

    机器学习 编辑 本词条由"科普中国"百科科学词条编写与应用工作项目 审核 . 机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论.统计学.逼近论. ...

  7. 机器学习基础-11:机器学习的分类

    机器学习的分类 机器学习原理与实践(开源图书)-总目录,建议收藏,告别碎片阅读! 根据不同的概念和意图可以将机器学习算法分成若干类别.本文主要按照学习形式分类.任务目标分类和学习策略的不同分类.我们试 ...

  8. 自然语言处理NLP之分词、词性标注(POS)、组块分析(Chunking)、命名实体识别(Named Entity Recognition,简称NER)

    自然语言处理NLP之分词.词性标注(POS).组块分析(Chunking).命名实体识别(Named Entity Recognition,简称NER) 目录

  9. 序列标注NER、POS、Chunking、SRL

    序列标注 序列标注概念 NER NER标签类型 NER序列标注的三种方法 POS POS标签类型 POS详解标注 Chunking Chunking标签类型 SRL SRL标签类型 序列标注概念 序列 ...

最新文章

  1. R语言可视化分面图、假设检验、单变量分组多水平t检验并指定参考水平、可视化单变量分组多水平分面箱图(faceting boxplot)并添加显著性水平、指定显著性参考水平
  2. 计算相机采集帧率C实现
  3. [2018.3.30集训]path-对偶图-最小割
  4. GridView的Command命令集合
  5. java配置文件放置到jar外_java相关:Spring Boot 把配置文件和日志文件放到jar外部...
  6. 2008中的membership profile操作(转)
  7. centos系统中卸载软件【例子为卸载百度硬盘】
  8. python列表元素循环左移_JavaScript系列——数组元素左右移动N位算法实现
  9. 2016计算机一级成绩,2016年江苏计算机一级成绩查询_无忧考网.docx
  10. 我安装java了_我安装了JAVA为什么.......
  11. iOS底层探索之Runtime(五): 消息转发
  12. 深入浅出SSD--5.1PCIE基础知识
  13. DirectX12_基础知识
  14. 量子力学考研书籍介绍
  15. 笔记本java怎么启动独立显卡_笔记本双显卡怎么切换,告诉你笔记本双显卡怎么切换到独立显卡...
  16. 设计模式初探之设计模式六大原则(3):依赖倒置原则
  17. 移动端车牌识别:新能源车牌识别上线
  18. 使用ipmi调节r410的风扇转速
  19. java透明度_简单的透明度示例不适用于Java 3D
  20. Centos Development Tools 安装

热门文章

  1. 你应该知道的一些微信技巧
  2. 解析不见了。 怎么办?
  3. iOS APP转让条件
  4. 为什么美国大城市里不修二环三环四环五环?
  5. 远程控制与Nvidia显卡驱动和CUDA版本
  6. 工作奇谈——公司OA逻辑BUG
  7. 吕著三国史话(观后感一)
  8. 后端开发规范(持续更新中...)
  9. 宏碁笔记本一键重装win7系统教程
  10. 初学SLAM二之BA当中的数学知识点