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

最全模型效果评估报告上线,百度飞桨企业版EasyDL助力模型效果快速优化

最全模型效果评估报告上线,百度飞桨企业版EasyDL助力模型效果快速优化-近些年深度学习持续发展,在视觉、自然语言处理、语音等各个技术方向都诞生了创新智能应用,例如智能识别医疗图像

近些年深度学习持续发展,在视觉、自然语言处理、语音等各个技术方向都诞生了创新智能应用,例如智能识别医疗图像中的病灶,辅助医生做病情诊断;智能判别生产线上有质量问题的产品,减轻人工质检压力;对政务、金融等流程中的证件票据进行信息识别,加速审批并实现流程电子化;识别用户输入的语句,与知识库中相应的问答进行匹配,实现智能客服问答等。随着智能应用的爆发式发展,如何构建高精度的AI模型成为每个企业都在持续探索的命题。
构建深度学习模型的过程中,当遇到模型效果不能满足要求,需要进一步定位问题和调优效果,由于深度学习模型又是一个“黑盒”,开发者并不知道当它做出一个错误预测的准确原因,因此很难采取有针对性的效果优化策略。这个时候就非常让人头疼了。
其实,碰到模型效果不佳时不用慌,虽然模型“黑盒”,但是通过一些技术积累和功能设计,可以从多个角度去了解它到底怎么“想”,为模型优化特别是在数据上如何优化提供思路和指导。
在企业AI开发中,快速对模型效果进行评估、定位模型问题,高效完成模型效果优化是AI应用落地中的重要环节。针对这一诉求,百度EasyDL零门槛AI开发平台在原有完善详实的模型评估报告基础上,进一步新增上线了混淆矩阵和CNN热力图功能,即使大家对深度学习了解不多,也可以快速依据可视化评估结果制定更为精准的优化方案。下面将为大家逐一介绍模型指标、错误示例(BadCase)、混淆矩阵、CNN热力图等各个功能。
EasyDL模型评估提供多项指标,多角度展现模型效果信息
EasyDL基于飞桨开源深度学习平台,面向企业AI应用开发者提供零门槛AI开发平台,实现零算法基础定制高精度AI模型。EasyDL提供一站式的智能标注、模型训练、服务部署等全流程功能,内置丰富的预训练模型,支持公有云、设备端、私有服务器、软硬一体方案等灵活的部署方式。
目前,EasyDL已有超过80万企业用户,在工业制造、安全生产、零售快消、智能硬件、文化教育、政府政务、交通物流、互联网等领域广泛落地。
在EasyDL完成模型开发后可以获得平台提供的各项详细的模型评估指标,以图像分类模型为例,除了整体的准确率之外,还可以看精确率、召回率、F1-score、TOP5准确率等。


除了模型整体的指标之外,还可以看每一项类别的F1-score值,从而帮助开发者发现具体哪一类别的识别效果较差。针对这些较差的类别,开发者可以有针对性地去看那些被预测错误的样本,也就是常说的BadCase。开发者可以检查这些类别是否样本量过少,需要补充数据;是否有脏数据存在,影响了模型学习。

在物体检测上也类似,整体指标上可以观测mAP、最佳阈值下检测的精确率、召回率等。因为检测模型会输出很多的检测框,而有相当一部分检测框的概率比较低,一般会设置一个阈值来过滤掉那些低概率的检测框。通过设置不同的阈值,模型便会有不同的精确率、召回率和F1-score。在模型预测时,通常取F1-score最高的阈值当做最佳阈值,这样能够较好地平衡精确率和召回率,尽量减少漏检、错检等问题。


与分类任务类似,在物体检测模型的评估中也可以查看各个类别的精度,来判断哪些类别的检测效果欠佳。找到这些问题比较大的类别之后,同样也可以查看BadCase。检测问题里的BadCase详细区分了“误识别”和“漏识别”这两种情况,从而方便开发者看检测出错的各类情况。开发者可以检查对应类别的标注框是否过少,是否有框标注错误需要修正。


新增混淆矩阵与热力图两大功能,高效展示模型效果问题
除了上面这些经典常用的方法外,为了更有针对性地比较易混淆的类别,EasyDL近期重磅上线了混淆矩阵的功能。在混淆矩阵中,开发者可以方便地看到具体哪两种类别之间容易产生混淆,例如,类别A较多地被识别成了类别B。根据这些信息,开发者可以发现是不是训练数据存在问题,例如相似类别的图片有标注错误;或是这些相似类别的图片太少,导致模型没有学习充分。开发者可以依据混淆矩阵提供的信息,对模型数据进行补充与调整。

