如何提高深度学习模型的可解释性?极致的数据透出与多维可视化实战详解

丰富的线上&线下活动,深入探索云世界

做任务,得社区积分和周边

最真实的开发者用云体验

让每位学生受益于普惠算力

让创作激发创新

资深技术专家手把手带教

遇见技术追梦人

技术交流,直击现场

海量开发者使用工具、手册,免费下载

极速、全面、稳定、安全的开源镜像

开发手册、白皮书、案例集等实战精华

为开发者定制的Chrome浏览器插件

小叽导读:深度网络对机器学习研究和应用领域产生了巨大的影响,与此同时却无法很清晰地解释神经网络的来龙去脉。迄今为止,深度学习不够透明,神经网络整体看来仍然是一个黑箱。因此,人们一直致力于更透彻地去理解其中复杂的过程,从而达到进一步优化的目的。由于人类对于世界的认知和感受主要来自于视觉,良好的可视化可以有效地帮助人们理解深度网络,并进行有效的优化和调节。

(图片引自2018AIpredictions:8insightstoshapebusinessstrategy)

同时,随着网络复杂度的急剧提升,传统的机器学习评估指标,如欠拟合/过拟合/精准率(PR)/召回率(Recall),并不能够全面地评估一个深度学习网络模型的质量,而我们正在寻找一种途径或者说在摸索一种方式,尝试着去定义深度学习质量体系,从而帮助人们更好地理解并评估模型本身,即在一定条件下,通过提高深度学习的可解释性与可靠性,提升网络模型的可控性。

基于此,平台在完善训练任务生命周期管理的同时,致力于提供更加全面的数据透出方式(如本期新增的在线动态更新数据透出功能),并以深度学习特有的多维度可视化等方向作为核心功能演进。

目前来看:数据科学负责见解;机器学习负责预测;人工智能负责行为。同时,这几个领域之间存在着很多重叠。数据科学与其他两个领域不同,因为它的目标跟人类的目标尤其接近:获得洞察力和理解力,这也是DeepInsight平台命名的由来。

DeepInsight是基于分布式微服务集群化部署的深度学习可视化评估平台,由前端WEB平台+后端微服务+深度学习组件等三个子系统构成,各个微服务实例之间是隔离的,互不影响;目前支持TensorflowRS及原生Tensorflow训练任务的生命周期管理。旨在通过数据透出及可视化等手段,解决模型调试及问题定位分析等系列问题,提高神经网络的可解释性;以生命周期管理的方式执行训练任务,从而提供一站式的可视化评测服务。平台在赋能业务的同时,业务也会将后期处理过的数据反馈给平台,从而构建以DeepInsight为基础数据核心的AI可视化生态圈。

由于原生深度学习框架提供的功能有限,不能完全满足日常训练的调试分析需求。DeepInsight深度学习组件以透明的方式接入Tensorflow框架,支持本地和分布式模型训练,以第三方库方式的安装。

1)基于原生的深度学习框架TensoflowAPI(tf.train.SessionRunHook)编写的即插即用组件,无需用户开发额外的代码,只需用户通过配置文件增加相应配置信息,即可使用对应的组件;

2)配置信息由组件开关和组件配置参数信息两部分组成:

打开相应组件开关后,组件功能不会对原有训练任务产生较大性能影响,从而保证线上训练效率;

关闭相应组件开关后,对原有训练任务无任何功能或性能上的影响;

3.1.1TF-Tracer:基于计算图的全面数据透出

数据透出组件TF-Tracer是基于Tensorflow计算图(tf.Graph)开发的,可以全面透出计算图中的所有变量(tf.Variable),基于图数据集(tf.GraphKeys),通过正则表达式对变量集合进行匹配过滤,透出相应变量数据集合,同时也支持直接指定变量列表进行数据透出,支持NumPy/Bin两种数据格式输出。

对于非计算图中的变量,用户也可以通过回填的方式,添加到官方预置图数据集或自定义图数据集中;

TF-Tracer配置文件示例,具体详见TF-TracerUserGuide:

提供输出变量存储容量过滤,预置默认值,支持用户根据应用场景自定义设置,其中[ATBEGIN]方式可以单独设置变量numpy.ndarray.shape大小限制;

支持分布式多session输出,提供cheif_only配置选项,指定是否只有work0输出数据文件;

支持三种模式数据采样:

1)every_steps:基于步数采样;

3)step_range:基于步数范围采样;

