在TensorFlow中使用预先训练的单词嵌入(word2vec或Glove)

在TensorFlow中使用预先训练的单词嵌入(word2vec或Glove)

我最近回顾了一个卷积文本分类的有趣实现。但是,我所评论的所有TensorFlow代码都使用随机(未预先训练)的嵌入向量,如下所示:

with tf.device('/cpu:0'), tf.name_scope("embedding"):
    W = tf.Variable(
        tf.random_uniform([vocab_size, embedding_size], -1.0, 1.0),
        name="W")
    self.embedded_chars = tf.nn.embedding_lookup(W, self.input_x)
    self.embedded_chars_expanded = tf.expand_dims(self.embedded_chars, -1)

有谁知道如何使用Word2vec的结果或GloVe预训练的单词嵌入而不是随机的?


呼唤远方
浏览 1995回答 3
3回答

幕布斯7119047

我使用此方法加载和共享嵌入。W = tf.get_variable(name="W", shape=embedding.shape, initializer=tf.constant_initializer(embedding), trainable=False)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python