NLP标签/关键词-提取工具-java开发
一、简介
旨在帮助用户自动挖掘文本标签,是特征关键词提取工具,工具中集成了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开发相关推荐
- NLP算法-关键词提取补充知识-停用词表
引入 书接上回,我们讲这个关键词提取的时候没有说停用词: 那啥是停用词呢?当一个词语出现频率很高但是这个词并不是你所需要的信息,这个时候就会用到停用词表这个概念 什么是停用词表? 停用词是指在信息检索 ...
- NLP算法-关键词提取之Jieba算法库
关键词提取 什么叫关键词提取? 关键词提取方法分类 有监督 无监督 优缺点 Jieba 关键词提取 TF/IDF算法 TF-IDF的主要思想 如何训练关键词提取算法 demo PageRank算法 T ...
- NLP算法-关键词提取之Gensim算法库
Gensim工具包 引入 Gensim简介 一些基础概念 Gensim的使用方式 1. 训练语料的预处理 2.主题向量的变换 LDA模型 demo LSA/LSI 算法 LSA/LSI算法原理 LSA ...
- java 开发人员工具_每个Java开发人员都应该知道的10个基本工具
java 开发人员工具 大家好,我们已经到了2019年的第二个月,我相信你们所有人都已经制定了关于2019年学习以及如何实现这些目标的目标. 我一直在撰写一系列文章,为您提供一些知识,使您可以学习和改 ...
- java 编程工具_Java开发工具可以促进编程!
java 编程工具 Java开发人员通常尝试找到快速有效地编写高质量Java代码的方法,以使他们的编程工作变得更轻松. 由于情况发生了变化,因此出现了越来越多的工具. 因此,下面列出了大多数开发人员已 ...
- 每个Java开发人员都应该知道的10个基本工具
大家好,我们已经到了2019年的第二个月,我相信你们所有人都已经为2019年的学习目标以及如何实现这些目标制定了目标. 我一直在撰写一系列文章,为您提供一些知识,使您可以学习和改进以成为2019年更好 ...
- 阿里巴巴Java开发规范手册(转载)
阿里巴巴 JAVA 开发手册 1 / 32 Java 开发手册 版本号 制定团队 更新日期 备 注 1.0.0 阿里巴巴集团技术部 2016.12.7 首次向 Java 业界公开 ...
- python中文模糊关键词提取_如何用Python提取中文关键词?
本文一步步为你演示,如何用Python从中文文本中提取关键词.如果你需要对长文"观其大略",不妨尝试一下. 需求 好友最近对自然语言处理感兴趣,因为他打算利用自动化方法从长文本里提 ...
- 十四种Java开发工具点评
图形界面的java开发工具 JDK Borland 的JBuilder ,JDeveloper,VisualAge for Java jcreater. 常见的十五种Java开发工具的特点 1.JDK ...
最新文章
- 《当代 95 后の北上广出逃计划》
- 生物反应器:生物过程工程的动物细胞培养控制 Bioreactors : animal cell culture control for bioprocess engineering 英文原版
- NoSQL(2)之 Redis配置与优化
- C语言学习趣事_你不知道的C语言应用
- Ubuntu设置为命令行登录
- sql注入工具--Sqlmap
- ionic html5 上传图片,ionic文件选择与ionic文件上传
- 什么是短连接,如何用 Python 生成短连接?
- 新胖子公式(java)
- 【艺术字签名生成器】】试卷家长签字居然被嫌弃了|“我觉得我还能再抢救一下,你看行嘛?“
- 在头条号和西瓜视频发布视频,播放量20万,却是零收益?
- 网站搭建之三(APMServ5.2.6)
- 判断IP地址是否为合法的IP(初级版本)
- 使用busybox快速制作initramfs
- python创建_python 创建txt并写入Python基础1 Hello World!
- shell中的while
- 社群营销的方法和技巧ppt_2019社群运营技巧丨让微信社群活跃度迅速飙升的5个方法...
- Nt*和Zw*系列函数的区别
- 九度OJ——1172哈夫曼树
- html 界面模糊的效果,CSS3 filter(滤镜) 说明,超级马赛克。<( ̄︶ ̄)↗[GO!]