微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

不同句子列表的 ELMO 嵌入

如何解决不同句子列表的 ELMO 嵌入

我正在从事情感分析。我正在使用 elmo 方法获取词嵌入。但我对这个方法给出的输出感到困惑。考虑张量流网站中给出的代码

elmo = hub.Module("https://tfhub.dev/google/elmo/2",trainable=True)
    embeddings = elmo(["the cat is on the mat","dogs are in the fog"],signature="default",as_dict=True)["elmo"]

特定句子的嵌入向量因您提供的字符串数量而异。详细解释让

x = "the cat is on the mat"
 y = "dogs are in the fog"
 x1 = elmo([x],as_dict=True)["elmo"]
 z1 = elmo([x,y],as_dict=True)["elmo"]

所以 x1[0] 将不等于 z1[0]。这会随着您更改字符串的输入列表而更改。为什么一个句子的输出取决于另一个。我不是在训练数据。我只使用现有的预训练模型。在这种情况下,我很困惑如何将我的评论文本转换为嵌入并用于情感分析。请解释。 注意:要获得嵌入向量,我使用以下代码

with tf.Session() as sess:
            sess.run(tf.global_variables_initializer())
            sess.run(tf.tables_initializer())
            # return average of ELMo features
            return sess.run(tf.reduce_mean(x1,1))

如果(比如说)z = [1000 个字符串的列表],这些值确实从第一个小数点本身开始改变。我做了很多检查。我在重复“我们为每个句子得到不同的向量”,这是为什么呢?权重是否得到训练(但我不是在训练模型,只是从预训练模型中提取向量)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。