【问题标题】:Keras embedding layer set_weights() error on google colabgoogle colab上的Keras嵌入层set_weights()错误
【发布时间】:2021-12-20 07:32:22
【问题描述】:

我正在尝试使用以下代码为我在 google colab(tf 版本 2.6.0)上创建的 LSTM 模型的 Keras 嵌入层手动设置新权重:

model4Ax.layers[0].set_weights(emb4A)

emb4A 是我通过组合多个嵌入创建的嵌入,但仍具有与原始相同的维度

但我收到此错误:

ValueError:您在“嵌入”层上调用了set_weights(weights),权重列表长度为 500,但该层期望权重为 1。提供的权重:[[-0.03877353 -0.02181869 -0.06819688 ... 0.02823...

有人熟悉吗?我需要帮助!

【问题讨论】:

    标签: python keras google-colaboratory embedding


    【解决方案1】:

    我最终发现了我的错误。即使我的嵌入权重值的形状正确, set_weight() 仍希望将权重作为 NumPy 数组的列表。我所要做的就是将我的权重包裹在 [] 中,如下所示:

    model4Ax.layers[0].set_weights([emb4A])
    

    【讨论】:

      猜你喜欢
      • 2019-11-13
      • 2019-04-06
      • 2020-11-28
      • 2021-05-20
      • 2018-08-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多