Semi-supervised learning (SSL) aims to leverage massive unlabeled data when labels are expensive to obtain. Unfortunately, in many real-world applications, the collected unlabeled data will inevitably contain unseen-class outliers not belonging to any of the labeled classes. To deal with the challenging open-set SSL task, the mainstream methods tend to first detect outliers and then filter them out. However, we observe a surprising fact that such approach could result in more severe performance degradation when labels are extremely scarce, as the unreliable outlier detector may wrongly exclude a considerable portion of valuable inliers. To tackle with this issue, we introduce a novel open-set SSL framework, IOMatch, which can jointly utilize inliers and outliers, even when it is difficult to distinguish exactly between them. Specifically, we propose to employ a multi-binary classifier in combination with the standard closed-set classifier for producing unified open-set classification targets, which regard all outliers as a single new class. By adopting these targets as open-set pseudo-labels, we optimize an open-set classifier with all unlabeled samples including both inliers and outliers. Extensive experiments have shown that IOMatch significantly outperforms the baseline methods across different benchmark datasets and different settings despite its remarkable simplicity. Our code and models are available at https://github.com/nukezil/IOMatch.
翻译:半监督学习(SSL)旨在利用海量未标注数据,在标注成本高昂的场景下提升模型性能。然而,实际应用中收集的未标注数据不可避免地会包含不属于任何已知类别的外部点(unseen-class outliers)。针对这一具有挑战性的开集SSL任务,主流方法通常先检测外部点,再将其剔除。但令人惊讶的是,我们发现当标注样本极度稀缺时,这种方法反而会导致更严重的性能下降——不可靠的外部点检测器可能错误排除大量宝贵的内部点(inliers)。为解决此问题,我们提出一种新型开集SSL框架IOMatch,该框架能够在难以精确区分内部点与外部点的情况下联合利用二者。具体而言,我们提出将多二元分类器与标准闭集分类器相结合,生成统一的开集分类目标——将所有外部点视为单一新类别。通过将这些目标作为开集伪标签,我们利用包含内部点和外部点的所有未标注样本优化开集分类器。大量实验表明,尽管IOMatch设计极为简洁,但在不同基准数据集和设置下均显著优于基线方法。我们的代码和模型已开源至https://github.com/nukezil/IOMatch。