- API 文档
- CLI
- 集成指南
- 博客
模型验证为何如此重要
Communications Mining 是一个对话式数据智能平台,使用户能够发现、衡量和自动化隐藏在其通信渠道中的流程。
典型渠道包括电子邮件、工单、聊天和通话。 这些领域中的对话既复杂又细致。 因此,通用的机器学习模型表现不佳。 相反,Communications Mining 允许任何人轻松创建自定义模型。 无需技术知识。
这是一种非常强大的方法。 模型可以学习复杂的模式,并像人类一样对未见过的数据进行预测。 在某些自然语言任务上,机器学习模型的表现甚至超过了人类。
但和人类一样,机器学习模型也会犯错误。 估计模型出错的频率对于机器学习的任何实际应用都至关重要。 同样重要的是直观地呈现此内容,并突出显示改进模型的最佳操作。 Communications Mining 使用模型验证来完成所有这些任务。
在模型构建期间,用户可以为其关心的主题创建标签,并使用适用的标签标记示例。 然后,平台会训练机器学习模型,以预测这些示例的正确标签。
为了验证此模型,我们将其预测与人工注释进行比较,并查找错误。 手动比较许多示例的预测很困难。 相反,我们会计算一个验证分数,以总结模型的运行情况。 要对经过训练的模型执行此操作,我们需要两个东西:注释和分数。
注释
要检查预测是否正确,我们需要知道每个示例的正确注释。 换句话说,我们需要由用户注释的数据点。
我们已经使用注释来训练模型,并且可以在验证期间重用这些注释。 但是,就像人类参加测试一样,机器学习模型在处理以前“见过”的示例上会表现更好。
如果我们使用训练模型的数据对模型进行评分,则可能会高估模型质量。 这会让人对模型的工作效果产生误导(称为“过拟合”)。 因此,我们使用不同的数据点来训练和验证模型。
标准方法是将注释集随机分为两个不相等的部分
-
训练集。 用于训练模型的示例集。 这通常所占比例较大,例如注释数据总量的 80%
-
测试集。 剩余的示例 (20%) 用于衡量模型性能。
在机器学习文献中,您可能已经看到数据分为三个部分:训练、验证和测试。 验证集用于调整模型,并使用最终模型评估测试集一次,以衡量性能。 在 Communications Mining,我们对训练集使用k 折交叉验证来调整模型,并使用最终模型在测试集上计算“验证”分数。 这使其等同于 ML 文献中的测试性能。
由于测试集与训练集来源相同,因此测试集与训练集相似。 当我们检查测试集的性能时,我们模拟模型看到新电子邮件,但我们可以与真实的标签进行比较,以了解模型的质量。
分数
要将模型性能汇总为数字,我们需要一个评分函数。 此函数会比较模型预测和人工注释,并输出一个数字。
选择评分函数可能是一个困难的过程。 该函数必须符合我们对良好模型的概念,我们需要考虑可能导致分数不准确的常见陷阱。
在 Communications Mining,我们将平均精度用于评分函数。 这是跨多个标签和用例衡量模型性能的可靠方法。 如果您有兴趣了解更多信息,请阅读我们有关指标的博客文章。
有了这两个组件,验证就变得很简单。 我们需要做的就是获取测试集的模型预测,然后使用我们的分数来衡量模型的性能。 每次在 Communications Mining 中训练新模型时,验证流程都会在后台自动运行,并在“验证”页面上报告结果。
实际上,每次训练新模型时,我们都会在后台训练两个模型
-
验证模型。 我们会在训练集上对其进行训练,并在测试集上对其进行测试,以衡量性能。
-
生产模型。 系统会在所有带注释的示例(训练集和测试集)上对其进行训练,并用于对实时数据进行预测。 此模型可能与验证模型不同,因为它接受了更多数据的训练,但这两个模型共享许多训练示例,因此任何差异都会很小。 因此,验证模型性能可以很好地估计生产模型性能。
已知 未知
验证会告诉您模型的性能如何,但它也会突出显示模型可能遇到困难的情况。 出现这种情况的原因有很多,具体如下:从实时数据不断变化的趋势到用户和团队之间注释的不一致。 模型验证应可解释,这一点很重要,这样您就可以在问题出现时发现问题并快速修复。
验证使您可以检查模型不确定的数据点。 然后,您可以改进这方面的模型,或者在任何下游流程中增强稳健性。 这意味着您可以确信模型将完全按照您的要求进行操作,不会出现令人不快的意外情况。
无需 经验
训练模型时会存在许多通常难以诊断的危险。 幸运的是,我们的验证流程意味着您不必成为数据科学家即可构建出色的模型。
验证模型时,我们不会仅返回单个分数。 相反,我们会计算模型评分。 这包括模型验证分数以及其他因素,例如未审核数据中的模式和带注释的示例中的偏差。
模型评分提供有关绩效的详细反馈,以及有关如何改进的明确说明。 用户可以专注于利用其领域知识来解决问题,而无需与开发团队或 AI 专家协作。 Communications Mining 将指导您完成模型开发的每个步骤。
更快的反馈,更好的 模型
大多数机器学习模型都不会经常更新,并在部署前进行一次验证。 在 Communications Mining,我们采用不同的方法。
我们不会在更新之间等待很长时间,而是会持续训练和验证新模型。 这意味着模型始终适用于数据的当前状态,并且验证结果是最新的。
快速反馈可最大限度地减少模型迭代时间。 任何性能下降都可以尽快修复,用户永远不会浪费时间处理过时的反馈。 Communications Mining 的敏捷验证流程使用户能够在更短的时间内构建高质量的模型。