首页 > 解决方案 > Tensorflow hub:恢复重新训练的通用句子编码器模块

问题描述

我一直在尝试重新训练通用句子编码器模块(use),但我似乎无法从任何更新/重新训练的模块权重中生成新的嵌入。

我遵循了分类器示例elmo并将其替换为使用模块。分类器工作我似乎无法弄清楚如何访问新模块embeddings。我可以恢复保存的模型,但不确定我实际上是如何调用嵌入函数的?
例如,以前我通过设置路径

m=hub.module(path) then generate the embeddings via

m(sentences)

但是如何使用恢复的分类器模型进行此调用?请注意,我确实将参数设置trainable=True为与示例教程中一样。

我是否只需进行相同的调用,它就会自动获取已通过分类器再训练训练的新权重?我检查了类似的问题,但大多数都与操纵元图有关。我只想简单地使用新的权重来生成一些新的嵌入,看看它们是否在对其他数据进行微调后有所不同。也许这是不可能的?

任何澄清将不胜感激。

标签: tensorflowtensorflow-hub

解决方案


所以我在运行分布式张量流时实际上遇到了这个问题,并且损失没有改变。

诀窍是,当您第一次下载它时,您需要设置 trainable = True 否则权重将被锁定。

因此,在您的情况下,使用 trainable = True 重新下载模块以解锁权重。


推荐阅读