问题标签 [max-pooling]
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.
python - 什么是 b、y、x 和 c,它们与 tf.nn.max_pool_with_argmax 中的最大池化特征一起被展平并返回?
我浏览了tf.nn.max_pool_with_argmax的文档
对输入执行最大池化并输出最大值和索引。
argmax 中的索引被展平,因此位置 [b, y, x, c] 处的最大值变为展平索引 ((b * height + y) * width + x) * channels + c。
返回的索引在展平之前总是在 [0, height) x [0, width) 中,即使涉及填充并且数学上正确的答案在外面(负数或太大)。这是一个错误,但很难以安全的向后兼容方式修复它,尤其是由于扁平化。
变量 b、y、x 和 c 尚未明确定义,因此我在实现此方法时遇到问题。有人可以提供相同的吗。
deep-learning - E-net 深度学习架构
该研究论文可在以下链接中找到:
https://arxiv.org/pdf/1606.02147.pdf
无法理解 Enet 架构的初始块。
在第 3 页的研究论文中给出的声明:
ENet 初始块。MaxPooling 是用非重叠的 2×2 窗口进行的,卷积有 13 个过滤器,串联后总计 16 个特征图。
所以问题是,我们如何在连接后得到 16 个过滤器?
python-3.x - 如何选择keras密集层的前k个元素?
我正在尝试执行 ak-max pooling
以选择top-k
具有 shape 的密集元素(None, 30)
。我尝试了一个MaxPooling1D
层,但它不起作用,因为 keras 池化层至少需要一个 2d 输入形状。我正在使用以下Lambda
图层,但出现以下错误:
错误:文件“/usr/local/lib/python3.5/dist-packages/keras/engine/base_layer.py”,第 474 行,调用 output_shape = self.compute_output_shape(input_shape) 文件“/usr/local/lib/ python3.5/dist-packages/keras/layers/core.py”,第 652 行,在 compute_output_shape 返回 K.int_shape(x) 文件“/usr/local/lib/python3.5/dist-packages/keras/backend/ tensorflow_backend.py",第 591 行,在 int_shape 返回元组(x.get_shape().as_list()) AttributeError:'TopKV2' 对象没有属性 'get_shape'
tensorflow - 预期 conv2d_7 的形状为 (220, 220, 1) 但得到的数组形状为 (224, 224, 1)
我正在按照 keras 博客(https://blog.keras.io/building-autoencoders-in-keras.html)的教程来构建一个自动编码器。
我使用了自己的数据集,并且在 224*224 大小的图像上使用了以下代码。
当我看到自动编码器的摘要时,它给出的输出使得最后一层有 220 x 220。我附上了该摘要的快照。
我不明白的是它是如何从 112*112 转换为 110*110 的。我期待 conv2d_6 (Conv2D) 给我 112*112 和 16 个内核。
如果我删除 Conv2D_6 层,那么它将起作用。但我想拥有它,否则我将进行两次 UpSampling。我不明白出了什么问题。
有人可以指导我吗?
numpy - maxpooling 结果未显示在 model.summary() 输出中
我是 Keras 的初学者。我正在尝试建立一个我正在使用顺序模型的模型。当我试图通过使用 maxpooling 函数将输入大小从 28 减少到 14 或更少时,maxpooling 函数结果不会在调用 model.summary() 函数时显示。我希望在训练后达到 0.99 或更高的准确度,即调用 model.score() 时,准确度结果应为 0.99 或更高。到目前为止的模型构建我的我可以在这里看到
输出 -
我使用的批量大小是 32,时期数是 10。
训练后的输出 -
keras - Error when checking target: expected dense to have shape (1,) but got array with shape (15662,) maxpooling as a first layer
I'm trying to use maxpooling as a first layer using keras and I have a problem with the input and output dimensions.
After running the model, I get the following error:
ValueError: Error when checking target: expected dense_622 (last layer) to have shape (1,) but got array with shape (15662,)
I'm doing classification and my target is binary (0,1) Thank you
python - 如何在高维中做tensorflow segment_max
我希望能够在大小为 [N, s, K] 的数据张量上调用 tensorflow 的 tf.math.unsorted_segment_max。N 是通道数,K 是过滤器/特征图的数量。s 是单通道数据样本的大小。我有 s 大小的 segment_ids。例如,假设我的样本大小是 s=6,并且我想对两个元素进行最大处理(就像进行通常的最大池化一样,所以在第二个,整个数据张量的 s 维)。然后我的 segment_ids 等于 [0,0,1,1,2,2]。
我试着跑步
segment_ids 具有扩展的 0 和 2 维,但由于段 id 然后重复,结果当然是大小 [3] 而不是我想要的 [N,3,K]。
所以我的问题是,如何构造一个合适的 segment_ids 张量,来实现我想要的?即根据原始 s 大小的 segment_ids 张量完成最大段,但在每个维度中分别?
基本上,回到这个例子,给定一维段 id 列表 seg_id=[0,0,1,1,2,2],我想构造一个类似于 segment_ids 张量的东西:
因此,当使用此张量作为段 id 调用 tf.math.(unsorted_)segment_max 时,我将得到大小为 [N, 3, K] 的结果,其效果与对每个数据运行 segment_max 的效果相同[ x,:,y] 分别并适当地堆叠结果。
这样做的任何方式都可以,只要它适用于 tensorflow。我猜想 tf.tile、tf.reshape 或 tf.concat 的组合应该可以解决问题,但我不知道如何,以什么顺序。另外,有没有更直接的方法呢?不需要在每个“池化”步骤中调整 segment_ids?
tensorflow - 自定义池化层 - minmax pooling - Keras - Tensorflow
我想定义我的自定义池层,而不是像 MaxPooling 层那样返回最大值,它会输出 k 个最大值和 k 个最小值。
我使用 Tensorflow 作为后端。我需要对输出向量进行排序。
我正在考虑这样做:
但后来我得到:
MinMaxPooling1D 层应用于 (None, 1, 10) 形状输出。
然后我正在考虑在 MinMaxPooling1D 之前添加一个 Flatten 层,但是有一个尺寸问题:
deep-learning - 是否可以对两个矩阵进行最大池化并将其更改为单个矩阵?
我可以使用最大池化层将两个 3x3 矩阵转换为一个 3x3 矩阵吗?
例如,让我们采用 2 个矩阵:
矩阵 1
矩阵 2
使用 maxpool(dim = (2,2), stride =1)