小编Tin*_*Liu的帖子

如何验证 tf.unsorted_segments_max 的 segment_ids 参数?

在 TensorFlow 1.12 中,您可以使用tf.math.unsorted_segment_sum计算张量沿线段的最大值。

论据之一:

segment_ids张量。必须是以下类型之一:int32、int64。一个张量,其形状是 data.shape.END 的前缀 } out_arg { name: "output" description: << END 与 data 具有相同的形状,除了第一个 segment_ids.rank 维度被替换为具有大小 num_segments。

Q1:我不明白这是什么意思。我想segment_ids应该是[0,1,2,3,...],并且序列号以 0 开头。

然后我尝试通过测试不同的值来验证我的假设segment_ids

print(sess.run(tf.unsorted_segment_max(tf.constant([0.1, 0.2, 0.3, 0.3, 0.4]),
                                       tf.constant([2, 0, 1, 1, 0]), 3)))
#[0.4 0.3 0.1], correct
print(sess.run(tf.unsorted_segment_max(tf.constant([0.1, 0.2, 0.3, 0.3, 0.4]),
                                       tf.constant([3, 0, 1, 1, 0]), 3)))
#[ 4.0000001e-01  3.0000001e-01 -3.4028235e+38], number 2 worked, but 3 didnt
print(sess.run(tf.unsorted_segment_max(tf.constant([0.1, 0.2, 0.3, 0.3, 0.4]),
                                       tf.constant([3, 0, …
Run Code Online (Sandbox Code Playgroud)

python machine-learning deep-learning tensorflow

5
推荐指数
1
解决办法
528
查看次数