  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.