支持四种方式输出:

1)HDFS:以变量为最小颗粒度生成日志文件,为每个worker生成相应的文件夹,将数据实时透出到HDFS文件系统中,支持Text/Bin两种格式,目前默认以CSV的格式存储,支持ODPS直读;

3)Logview:将数据透出到前端WEB平台,数据实时刷新,针对日志信息量较大的情况,支持概要(具体信息可以通过上述HDFS或ODPS方式查询)和详细信息等多种日志级别;

4)Tensorboard+:支持将数据实时透出到TensorBoard+Textplugin中,由于日志信息量较大,支持日志概要和文件存储路径两种日志级别;

多种可视化展示方式:

2)使用在线工作台(微服务Notebook+)读取数据进行交互式可视化分析,提供TF-TracerReader读取HDFS数据,预装PyODPS/scikit-learn/Matplotlib等数据科学软件;

目前TF-Tracer已应用到线上训练任务中,如onlinelearning,会实时透出数据到ODPS,性能测试结果如下:

3.1.2TF-Tracer黑科技:在线动态更新数据集实时透出

现有深度学习框架的数据透出方式一般是静态的且不全面,尤其是分布式架构。用户在训练任务开始前指定透出数据集,任务开始执行后不能修改;修改的话,需要中断任务重新修改代码或配置。对于运行周期较长的模型训练,如OnlineLearning,在训练过程中发现异常的话,有时很难根据现有透出数据进行定位;而重启任务更新透出数据集的话,有些问题并不能复现(深度学习统计学特性)。

针对上述问题,TF-Tracer在不重启训练任务的前提下,支持在线动态更新透出数据集:

支持在模型训练过程中,在线修改透出数据集合,并实时透出更改后的数据集;

提供本次模型训练计算图中所有变量列表,用户可以基于图数据集(tf.GraphKey),选择指定变量列表,同时支持多数据集变量去重;

针对于cheif_only等于False的情况,即所有worker都透出数据时,支持指定worker动态更新,非指定worker透出数据不变,便于双向对比;

worker0:

worker1:

在线修改实时透出实例:变量从layer2/biases:0和layer2/weights/part_0:0到变量layer1/weights/part_1:0和layer4/weights/part_0:0:

由于当前Tensorflowtimeline文件只支持展示一个session.run,不支持展示多个session.run,而线上训练都是基于分布式运行的,会产生多个session.run(每个worker至少产生一个)。而当分布式模型训练出现运行较慢的问题时,需要从整体上定位分析,即一个timeline展示多个session.run的集合,而Tensorflow不能满足此需求。

TF-Profiler是基于原生的深度学习框架中的性能采样接口,进行了二次开发,支持根据配置文件,自动化跨session生成性能数据、数据分层以及自动分析统计等功能,同时对Tensorboard+Profileplugin也进行了二次开发,实现了对线上性能文件可视化展示。(TF-Profiler具体功能详见:DeepInsight深度学习评估平台--性能调优组件)

当前主要包括Notebook+(交互式可视化分析)和Tensorboard+(可视化工具)两类Docker化微服务,前端WEB平台负责容器编排,通过Nginx反向代理提供动态端口转发功能,支持多用户并发访问;容器实例以集群的方式部署在多个服务器上,同一服务器上的容器对不同用户而言使用不同端口访问,并做到进程间隔离,在高并发的同时保证系统的稳定性。

3.2.1Notebook+:交互式可视化分析

基于JupyterNotebook开源版本进行二次开发的Docker镜像服务,提供交互式可视化分析及线上本地调试等服务。

提供TF-TracerReader在线读取日志文件进行交互式可视化分析,支持HDFS/OSS/ODPS/GIT等方式读写数据;

支持TensorflowRS线上本地模型训练,支持iPython和Terminal两种运行方式;

和前端WEB平台实验室双向打通,本地调试完成后可以将脚本直接转储至前端WEB平台实验室,进行后续的分布式训练;当线上训练异常后,可以跳转至在线工作台(Notebook+)进行线上本地调试,从而提高效率节省资源;

3.2.2Tensorboard+2.0:高性能实时在线可视化

在原有版本上更新了Tensorboard+core版本,从1.2.0rc更新到了1.5.0a,同时保持了原有1.0版本数据目录在线动态切换及数据报表聚合对比等功能(1.0版本功能详见:如何评估深度学习模型效果?阿里工程师这么做):

