一、简介

旨在帮助用户自动挖掘文本标签,是特征关键词提取工具,工具中集成了TextRank、TF-IDF算法、词跨度(SPAN)算法和LDA主题模型算法。

使用方法:

二、使用方法

2.1.TextRank

2.1.1.理论

参考:https://blog.csdn.net/u012998680/article/details/107713952

2.1.2.调用方法

public static void main(String[] args) {String field = "6个小动作 让你秒秒都能瘦     这是一套小动作组成的瘦身操。看过之后你会觉得,原来真的可以无处不在,生活中的任何一个细节,都可以抓紧机会锻炼和减肥的,真是太简单了。       1、 门框斜压收内侧赘肉方法:身体离门框约1步距离,手摸门框下压,左右各3秒钟。      效果:平日运动不到的身体内侧可以得到很好的拉伸。      2、刷杯子瘦手臂 方法:手臂尽量抬高,做刷杯子的动作,换手再做10分钟。      效果:收紧手臂,紧致乳房。      3、 反手拿重物提臀瘦手臂方法:双手在身体后面做提拉重物动作。      效果:一周臀线上升2,手臂纤细2。      4、 读书收腹减腿法方法:坐在椅子上读书的时候双膝之间夹毛巾,保持毛巾不掉下来即可。      效果:收紧肚子、大腿赘肉。      5、开门瘦四肢方法:。双手交换做开拉门的动作;。双脚交换做开拉门的动作。      效果:拉伸四肢赘肉,雕塑四肢线条。        //          6、金鸡独立穿鞋瘦腰 动作:单脚站立做穿鞋的动作。      效果:伸拉腰部赘肉,直接瘦腰。    (实习编辑:李紫嫣)   ";List<String> keywords = Demo.textRank(field,10);System.out.println("关键词:" + keywords);
}

2.1.3.结果

效果, 动作, 方法, 赘肉, 门框, 手臂, 身体, 小动作, 四肢, 瘦腰

2.2.tf-idf算法

2.2.1.理论:

参考:https://blog.csdn.net/u012998680/article/details/107713952

2.2.2.训练模型

@Test
public void IDFModelFit() throws Exception {IDFModelOption option = new IDFModelOption().setMinFrequencey(2).setDir("data/").setModelDir("model/IDF/");IDFModel model = new IDFModel(option);model.fit();
}

2.2.3.调用方法

@Test
public void ldaTest() throws Exception {Option option = new Option().setMetric(Metric.AVERAGE).setStrategies(StrategyMetrics.IDF).setModelOptions(new IDFModelOption()).setFilter(MyStopRecognition.getInstance()); LabelHelper helper = new LabelHelper(option).build();String str = "6个小动作 让你秒秒都能瘦     这是一套小动作组成的瘦身操。看过之后你会觉得,原来真的可以无处不在,生活中的任何一个细节,都可以抓紧机会锻炼和减肥的,真是太简单了。       1、 门框斜压收内侧赘肉方法:身体离门框约1步距离,手摸门框下压,左右各3秒钟。      效果:平日运动不到的身体内侧可以得到很好的拉伸。      2、刷杯子瘦手臂 方法:手臂尽量抬高,做刷杯子的动作,换手再做10分钟。      效果:收紧手臂,紧致乳房。      3、 反手拿重物提臀瘦手臂方法:双手在身体后面做提拉重物动作。      效果:一周臀线上升2,手臂纤细2。      4、 读书收腹减腿法方法:坐在椅子上读书的时候双膝之间夹毛巾,保持毛巾不掉下来即可。      效果:收紧肚子、大腿赘肉。      5、开门瘦四肢方法:。双手交换做开拉门的动作;。双脚交换做开拉门的动作。      效果:拉伸四肢赘肉,雕塑四肢线条。        //          6、金鸡独立穿鞋瘦腰 动作:单脚站立做穿鞋的动作。      效果:伸拉腰部赘肉,直接瘦腰。    (实习编辑:李紫嫣)   ";List<KeywordLabel> labels = helper.predict(str, 10);for (KeywordLabel keywordLabel : labels) {System.out.println(keywordLabel);}
}

2.2.4.结果

门框=3.664074638671668

拉门=3.6097760747158785

穿鞋=3.040698275381654

小动作=2.5687126373035953

四肢=2.5614579554770067

斜压=2.553252568940863

赘肉=2.5139555911034943

重物=2.3745791096209836

杯子=2.3572229308186

读书=2.2068687144082118

手摸=2.1985823826579303

2.3.词跨度算法

2.3.1.理论:

词跨度是指一个词或者短语字文中首次出现和末次出现之间的距离,词跨度越大说明这个词对文本越重要,可以反映文本的主题。一个词的跨度计算公式如下:

其中,lasti表示词i在文本中最后出现的位置, firsti表示词 i 在文本中第一次出现的位置,sum表示文本中词的总数。

