当前位置:   article > 正文

torchtext建立词表build_vocab()时使用自己的word2vec模型_model.build_vocab(images) # 构建词汇表

model.build_vocab(images) # 构建词汇表

代码如下:

如果对于torchtext本身不太了解,可以参考:torchtext处理文本数据——构造dataset读取文本(学习一):torchtext处理文本数据——构造dataset读取文本(学习一)

from torchtext import data

COMMENT = data.Field()
fields = [('name', None), ('comment', COMMENT)]

train = data.TabularDataset.splits(
    path='./',
    train='my_data.csv',
    format='csv',
    skip_header=True,
    fields=fields)
train = train[0]
# =========================上面都是torchtext的模板,下面开始自定义一个word2vec模型=========================
from gensim.models import Word2Vec

word2vec_model = Word2Vec([
    ['i', 'am', 'a', 'train', 'sentence', 'one'],
    ['i', 'am', 'a', 'love', 'sentence', 'two'],
    ['i', 'love', 'you'],
    ['you', 'love', 'me'],
], vector_size=256, min_count=1, window=5, sg=0)  # 这里训练了一个超级差劲的模型,但是意思就是这个意思
word2vec_model.wv.save_word2vec_format('my_word2vec_format.txt')  # 关键步骤,一定要写入到文件中
# =========================训练好后构建全部词表=========================
from torchtext.vocab import Vectors

vectors = Vectors(name='my_word2vec_format.txt')  # 关键步骤,一定要从文件中读取到Vectors中
COMMENT.build_vocab(train, vectors=vectors)
love_index = COMMENT.vocab.stoi['love']
print(love_index)  # love这个单词的下标
print("love的词向量:", COMMENT.vocab.vectors[love_index])
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/378275
推荐阅读
相关标签
  

闽ICP备14008679号