如何使用TensorFlow进行多标签分类以实现自动标记?

我刚开始学习TensorFlow,想知道是否有关于多标签分类的教程或示例,特别是涉及多个网络输出的情况。

我问这个问题是因为我有一组文章,每篇文章可以有多个标签。


回答:

TensorFlow默认支持通过tf.nn.sigmoid_cross_entropy_with_logits损失函数或类似函数(详见这个问题)进行二元多标签分类。如果你的标签是二元的,也就是说有一组预定义的可能标签,每个标签可以存在或不存在,你可以放心使用这种方法。一个模型可以一次性对所有标签进行分类。有很多这样的网络示例,例如这个问题中的一个。

遗憾的是,TensorFlow不支持多项式多标签分类。如果这是你的情况,你需要为每个标签构建一个单独的分类器,每个分类器使用tf.nn.softmax_cross_entropy_with_logits或类似的函数。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注