ECOC 是 Error-Correcting Output Codes 的缩写。上一篇文章中提到 ECOC 可以用来将 Multiclass Learning 问题转化为 Binary Classification 问题,本文中我们将对这个方法进行介绍。
要了解 ECOC ,可以从 One-vs-Rest 的 Multiclass Learning 策略出发。回忆一下,对于一个 K 类的分类问题,One-vs-Rest 策略为每一个类 $i$ 都训练一个 binary classifier ,用于区分“类别 $i$” 和“非类别 $i$”两类。对于这个策略,可以用下面这样一个图来表示(假设我们有四个类):
这个表中,每一行代表一个类,而每一列代表一个 binary classifier ,其中表格内的元素表示该列所对应的 binary 问题中,该行所对应的类别的数据被当作正例还是负例。例如,第一列表示该 binary classifier 是通过把第一类当作正类 (+1) ,剩余的第二、三、四类当作负类 (-1) 而训练出来的。如此类推。
现在我们将这个表格称作 ECOC codebook ,而把表格的列数称作是 ECOC 的 code length $L$ ,并且不再要求 $L$ 和类别数 […]
Comments