文档章节

利用word分词提供的文本相似度算法来辅助记忆英语单词

杨尚川
 杨尚川
发布于 2015/05/29 12:04
字数 769
阅读 521
收藏 4

本文实现代码:利用word分词提供的文本相似度算法来辅助记忆英语单词

本文使用的英语单词囊括了几乎所有的考纲词汇共18123词:

/**
 * 考纲词汇
 * @return
 */
public static Set<Word> getSyllabusVocabulary(){
    return get("/word_primary_school.txt",
            "/word_junior_school.txt",
            "/word_senior_school.txt",
            "/word_university.txt",
            "/word_new_conception.txt",
            "/word_ADULT.txt",
            "/word_CET4.txt",
            "/word_CET6.txt",
            "/word_TEM4.txt",
            "/word_TEM8.txt",
            "/word_CATTI.txt",
            "/word_GMAT.txt",
            "/word_GRE.txt",
            "/word_SAT.txt",
            "/word_BEC.txt",
            "/word_MBA.txt",
            "/word_IELTS.txt",
            "/word_TOEFL.txt",
            "/word_TOEIC.txt",
            "/word_考 研.txt");
}

启动程序后控制台输出:

----------------------------------------------------------
----------------------------------------------------------
可通过输入命令sa=edi来指定相似度算法,可用的算法有:
   1、sa=edi,编辑距离
   2、sa=ja,Jaro距离
   3、sa=jaw,Jaro–Winkler距离
可通过输入命令sa=all来启用所有的相似度算法
可通过输入命令limit=45来指定显示结果条数
可通过输入命令exit退出程序
输入要查询的词或命令:

我们输入sa=all命令,回车确定,然后再次输入单词love后回车:

sa=all
启用所有的相似度算法
love

接着就会输出使用3种不同的相似度算法计算出来的love的相似词:

计算相似词:love
显示结果数目:45
----------------------------------------------------------
----------------------------------------------------------
love 的相似词(EditDistanceTextSimilarity):
	1、1.0 love
	2、0.8 lover
	3、0.8 glove
	4、0.75 rove
	5、0.75 lave
	6、0.75 dove
	7、0.75 live
	8、0.75 move
	9、0.75 lobe
	10、0.75 lode
	11、0.75 lone
	12、0.75 lope
	13、0.75 lore
	14、0.75 lose
	15、0.666667 alcove
	16、0.666667 sloven
	17、0.666667 lovely
	18、0.6 shove
	19、0.6 loose
	20、0.6 alive
	21、0.6 levee
	22、0.6 level
	23、0.6 lever
	24、0.6 loser
	25、0.6 above
	26、0.6 slave
	27、0.6 alone
	28、0.6 lower
	29、0.6 solve
	30、0.6 trove
	31、0.6 rover
	32、0.6 drove
	33、0.6 movie
	34、0.6 globe
	35、0.6 leave
	36、0.6 prove
	37、0.6 hover
	38、0.6 hovel
	39、0.6 novel
	40、0.6 slope
	41、0.6 cover
	42、0.6 coven
	43、0.6 covey
	44、0.6 covet
	45、0.6 close
耗时:125毫秒
----------------------------------------------------------
----------------------------------------------------------
love 的相似词(JaroDistanceTextSimilarity):
	1、1.0 owl
	2、1.0 love
	3、0.933333 lover
	4、0.833333 rove
	5、0.833333 lave
	6、0.833333 dove
	7、0.833333 live
	8、0.833333 move
	9、0.833333 lobe
	10、0.833333 lode
	11、0.833333 lone
	12、0.833333 lope
	13、0.833333 lore
	14、0.833333 lose
	15、0.8 lovely
	16、0.783333 levee
	17、0.783333 lever
	18、0.783333 loser
	19、0.783333 lower
	20、0.783333 rover
	21、0.783333 hover
	22、0.783333 hovel
	23、0.783333 novel
	24、0.783333 cover
	25、0.783333 coven
	26、0.783333 covey
	27、0.783333 covet
	28、0.783333 liver
	29、0.783333 Dover
	30、0.75 covert
	31、0.75 lively
	32、0.75 lonely
	33、0.75 govern
	34、0.75 loving
	35、0.72619 poverty
	36、0.72619 novelty
	37、0.72619 lovable
	38、0.72619 covered
	39、0.708333 coverage
	40、0.708333 novelist
	41、0.708333 leverage
	42、0.708333 lovingly
	43、0.708333 covenant
	44、0.708333 governor
	45、0.708333 November
