热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

50预训练权重_支持NLP和CV高精度模型定制训练,百度EasyDL带着万元红包来了!...

(给机器学习算法与Python学习加星标,提升AI技能)在学习与定制AI模型的过程中,开发者会面对各种各样的概念,在深度学习领域ÿ
(给机器学习算法与Python学习加星标,提升AI技能)

在学习与定制AI模型的过程中,开发者会面对各种各样的概念,在深度学习领域,有一个名词正在被越来越频繁地得到关注:迁移学习。它相比效果表现好的监督学习来说,可以减去大量的枯燥标注过程,简单来说就是在大数据集训练的预训练模型上进行小数据集的迁移,以获得对新数据较好的识别效果,因其能够大量节约新模型开发的成本,在实际应用中被更广泛地关注。EasyDL平台引入了百度超大规模视觉预训练模型,结合迁移学习工具,帮助开发者使用少量数据,快速定制高精度AI模型。

在训练一个深度学习模型时,通常需要大量的数据,但数据的采集、标注等数据准备过程会耗费大量的人力、金钱和时间成本。为解决此问题,我们可以使用预训练模型。以预训练模型A作为起点,在此基础上进行重新调优,利用预训练模型及它学习的知识来提高其执行另一项任务B的能力,简单来说就是在大数据集训练的预训练模型上进行小数据集的迁移,以获得对新数据较好的识别效果,这就是迁移学习(Transfer Learning)。迁移学习作为一种机器学习方法,广泛应用于各类深度学习任务中。在具体实现迁移学习时,有多种深度网络迁移方法,其中的Fine-tune(微调)是最简单的一种深度网络迁移方法,它主要是将已训练好的模型参数迁移到新的模型来帮助新模型训练。

在实际应用中,针对一个任务,我们通常不会从头开始训练一个模型,因为这非常耗时耗力,不仅需要大量的计算资源、丰富的经验去保证模型的效果,还需要ImageNet量级(千万级)的数据集保证模型的泛化性,需要支付高昂的成本。因此,一般我们会选择在公开的大数据集上训练收敛、且效果较好的模型,作为预训练权重,在此基础上使用业务数据对模型进行Fin-tune。在Fine-tune时,默认源域(预训练模型)、目标域数据集(用户业务数据集)需要具有较强相关性,即数据同分布,这样我们能利用预训练模型的大量知识储备,快速高效地训练出针对特定业务场景并具有优秀效果的模型。

但在应用预训练模型到实际场景时,很多用户会面临数据集与源数据集分布不同的问题。比如,预训练模型的数据都是自然风景,但用户的数据集都是动漫人物。类似这种源数据集和目标数据差别较大的问题,在具体应用中较易导致负向迁移,具体表现为训练收敛慢,模型效果差等。

因此,一个包含各类场景、覆盖用户各类需求的超大规模数据集就十分重要,通过这个包罗万象的超大规模数据集训练所得的模型,才能够更好地适应来自各行各业用户的需求,更好地Fine-tune用户的业务数据集,帮助用户在自己的数据集上得到效果更好的模型。

百度超大规模预训练模型便在此背景下产生,覆盖自然语言处理和视觉两大方向。在自然语言处理方向,百度自研了业界效果最好的预训练模型文心ERNIE,开创性地将大数据预训练与多源丰富知识相结合,持续学习海量数据中的知识,将机器语义理解水平提升到一个新的高度。文心ERNIE在中英文的16个任务上已经超越了业界最好模型,全面适用于各类NLP应用场景。目前,EasyDL已预置了领先的预训练模型文心ERNIE2.0,并配套了多种NLP经典算法网络,支持了文本分类、短文本匹配和序列标注等典型文本处理任务。

视觉方向,百度自研超大规模视觉预训练模型覆盖图像分类与物体检测两个方向。图像分类的预训练模型,用海量互联网数据,包括10万+的物体类别,6500万的超大规模图像数量,进行大规模训练所得,适应于各类图像分类场景;物体检测的预训练模型,用800+的类别,170万张图片以及1000万+物体框的数据集,进行大规模训练所得,适应于各类物体检测应用场景。相对于普通使用公开数据集训练的预训练模型,在各类数据集上都有不同程度效果提升,模型效果和泛化性都有显著提升。(以下实验数据集均来自不同行业)