优化了数据加载模块,启动性能提升了3~5倍左右,解决了线上超大数据文件加载慢的问题,改善用户体验;

在性能不变的前提系,增加Scalar图加载数据点数,由原来的200点上升至1000点,图像精度更高,更加利于可视化分析;

3.3.1生命周期管理:可视化分析的生态基石

提供训练任务从TensorflowRS镜像发布、模型本地开发调试到线上分布式运行的全流程整体解决方案,覆盖模型训练全阶段生命周期管理。典型用户场景(userpath)如下:

Step1.首先用户通过在线工作台(Notebook+)进行线上本地开发调试,并可以使用iPython进行交互式可视化分析,比如对TF-Tracer产生的日志数据进行在线分析;同时支持从实验室导入训练任务进行本地调试;

Step3.用户在本地工作台或实验室中,可以通过组件管理功能,引入或导出当前模型或组件,供后续个人或其他用户使用;

3.3.2集群管理:在线扩容与可视化服务一键式部署

集群管理模块主要提供分布式微服务集群管理:

支持线上资源实时在线扩容、后端容器编排(作业调度&资源管理等)以及微服务一键式部署等功能;

3.4对外可视化服务

DeepInsight平台目前主要通过两种方式对第三方平台提供服务:

对集团PAI平台提供Tensorboard+1.0服务,支持OSS直读日志文件:

对XDL平台提供Tensorboard+2.0服务,支持MXNet日志格式文件,同时提供Notebook+1.0服务:

对Lotus等平台提供基础数据服务等;

另外,样本特征作为模型训练的输入,对训练的最终效果(过拟合/欠拟合)起到了重要的作用。目前Notebook+正在尝试通过嵌入Facets,帮助用户理解并分析各类深度学习数据集。用户可以在训练前通过可视化的方式,更好地理解数据集中所有特征的值分布(FacetsOverview),探索数据集中不同特征数据点之间的关系(FacetsDive)。

FacetsOverview:

FacetsDive:

由此,用户可以在模型训练的不同阶段(前/中/后),通过全链路模型可视化的方式,更加准确有效地调试分析,从而得到更好的效果。

作者简介:孙凯,花名路宸,阿里巴巴高级技术专家,DeepInsight深度学习质量平台技术负责人。开发DeepInsight技术,充满挑战,引用《TheBuildingBlocksofInterpretability》中的一段话与大家共勉。

Wehavealotofworkleftaheadofustobuildpowerfulandtrusthworthyinterfacesforinterpretability.But,ifwesucceed,interpretabilitypromisestobeapowerfultoolinenablingmeaningfulhumanoversightandinbuildingfair,safe,andalignedAIsystems.

