
摘要
随着机器学习模型复杂性的不断增加,收集大规模手工标注的训练集已成为实际应用中的最大障碍之一。相反,通常会使用提供噪声更大但成本更低的弱监督形式。然而,这些弱监督源具有多样且未知的准确性,可能输出相关标签,并且可能针对不同的任务或在不同的粒度级别上进行标注。我们提出了一种框架,通过将这些弱监督源视为对问题的不同相关子任务进行标注来整合和建模这些弱监督源,这被称为多任务弱监督设置(multi-task weak supervision setting)。我们表明,通过解决一个类似于矩阵补全的问题,可以在没有任何标注数据的情况下恢复这些多任务源的准确性,从而为最终模型的训练提供更高品质的监督。理论上,我们证明了使用这种方法训练的模型的泛化误差随着未标注数据点的数量增加而改善,并且描述了其相对于任务和依赖结构的变化规律。在三个细粒度分类问题上,我们的方法相比传统的监督方法平均提高了20.2个百分点的准确率,相比多数投票基线方法提高了6.8个百分点,相比之前提出的单独建模任务的弱监督方法提高了4.1个百分点。
代码仓库
HazyResearch/metal
官方
pytorch
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| natural-language-inference-on-multinli | Snorkel MeTaL (ensemble) | Matched: 87.6 Mismatched: 87.2 |
| paraphrase-identification-on-quora-question | Snorkel MeTaL(ensemble) | Accuracy: 89.9 F1: 73.1 |
| semantic-textual-similarity-on-senteval | Snorkel MeTaL(ensemble) | MRPC: 91.5/88.5 SICK-E: - SICK-R: - STS: 90.1/89.7* |
| sentiment-analysis-on-sst-2-binary | Snorkel MeTaL(ensemble) | Accuracy: 96.2 |