图像分类

在图像分类模型中,使用百度超大规模预训练模型的Resnet50_vd相比普通模型在各类数据集上平均提升12.76%,使用百度超大规模预训练模型的Resnet101_vd,相比于普通预训练模型,平均提升13.03%,使用百度超大规模预训练模型的MobilenetV3_large_1x,相比于普通预训练模型,平均提升8.04%。

58b426d88a5b34c3807017b48bb001f8.png

923ad0bb0e3e54980f288c88ce40c36b.png

9324eec1e85b629960a7b1d3bacaf73b.png

并且,在图像分类方向,还新增了11个模型,包括:EffcientNetB0_small,EfficientNetB4,MobileNetV3_large_x1_0,ResNet18_vd, ResNeXt101_32x16d_wsl, Res2Net101_vd_26w_4s, SE_ResNet18_vd, Xception71,还有基于百度超大规模预训练模型训练出来的ResNet50_vd,ResNet101_vd和MobileNetV3_large_x1_0,其中比较特殊的几个模型,EffcientNetB0_small是去掉SE模块的EffcientNetB0,在保证精度变化不大的同时,大幅提升训练和推理速度,ResNeXt101_32x16d_wsl 是基于超大量图片的弱监督预训练模型,准确率高,但预测时间相对增加,Res2Net101_vd_26w_4s则是在单个残差块内进一步构造了分层的残差类连接,比ResNet101准确度更高;

新增的分类模型的推理时间、效果,以及支持的部署方式如下表所示:

8ceae753fcdece8a1953fa013e332001.png

注:以上模型均基于ImageNet1k分类数据集训练和测试

更多预置模型,参见EasyDL官网:

https://ai.baidu.com/ai-doc/EASYDL/0k38n3p16

更多模型效果,参见PaddleCls:https://paddleclas.readthedocs.io/zh_CN/latest/models/models_intro.html

并且,为了进一步提升图像分类模型的模型效果,在训练层面,图像分类新增了mix_up和label_smoothing功能,可以在单标签分类任务中,根据模型的训练情况选择开启或者关闭。mix_up是一种数据增强方式,它从训练样本中随机抽取了两个样本进行简单的随机加权求和,并保存这个权重,同时样本的标签也对应地用相同的权重加权求和,然后预测结果与加权求和之后的标签求损失,通过混合不同样本的特征,能够减少模型对错误标签的记忆力,增强模型的泛化能力。Label_smoothing是一种正则化的方法,增加了类间的距离,减少了类内的距离,避免模型对预测结果过于confident而导致对真实情况的预测偏移,一定程度上缓解由于label不够soft导致过拟合的问题。

物体检测

在物体检测模型中,使用百度超大规模预训练模型的YOLOv3_DarkNet相比普通模型在各类数据集上平均提升4.53 %,使用百度超大规模预训练模型的Faster_RCNN,相比于普通预训练模型,平均提升1.39%。

9bd5750741fc088aa5ae7f4944b1dae6.png

e4ce1ee2becf99d04f97c79c047dd3a3.png

并且,在物体检测方向,新增了Cascade_Rcnn_ResNet50_FPN、YOLOv3_ResNet50vd_DCN、YOLOv3_MobileNetv1网络,以及基于百度超大规模预训练模型训练出来的YOLOv3_Darknet、Faster_R-CNN_ResNet50_FPN,其中,Cascade_Rcnn_ResNet50_FPN通过级联多个检测器以及设置不同IOU的重采样机制,使得检测器的精度、和定位的准确度进一步提升。此外,针对用户的需求,新增两种YOLOv3的变种模型,其中,YOLOv3_MobileNetv1,是将原来的YOLOv3骨架网络替换为MobileNetv1,相比YOLOv3_DarkNet, 新模型在GPU上的推理速度提升约73%。而YOLOv3_ResNet50vd_DCN是将骨架网络更换为ResNet50-VD,相比原生的DarkNet53网络在速度和精度上都有一定的优势,在保证GPU推理速度基本不变的情况下,提升了1%的模型效果,同时,因增加了可形变卷积,对不规则物体的检测效果也有一定的正向提升。