词跨度被作为提取关键词的方法是因为在现实中,文本中总是有很多噪声(指不是关键词的那些词),使用词跨度可以减少这些噪声。

2.3.2.调用方法

@Test
public void ldaTest() throws Exception {Option option = new Option().setMetric(Metric.AVERAGE).setStrategies(StrategyMetrics.SPAN).setModelOptions(new WordSpanModelOption()).setFilter(MyStopRecognition.getInstance());LabelHelper helper = new LabelHelper(option).build();String str = "6个小动作 让你秒秒都能瘦     这是一套小动作组成的瘦身操。看过之后你会觉得,原来真的可以无处不在,生活中的任何一个细节,都可以抓紧机会锻炼和减肥的,真是太简单了。       1、 门框斜压收内侧赘肉方法:身体离门框约1步距离,手摸门框下压,左右各3秒钟。      效果:平日运动不到的身体内侧可以得到很好的拉伸。      2、刷杯子瘦手臂 方法:手臂尽量抬高,做刷杯子的动作,换手再做10分钟。      效果:收紧手臂,紧致乳房。      3、 反手拿重物提臀瘦手臂方法:双手在身体后面做提拉重物动作。      效果:一周臀线上升2,手臂纤细2。      4、 读书收腹减腿法方法:坐在椅子上读书的时候双膝之间夹毛巾,保持毛巾不掉下来即可。      效果:收紧肚子、大腿赘肉。      5、开门瘦四肢方法:。双手交换做开拉门的动作;。双脚交换做开拉门的动作。      效果:拉伸四肢赘肉,雕塑四肢线条。        //          6、金鸡独立穿鞋瘦腰 动作:单脚站立做穿鞋的动作。      效果:伸拉腰部赘肉,直接瘦腰。    (实习编辑:李紫嫣) ";List<KeywordLabel> labels = helper.predict(str, 20);for (KeywordLabel keywordLabel : labels) {System.out.println(keywordLabel);}
}

2.3.3.结果

赘肉=0.82

效果=0.72

动作=0.58

方法=0.56

拉伸=0.53

身体=0.3

双手=0.28

收紧=0.27

手臂=0.21

四肢=0.16

2.4.LDA主题模型算法

2.4.1.理论:

参考:https://blog.csdn.net/u012998680/article/details/108853280

2.4.2.训练模型

@Test
public void LDAModelFit() throws Exception {LDAModelOption option = new LDAModelOption().setDir("data/") //训练文件.setModelDir("model/LDA/")  //模型保存文件夹.setModelName("model-final")//模型多次迭代,默认选择最后一轮结果.setNiters(100)//迭代轮次.setTwords(20)//top词数.setK(100);//主题数量LDAModel model = new LDAModel(option);model.fit();
}

2.4.3.调用方法

@Test
public void ldaTest() throws Exception {Option option = new Option().setMetric(Metric.AVERAGE).setStrategies(StrategyMetrics.LDA).setModelOptions(new LDAModelOption());LabelHelper helper = new LabelHelper(option).build();String str = "6个小动作 让你秒秒都能瘦     这是一套小动作组成的瘦身操。看过之后你会觉得,原来真的可以无处不在,生活中的任何一个细节,都可以抓紧机会锻炼和减肥的,真是太简单了。       1、 门框斜压收内侧赘肉方法:身体离门框约1步距离,手摸门框下压,左右各3秒钟。      效果:平日运动不到的身体内侧可以得到很好的拉伸。      2、刷杯子瘦手臂 方法:手臂尽量抬高,做刷杯子的动作,换手再做10分钟。      效果:收紧手臂,紧致乳房。      3、 反手拿重物提臀瘦手臂方法:双手在身体后面做提拉重物动作。      效果:一周臀线上升2,手臂纤细2。      4、 读书收腹减腿法方法:坐在椅子上读书的时候双膝之间夹毛巾,保持毛巾不掉下来即可。      效果:收紧肚子、大腿赘肉。      5、开门瘦四肢方法:。双手交换做开拉门的动作;。双脚交换做开拉门的动作。      效果:拉伸四肢赘肉,雕塑四肢线条。        //          6、金鸡独立穿鞋瘦腰 动作:单脚站立做穿鞋的动作。      效果:伸拉腰部赘肉,直接瘦腰。    (实习编辑:李紫嫣)   ";List<KeywordLabel> labels = helper.predict(str, 10);for (KeywordLabel keywordLabel : labels) {System.out.println(keywordLabel);}
}

2.4.4.结果

动作=3.8887724510139923

身体=2.661365600884695

运动=2.3764437116685673

双手=1.49493318442435

锻炼=1.469841001945945

手臂=1.0400248680048332

大腿=0.9809437721154729

编辑=0.700652470796032

实习=0.6795867783590948

