【问题标题】:Keras plot_model not showing the input layer appropriatelyKeras plot_model 没有正确显示输入层
【发布时间】:2019-01-14 00:15:38
【问题描述】:

我的模型是这样定义的:

model = keras.models.Sequential()
model.add(layers.Embedding(max_features, 128, input_length=max_len,
                       input_shape=(max_len,), name='embed'))
model.add(layers.Conv1D(32, 7, activation='relu'))
model.add(layers.MaxPooling1D(5))
model.add(layers.Conv1D(32, 7, activation='relu'))
model.add(layers.GlobalMaxPooling1D())
model.add(layers.Dense(1))

当我使用 plot_model 函数将其绘制出来时:

from keras.utils import plot_model

plot_model(model, show_shapes=True, to_file='model.png')

我得到的图纸是

输入层是一系列数字。有人知道它是如何让它正确显示输入的吗?

【问题讨论】:

    标签: python tensorflow keras deep-learning artificial-intelligence


    【解决方案1】:

    升级 Keras 后发生在我身上

    查看此链接:https://github.com/keras-team/keras/issues/10638

    在 keras/engine/sequential.py 中

    评论一下:

    @property
    def layers(self):
        # Historically, `sequential.layers` only returns layers that were added
        # via `add`, and omits the auto-generated `InputLayer`
        # that comes at the bottom of the stack.
        if self._layers and isinstance(self._layers[0], InputLayer):
            return self._layers[1:]
        return self._layers
    

    【讨论】:

      猜你喜欢
      • 2018-12-22
      • 2018-04-22
      • 1970-01-01
      • 1970-01-01
      • 2018-01-17
      • 2020-03-01
      • 2017-07-03
      • 1970-01-01
      • 2010-12-09
      相关资源
      最近更新 更多