问题标签 [elmo]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1426 浏览

python - ELMo - 如何训练可训练参数

我是 tensorflow-hub 的新手,遇到了 ELMo 模型(https://www.tensorflow.org/hub/modules/google/elmo/2)。

根据原始论文,ELMo 表示是隐藏状态激活的加权平均值,并且这些权重可以根据手头的任务(即特定任务)进行训练。正如预期的那样,当我使用 tf.trainable_variables() 时,我可以看到 4 个可训练参数。如何在 tensorflow 中准确训练这些变量?

他们只是提到这些权重是可训练的。但谁应该训练它?Me 还是 ELMo 模型本身训练呢?论文似乎建议我应该训练它。如果是这样,我如何在张量流中训练它?

0 投票
1 回答
1152 浏览

python - 使用 ELMo 嵌入段落

我试图了解如何为 ELMo 矢量化准备段落。

文档仅显示了如何同时嵌入多个句子/单词。

例如。

据我了解,这将返回 2 个向量,每个向量代表一个给定的句子。我将如何准备输入数据以矢量化包含多个句子的整个段落。请注意,我想使用我自己的预处理。

可以这样做吗?

或者可能是这样?

0 投票
1 回答
796 浏览

python - 了解 ELMo 的演示数量

我正在尝试使用 ELMo,只是将它用作更大的 PyTorch 模型的一部分。这里给出了一个基本的例子。

这是一个 torch.nn.Module 子类,它计算任意数量的 ELMo 表示并为每个表示引入可训练的标量权重。例如,此代码片段计算两层表示(如我们论文中的 SNLI 和 SQuAD 模型):

我的问题涉及“陈述”。你能将它们与普通的 word2vec 输出层进行比较吗?您可以选择返回多少个 ELMo(增加第 n 个维度),但是这些生成的表示之间有什么区别,它们的典型用途是什么?

给你一个想法,对于上面的代码,embeddings['elmo_representations']返回两个项目(两个表示层)的列表,但它们是相同的。

简而言之,如何定义 ELMo 中的“表示”?

0 投票
1 回答
942 浏览

tensorflow - elmo 预训练模型的输出

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

特定句子的嵌入向量根据您提供的字符串数量而有所不同。详细解释让

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

0 投票
1 回答
821 浏览

python - 将 Elmo 与 tf.Keras 一起使用会引发 ValueError:无法将字符串转换为浮点数

我正在尝试将 Elmo 与tf.keras. 然而,呼吁model.fit原因ValueError: could not convert string to float

  • 张量流版本:1.13.1
  • numpy 版本:1.14.6

这是完整的代码:

colab 链接在这里:https ://colab.research.google.com/drive/1SvGOEtCYHJkpBVAOU0qRtwR8IPE_b2Lw

完整的错误代码:

0 投票
1 回答
1249 浏览

keras - 如何在预训练的 ELMO 嵌入中获得相似的单词?

如何在预训练的 ELMO 嵌入中获得给定单词的相似词?例如:在 Glove 中,我们有 glove_model.most_similar() 来查找最相似的词及其对任何给定词的嵌入。同样,我们在 ELMO 中有什么东西吗?

0 投票
1 回答
158 浏览

tensorflow - 我的 ELMo 训练模型提供的输出字典具有与 tf.hub 模型不同的字段

使用预训练的 ElMo 模型时,我得到的输出字典与已发布的tf.hub 模型中解释的输出字典不同 我的输出字典的签名是

而来自的输出字典tf hub包含:

  • word_emb:形状为 [batch_size, max_length, 512] 的基于字符的词表示。
  • lstm_outputs1:第一个 LSTM 隐藏状态,形状为 [batch_size, max_length, 1024]
  • lstm_outputs2:形状为 [batch_size, max_length, 1024] 的第二个 LSTM 隐藏状态。
  • elmo:3 层的加权和,其中权重是可训练的。这个张量的形状为 [batch_size, max_length, 1024]
  • 默认值:具有形状 [batch_size, 1024] 的所有上下文化单词表示的固定均值池。

如何访问word_emb, lstm_outputs1, lstm_outputs2 ..输出字典中的字段?我正在按照使用示例从这个链接缓存数据集

0 投票
1 回答
335 浏览

tensorflow - 在简单的 colab 教程中使用 ELMo 交换 gnews

我正在研究这个 colab 笔记本:

https://colab.research.google.com/github/tensorflow/hub/blob/master/examples/colab/tf2_text_classification.ipynb

我想用 ELMo 嵌入替换 gnews 旋转嵌入。

所以,更换

和:

这里有一连串的变化,比如需要

但我不了解成功进行此替换所需的图形形状。具体来说,我看到了。

生产

这似乎很好。但:

然后这给出:

图表尺寸还有什么变化,我该如何解决?

0 投票
2 回答
1707 浏览

keras - 字符串数据类型的 keras pad_sequence

我有一个句子列表。我想为它们添加填充;但是当我像这样使用 keras pad_sequence 时:

结果是:

为什么它不能正常工作?

我想将此结果用作 ELMO 嵌入的输入,并且我需要字符串句子而不是整数编码。

0 投票
0 回答
387 浏览

python - 无法安装 Bert Serving 服务器。“找不到满足要求 bert-serving-server 的版本”

我正在尝试在我的办公机器上设置 bert-as-service,但我一直收到同样的错误。

我在我的 Conda 环境中有 Python 3.6.8 :: Anaconda, Inc. 和 Tensorflow 1.10.0,在我的本地机器(CMD)(Windows 10)上有 Python 3.7.2。

我的本地机器上没有 tensorflow,因为我在尝试安装 bert-as-service 时不断收到相同的错误。

  1. 我可以在 Conda 环境中安装 bert-as-service 吗?如果是,有人可以告诉我如何解决以下问题吗?
  2. 如果没有,我如何在我的系统上安装 tensorflow,然后再安装 bert-as-service?

错误 1 ​​- 尽管有必要条件,但无法在 Conda 中安装 bert-as-service:

错误 1

Error2 - 无法在我的本地机器上安装 tensorflow:

错误 2