zoukankan      html  css  js  c++  java
  • 使用genism训练词向量【转载】

    转自:https://blog.csdn.net/qq_16912257/article/details/79099581

    https://blog.csdn.net/thriving_fcl/article/details/51406780

    1.简单使用

    from gensim.models import word2vec
    
    sents = [
    'I am a good student'.split(),
    'Good good study day day up'.split()
    ]
    model = word2vec.Word2Vec(sents, size=100, window=5, min_count=2, workers=10)
    # 打印单词'good'的词向量
    print(model.wv.word_vec('good'))
    # 打印和'good'相似的前2个单词
    print(model.wv.most_similar('good', topn=2))
    # 保存模型到文件
    model.save('w2v.model')

    查看词典:w2v.wv.vocab

    查看所有词向量:weights = w2v.wv.syn0

    2020-9-17更新——————

    2.常用参数

    https://blog.csdn.net/laobai1015/article/details/86540813

    class Word2Vec(utils.SaveLoad):
        def __init__(
                self, sentences=None, size=100, alpha=0.025, window=5, min_count=5,
                max_vocab_size=None, sample=1e-3, seed=1, workers=3, min_alpha=0.0001,
                sg=0, hs=0, negative=5, cbow_mean=1, hashfxn=hash, iter=5, null_word=0,
                trim_rule=None, sorted_vocab=1, batch_words=MAX_WORDS_IN_BATCH):

    · sentences:可以是一个list,对于大语料集,建议使用BrownCorpus,Text8Corpus或lineSentence构建。
    · size:是指特征向量的维度,默认为100。

    · alpha: 是初始的学习速率,在训练过程中会线性地递减到min_alpha。

    · window:窗口大小,表示当前词与预测词在一个句子中的最大距离是多少。

    · min_count: 可以对字典做截断. 词频少于min_count次数的单词会被丢弃掉, 默认值为5。

     sg: 用于设置训练算法,默认为0,对应CBOW算法;sg=1则采用skip-gram算法。

     参数的选择与对比:

    1.skip-gram (训练速度慢,对罕见字有效),CBOW(训练速度快)。一般选择Skip-gram模型;

    2.训练方法:Hierarchical Softmax(对罕见字有利),Negative Sampling(对常见字和低维向量有利);

    3.欠采样频繁词可以提高结果的准确性和速度(1e-3~1e-5)

    4.Window大小:Skip-gram通常选择10左右,CBOW通常选择5左右。

    3.模型保存与加载

    model.save_word2vec_format(outp2, binary=False)
    
    from gensim.models import Word2Vec
    model = Word2Vec.load("D:/data/W2V/word2vector.model")
    print(model.similarity('Chinese', 'China'))

    4. 

  • 相关阅读:
    springCloud中的服务调用feign
    模块化理解
    springCloud中的注册中心Nacos
    vue路由理解
    vue生命周期理解
    webpack理解
    连接查询理解
    [HDU]5691Sitting in Line (状压DP)
    [Kattis]redblacktree(树形依赖背包,DP优化)
    Codeforces Round #699 (Div. 2)
  • 原文地址:https://www.cnblogs.com/BlueBlueSea/p/10732160.html
Copyright © 2011-2022 走看看