文本分类tas的训练样本数
Number of training samples for text classification tas
假设您有一组客户与人工代理之间的转录客户服务电话,其中每个电话的平均时长为 7 分钟。客户大多会因为产品问题而致电。假设一个人每次调用可以为每个轴分配一个标签:
- 轴 1:从客户的角度来看,问题是什么?
- 轴 2:从代理人的角度来看,问题是什么?
- 轴心 3:代理能否解决客户的问题?
基于您想要训练的文本分类器的手动标记文本,该分类器应预测三个轴中每个轴的每次调用的标签。但是录音的标签需要时间和金钱。另一方面你需要一定量的训练数据才能得到好的预测结果。
鉴于上述假设,您将从多少个手动标记的训练文本开始?你怎么知道你需要更多带标签的训练文本?
也许您以前做过类似的任务,可以提供一些建议。
更新(2018-01-19):我的问题没有正确或错误的答案。好吧,理想情况下,有人从事完全相同的任务,但这种可能性很小。我会将问题再保留一周,然后接受最佳答案。
这个问题很难回答,但我会根据我的经验尽力而为。
过去,我对3个数据集进行了文本分类;括号中的数字表示我的数据集有多大:餐厅评论(50K 句子),reddit 评论(250k 句子) 和 来自问题跟踪系统的开发人员评论(10k 句)。他们每个人都有多个标签。
在这三个案例中,包括有 10k 个句子的案例,我的 F1 分数都超过了 80%。我特别强调这个数据集,因为有人告诉我这个数据集的大小较小。
因此,在您的情况下,假设您有至少 1000 个平均 7 分钟通话的实例(包括客户与代理之间的对话),这应该是一个不错的开始。如果结果不令人满意,您有以下选择:
1) 使用不同的模型(MNB、随机森林、决策树等,除了您正在使用的任何模型)
2) 如果第 1 点给出或多或少相似的结果,请检查您拥有的所有 类 实例的比率(您在这里谈论的 3 轴)。如果他们的比例不佳,请获取更多数据,或者如果您无法获取更多数据,请尝试不同的 balancing techniques。
3) 另一种方法是在句子级别而不是消息或对话级别对它们进行分类,以便为句子而不是消息或对话本身生成更多数据和单独标签。
假设您有一组客户与人工代理之间的转录客户服务电话,其中每个电话的平均时长为 7 分钟。客户大多会因为产品问题而致电。假设一个人每次调用可以为每个轴分配一个标签:
- 轴 1:从客户的角度来看,问题是什么?
- 轴 2:从代理人的角度来看,问题是什么?
- 轴心 3:代理能否解决客户的问题?
基于您想要训练的文本分类器的手动标记文本,该分类器应预测三个轴中每个轴的每次调用的标签。但是录音的标签需要时间和金钱。另一方面你需要一定量的训练数据才能得到好的预测结果。
鉴于上述假设,您将从多少个手动标记的训练文本开始?你怎么知道你需要更多带标签的训练文本?
也许您以前做过类似的任务,可以提供一些建议。
更新(2018-01-19):我的问题没有正确或错误的答案。好吧,理想情况下,有人从事完全相同的任务,但这种可能性很小。我会将问题再保留一周,然后接受最佳答案。
这个问题很难回答,但我会根据我的经验尽力而为。
过去,我对3个数据集进行了文本分类;括号中的数字表示我的数据集有多大:餐厅评论(50K 句子),reddit 评论(250k 句子) 和 来自问题跟踪系统的开发人员评论(10k 句)。他们每个人都有多个标签。
在这三个案例中,包括有 10k 个句子的案例,我的 F1 分数都超过了 80%。我特别强调这个数据集,因为有人告诉我这个数据集的大小较小。
因此,在您的情况下,假设您有至少 1000 个平均 7 分钟通话的实例(包括客户与代理之间的对话),这应该是一个不错的开始。如果结果不令人满意,您有以下选择:
1) 使用不同的模型(MNB、随机森林、决策树等,除了您正在使用的任何模型)
2) 如果第 1 点给出或多或少相似的结果,请检查您拥有的所有 类 实例的比率(您在这里谈论的 3 轴)。如果他们的比例不佳,请获取更多数据,或者如果您无法获取更多数据,请尝试不同的 balancing techniques。
3) 另一种方法是在句子级别而不是消息或对话级别对它们进行分类,以便为句子而不是消息或对话本身生成更多数据和单独标签。