纠错输出编码法(Error-Correcting Output Codes,ECOC)不仅能够将多类分类问题转化为多个两类问题,而且利用纠错输出码本身具有纠错能力的特性,可以提高监督学习算法的预测精度。

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

纠错输出编码法:将机器学习问题看做数据通信问题,并采用纠错输出码对各类别进行编码,因此在分类过程中能够纠正某些二分器的错误输出,从而提高分类器的预测精度。

在编码理论中,利用汉明距离可以确定分组码的纠错能力,我们也采用汉明距离确定输出码的纠错能力。

纠错输出码矩阵的行数等于监督分类问题的类别数m,列数等于码长n,一个有用的纠错输出码应该具有以下特性:

1.具有一定的纠错能力。

2.码矩阵中无全0列,无全1列。

3.码矩阵中无相同列,无互补列。

常用的编码方法:列举编码法、随机爬山法、BCH编码法、连续编码法、搜索编码法。

纠错输出编码法ECOC的更多相关文章

  1. 6. Ensemble learning & AdaBoost

    1. ensemble learning 集成学习 集成学习是通过构建并结合多个学习器来完成学习任务,如下图: 集成学习通过将多个学习学习器进行结合,常可以获得比单一学习器更优秀的泛化性能 从理论上来 ...

  2. AI人工智能专业词汇集

    作为最早关注人工智能技术的媒体,机器之心在编译国外技术博客.论文.专家观点等内容上已经积累了超过两年多的经验.期间,从无到有,机器之心的编译团队一直在积累专业词汇.虽然有很多的文章因为专业性我们没能尽 ...

  3. 机器学习---逻辑回归(二)(Machine Learning Logistic Regression II)

    在<机器学习---逻辑回归(一)(Machine Learning Logistic Regression I)>一文中,我们讨论了如何用逻辑回归解决二分类问题以及逻辑回归算法的本质.现在 ...

  4. 多分类问题multicalss classification

    多分类问题:有N个类别C1,C2,...,Cn,多分类学习的基本思路是"拆解法",即将多分类任务拆分为若干个而分类任务求解,最经典的拆分策略是:"一对一",&q ...

  5. nodejs api 中文文档

    文档首页 英文版文档 本作品采用知识共享署名-非商业性使用 3.0 未本地化版本许可协议进行许可. Node.js v0.10.18 手册 & 文档 索引 | 在单一页面中浏览 | JSON格 ...

  6. scikit-learning API

    API参考 这是scikit学习的类和函数参考.有关详细信息,请参阅完整的用户指南,因为类和功能原始规格可能不足以给出其使用的完整指导. sklearn.base:基类和效用函数 所有估计器的基类. ...

  7. Weka算法算法翻译(部分)

    目录 Weka算法翻译(部分) 1. 属性选择算法(select attributes) 1.1 属性评估方法 1.2 搜索方法 2. 分类算法 2.1 贝叶斯算法 2.2 Functions 2.3 ...

  8. 三代PacBio reads纠错 - 专题

    三代纠错的重要性不言而喻,三代的核心优势就是长,唯一的缺点就是错误率高,但好就好在错误是随机分布的,可以通过算法解决,这也就是为什么现在有这么多针对三代开发的纠错工具. 纠错和组装是分不开的,纠错就是 ...

  9. RedisRepository分享和纠错

    .mytitle { background: #2B6695; color: white; font-family: "微软雅黑", "宋体", "黑 ...

随机推荐

  1. android 线程池

    http://blog.csdn.net/wangwenhui11/article/details/6760474 http://blog.csdn.net/cutesource/article/de ...

  2. call_compile.sql

    set echo off prompt prompt ========================================================================= ...

  3. FusionCharts导出图表常见问题(FAQ)汇总---FusionCharts常见问题大全

    在前面几篇文章中,我们介绍了FusionCharts生成Flash图表常见问题FAQ以及使用中的一些常见报错及调试/解决方法.本文继续介绍FusionCharts导出图表时的一些常见问题(FAQ). ...

  4. UITableviewCell 重用内存

    转载自:http://www.cnblogs.com/tangbinblog/p/3371545.html 重用实现分析 查看UITableView头文件,会找到NSMutableArray*  vi ...

  5. DWR Annotations

    DWR   Annotations DWR 标注是用来代替 dwr.xml 或者与其一同工作的. 1.初始配置 <servlet> <description>DWR contr ...

  6. 方便android开发网站:

    可以通过输入包名或者Google Play地址消灾google市场的应用 http://apps.evozi.com/apk-downloader/ 16进制转常用的10进制 http://www.b ...

  7. js 编码问题

    //字符转换为UTF-8编码 function encutf8(s1) { var stringArray = new Array(); for(var j=0; j<s1.length;j++ ...

  8. Nginx 虚拟主机下支持Pathinfo并隐藏入口文件的完整配置

    server { listen 80; server_name zuqiu.com; # 设置你的域名 index index.html index.htm index.php; root D:/wn ...

  9. python----mysql链接汉字编码的问题

    解决python连接mysql,UTF-8乱码问题 1.  Python文件设置编码 utf-8 (文件前面加上 #encoding=UTF-8)     2. MySQL数据库charset=utf ...

  10. STM32实现HID和u盘复合设备

      USB设备可以定义一个复合设备,复合设备分两种,一种是一个设备多个配置,还有一种是一个配置多个接口,在本例中采用一个配置多个接口的方式 首先修改设备描述符,标准设备描述符和报告描述符都不需要修改, ...