码迷,mamicode.com
首页 > 编程语言 > 详细

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

时间:2015-05-29 14:09:38      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:

本文实现代码:利用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毫秒
----------------------------------------------------------
----------------------------------------------------------


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

标签:

原文地址:http://my.oschina.net/apdplat/blog/422181

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!