1、中国软件技术大会CHINA SOFTWARE TECHNOLOGY CONFERENCE深度学习模型质量体系构建Agenda 算法质量的挑战 数据透出与可视化 模型评估 特征分析与选择 算法系统的持续交付讲师简介:孙凯,花名路宸,阿里巴巴高级技术专家,目前在阿里妈妈负责深度学习工程效能方面的工作,涉及特征分析模型评估算法迭代效率等相关领域。曾任职于中兴通讯、IBM和EMC等公司,从事过高性能计算和大数据等相关领域的工作。计算广告领域-算法质量的挑战大规模数据黑盒化过程实时化系统千亿样本 万亿特征 TB模型50+模型广告搜索与定向全业务迁移端到端实时化演进到组件实时化模型拆分与融合丧失功能独立评
2、估能力前沿技术/风险未知AI的“黑盒”特性深度网络对机器学习研究和应用领域产生了巨大的影响,与此同时却无法很清晰地解释神经网络的来龙去脉;迄今为止,深度学习不够透明,神经网络整体看来仍然是一个黑箱。因此,人们一直致力于更透彻地去理解其中复杂的过程,从而达到进一步优化的目的;由于人类对于世界的认知和感受主要来自于视觉,良好的可视化可以有效地帮助人们理解深度网络,并进行有效的优化和调节;(引自2018 AI predictions:8 insights to shape business strategy)基于数据透出的多维度可视化分析深度学习组件(TF-Tracer/TF-Profiler等)主
3、要负责数据透出、实时监控和输出控制等,透出的数据主要是模型训练过程中的Raw Data(未经加工或计算统计);后端微服务(Tensorboard+/Notebook+/Facets)和前端WEB平台(高维可视化)负责相关数据的在线离线交互式等方面的可视化分析评估;以模型训练任务的生命周期管理(Lifecycle)贯穿始终,从而形成多维度可视化分析的生态循环;TF-Tracer:基于计算图的全面数据透出基于原生的深度学习框架TensorflowAPI(tf.train.SessionRunHook)编写的即插即用组件,无需用户开发额外的代码,只需用户通过配置文件增加相应配置信息,即可使用对应的组
4、件;配置信息由组件开关和组件配置参数信息两部分组成:打开相应组件开关后,组件功能不会对原有训练任务产生较大性能影响,从而保证线上训练效率;关闭相应组件开关后,对原有训练任务无任何功能或性能上的影响;数据透出组件TF-Tracer是基于Tensorflow 计算图(tf.Graph)开发的,可以全面透出计算图中的所有变量(tf.Variable);基于图数据集(tf.GraphKeys),通过正则表达式对变量集合进行匹配过滤,透出相应变量数据集合,同时也支持直接指定变量列表进行数据透出,支持NumPy/Bin两种数据格式输出;在线动态更新数据集实时透出对于运行周期较长的模型训练,如Online
5、Learning,在训练过程中发现异常的话,有时很难根据现有透出数据进行定位;而重启任务更新透出数据集的话,有些问题并不能复现(深度学习统计学特性);TF-Tracer在不重启训练任务的前提下,支持在线动态更新透出数据集;针对于chief_only等于False的情况,即所有worker都透出数据时,支持指定worker动态更新,非指定worker透出数据不变;右图:在线修改实时透出实例:变量从layer2/biases:0和layer2/weights/part_0:0到变量layer1/weights/part_1:0和layer4/weights/part_0:0模型评估-通过边权重了解
6、模型训练状态边的权重是神经网络模型的主要成分,因此分析边的权重可以对模型状态有一个最直接的了解;模型权重分布异常是模型训练出现异常的一个重要表征,表明可能出现过拟合或者训练数据存在问题;右图,过拟合的模型中,边权重的大小分布很不均匀,出现了大量权重(绝对值)极大的边,且集中在一条带状区域内;这一条带状区域为某一组特征输入所连接的所有边,表明模型过度拟合了该组特征的信息。我们更进一步发现,无法通过正则或dropout来防止这种过拟合状况并提升模型效果,这表明问题出在该组特征输入上;模型评估-通过梯度了解特征输入的影响力将输入层的某个神经元状态针对模型输出预估分求导,该梯度的强度表示了模型的预估输