各检测模型的效果,以及支持的部署方式如下表所示:

cb22556432b44504aa90b19c1e922150.png

注:以上模型均基于COCO17数据集训练和测试。

更多预置模型,参见EasyDL官网

https://ai.baidu.com/ai-doc/EASYDL/0k38n3p16

更多模型效果,参见PaddleDetection: https://github.com/PaddlePaddle/PaddleDetection/blob/release/0.3/docs/MODEL_ZOO_cn.md

各模型的推理时间如下表所示:

84d166096c0db794930eb398d57aea01.png

注:以上模型均基于coco17训练所得。

更多模型速度详情,参见PaddleDetection:

https://github.com/PaddlePaddle/PaddleDetection/blob/release/0.3/docs/advanced_tutorials/deploy/BENCHMARK_INFER_cn.md

百度超大规模视觉预训练模型对比公开数据集训练的预训练模型,效果提升明显,目前这些模型已经预置在EasyDL中正式发布。EasyDL是飞桨企业版零门槛AI开发平台EasyDL,面向专业算法工程师群体,专门推出的AI模型开发与服务平台。支持视觉及自然语言处理两大技术方向,可灵活支持脚本调参及Notebook两类开发方式,预置了几十种经典网络和百度海量数据训练的预训练模型,模型效果在业界保持领先,同时支持公有云/私有化/设备端等灵活的部署方案,开发效率高、训练速度快,同时设备端轻量级部署和加速方案使得显存占用更少,预测速度更快。

开发者可以搜索进入EasyDL平台,选择【新建任务】-【配置任务】-【选择预训练模型】处选择【百度超大规模数据集 通用分类与训练模型】

02227f282d7a2acefa7ee1c6a1751152.png

EasyDL零门槛AI开发平台,面向AI开发全流程提供灵活易用的一站式平台方案。包含了AI开发过程中的三大流程:数据服务、训练与开发、模型部署。

  • 在数据服务上,刚刚上线的EasyData智能数据服务平台覆盖了数据采集、管理、清洗、标注、安全,并支持接入EasyDL进行训练,在模型训练部署之后,在云服务授权的前提下完成数据回流,针对性地进行难例挖掘,获得更有助于模型效果提升的高质量数据。EasyData是业内首家推出了软硬一体、端云协同自动数据采集方案的平台,有离线视频数据采集的用户,可以下载EasyData的数据采集SDK,通过定时拍照、视频抽帧等方式,实时统计到云端进行处理。

  • 在训练与开发上,除了刚刚提到的大规模预训练模型来提升模型性能,EasyDL还采用了AutoDL自动搜索最优网络及超参数,以及自动数据增强、自动超参搜索来增加数据量和多样性,分布式训练加速等丰富的训练机制提升模型的训练速度。

  • 在模型部署上,EasyDL提供端云协同的多种灵活部署方式,包括公有云API、设备端SDK、本地服务器部署、软硬一体产品。值得关注的是,在EasyDL软硬一体产品矩阵方案中,提供了六款软硬一体方案,覆盖超高性能,高性能和低成本小功耗三种不同形态,满足开发者的各类业务需求,已经在几十个行业上百个场景中落地应用。

而近期,百度针对各行各业智能化转型需求的爆发式增长,更是基于EasyDL重磅推出“万有引力”计划,为有AI应用需求的企业提供专项基金,计划助力万家企业,快速创享AI能力!

f4fd6a1f7c15469da79162466c0126dc.png

参与本次活动的企业及个人开发者,只需在2020年9月23日~2021年3月23日期间,登录百度大脑AI开放平台,或百度搜索进入“百度EasyDL‘万有引力’计划”活动页面入口,填写“立即报名”相关信息,通过EasyDL经典版完成模型训练与成功部署,有完整的个人或企业认证,即可一键领取总价值一万元的EasyDL充值代金券!针对落地效果突出的项目,更有机会获得最高十万元的特殊补贴,具体流程如下。

