keras model.get_config()不适用于以下模型

时间:2019-12-03 16:55:58

标签: python tensorflow keras lstm

我有以下代码来构建模型。

<html>

<head>
  <meta charset=utf-8 />
  <meta name="viewport" content="user-scalable=no, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, minimal-ui">
  <script src="https://unpkg.com/cytoscape@3.3.0/dist/cytoscape.min.js">
  </script>
  <script src="https://unpkg.com/jquery@3.3.1/dist/jquery.js"></script>
  <!-- cyposcape dagre -->
  <script src="https://unpkg.com/dagre@0.7.4/dist/dagre.js"></script>
  <script src="https://cdn.rawgit.com/cytoscape/cytoscape.js-dagre/1.5.0/cytoscape-dagre.js"></script>
</head>

<body>
  <div id="cy"></div>
</body>

</html>

我成功地构建了模型,并且也可以对其进行编译,但是当我调用import keras def foo(inputs_): lstm1 = keras.layers.LSTM(units= 24, return_sequences=True, return_state=True,name='DecoderLSTM') st1,st2 = keras.layers.Lambda(lambda x:lstm1.get_initial_state(x))(inputs_) st1 = keras.layers.Lambda(lambda inp: K.expand_dims(inp, axis=1) )(st1) d_init, _, _ = lstm1(inputs_) d_t = keras.layers.Concatenate(axis=1)([st1, d_init]) return d_t dec_input = keras.Input((32,1)) out = foo(dec_input) m = keras.Model(dec_input,out) 时会出现此错误m.get_config()

我检查了其他答案,这些答案说不应有任何浮动张量,因此我已将所有内容包装在can't pickle _thread.RLock objects层中。因此,没有任何答案可以解决我的问题。我注意到的另一件奇怪的事情是,当我在全局空间中运行没有功能的相同代码时,Lambda不会出现任何错误。

其他信息:我在任何地方都使用m.get_config(),我没有在任何地方导入import keras,但后端是tensorflowtensorflowkeras version : 2.2.5。如果有人可以为我重现错误,我将不胜感激。谢谢。

0 个答案:

没有答案