看到这里,你会发现,EasyDL在评估模型效果时,通常是从数据的角度去发现现有模型的问题,通过优化数据来优化模型效果的。为什么会选择这样的策略呢?在深度学习领域有一句话很流行,“Garbage in , garbage out.”意思就是说如果开发者给了深度学习模型一堆标注质量差的“垃圾”数据,就会得到一个精度很低的“垃圾”模型,这句话时刻提醒开发者,数据质量与模型效果直接相关。因此,从数据角度进行模型效果的问题定位、并配合相应数据的调整,往往是最直接高效的。对于EasyDL的企业应用级开发者而言,从数据角度解决问题,不要求用户进行高深的算法研究,可以零代码快速提升模型精度。
除了上面这些方法外,还有一些更专业的透视模型手段,被业界称之为模型可解释性方法。飞桨开源了业界主流的可解释性方法在GitHub上,这里面既包括基于输入特征的方法(如Intergrated Gradients, SmoothGrad, LIME等),也包括基于中间特征的方法(如GradCAM,ScoreCAM等)。大家可以去到链接进行查阅:https://github.com/PaddlePaddle/InterpretDL 。

在这些方法中,针对CNN网络有一个观察网络中激活情况的技术,可以更深入地了解模型的行为。这也是EasyDL模型评估热力图功能的技术基础。

以CAM算法为例,在CNN网络的最后一个特征图(Feature Map)上,哪些位置被激活是非常重要的信息,它直接影响后续网络中分类器的判断。但是这些特征图除了长宽两个维度外,还有一个通道的维度,开发者如何才能把不同通道的特征图叠加到一起呢?CAM提供一种加权的方法,即根据最后一个全连接层中的权重来加权。如上图示例,如果开发者想观察“狗”这个类别的激活情况,那么就把全连接层中各个通道到狗这个类别的权重W1, W2, …, Wn找出来,然后用这些权重对各通道特征图进行加权求和,就会得到一个两维的激活状态图。从这个状态图中,开发者可以看到原图里狗出现的位置被激活了,而其他区域(如人)则数值很小,没有对预测起作用。通过这样的“透视”,开发者可以更深入地了解模型内部的运作情况,一定程度地理解模型为什么得到了某个预测结果。根据这些信息,开发者可以选择通过补充、优化数据来引导模型学习地更好,也可以选择通过调整模型结构来优化模型的表现。
有些方法不仅适用于CNN的视觉模型,也适用于自然语言处理模型和传统机器学习模型。EasyDL也会不断集成相关能力。比如NLP的情感分类任务中,我们想知道为什么文本模型对一句话预测为正面或负面的评论。利用积分梯度(Integrated Gradients)的方法,在文本模型中把全零的嵌入向量作为基线,得到当前嵌入向量的积分梯度。从而反应不同输入词对预测结果的影响,可视化结果如下图:

使用EasyDL进行模型开发,在模型的评估中不仅可以参考各项详细指标来进行模型效果判断,还可以参考全新上线的混淆矩阵和热力图,以可视化、更精准的方式来定位模型效果不佳的原因,从而采取有针对性的效果提升策略。
近期,为帮助开发者从数据处理、模型训练、服务部署这三步来迅速掌握模型定制开发技能,百度EasyDL携手CSDN打造《AI开发精讲:高精度视觉模型定制与部署实战》系列课程,多位资深研发与产品经理深入探讨开发难点与解决方案,三节课重点全掌握!
扫描海报二维码立即报名,获取直播提醒:


