如果A是这样的TensorFlow变量
A = tf.Variable([[1, 2], [3, 4]])
Run Code Online (Sandbox Code Playgroud)
并且index是另一个变量
index = tf.Variable([0, 1])
Run Code Online (Sandbox Code Playgroud)
我想使用此索引来选择每行中的列.在这种情况下,第一行的第0项和第二行的第1项.
如果A是Numpy数组,那么为了得到索引中提到的相应行的列,我们可以做到
x = A[np.arange(A.shape[0]), index]
Run Code Online (Sandbox Code Playgroud)
结果就是
[1, 4]
Run Code Online (Sandbox Code Playgroud)
什么是TensorFlow等效操作/操作?我知道TensorFlow不支持很多索引操作.如果无法直接完成,将会有什么工作?
我想对n个类执行多标签图像分类任务。我已经为每个图像提供了稀疏的标签向量,并且每个标签向量的每个维度目前都以这种方式进行编码:
1.0->标签为真/图片属于此类
-1.0->标签为false /此类不包含图像。
0.0->缺失值/标签
例如:V = {1.0,-1.0,1.0,0.0}
对于此示例V,模型应了解,应将相应图像分类为第一类和第三类。
我的问题是当前如何处理缺少的值/标签。我已经搜索了所有问题并找到了这个问题:在这里找到了 tensorflow / skflow#113
因此可以使用以下方法进行多重图像分类:tf.nn.sigmoid_cross_entropy_with_logits(logits,target,name = None)
但是TensorFlow具有针对稀疏softmax的此错误函数,该函数用于专有分类:tf.nn.sparse_softmax_cross_entropy_with_logits(登录,标签,名称=无)
那么,是否存在稀疏的S型交叉熵呢?(找不到任何内容)或任何建议,如何处理稀疏标签的多标签分类问题。