相信不少开发者已经或多或少对百度EasyDL有所耳闻或有所尝试,作为零算法基础实现图像分类和物体检测的”神器”,支持使用少量训练数据,使用通用算法训练,就能很快得到一个图像分类模型。最近百度EasyDL又增加了新的算法AutoDL Transfer (高精度算法)。AutoDL Transfer是百度研发的AutoDL技术之一,结合模型网络结构搜索、迁移学习技术、并针对用户数据进行自动优化的模型,与通用算法相比,训练时间稍长,但更适用于图像的细分类场景,例如,通用算法可适用于区分猫和狗,但如果要区分不同品种的猫,则AutoDL效果会更好。下面我们通过实例来看下这两种算法的应用场景。

不知道大家平时养不养狗,现在大街上狗的品种是真的多,很多都是看着眼熟,如果想准确的叫出名字还真不太容易。笔者利用手里的一些狗的数据来进行训练,看看高精度算法和通用算法的区别。

第一步,登录百度EasyDL,ai.baidu.com/easydl。里面有使用的步骤,还是挺清楚的;

第二步,创建模型、创建数据集。相信使用过EasyDL的朋友对如何创建已经了解了,本文就不详细介绍操作步骤了;

第三步,训练模型,笔者先只添加2个分类共400多张图像(单个分类数据量较丰富)作为训练数据,分别是萨摩耶和博美,在笔者看来这两种犬类从外观特征来看差异很小(忽略体型大小),经常会分不清。

算法上选择通用算法,训练方式默认,然后点击训练。因为数据量较少,不出1个小时,模型就训练好了,我们来看看效果。

Top1的准确率达到了98.49%,通用算法的表现非常不错。那使用AutoDL高精度算法会不会表现得更好呢。接下来我们使用AutoDL算法进行训练看看。

选择百度AutoDL Transfer算法,点击训练。原以为AutoDL会慢一些,结果还是不出一小时就很快完成了训练,我们来看一下效果是不是更好。

结果让笔者很意外,Top1准确率是87.94%,比通用算法的准确率要低一点了。

笔者决定再通过增加分类数量来检验一下两种算法的效果。这次的分类数量提高到了100多种,包含了上万张图像。我们分别用通用算法和百度AutoDL高精度算法进行了训练,因为数据量比较大,这次训练的时间稍微有些长。

采用通用算法的模型准确率是84.25%,而采用百度AutoDL高精度算法的模型准确率是86.88%,这次从准确率来看,高精度算法效果更好。

百度AutoDL算法是以迁移学习为基础的,而迁移学习是机器学习的明天,相比深度学习可以用少量的数据训练出适合的模型。

笔者从网上搜了一张全新的博美狗图像,然后分别用通用和高精度算法来检验模型效果,结果发现采用高精度算法两个训练版本(V2&V4)要比采用通用算法两个版本(V1&V3)准确度更高,这说明 AutoDL高精度算法的分类效果还是非常出色的。

在区分猫和狗这样差异较大的样本时,通用算法性价比更高。而在区分狗的品种这样有大量分类且样本差异更小的场景下,通用算法“举一反三”的能力就相对较弱了,这时候百度AutoDL高精度算法的效果更出色。

作者:郭晶

