def avgpool(self, k=2, s=None, globe=False):
"""
Averages the values over a k x k area in each input map, or over the entire map (global = True)
:param k: int
:param globe: int, whether to pool over each feature map in its entirety
"""
self.count['ap'] += 1
scope = 'avgpool_' + str(self.count['mp'])
with tf.variable_scope(scope):
if globe is True: # Global Pool Parameters
k1 = self.input.get_shape()[1]
k2 = self.input.get_shape()[2]
s1 = 1
s2 = 1
padding = 'VALID'
else:
k1 = k
k2 = k
if s is None:
s1 = k
s2 = k
else:
s1 = s
s2 = s
padding = 'SAME'
# Average Pool Function
self.input = tf.nn.avg_pool(self.input, ksize=[1, k1, k2, 1], strides=[1, s1, s2, 1], padding=padding)
print(scope + ' output: ' + str(self.input.get_shape()))
评论列表
文章目录