在Tensorflow中采用张量模式有可能吗?
问题描述:
我想在Tensorflow中构建一个DAG,我需要采用我的目标的各个区域的模式(最常见的值)。这是为了构建一个下采样目标。在Tensorflow中采用张量模式有可能吗?
现在,我为每个可能遇到的情况预处理缩减采样的目标,保存它们,然后加载它们。显然,如果将它集成到我的Tensorflow图中,这将更容易,以便我可以在运行时缩减样本。
但是我到处寻找,并且我找不到tf.reduce_mode
的证据,它的功能与tf.reduce_mean
相同。 有没有什么办法在Tensorflow图中构造这个功能?
答
我的想法是,我们得到唯一的数字和他们的计数。然后我们找到最常出现的数字。最后,我们通过在数量计数张量中使用它们的索引来获取这些数字(可能不止一个)。
samples = tf.constant([10, 32, 10, 5, 7, 9, 9, 9])
unique, _, count = tf.unique_with_counts(samples)
max_occurrences = tf.reduce_max(count)
max_cond = tf.equal(count, max_occurrences)
max_numbers = tf.squeeze(tf.gather(unique, tf.where(max_cond)))
with tf.Session() as sess:
print 'Most frequent Numbers\n', sess.run(max_numbers)
> Most frequent Numbers
9