使用后如何获得多标签输出tf.nn.乙状结肠()

2024-10-02 02:26:54 发布

您现在位置:Python中文网/ 问答频道 /正文

目的:

我想在预测时直接在tensorflow服务中得到标签名,我的问题是如何将pred = tf.nn.sigmoid(last_layer_output)转换成真实的标签名?在

问题描述:

我知道如何处理多类问题:

^{1}$

所以classes_name就是我想要的,我可以在tensorflow服务中使用它的设计签名,当我预测时,我可以得到最终的标签。在

但在多标签问题中如何做到这一点呢?在

例如

^{pr2}$

如何将pred传输到labels name?我不能在sees.run()之后或者使用其他api,比如numpy,因为这是为tensorflow服务的,我想我需要使用tf方法来完成。在

如有任何建议,不胜感激!在


Tags: name目的layeroutputlabelstftensorflownn
1条回答
网友
1楼 · 发布于 2024-10-02 02:26:54

您应该首先定义许多类的给定概率,您希望返回哪些类。例如,如果这个类的概率大于0.5。在

然后,您可以使用带有适当条件的tf.where来获取索引,然后使用相同的tf.gather来获取类。在

像这样:

indicies = tf.where(tf.greater(pred, 0.5))
classes = tf.gather(CLASSES, indicies[:, 1])

然后需要使用indicies[:, 0]重新组织它,它告诉您该类来自哪个示例。在

另外,你必须明白答案的正确形式是SparseTensor,serving和etc不太支持它,所以你可能需要返回两个张量[字符串和指示符哪个字符串是哪个示例]并在客户端处理。在

相关问题 更多 >

    热门问题