本方法是使用python语言使用word2vec 的方法来进行语义相似度的计算、
1、首先配置python27下的word2vec的环境(gensim),如下所示:

2、训练文本
# -*- coding: utf-8 -*-
from gensim.models import word2vec
import logging
import numpy as np
# 主程序
logging.basicConfig(format='%(asctime)s : %(levelname)s : %(message)s', level=logging.INFO)
sentences = word2vec.Text8Corpus(u"C:/Users/Administrator/Desktop/data/abstract.txt") # 加载语料
n_dim=200
model = word2vec.Word2Vec(sentences, size=n_dim, min_count=0,sg=1) # 训练skip-gram模型; 默认window=5
# 保存模型,以便重用
model.save("E:/pythonWorkSpace/work/deal_chinesepaper_data/model_data/abs0.model")
# 以一种C语言可以解析的形式存储词向量
model.save_word2vec_format("E:/model_data/abs0.model.bin", binary=True)
if __name__ == "__main__":
pass
3、根据训练的结果计算语义相似度
# -*- coding: utf-8 -*-
from gensim.models import word2vec
import logging
import numpy as np
model = word2vec.Word2Vec.load("E:/model_data/abs0.model.bin")
y1 = model.similarity(u"社会媒体", u"社交网络")
print u"社会媒体和社交网络的相似度为:", y1
print "--------\n"
y2 = model.most_similar(u"霍克斯过程", topn=20) # 20个最相关的
print u"和社会媒体最相关的词有:\n"
for item in y2:
print item[0], item[1]
print "--------\n"
结果如下所示