我有一个分类问题,大致描述如下:在工作中,我们使用问题跟踪软件进行大部分内部沟通。例如,当你需要另一个团队的帮助时,你可以在这个软件中提交一个问题。每个问题可以分配一个或多个标签。
例如,可能会为新员工的笔记本电脑设置第一次提出问题,标题为“约翰·史密斯的笔记本电脑设置”,并标记为“笔记本电脑问题”和“新员工入职”。因此,对于给定的问题,可能有多个标签。
我正在尝试构建一个分类器,它可以接受一个问题的标题,并提供一个建议标签列表。我的主管要求我使用朴素贝叶斯算法来完成这项任务,所以这就是我正在尝试的。我正在使用scikit-learn。
首先,按照scikit-learn文档(http://scikit-learn.org/stable/modules/multiclass.html)中的描述,将其描述为“多标签”分类任务是否准确?这就是我认为的,但我不太理解“多输出-多类别分类”的描述,因此我无法排除它。再次强调,我要为每个样本预测一个或多个类别。
其次,看起来Naive-Bayes(至少在scikit-learn中)并不支持多标签。由于我现在被迫使用Naive-Bayes,所以我想我可以使用以下方法来创建自己的多标签分类器。这种方法是否合理?
例如,可能会为新员工的笔记本电脑设置第一次提出问题,标题为“约翰·史密斯的笔记本电脑设置”,并标记为“笔记本电脑问题”和“新员工入职”。因此,对于给定的问题,可能有多个标签。
我正在尝试构建一个分类器,它可以接受一个问题的标题,并提供一个建议标签列表。我的主管要求我使用朴素贝叶斯算法来完成这项任务,所以这就是我正在尝试的。我正在使用scikit-learn。
首先,按照scikit-learn文档(http://scikit-learn.org/stable/modules/multiclass.html)中的描述,将其描述为“多标签”分类任务是否准确?这就是我认为的,但我不太理解“多输出-多类别分类”的描述,因此我无法排除它。再次强调,我要为每个样本预测一个或多个类别。
其次,看起来Naive-Bayes(至少在scikit-learn中)并不支持多标签。由于我现在被迫使用Naive-Bayes,所以我想我可以使用以下方法来创建自己的多标签分类器。这种方法是否合理?
- 为每个类训练一个Naive-Bayes二进制分类器(将训练数据转换为每个样本,如果该样本在其各种类别中具有该类,则标签仅为1,否则为0)。
- 然后,当我需要对样本进行预测时,我将使用每个二进制分类器进行预测,并且我的整体预测将是其二进制分类器预测出的标签。