推荐阅读
  • 在2019中国国际智能产业博览会上,百度董事长兼CEO李彦宏强调,人工智能应务实推进其在各行业的应用。随后,在“ABC SUMMIT 2019百度云智峰会”上,百度展示了通过“云+AI”推动AI工业化和产业智能化的最新成果。 ... [详细]
  • 短信验证码安全性堪忧,多因素认证或成未来主流
    短信验证码安全性堪忧,多因素认证或成未来主流 ... [详细]
  • 提升 Kubernetes 集群管理效率的七大专业工具
    Kubernetes 在云原生环境中的应用日益广泛,然而集群管理的复杂性也随之增加。为了提高管理效率,本文推荐了七款专业工具,这些工具不仅能够简化日常操作,还能提升系统的稳定性和安全性。从自动化部署到监控和故障排查,这些工具覆盖了集群管理的各个方面,帮助管理员更好地应对挑战。 ... [详细]
  • 通过使用CIFAR-10数据集,本文详细介绍了如何快速掌握Mixup数据增强技术,并展示了该方法在图像分类任务中的显著效果。实验结果表明,Mixup能够有效提高模型的泛化能力和分类精度,为图像识别领域的研究提供了有价值的参考。 ... [详细]
  • Python与R语言在功能和应用场景上各有优势。尽管R语言在统计分析和数据可视化方面具有更强的专业性,但Python作为一种通用编程语言,适用于更广泛的领域,包括Web开发、自动化脚本和机器学习等。对于初学者而言,Python的学习曲线更为平缓,上手更加容易。此外,Python拥有庞大的社区支持和丰富的第三方库,使其在实际应用中更具灵活性和扩展性。 ... [详细]
  • 应用链时代,详解 Avalanche 与 Cosmos 的差异 ... [详细]
  • 解决 Windows Server 2016 网络连接问题
    本文详细介绍了如何解决 Windows Server 2016 在使用无线网络 (WLAN) 和有线网络 (以太网) 时遇到的连接问题。包括添加必要的功能和安装正确的驱动程序。 ... [详细]
  • 本文详细介绍了MySQL数据库的基础语法与核心操作,涵盖从基础概念到具体应用的多个方面。首先,文章从基础知识入手,逐步深入到创建和修改数据表的操作。接着,详细讲解了如何进行数据的插入、更新与删除。在查询部分,不仅介绍了DISTINCT和LIMIT的使用方法,还探讨了排序、过滤和通配符的应用。此外,文章还涵盖了计算字段以及多种函数的使用,包括文本处理、日期和时间处理及数值处理等。通过这些内容,读者可以全面掌握MySQL数据库的核心操作技巧。 ... [详细]
  • 本文详细解析了Java类加载系统的父子委托机制。在Java程序中,.java源代码文件编译后会生成对应的.class字节码文件,这些字节码文件需要通过类加载器(ClassLoader)进行加载。ClassLoader采用双亲委派模型,确保类的加载过程既高效又安全,避免了类的重复加载和潜在的安全风险。该机制在Java虚拟机中扮演着至关重要的角色,确保了类加载的一致性和可靠性。 ... [详细]
  • Python错误重试让多少开发者头疼?高效解决方案出炉
    ### 优化后的摘要在处理 Python 开发中的错误重试问题时,许多开发者常常感到困扰。为了应对这一挑战,`tenacity` 库提供了一种高效的解决方案。首先,通过 `pip install tenacity` 安装该库。使用时,可以通过简单的规则配置重试策略。例如,可以设置多个重试条件,使用 `|`(或)和 `&`(与)操作符组合不同的参数,从而实现灵活的错误重试机制。此外,`tenacity` 还支持自定义等待时间、重试次数和异常处理,为开发者提供了强大的工具来提高代码的健壮性和可靠性。 ... [详细]
  • NFT市场热度持续攀升,波卡能否抓住机遇迎来NFT夏季热潮?
    NFT市场热度持续攀升,波卡能否抓住机遇迎来NFT夏季热潮? ... [详细]
  • OSChina 周末闲谈 —— 程序员的浪漫情话
    在OSChina的周末闲谈栏目中,探讨了程序员特有的浪漫情话。本文不仅分享了一些程序员如何用代码表达爱意的有趣例子,还推荐了一首适合程序员聆听的歌曲——李克勤的《啜泣》。对于喜欢在编程之余享受音乐的朋友们,不妨点击链接试听一下。 ... [详细]
  • 深入解析CAS机制:全面替代传统锁的底层原理与应用
    本文深入探讨了CAS(Compare-and-Swap)机制,分析了其作为传统锁的替代方案在并发控制中的优势与原理。CAS通过原子操作确保数据的一致性,避免了传统锁带来的性能瓶颈和死锁问题。文章详细解析了CAS的工作机制,并结合实际应用场景,展示了其在高并发环境下的高效性和可靠性。 ... [详细]
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • 如何使用mysql_nd:Python连接MySQL数据库的优雅指南
    无论是进行机器学习、Web开发还是爬虫项目,数据库操作都是必不可少的一环。本文将详细介绍如何使用Python通过 `mysql_nd` 库与 MySQL 数据库进行高效连接和数据交互。内容涵盖以下几个方面: ... [详细]
author-avatar
润滑油一_576
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有