Word2vec模型的常用方法枚举
1 model.wv.vectors.shape
词向量的维度 (631, 50) 模型有631个不重复的词汇,维度为50
2 model.wv.most_similar(positive=[文本挖掘, 汽车], negative=[内容], topn=20)
获取词汇相关的前n个词语,当positive和negative同时使用的话,就是词汇类比
model.wv.similar_by_word(social_listening, topn=10, restrict_vocab=30))
model.wv.most_similar(social_listening)
找到前N个最相似的单词,注意其中的参数restrict_vocab ,它是可选的整数,
它限制了向量的范围,搜索最相似的值。 例如,restrict_vocab = 10000会
,只检查词汇顺序(按降序频率对词汇表进行排序会更有有意义)中的前10000个词汇向量
3 model.wv.doesnt_match("舆情 互联网 媒体 商业 场景 咨询 ".split())
找出与其他词差异最大的词汇
4 model.wv.closer_than(微博,社会化媒体) #微博是词汇A,社会化媒体是词汇B
接近词汇A更甚于词汇B接近词汇A的【所有】词汇,按相似度由高到低降序排列
就是找到比b词汇更接近a单词的词汇
5 model.wv.similarity(social_listening, 社会化媒体)
基于cosine余弦计算词汇之间的相似度,数值越大代表相似度越高
6 model.wv.wmdistance(doc1.split(), doc2.split())
wmdistance比较语句之间的相似度,数值越大代表越不相似
7 model.predict_output_word([social_listening, 口碑, 情报], topn=20)
给定上下文词汇(the context words)作为输入,你可以获得中心词汇的概率分布
8 使用乘法组合对象(multiplicative combination objective)找到前N个最相似的单词
print("使用most_similar_cosmul进行相似度计算的结果: {}".format(model.wv.most_similar_cosmul(positive=[文本挖掘,数据,语义相关性], negative=[商业,社交,社交媒体平台], topn=10)))
print(----------------------------------------------------------------------------------------------------------------------------------------------------------------------------)
print("使用most_similar进行相似度计算的结果: {}".format(model.wv.most_similar(positive=[文本挖掘,数据,语义相关性], negative=[商业,社交,社交媒体平台], topn=10)))
9 model.wv[文本挖掘]
查询到某个词汇的词向量稠密表示 它是我们做后续高阶文本挖掘,即文本聚类、文本分类、情感分析以及文本相似度的基础
model.wv.vectors将其扩展为2D 的NumPy矩阵
10 model.get_latest_training_loss()
训练损失计算(Training Loss Computation)
当训练Word2Vec模型时,将其中的参数compute_loss设置为True,
则可计算训练Word2Vec模型时所得到的损失(Training Loss),它可以衡量模型的训练质量。
计算出的损失存储在模型的属性running_training_loss中,
可以调用get_latest_training_loss方法进行查询