Visualization Support for Developing a Matrix Calculus Algorithm: A Case Study

Visualization Support for Developing a Matrix Calculus Algorithm: A Case Study
复制标题

开发矩阵微积分算法的可视化支持:案例研究

DOI:
10.1111/cgf.13694
复制
发表时间:
2019
影响因子:
2.5
通讯作者:
Ferdinand Schreck
Ferdinand Schreck
中科院分区:
计算机科学4区
文献类型:
--
作者:
Joachim Giesen;Julien Klaus;Sören Laue;Ferdinand Schreck

文献摘要

相似文献

随着可视化工具、库和框架的激增,针对特定领域和应用程序的自定义交互式可视化工具的开发变得更加简单。这些工具中的大多数都是为经典的数据科学应用开发的,支持用户分析测量或模拟数据。但最近,人们对理解机器学习算法和框架的视觉支持越来越感兴趣,特别是对于深度学习。许多(如果不是大多数)对(深度)学习的可视化支持针对的是学习系统的开发人员,而不是最终用户(数据科学家)。在这里,我们展示了一个具体的例子,即矩阵演算算法的开发,支持可视化也可以极大地有利于经典领域的算法开发,比如我们的计算机代数。这个想法类似于在视觉上支持对学习算法的理解,即为开发人员提供一个交互式的可视化工具,提供对工作原理的见解,重要的是,还可以了解正在开发的算法的失败。为矩阵演算开发可视化支持与为数据分析师开发更传统的可视化支持系统类似。首先,我们必须通过与矩阵演算算法的核心开发人员交谈来熟悉问题,它的语言和挑战。一旦我们理解了这个挑战,就很容易开发视觉支持,从而大大简化了矩阵演算算法的开发。
The development of custom interactive visualization tools for specific domains and applications has been made much simpler recently by a surge of visualization tools, libraries and frameworks. Most of these tools are developed for classical data science applications, where a user is supported in analyzing measured or simulated data. But recently, there has also been an increasing interest in visual support for understanding machine learning algorithms and frameworks, especially for deep learning. Many, if not most, of the visualization support for (deep) learning addresses the developer of the learning system and not the end user (data scientist). Here we show on a specific example, namely the development of a matrix calculus algorithm, that supporting visualizations can also greatly benefit the development of algorithms in classical domains like in our case computer algebra. The idea is similar to visually supporting the understanding of learning algorithms, namely provide the developer with an interactive, visual tool that provides insights into the workings and, importantly, also into the failures of the algorithm under development. Developing visualization support for matrix calculus development went similar as the development of more traditional visual support systems for data analysts. First, we had to acquaint ourselves with the problem, its language and challenges by talking to the core developer of the matrix calculus algorithm. Once we understood the challenge, it was fairly easy to develop visual support that streamlined the development of the matrix calculus algorithm significantly.