EasyDL的哪种算法更适合你的图像分类应用的更多相关文章

  1. RAID5和RAID10,哪种RAID更适合你(上)

    [IT168 专稿]存储是目前IT产业发展的一大热点,而RAID技术是构造高性能.海量存储的基础技术,也是构建网络存储的基础技术.专家认为,磁盘阵列的性能优势得益于磁盘运行的并行性,提高设备运行并行度 ...

  2. 阅读:RAID5和RAID10,哪种RAID更适合你

    阅读:RAID5和RAID10,哪种RAID更适合你-------------------------------------------2013/10/06 存储是目前IT产业发展的一大热点,而RA ...

  3. 转载:RAID5和RAID10,哪种RAID更适合你

    转自 http://storage.it168.com/h/2007-06-28/200706281204046_3.shtml 存储是目前IT产业发展的一大热点,而RAID技术是构造高性能.海量存储 ...

  4. web前端开发培训和自学 哪种选择更适合你

    web前端相对于其他软件开发是比较容易入门的,但是如果深入学习就比较困难了,这门技能需要从业人员掌握一定的设计.代码.交互技能和一些SEO技能,容易入门还涉及这么多知识和技能,那学习web前端开发到底 ...

  5. Ember.js和Vue.js,哪种框架更适合你?

    JavaScript最初是为Web应用程序而创建的.随着前端技术的发展,比起纯JavaScript 脚本,大多数开发人员更喜欢使用基于JavaScript的框架来开发Web应用,如Vue.React等 ...

  6. 哪种方式更适合在React中获取数据?

    作者:Dmitri Pavlutin 译者:小维FE 原文:dmitripavlutin.com 国外文章,笔者采用意译的方式,以保证文章的可读性. 当执行像数据获取这样的I/O操作时,你必须发起获取 ...

  7. B树、B-树、B+树、B*树介绍,和B+树更适合做文件索引的原因

    今天看数据库,书中提到:由于索引是采用 B 树结构存储的,所以对应的索引项并不会被删除,经过一段时间的增删改操作后,数据库中就会出现大量的存储碎片, 这和磁盘碎片.内存碎片产生原理是类似的,这些存储碎 ...

  8. B+树比B树更适合实际应用中操作系统的文件索引和数据库索引

    B+树比B树更适合实际应用中操作系统的文件索引和数据库索引 为什么选择B+树作为数据库索引结构?   背景 首先,来谈谈B树.为什么要使用B树?我们需要明白以下两个事实: [事实1]不同容量的存储器, ...

  9. nignx 负载均衡的几种算法介绍

    负载均衡,集群必须要掌握,下面介绍的负载均衡的几种算法.   1 .轮询,即所有的请求被一次分发的服务器上,每台服务器处理请求都相同,适合于计算机硬件相同.   2.加权轮询,高的服务器分发更多的请求 ...

随机推荐

  1. lvcreate命令

    lvcreate Command Examples on Linux : 1. The following command creates a logical volume 15 gigabytes ...

  2. .Net Random产生随机数

    之前用winform做过有个摇奖游戏,其中中奖条件为产生的两个随机数一致则中奖,测试发现每次都会中奖. 忘记方式是怎么解决的了,今天看到了传智论坛的一片文章也是关于Random的,就点进去看了,它里面 ...

  3. SpringMVC与uploadify结合进行上传

    uploadify是一个第三方js插件,支持多文件上传,拥有较为强大的上传功能 1.uploadify实现 下载其flash版本 http://www.uploadify.com/  解压后将其内容区 ...

  4. C++与QML混合编程实现2048

    http://blog.csdn.net/ieearth/article/details/42705305

  5. Qt VS版本添加调试器

    Qt的VS版本默认是不带调试器的,可以去百度一个WinDbg,如下图所示. 将其中的cdb.exe添加到Qt Creator构建和运行的Debuggers标签页即可,如下图所示. http://blo ...

  6. DirectUI的消息流转

    Windows是一个基于消息循环的系统,DirectUI同样遵循这样的消息流转.当界面呈现.用户点击.定时器等各种各样的消息一旦进入windows消息循环队列,系统自动调用该窗口的WndProc过程. ...

  7. Kafka Topic的详细信息 捎带主要的安装步骤

    1. 安装步骤 Kafka伪分布式安装的思路跟Zookeeper的伪分布式安装思路完全一样,不过比Zookeeper稍微简单些(不需要创建myid文件), 主要是针对每个Kafka服务器配置一个单独的 ...

  8. hadoop之hive基本操作

    -- 清空表中的数据,保留表结构 truncate table tmp_userid; '); -- 搜索库或表支持正则表达式 show tables 'sa*'; show tables in ba ...

  9. ZooKeeper —— 单机环境和集群环境搭建

    一.单机环境搭建 1.1 下载 下载对应版本Zookeeper,这里我下载的版本3.4.14.官方下载地址:https://archive.apache.org/dist/zookeeper/ # w ...

  10. java编程思想之面向对象

    面向对象和面向过程 面向对象(Object Oriented),简称OO,是软件开发方法的一种,我们都知道java是基于面向对象开发的,但是说到面向对象,我们不得不提一提面向过程开发,面向过程,又称结 ...