tf.where & tf.gather的配合使用索引提取tensor里的特定值

tf.where & tf.gather的配合使用,可以索引提取tensor里的特定值。
例子:提取target_class_ids大于0的。先通过tf.where得到大于0的索引值,再透过tf.gather用所以提取对应的tensor值。
注意:tf.gather针对1维tensor提取,如果是多维度,要用tf.gather_nd.

positive_roi_ix = tf.where(target_class_ids > 0)[:, 0]
positive_roi_class_ids = tf.cast(
    tf.gather(target_class_ids, positive_roi_ix), tf.int64)

你可能感兴趣的:(tensorflow,AI)