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

加载模型 BertClassifier 模型时输入张量 ValueError

如何解决加载模型 BertClassifier 模型时输入张量 ValueError

--介绍

我正在使用来自 tf-models-official==2.3.0 的谷歌代码训练 BERT 分类器。 一切都充满魅力:训练、评估、保存检查点。

--问题

当我保存整个模型然后尝试重新加载它时,我的问题出现了,我收到了这个错误

我加载我的检查点

strategy = tf.distribute.MirroredStrategy()
with strategy.scope():
    model = bert.bert_models.classifier_model(FLAGS_pretrained_bert["bert_config"],2)[0]
    
    print(f"Loading the checkpoint in {PATH_ckpt}")
    model.load_weights(PATH_ckpt)

我将它保存为一个完整的模型:

model.save("gs://MY_PATH")

然后重新加载模型:

reloaded_model = tf.keras.models.load_model("gs://MY_PATH")

我收到此错误

ValueError: Input tensors to a Text>BertClassifier must come from `tf.keras.Input`. Received: None (missing prevIoUs layer Metadata).

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