如何从张量流中的张量中删除特定值的向量?

问题描述

我要执行以下操作。 给定张量,

m = ([[1,1,1],[2,2,2],[3,3,3]])

如何实现从m中删除值[2,2,2]的向量?

解决方法

您可以这样做:

import tensorflow as tf

def remove_row(m,q):
    # Assumes m is 2D
    mask = tf.math.reduce_any(tf.not_equal(m,q),axis=-1)
    return tf.boolean_mask(m,mask)

# Test
m = tf.constant([[1,1,1],[2,2,2],[3,3,3]])
q = tf.constant([2,2])
tf.print(remove_row(m,q))
# [[1 1 1]
#  [3 3 3]]

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...