【技术实现步骤摘要】
一种深度学习训练过程数据转化为可视化数据方法和系统
[0001]本专利技术涉及深度学习
,具体涉及一种深度学习训练过程数据转化为可视化数据方法和系统。
技术介绍
[0002]可视化(visualization),是指将一些格式化或者非格式化的数据,利用图、 表等方式,形象地呈现给用户的过程。可视化呈现的结果,可以形象地反映出数据的分布、演化、规模大小等特征,在计算机科学的数据处理,数据分析,深度学习等方面有着广泛的应用。在深度学习训练过程中,涉及并生成大量的训练相关数据,通过可视化的方式,可以直观的将训练过程的数据分布,深度神经网络特征,训练结果评估等信息呈现给深度学习开发者和用户。在深度学习训练过程中,数据由深度学习框架生成并管理,为了在一个可视化的前端对这些数据进行展示,我们需要对深度学习框架中产生的数据赋予相应的格式,并进行序列化处理,然后将序列化的数据交给可视化系统的后台解析,再将相应的数据展示到可视化系统的前端。
技术实现思路
[0003]为了解决现有技术中存在的上述技术问题,本专利技术提出了 ...
【技术保护点】
【技术特征摘要】
1.一种深度学习训练过程数据转化为可视化数据方法,其特征在于,包括如下步骤:步骤一,定义可视化数据类型:基于Protobuf以自定义或编写的文件名为xxx的Proto文件, 生成包含同一文件名的xxx_pb2.py代码;步骤二,数据转化:Python端通过调用summary_xxx.py将相应的训练过程数据转化为可视化数据,并组装成Protobuf类型的message对象或者Json字符串,C++端通过调用event_writer_helper组件或者summary_converter.h将获取的训练过程数据根据不同的需求进行处理后转化为可视化数据,并组装成Protobuf类型的message对象;步骤三,数据生成:将Python端或C++端处理完成的可视化数据,经过Protobuf的message对象首尾字符串的编码之后写入到日志文件。2.如权利要求1所述的一种深度学习训练过程数据转化为可视化数据方法,其特征在于,所述Proto文件包括:summary.proto、graph.proto、tensor.proto、projector.proto和event.proto。3.如权利要求1所述的一种深度学习训练过程数据转化为可视化数据方法,其特征在于,所述python端通过调用summary_xxx.py将相应的训练过程数据转化为可视化数据,具体包括:Python端调用summary_graph.py将从C++端获取到的计算图和结构图转化为对应的可视化数据;Python端调用summary_hparams.py将用户输入的超参数转化为对应的可视化数据,并传到 C++端;Python端调用summary_projector.py将C++端获取的训练过程数据转化为对应的降维分析和异常检测可视化数据;所述C++端通过调用event_writer_helper组件或者summary_converter.h将获取的训练过程数据根据不同的需求进行处理后转化为可视化数据,具体包括:C++端调用histogram.h将Python端传来的Tensor转化为对应的统计分析可视化数据;C++端直接将其从Python端获取或者用户输入的标量数据和文本数据组装成Protobuf格式的消息转化为可视化数据;C++端通过调用event_writer_helper组件,将图像数据的格式转换成NHWC的格式,然后将图像数据按batch维进行切割得到多...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。