THE END
1.深度学习平台(SINGA)4.高性能:SINGA采用C++作为核心开发语言,并结合Python、C、CUDA等语言,以实现高效的跨平台运行能力。它利用GPU加速器优化深度学习运算,提升训练速度,同时其内存优化机制也有助于提高训练效率。 5.模型动物园:在Github和Google Colab上的SINGA仓库中提供了各种特定领域的深度学习模型,如医疗保健和科学等领域的模型,方便https://blog.csdn.net/weixin_43156294/article/details/144281329
2.使用新的开源跨学科数据集训练AI人工智能模型像科学家那样思考完整的数据集可从Flatiron研究所免费下载,并可在托管AI模型和数据集的平台Hugging Face上访问。Polymathic AI团队在两篇论文中 https://nips.cc/virtual/2024/poster/97791 提供了有关数据集的更多信息,这两篇论文已被接受在12月于加拿大温哥华举行的顶级机器学习会议NeurIPS https://neurips.cc 上发表。 https://www.thepaper.cn/newsDetail_forward_29579848
3.深度学习平台——百度AIStudio线上构建51CTO博客针对AI学习者的在线一体化学习与实训社区. 本平台集合了AI教程, 深度学习样例工程, 各领域的经典数据集, 云端的超强运算及存储资源, 以及比赛平台和社区.从而解决学习者在AI学习过程中的一系列难题, 例如教程水平不一, 教程和样例代码难以衔接, 高质量的数据集不易获得, 以及本地难以使用大体量数据集进行模型训练.https://blog.51cto.com/u_13643065/6169255
4.飞桨PaddlePaddle飞桨致力于让深度学习技术的创新与应用更简单。具有以下特点:同时支持动态图和静态图,兼顾灵活性和效率;精选应用效果最佳算法模型并提供官方支持;真正源于产业实践,提供业界最强的超大规模并行深度学习能力;推理引擎一体化设计,提供训练到多端推理的无缝对接;唯一提https://www.paddlepaddle.org.cn/hub/scene/ocr
5.金电联行Ark(方舟)平台深度学习模型训练软件免费在线试用金电联行-Ark(方舟)平台深度学习模型训练软件页面为您介绍金电联行-Ark(方舟)平台功能介绍以及产品定价、行业案例、文章点评等相关信息,便于您更快速的了解金电联行-Ark(方舟)平台深度学习模型训练软件。https://www.36dianping.com/space/5875360113
6.LintCode(802.11ax) 4×4 MU-MIMO 6GHz QCN9074 Single Band Wireless Module shell 深度学习 算法 一次遍历 大数据 lambda函数 Library Access modifiers python 《三分快3平台app推荐下载》搜狗百科 不排序 Metadata Algorithm Interview prim BZIClaw LCA 物联网 量化投资 classification 知识图谱 Modules & Packages https://www.lintcode.com/tag/
7.关于发布可解释可通用的下一代人工智能方法重大研究计划2022通过规则与学习结合的方式,建立高精度、可解释、可通用且不依赖大量标注数据的人工智能新方法。开发下一代人工智能方法需要的数据库和模型训练平台,完善下一代人工智能方法驱动的基础设施。 (三)面向科学领域的下一代人工智能方法的应用 发展新物理模型和算法,建设开源科学数据库、知识库、物理模型库和算法库,推动人工https://www.ncsti.gov.cn/kcfw/xmsb/202205/t20220518_79110.html
8.cubestudio开源云原生一站式机器学习/深度学习/大模型AI平台cube studio开源云原生一站式机器学习/深度学习/大模型AI平台,支持sso登录,多租户,大数据平台对接,notebook在线开发,拖拉拽任务流pipeline编排,多机多卡分布式训练,超参搜索,推理服务VGPU,边缘计算,serverless,标注平台,自动化标注,数据集管理,大模型微调,vlhttps://github.com/HutCat/cube-studio
9.2020届计算机科学方向毕业设计(论文)阶段性汇报复现了业界领先的基于深度学习的跨年龄人脸识别模型并在少量测试数据集上做了数值上的检验和对比。 张哲恺 图排序的硬件加速器设计 Gorder图排序算法的简单介绍,硬件加速Gorder的基本思路,模拟实验结果。 蒋泽天 多图的批量协同匹配与在线增量式匹配方法第一阶段工作汇报 https://zhiyuan.sjtu.edu.cn/html/zhiyuan/announcement_view.php?id=3709
10.货拉拉一站式云原生AI平台建设实践数据工程模型训练在线服务数据工程、模型训练、在线服务是机器学习技术实现的三驾马车,这个流程中处理的数据量大,计算量大、训练框架和版本多样、底层依赖复杂,资源算力管理,需要人工介入解决很多问题,给AI落地带来了比较困难。针对这一系列的问题,货拉拉大数据智能平台组从2020年开始就在探索提供一套完整的云原生的一站式AI解决方案,并从那时起https://juejin.cn/post/7213636024101765181
11.深度学习模型在线训练排序策略离线排序模型华为云帮助中心为你分享云计算行业信息,包含产品介绍、用户指南、开发指南、最佳实践和常见问题等文档,方便快速查找定位问题与能力成长,并提供相关资料和解决方案。本页面关键词:深度学习模型 在线训练。https://support.huaweicloud.com/topic/985668-2-S
12.三维一体教育平台—三人行,必有我师学校教育、家庭协助、社会关注,最大限度共享教育资源;在线考试,试题上传,海量试题搜索;试题库拥有丰富的试题;是一个全国各种学历考试,资格认证考试的全真在线模拟考试网站,提供自动阅卷评分以及试题解析等多功能服务,是各类考生考前辅导学习的练兵必备工具https://www.ch3dedu.com/wiki/search.jsp?ct=FB15144199320FA8CE71ECBE824E261E
13.学堂在线学堂在线是清华大学于2013年10月发起建立的慕课平台,是教育部在线教育研究中心的研究交流和成果应用平台,是国家2016年首批双创示范基地项目,是中国高等教育学会产教融合研究分会副秘书长单位,也是联合国教科文组织(UNESCO)国际工程教育中心(ICEE)的在线教育平台。目http://xuetangx.com/
14.TinyMaix:超轻量级推理框架八、使用Maixhub 在线训练模型# TODO 九、怎样添加新平台的加速代码# TinyMaix 使用基础的点积函数加速卷积运算 你需要在 src 里添加 arch_xxx_yyy.h, 并添上你自己平台的点积加速函数: TM_INLINE void tm_dot_prod(mtype_t* sptr, mtype_t* kptr,uint32_t size, sumtype_t* result); Copy 十、贡http://en.wiki.sipeed.com/news/others/tinymaix_cnx/tinymaix_cnx.html
15.LLM:预训练+指令微调+对齐+融合多模态+链接外部系统为了进一步提高LLM在未见任务上的指令泛化能力,即Zero-Shot能力,需要在自然语言众包指令数据上微调预训练模型,参考论文FLAN 。微调数据集来自于通用的NLP基准集,通过指令模板改造输入输出的格式得到CoT和非CoT任务的指令数据集,见下图。微调后可以显著提高在各种模型类(PaLM、T5、U-PaLM)、各种学习样例设置(Zero-Shot、https://www.shangyexinzhi.com/article/10160427.html
16.日本最高设计奖GOODDESIGNAWARD2021百件获奖作品精彩出炉本产品对需要经验积累的手动作业进行了充分支援,并合理利用AI和深度学习提高工作流程的效率,减轻医生负担,提高治疗效果。 33、细胞冷冻保存包 CellQua series将机器人作为媒介,将咖啡馆作为平台,帮助残疾人自食其力,和消费者、企业以及社会建立真正的联系。 94、咖啡豆在线平台 TYPICA https://www.digitaling.com/articles/621312.html
17.新国人,中小学生在线学习平台新国人专注K12教育20年,积累了丰富的教学经验和名师专家资源、视频课程资源,结合教育大数据分析、人工智能核心技术,精心打造新国人在线学习平台,为全国中小学生提供学习问题诊断,制定个性化教育解决方案服务.http://www.xinguoren.cn/
18.算法服务平台算法模型服务平台是一个面向企业用户的数字化服务平台,旨在为用户提供高效、先进的算法模型。它以数据为核心,利用机器学习、深度学习等前沿技术,为用户提供行业定制化的算法模型解决方案。 应用场景 用户情感分析 使用情感分析模型,对文本进行情感分析,用于市场调研,客户服务和社交媒体监测。 https://wakedata.com/wakeAI.html
19.深度学习计算机视觉实战畅想中心数据平台在线试读 下载 注:如果您的电脑尚未安装PC客户端,请先 安装客户端 后再下载阅读!手机扫描阅读此书 支持(Android/Iphone) 简介 目录 评论 简介 本书内容可分为四个部分。第一部分包括第1-2章,主要讲解深度学习和计算机视觉基础;第二部分包括第3-6章,主要讲解图像处理知识;第三部分包括第7-11章,主要讲解计算机https://www.cxstar.com/Book/Detail?ruid=2a4ec7b2000111XXXX&packageruid=25f8e7ac012727XXXX
20.深度学习平台DeepLearningCaffe深度学习平台 Deep Learning on QingCloud 基于强劲的 GPU 计算资源,搭载多个主流深度学习框架,可极速搭建深度学习开发环境,全面提速 AI 应用开发。https://www.qingcloud.com/products/deeplearning/
21.汇量科技利用AWS打造一站式大数据机器学习平台,日均高效处理1000汇量科技利用Amazon Web Services(AWS)云服务打造的一站式大数据机器学习平台,日均高效处理1000亿次线上预测,数倍提升线上变现价值。汇量科技是全球卓越的技术平台服务商,凭借全球化网络和本地化服务的能力,为60多个国家的2000多个活跃应用开发者提供从获客到变现的全栈http://aws.amazon.com/cn/solutions/case-studies/mobvista-machine-learning/
22.《大学生创新创业》课程思政示范课程优秀案例3.4建设在线教学资源拓展平台。基于互联共享的创新创业教学实践平台设置在线学习拓展任务,配套创新创业课程案例、创新创业训练手册、历年创新创业大赛项目案例集、视频、创业计划书、项目路演PPT等资源,强化学生创新和行为互动。 3.5通过雨课堂推送每个知识点设置的训练任务,在线培养创业项目实践能力。 https://www.xjbyxy.cn/info/1159/5308.htm