耗时:200毫秒
----------------------------------------------------------
----------------------------------------------------------
love 的相似词(JaroWinklerDistanceTextSimilarity):
	1、1.0 love
	2、0.96 lover
	3、0.933333 lovely
	4、0.866667 lobe
	5、0.866667 lode
	6、0.866667 lone
	7、0.866667 lope
	8、0.866667 lore
	9、0.866667 lose
	10、0.85 live
	11、0.833333 rove
	12、0.833333 move
	13、0.833333 November
	14、0.826667 loser
	15、0.826667 lower
	16、0.825 loving
	17、0.808333 lovable
	18、0.805 levee
	19、0.805 level
	20、0.805 liver
	21、0.795833 lovingly
	22、0.783333 hover
	23、0.783333 hovel
	24、0.783333 novel
	25、0.783333 cover
	26、0.783333 coven
	27、0.783333 covey
	28、0.783333 covet
	29、0.783333 Dover
	30、0.75 covert
	31、0.75 govern
	32、0.746667 loneliness
	33、0.7375 lavender
	34、0.7375 leverage
	35、0.733333 loan
	36、0.733333 loaf
	37、0.733333 loam
	38、0.733333 lock
	39、0.733333 logo
	40、0.733333 loft
	41、0.733333 long
	42、0.733333 loll
	43、0.733333 loon
	44、0.733333 loom
	45、0.733333 loop
耗时:167毫秒
----------------------------------------------------------
----------------------------------------------------------


© 著作权归作者所有

杨尚川

杨尚川

粉丝 1101
博文 220
码字总数 1624053
作品 12
东城
架构师
私信 提问
加载中

评论(3)

zjzdy
zjzdy

引用来自“杨尚川”的评论

引用来自“zjzdy”的评论

"/word_primary_school.txt",
"/word_junior_school.txt",
"/word_senior_school.txt",
"/word_university.txt",
"/word_new_conception.txt",
"/word_ADULT.txt",
"/word_CET4.txt",
"/word_CET6.txt",
"/word_TEM4.txt",
"/word_TEM8.txt",
"/word_CATTI.txt",
"/word_GMAT.txt",
"/word_GRE.txt",
"/word_SAT.txt",
"/word_BEC.txt",
"/word_MBA.txt",
"/word_IELTS.txt",
"/word_TOEFL.txt",
"/word_TOEIC.txt",
"/word_考 研.txt"
这些从哪里弄的?
https://github.com/ysc/superword/tree/master/src/main/resources

哦,原来在这,谢谢
杨尚川
杨尚川 博主

引用来自“zjzdy”的评论

"/word_primary_school.txt",
"/word_junior_school.txt",
"/word_senior_school.txt",
"/word_university.txt",
"/word_new_conception.txt",
"/word_ADULT.txt",
"/word_CET4.txt",
"/word_CET6.txt",
"/word_TEM4.txt",
"/word_TEM8.txt",
"/word_CATTI.txt",
"/word_GMAT.txt",
"/word_GRE.txt",
"/word_SAT.txt",
"/word_BEC.txt",
"/word_MBA.txt",
"/word_IELTS.txt",
"/word_TOEFL.txt",
"/word_TOEIC.txt",
"/word_考 研.txt"
这些从哪里弄的?
https://github.com/ysc/superword/tree/master/src/main/resources
zjzdy
zjzdy
"/word_primary_school.txt",
"/word_junior_school.txt",
"/word_senior_school.txt",
"/word_university.txt",
"/word_new_conception.txt",
"/word_ADULT.txt",
"/word_CET4.txt",
"/word_CET6.txt",
"/word_TEM4.txt",
"/word_TEM8.txt",
"/word_CATTI.txt",
"/word_GMAT.txt",
"/word_GRE.txt",
"/word_SAT.txt",
"/word_BEC.txt",
"/word_MBA.txt",
"/word_IELTS.txt",
"/word_TOEFL.txt",
"/word_TOEIC.txt",
"/word_考 研.txt"
这些从哪里弄的?
Java分布式中文分词组件--word

