首页 文章

是否可以在Keras中实现最大池化层,从而提供给定池大小的最大n个值?

提问于
浏览
1

我有一个多维时间序列数据集,它具有以下形状(n_samples,512,9),其中512是时间步长,9是通道 .

在具有64个内核的第一个1N CNN层之后,我的输出形状是(n_samples,512,64) . 现在我想让我的输入到下一层,这是一个LSTM形状(n_samples,384,64) .

如果我有一个Maxpool图层从池大小为4返回最多3个值,但是可以在Keras中实现它吗?

1 回答

  • 0

    您可以使用keras.layers.Lambda层解决此问题,将后端解决为tf.nn.in_top_k . 请注意handling is somewhat different来自 tf.nn.top_k ,因为如果所有值都具有相同的值,则它不会合并!

    现在你可以自己定义一个返回顶部 k 值的函数(并且这样做有效),然后将它作为函数传递给lambda层 .

    令人遗憾的是,我没有足够的工作与Keras输入特定的代码,但也许这足以帮助您指出正确的方向 . 此外,还存在类似的线程for TensorFlow specifically .

相关问题