tf.nn.pool()使用例子:TensorFlow對一維資料進行池化
阿新 • • 發佈:2018-11-07
tf.nn.pool()使用例子:
在tensorflow中對一維訊號進行池化操作時使用,輸入資料的維度為三維[batch , in_width, in_channels]。
原文連結: https://www.dotnetperls.com/pool-tensorflow
import tensorflow as tf
temp = [0., 0., 1., 0., 0., 0., 1.5, 2.5]
# Reshape the tensor to be 3 dimensions.
values = tf.reshape(temp, [1, 8, 1])
# Use an averaging pool on the tensor.
p_avg = tf.nn.pool(input=values,
window_shape=[2],
pooling_type="AVG",
padding="SAME")
# Use max with this pool.
p_max = tf.nn.pool(input=values,
window_shape=[2],
pooling_type="MAX",
padding="SAME")
session = tf.Session()
# Print our tensors.
print("VALUES")
print(session.run(values))
print("POOL" )
print(session.run(p_avg))
print("POOL MAX")
print(session.run(p_max))
VALUES [[[ 0. ] [ 0. ] [ 1. ] [ 0. ] [ 0. ] [ 0. ] [ 1.5] [ 2.5]]] POOL [[[ 0. ] [ 0.5 ] [ 0.5 ] [ 0. ] [ 0. ] [ 0.75] [ 2. ] [ 2.5 ]]] POOL MAX [[[ 0. ] [ 1. ] [ 1. ] [ 0. ] [ 0. ] [ 1.5] [ 2.5] [ 2.5]]]