word分词是一个Java实现的分布式的中文分词组件,提供了多种基于词典的分词算法,并利用ngram模型来消除歧义。能准确识别英文、数字,以及日期、时间等数量词,能识别人名、地名、组织机构名...

杨尚川
2014/04/26
8.3K
1
word v1.3 发布,Java 分布式中文分词组件

word 分词是一个Java实现的分布式的中文分词组件,提供了多种基于词典的分词算法,并利用ngram模型来消除歧义。能准确识别英文、数字,以及日期、时间等数量词,能识别人名、地名、组织机构名...

杨尚川
2015/08/29
4.6K
0
superword开源项目中的定义相似规则

两个词之间的关系有同义、反义、近义(有多近?)、相关(有多相关?)等等。我们如何来判断两个词之间的关系呢?利用计算机能自动找出这种关系吗?当然可以,不仅能找出来,而且还能量化出有...

杨尚川
2015/12/07
1K
1
superword v1.0 发布,基于 Java8 的英语词汇分析和辅助阅读开源项目

superword是一个Java实现的英文单词分析和辅助阅读开源项目,主要研究英语单词音近形似转化规律、前缀后缀规律、词之间的相似性规律和辅助阅读等等。 使用Java8实现,Clean code、Fluent st...

杨尚川
2015/12/14
2.1K
18
专栏 清华大学刘知远:在深度学习时代用HowNet搞事情

  2017 年 12 月底,清华大学张钹院士做了一场题为《AI 科学突破的前夜,教授们应当看到什么?》的精彩特邀报告。他认为,处理知识是人类所擅长的,而处理数据是计算机所擅长的,如果能够将...

深度学习
2018/01/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Taro 兼容 h5 踩坑指南

最近一周在做 Taro 适配 h5 端,过程中改改补补,好不酸爽。 本文记录📝遇到的问题,希望为有相同需求的哥们👬节约点时间。 Taro 版本:1.3.9。 解决跨域问题 h5 发请求会报跨域问题,需...

dkvirus
40分钟前
2
0
Spring boot 静态资源访问

0. 两个配置 spring.mvc.static-path-patternspring.resources.static-locations 1. application中需要先行的两个配置项 1.1 spring.mvc.static-path-pattern 这个配置项是告诉springboo......

moon888
今天
1
0
hash slot(虚拟桶)

在分布式集群中,如何保证相同请求落到相同的机器上,并且后面的集群机器可以尽可能的均分请求,并且当扩容或down机的情况下能对原有集群影响最小。 round robin算法:是把数据mod后直接映射...

李朝强
今天
3
0
Kafka 原理和实战

本文首发于 vivo互联网技术 微信公众号 https://mp.weixin.qq.com/s/bV8AhqAjQp4a_iXRfobkCQ 作者简介:郑志彬,毕业于华南理工大学计算机科学与技术(双语班)。先后从事过电子商务、开放平...

vivo互联网技术
今天
19
0
java数据类型

基本类型: 整型:Byte,short,int,long 浮点型:float,double 字符型:char 布尔型:boolean 引用类型: 类类型: 接口类型: 数组类型: Byte 1字节 八位 -128 -------- 127 short 2字节...

audience_1
今天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部