相信不少开发者已经或多或少对百度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. Redis实现关注关系

    最近使用关系型数据库实现了用户之间的关注,于是思考换一种思路,使用Redis实现用户之间的关注关系. 综合考虑了一下Redis的几种数据结构后,觉得可以用集合实现一下. 假设"我" ...

  2. 微信小程序实战之百思不得姐精简版

    原文:微信小程序实战之百思不得姐精简版 微信小程序基本组件和API已撸完,总归要回到正题的,花了大半天时间做了个精简版的百思不得姐,包括段子,图片,音频,视频,四个模块.这篇就带着大家简述下这个小的A ...

  3. 没有安装提供程序“System.Data.SqlServerCe.3.5”的解决方法

    在Windows 8.1系统下运行带数据库功能的应用,报错并提示:“System.InvalidOperationException”类型的未经处理的异常在 System.Data.Linq.dll ...

  4. Windows Vista 的历史地位

    Windows Vista,这是一个不那么如雷贯耳的Windows名字,很多人甚至从来没有体验过这个操作系统.但是,Windows Vista刚刚推出时候所引起的话题性,恐怕是其后的Win7也难以与之 ...

  5. 网络软件,BA File,Disk,Photo,BackupTools等等(Mac版)

    Auto FTP Manager 6.01Crossworld CrossFTP Enterprise v1.97.7 http://www.airexplorer.net/en/index.phpC ...

  6. Windows系统版本判定那些事儿(有图,各种情况,很清楚)

    前言 本文并不是讨论Windows操作系统的版本来历和特点,也不是讨论为什么没有Win9,而是从程序员角度讨论下Windows获取系统版本的方法和遇到的一些问题.在Win8和Win10出来之后,在获取 ...

  7. 分享Nginx在Windows下的管理命令(bat文件)

    话不多说,复制下面的内容,存成bat文件,放到nginx目录下. ====================================================@echo offrem 当前 ...

  8. springboot读取本地项目文件

    在读取springBoot+gradle构建的项目时,如果使用传统的FileInputStream读取文件流或者ResourceUtils工具类的方式 File file= ResourceUtils ...

  9. 记录 nginx和php安装完后的URL重写,访问空白和隐藏index.php文件的操作方法

    sudo cd /etc/nginx/; sudo vi fastcgi_params; 1.URL重写 如果你的url参数不是用?xxx传递,而是自定义的,比如用/xx/xx/xx的方式传递,那么在 ...

  10. MyBatis从入门到精通(四):MyBatis XML方式的基本用法之增删改

    最近在读刘增辉老师所著的<MyBatis从入门到精通>一书,很有收获,于是将自己学习的过程以博客形式输出,如有错误,欢迎指正,如帮助到你,不胜荣幸! 1. insert用法 1.1 简单的 ...