纠错输出码 Error Correcting Output Codes

纠错输出编码法 ECOC 可将多类问题转换为多个两类问题,且纠错输出码本身具有纠错能力,可提升监督学习算法的预测精度。

对输出类别编码可将多类问题两类化,即每个类别对应一个长度为 n 的二进制位串,共形成 m 个码字,这些码字描述了一个二值函数。学习结束后可获得 N 个二分器,每个二分器对输入样本产生的结果形成输出向量,然后由决策规则判定输入样本的类别。

编码理论中,汉明距离被用于确定分组码的纠错能力,其也被用于确定输出码的纠错能力。

纠错输出码矩阵的行数与监督分类问题的类别数 m 一致,列数与码长 n 一致,可用的纠错输出码具备以下特征:

  • 具有一定的纠错能力;
  • 码矩阵中无全 0 列,无全 1 列;
  • 码矩阵中无相同列,无互补列。

目前常用的编码方法有以下几种:

  • 列举编码法
  • 随机爬山法
  • BCH 编码法
  • 连续编码法
  • 搜索编码法

参考来源

【1】纠错输出编码法 ECOC