双脚=0.6585776522809864

三、应用分析

四个工具的关键词提取效果其实差距不大,总体来看 TextRank≈SPAN > LDA > TF-IDF,运行速率也无明显差别,可根据项目需求选用(个人推荐TextRank、SPAN,不用训练模型).

NLP标签/关键词-提取工具-java开发相关推荐

  1. NLP算法-关键词提取补充知识-停用词表

    引入 书接上回,我们讲这个关键词提取的时候没有说停用词: 那啥是停用词呢?当一个词语出现频率很高但是这个词并不是你所需要的信息,这个时候就会用到停用词表这个概念 什么是停用词表? 停用词是指在信息检索 ...

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

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

  3. NLP算法-关键词提取之Gensim算法库

    Gensim工具包 引入 Gensim简介 一些基础概念 Gensim的使用方式 1. 训练语料的预处理 2.主题向量的变换 LDA模型 demo LSA/LSI 算法 LSA/LSI算法原理 LSA ...

  4. java 开发人员工具_每个Java开发人员都应该知道的10个基本工具

    java 开发人员工具 大家好,我们已经到了2019年的第二个月,我相信你们所有人都已经制定了关于2019年学习以及如何实现这些目标的目标. 我一直在撰写一系列文章,为您提供一些知识,使您可以学习和改 ...

  5. java 编程工具_Java开发工具可以促进编程!

    java 编程工具 Java开发人员通常尝试找到快速有效地编写高质量Java代码的方法,以使他们的编程工作变得更轻松. 由于情况发生了变化,因此出现了越来越多的工具. 因此,下面列出了大多数开发人员已 ...

  6. 每个Java开发人员都应该知道的10个基本工具

    大家好,我们已经到了2019年的第二个月,我相信你们所有人都已经为2019年的学习目标以及如何实现这些目标制定了目标. 我一直在撰写一系列文章,为您提供一些知识,使您可以学习和改进以成为2019年更好 ...

  7. 阿里巴巴Java开发规范手册(转载)

    阿里巴巴 JAVA 开发手册   1 / 32    Java 开发手册  版本号 制定团队 更新日期 备  注  1.0.0 阿里巴巴集团技术部 2016.12.7 首次向 Java 业界公开    ...

  8. python中文模糊关键词提取_如何用Python提取中文关键词?

    本文一步步为你演示,如何用Python从中文文本中提取关键词.如果你需要对长文"观其大略",不妨尝试一下. 需求 好友最近对自然语言处理感兴趣,因为他打算利用自动化方法从长文本里提 ...

  9. 十四种Java开发工具点评

    图形界面的java开发工具 JDK Borland 的JBuilder ,JDeveloper,VisualAge for Java jcreater. 常见的十五种Java开发工具的特点 1.JDK ...

最新文章

  1. 《当代 95 后の北上广出逃计划》
  2. 生物反应器:生物过程工程的动物细胞培养控制 Bioreactors : animal cell culture control for bioprocess engineering 英文原版
  3. NoSQL(2)之 Redis配置与优化
  4. C语言学习趣事_你不知道的C语言应用
  5. Ubuntu设置为命令行登录
  6. sql注入工具--Sqlmap
  7. ionic html5 上传图片,ionic文件选择与ionic文件上传
  8. 什么是短连接,如何用 Python 生成短连接?
  9. 新胖子公式(java)
  10. 【艺术字签名生成器】】试卷家长签字居然被嫌弃了|“我觉得我还能再抢救一下,你看行嘛?“
  11. 在头条号和西瓜视频发布视频,播放量20万,却是零收益?
  12. 网站搭建之三(APMServ5.2.6)
  13. 判断IP地址是否为合法的IP(初级版本)
  14. 使用busybox快速制作initramfs
  15. python创建_python 创建txt并写入Python基础1 Hello World!
  16. shell中的while
  17. 社群营销的方法和技巧ppt_2019社群运营技巧丨让微信社群活跃度迅速飙升的5个方法...
  18. Nt*和Zw*系列函数的区别
  19. 九度OJ——1172哈夫曼树
  20. html 界面模糊的效果,CSS3 filter(滤镜) 说明,超级马赛克。<( ̄︶ ̄)↗[GO!]

热门文章

  1. Python | 人脸识别系统 — 用户操作
  2. 谁将泡泡玛特推上千亿市值神坛?
  3. 计算机房精密空调术语,机房精密空调参数及含义
  4. 性能测试分析软件汇总–开源、商业全部收集
  5. Office快捷键大全之三(Access快捷键上篇)
  6. 浏览器的作用不只是搜索、浏览网页,它还隐藏着这些功能
  7. ffmpeg probe一个文件的过程
  8. SoapUI导出响应文件
  9. UEBA架构设计之路4:异常、威胁指标和威胁
  10. HTML+CSS实现网易云音乐首页(手机版)