建设银行网站登录不上去,网络建设企业网站,网站服务运营队伍与渠道建设,扬州广陵区城乡建设局网站1. Word2vec简介 Word2vec是一个用来产生词向量的模型。是一个将单词转换成向量形式的工具。 通过转换#xff0c;可以把对文本内容的处理简化为向量空间中的向量运算#xff0c;计算出向量空间上的相似度#xff0c;来表示文本语义上的相似度。
2.Word2vec参数详解
class…1. Word2vec简介 Word2vec是一个用来产生词向量的模型。是一个将单词转换成向量形式的工具。 通过转换可以把对文本内容的处理简化为向量空间中的向量运算计算出向量空间上的相似度来表示文本语义上的相似度。
2.Word2vec参数详解
classgensim.models.word2vec.Word2Vec(sentencesNone, corpus_fileNone, vector_size100, alpha0.025, window5, min_count5, max_vocab_sizeNone, sample0.001, seed1, workers3, min_alpha0.0001, sg0, hs0, negative5, ns_exponent0.75, cbow_mean1, hashfxnbuilt-in function hash, epochs5, null_word0, trim_ruleNone, sorted_vocab1, batch_words10000, compute_lossFalse, callbacks(), commentNone, max_final_vocabNone, shrink_windowsTrue)参数说明sentences可以是一个list对于大语料集建议使用BrownCorpus,Text8Corpus或lineSentence构建。vector_sizeword向量的维度默认为100。大的size需要更多的训练数据但是效果会更好。推荐值为几十到几百。alpha学习率window表示当前词与预测词在一个句子中的最大距离是多少。min_count可以对字典做截断。词频少于min_count次数的单词会被丢弃掉默认值为5。max_vocab_size设置词向量构建期间的RAM限制。如果所有独立单词个数超过这个则就消除掉其中最不频繁的一个。每一千万个单词需要大约1GB的RAM。设置成None则没有限制。sample高频词汇的随机降采样的配置阈值默认为1e-3范围是(01e-5)seed用于随机数发生器。与初始化词向量有关。workers参数控制训练的并行数。sg用于设置训练算法默认为0对应CBOW算法sg1则采用skip-gram算法。hs如果为1则会采用hierarchica·softmax技巧。如果设置为0default则negative sampling会被使用。negative如果0则会采用negative samping用于设置多少个noise words。cbow_mean如果为0则采用上下文词向量的和如果为1default则采用均值。只有使用CBOW的时候才起作用。hashfxnhash函数来初始化权重。默认使用python的hash函数。epochs迭代次数默认为5。trim_rule用于设置词汇表的整理规则指定那些单词要留下哪些要被删除。可以设置为Nonemin_count会被使用或者一个接受()并返回RULE_DISCARDutils。RULE_KEEP或者utils。RULE_DEFAULT的函数。sorted_vocab如果为1default则在分配word index 的时候会先对单词基于频率降序排序。batch_words每一批的传递给线程的单词的数量默认为10000min_alpha随着训练的进行学习率线性下降到min_alpha
3.案例实现
gensim库提供了一个word2vec的实现我们使用几个API就可以方便地完成word2vec
from gensim.models import Word2Vec
import redocuments [The cat sat on the mat., I love green eggs and ham.]
sentences []
# 去标点符号
stop [’!#$%\()*,-./:;?[\\]^_{|}~]
for doc in documents:doc re.sub(stop, , doc)sentences.append(doc.split()) model Word2Vec(sentences, vector_size5, window1, min_count1, workers4, sg1)
# vector_size:词向量的维度 window窗口的大小sg1使用Skip-Gram否则使用CBOW
print(model.wv[cat])
# [-0.16315837 0.08991595 -0.08274154 0.0164907 0.16997238]