基于 TF-IDF 算法的关键词抽取

import jieba.analyse

  • jieba.analyse.extract_tags(sentence, topK=20, withWeight=False, allowPOS=())

    • sentence 为待提取的文本
    • topK 为返回几个 TF/IDF 权重最大的关键词,默认值为 20
    • withWeight 为是否一并返回关键词权重值,默认值为 False
    • allowPOS 仅包括指定词性的词,默认值为空,即不筛选

提取例子:

import jieba.analyse as analyse
import pandas as pd
df = pd.read_csv('./origin_data/technology_news.csv')
df = df.dropna()
lines = df.content.values.tolist()
content = "".join(lines)
print("  ".join(analyse.extract_tags(content, topK=30, withWeight=False, allowPOS=())))

基于 TextRank 算法的关键词抽取

  • jieba.analyse.textrank(sentence, topK=20, withWeight=False, allowPOS=('ns', 'n', 'vn', 'v')) 直接使用,接口相同,注意默认过滤词性。
  • jieba.analyse.TextRank() 新建自定义 TextRank 实例

算法论文:http://web.eecs.umich.edu/~mihalcea/papers/mihalcea.emnlp04.pdf

基本思想:

  • 将待抽取关键词的文本进行分词
  • 以固定窗口大小(默认为5,通过span属性调整),词之间的共现关系,构建图
  • 计算图中节点的PageRank,注意是无向带权图

TextRank的核心就是PageRank,PageRank介绍:https://www.jianshu.com/p/f6d66ab97332

提取例子:

import jieba.analyse as analyse
import pandas as pd
df = pd.read_csv("./origin_data/military_news.csv", encoding='utf-8')
df = df.dropna()
lines=df.content.values.tolist()
content = "".join(lines)print("  ".join(analyse.textrank(content, topK=20, withWeight=False, allowPOS=('ns', 'n', 'vn', 'v'))))
print("---------------------我是分割线----------------")
print("  ".join(analyse.textrank(content, topK=20, withWeight=False, allowPOS=('ns', 'n'))))

NLP自然语言处理:关键词提取相关推荐

  1. NLP实战 文本关键词提取

    +是加法.行尾的\在下一行继续当前语句或表达式,即续行. 实战项目简介 文本关键词提取,顾名思义,关键词是能够表达文档中心内容的词语,常用于计算机系统标引论文内容特征.信息检索.系统汇集以供读者检阅. ...

  2. 【NLP】文本关键词提取的两种方法-TFIDF和TextRank

    背景 前两天看到论文<Chinese Poetry Generation with Planning based Neural Network>中使用TextRank进行关键词提取.在阅读 ...

  3. tfidf关键词提取_基于深度学习的个性化商品评论标签提取

    商品评论标签提取作为商品评论中的一个比较有意思的问题.评论标签提取的主要任务是从评论中了解到用户对产品的哪些功能.属性进行了怎样的评论,并抽取成简短有效的信息. 关键词提取Vs评论标签提取 商品标签提 ...

  4. 自然语言处理NLP中文分词,词性标注,关键词提取和文本摘要

    NLP相关工具包的介绍 1.1 jieba "结巴"中文分词,理念是做最好的 Python 中文分词组件. 支持三种分词模式: (1)精确模式,试图将句子最精确地切开,适合文本分析 ...

  5. 自然语言处理之hanlp,Python调用与构建,分词、关键词提取、命名主体识别

    转载请注明出处:https://blog.csdn.net/HHTNAN HanLP是一系列模型与算法组成的NLP工具包,由大快搜索主导并完全开源,目标是普及自然语言处理在生产环境中的应用.HanLP ...

  6. NLP学习笔记 01 分词、词性标注和关键词提取

    目录 1.1 准确分词 level1 使用jieba自定义词典 + 正则表达式准确分词 1.2 准确分词 level2 1.3 词性标注 1.4 关键词提取 1.1 准确分词 level1 中文自动分 ...

  7. 自然语言处理TF-IDF关键词提取算法

    1.关键词提取简介 关键词是指能反映文本主题或者主要内容的词语.关键词提取就是从文本里面把跟这篇文档意义最相关的一些词抽取出来,是NLP领域的一个重要的子任务.在信息检索中,准确的关键词提取可以大幅提 ...

  8. NLP算法-关键词提取之Jieba算法库

    关键词提取 什么叫关键词提取? 关键词提取方法分类 有监督 无监督 优缺点 Jieba 关键词提取 TF/IDF算法 TF-IDF的主要思想 如何训练关键词提取算法 demo PageRank算法 T ...

  9. NLP - 关键词提取 - TextRank

    NLP - 关键词提取 - TextRank 一.TextRank介绍 二.PageRank介绍 三.PageRank计算过程 四.关键词提取任务 一.TextRank介绍 TextRank算法则可以 ...

  10. 系统学习NLP(二十一)--关键词提取算法总结

    先说一下自动文摘的方法.自动文摘(Automatic Summarization)的方法主要有两种:Extraction和Abstraction.其中Extraction是抽取式自动文摘方法,通过提取 ...

最新文章

  1. eclipse注释模板设置(未整理)
  2. linux安装没有root权限
  3. 模拟器真机环境_Appium+python自动化(二)- 环境搭建—下(超详解)
  4. MYSQL5.7 忘记ROOT密码/初始化ROOT密码
  5. 【Apache JMeter】JMeter接口压测实例
  6. 原 jQuery基础修炼圣典—DOM篇
  7. java枚举变量带括号_java枚举类型 - 墨梅的个人空间 - OSCHINA - 中文开源技术交流社区...
  8. java input是关键字吗_java 关键字transient
  9. git 回退上一个版本_世界上最流行的版本控制系统Git
  10. html5设计基础报告,《网页设计与制作基础》实验报告.doc
  11. STM32F407极简串口设置
  12. 向日葵显示服务器连接失败,向日葵连接服务器成功远程不
  13. 解决应用未安装 Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE]
  14. ps4正在连接ea服务器,ps4极品飞车19连不上ea服务器 | 手游网游页游攻略大全
  15. 夜神模拟器 Nox Player 雷电模拟器 掉线 连不上 运行不显示的解决方案
  16. 数据库设计4-概念结构设计
  17. 2022-2027年中国股权众筹行业市场调研及未来发展趋势预测报告
  18. Go实战--也许最快的Go语言Web框架kataras/iris初识四(i18n、filelogger、recaptcha)
  19. Y z推荐菜东家 易订货生鲜系统_新零售·新生鲜——易订货生鲜专版客户交流会(贵阳站)圆满结束!...
  20. 继承了抽象类的子类需要把抽象类中的方法重写一遍吗?

热门文章

  1. 小心你的QQ聊天记录毁于一旦
  2. saiku 3.7.4 构建过程
  3. 如何做好互联网金融的英语翻译
  4. Dynamic Programming 01 —knapsack problem(动态规划背包问题)
  5. C#并行和合买平台搭建并行集合和PLinq
  6. GitHub Copilot 键盘快捷键
  7. 循环卷积的时域DFT性质推导
  8. 微信小程序---抽奖
  9. 今天吃什么?我直接用Python制作随机食物生成器
  10. 视频教程-微信小程序界面设计-样式入门到精通-微信开发