2be91a0d151d817861f475df127ea448.png




推荐阅读
  • 非计算机专业的朋友如何拿下多个Offer
    大家好,我是归辰。秋招结束后,我已顺利入职,并应公子龙的邀请,分享一些秋招面试的心得体会,希望能帮助到学弟学妹们,让他们在未来的面试中更加顺利。 ... [详细]
  • 探索CNN的可视化技术
    神经网络的可视化在理论学习与实践应用中扮演着至关重要的角色。本文深入探讨了三种有效的CNN(卷积神经网络)可视化方法,旨在帮助读者更好地理解和优化模型。 ... [详细]
  • 视觉Transformer综述
    本文综述了视觉Transformer在计算机视觉领域的应用,从原始Transformer出发,详细介绍了其在图像分类、目标检测和图像分割等任务中的最新进展。文章不仅涵盖了基础的Transformer架构,还深入探讨了各类增强版Transformer模型的设计思路和技术细节。 ... [详细]
  • 自动驾驶中的9种传感器融合算法
    来源丨AI修炼之路在自动驾驶汽车中,传感器融合是融合来自多个传感器数据的过程。该步骤在机器人技术中是强制性的,因为它提供了更高的可靠性、冗余性以及最终的 ... [详细]
  • 本文详细介绍了 Java 网站开发的相关资源和步骤,包括常用网站、开发环境和框架选择。 ... [详细]
  • 本文汇集了作者在准备研究生入学考试过程中的心得体会,包括备考策略、复习重点及应对考试的心理调适技巧,旨在为即将参加考研的学生提供实用建议。 ... [详细]
  • 如何高效学习鸿蒙操作系统:开发者指南
    本文探讨了开发者如何更有效地学习鸿蒙操作系统,提供了来自行业专家的建议,包括系统化学习方法、职业规划建议以及具体的开发技巧。 ... [详细]
  • Java虚拟机及其发展历程
    Java虚拟机(JVM)是每个Java开发者日常工作中不可或缺的一部分,但其背后的运作机制却往往显得神秘莫测。本文将探讨Java及其虚拟机的发展历程,帮助读者深入了解这一关键技术。 ... [详细]
  • 龙蜥社区开发者访谈:技术生涯的三次蜕变 | 第3期
    龙蜥社区的开发者们通过自己的实践和经验,推动着开源技术的发展。本期「龙蜥开发者说」聚焦于一位资深开发者的三次技术转型,分享他在龙蜥社区的成长故事。 ... [详细]
  • 深入解析RelativeLayout、LinearLayout与FrameLayout的性能差异
    本文详细分析了FrameLayout和LinearLayout的性能对比,通过具体的测量数据和源码解析,探讨了不同布局在不同场景下的性能表现。 ... [详细]
  • 英特尔推出第三代至强可扩展处理器及傲腾持久内存,AI性能显著提升
    英特尔在数据创新峰会上发布了第三代至强可扩展处理器和第二代傲腾持久内存,全面增强AI能力和系统性能。 ... [详细]
  • Redis 是一个高性能的开源键值存储系统,支持多种数据结构。本文将详细介绍 Redis 中的六种底层数据结构及其在对象系统中的应用,包括字符串对象、列表对象、哈希对象、集合对象和有序集合对象。通过12张图解,帮助读者全面理解 Redis 的数据结构和对象系统。 ... [详细]
  • LeetCode 实战:寻找三数之和为零的组合
    给定一个包含 n 个整数的数组,判断该数组中是否存在三个元素 a、b、c,使得 a + b + c = 0。找出所有满足条件且不重复的三元组。 ... [详细]
  • 兆芯X86 CPU架构的演进与现状(国产CPU系列)
    本文详细介绍了兆芯X86 CPU架构的发展历程,从公司成立背景到关键技术授权,再到具体芯片架构的演进,全面解析了兆芯在国产CPU领域的贡献与挑战。 ... [详细]
  • 本文介绍如何使用OpenCV和线性支持向量机(SVM)模型来开发一个简单的人脸识别系统,特别关注在只有一个用户数据集时的处理方法。 ... [详细]
author-avatar
皇家让梦起飞jie
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有