问题标签 [keras-layer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
deep-learning - Keras 中的多维输入层
Keras 中的哪些层可以作为第一层来接收多维特征?我想使用具有 11 个通道的 1275 个特征的密集层,但看起来我只能将卷积层或循环层用于 2 维或更多维的特征。那是对的吗?
python - Keras 在 model.fit() 之后删除图层
我正在使用 Keras 进行建模工作,我想知道是否可以通过索引或名称删除某些图层?目前我只知道model.pop()
可以做这项工作,但它只是删除了最近添加的图层。另外,layers
是 of 的类型,tensorvariable
我不知道如何删除可以在numpy array
or中完成的某些元素list
。顺便说一句,我正在使用 Theano 后端。
keras - Keras:实现分层训练模型的更好方法?
我目前正在学习使用 Keras 实现分层训练模型。我的解决方案复杂且耗时,有人可以给我一些建议以简单的方式完成吗?也有人可以解释 Keras 的拓扑结构,尤其是 之间的关系nodes.outbound_layer
,nodes.inbound_layer
以及它们如何与张量相关联:input_tensors
和output_tensors
?从github 上的拓扑源代码,我很困惑:
input_tensors[i] == inbound_layers[i].inbound_nodes[node_indices[i]].output_tensors[tensor_indices[i]]
为什么inbound_nodes
contains output_tensors
,我不清楚它们之间的关系....如果我想删除 的某些位置的图层API model
,我应该首先删除什么?另外,在某些地方添加图层时,我应该先做什么?
这是我对分层训练模型的解决方案。我可以在 Sequential 模型上做到这一点,现在尝试在API model
:
为此,我只需在完成之前的训练并重新编译(model.compile()
)和重新拟合(model.fit()
)后添加一个新层。
由于 Keras 模型需要输出层,所以我总是会添加一个输出层。结果,每次我想添加一个新层时,我都必须删除输出层然后再添加回来。这可以使用 来完成model.pop()
,在这种情况下model
必须是keras.Sequential()
模型。
该Sequential()
模型支持许多有用的功能,包括model.add(layer)
. 但是对于使用模型 API: 的自定义模型model=Model(input=...., output=....)
,这些pop()
或add()
功能不受支持,实现它们需要一些时间,而且可能不方便。
keras - 带有嵌入层的有状态 LSTM(形状不匹配)
我正在尝试使用 Keras 构建有状态的 LSTM,但我不明白如何在 LSTM 运行之前添加嵌入层。问题似乎是stateful
标志。如果我的网络不是有状态的,则添加嵌入层非常简单并且有效。
一个没有嵌入层的工作状态 LSTM 看起来像这样:
添加嵌入层时,我将batch_input_shape
参数移动到嵌入层,即只有第一层需要知道形状?像这样:
我知道的例外是Exception: Input 0 is incompatible with layer lstm_1: expected ndim=3, found ndim=4
所以我现在被困在这里。将词嵌入组合到有状态 LSTM 中的技巧是什么?
machine-learning - 在输入层中,input_dim 和输入层上的节点数有什么区别?
Keras 代码供参考。我的每个输入实例都是一个 200 维向量,我希望输入层上的节点数等于 200。“100”在输入密集层中代表什么?
python - Keras:获取前 n 层
我通过执行以下操作从保存的文件加载自动编码器,结构如下:
包括 在内的前四层InputLayer
构成了编码器部分。我想知道是否有一种快速的方法可以抓住这四层。到目前为止,我遇到的唯一可能的解决方案是:
^ 并为另外两层手动执行此操作。我希望有一种方法可以更有效地提取前四层。特别是因为该.summary()
方法会吐出层摘要。
编辑 1(可能的解决方案):我已经找到了以下解决方案,但我希望能有更高效的解决方案(更少的代码)。
python - Tensorflow + Keras + Convolution2d: TypeError: 'int' object is not callable
我在我的机器上运行关于 CNN 的代码,但它得到了一个错误反馈。
我的代码片段:
我也尝试:
错误是:
如何解决这个问题呢?
python - 如何在 Keras/Theano 中执行反卷积?
我正在尝试在 Keras 中实现反卷积。我的模型定义如下:
我想对第一个卷积层给出的输出执行反卷积或转置卷积,即convolution2d_1
。
假设我们在第一个卷积层之后拥有的特征图X
是其中 9 是我通过该层(9, 32, 32, 32)
的维度图像的数量。Keras函数32x32
得到的第一层的权重矩阵。get_weights()
权重矩阵的维数为(32, 3, 3, 2)
。
我用于执行转置卷积的代码是
但出现错误:
谁能告诉我哪里出错了?
keras - 使用 Resnet50 进行 Keras 迁移学习失败并出现异常
我正在使用 Resnet50 进行迁移学习。后端是张量流。我试图在 Resnet 上再堆叠三层,但失败并出现以下错误:
堆叠两个模型的代码如下:
python - Keras - 密集层与 Convolution2D 层的融合
我想制作一个自定义层,它应该将密集层的输出与 Convolution2D 层融合。
这个想法来自这篇论文,这里是网络:
融合层尝试将 Convolution2D 张量 ( 256x28x28
) 与密集张量 ( 256
) 融合。这是它的方程式:
y_global => Dense layer output with shape 256
y_mid => Convolution2D layer output with shape 256x28x28
以下是有关 Fusion 过程的论文的描述:
我最终制作了一个新的自定义图层,如下所示:
我认为我的__init__
andbuild
方法是正确的,但我不知道如何在层中将y_global
(256 个维度)与y-mid
(256x28x28 维度)连接起来,call
以便输出与上述等式相同。
我怎样才能在方法中实现这个方程call
?
非常感谢...
更新:成功整合这两层数据的任何其他方式对我来说也是可以接受的......它不一定是论文中提到的方式,但它至少需要返回一个可接受的输出......