There has been an explosion in interest in machine learning (ML) in recent years due to its applications to science and engineering. However, as ML techniques have advanced, tools for explaining and visualizing novel ML algorithms have lagged behind. Animation has been shown to be a powerful tool for making engaging visualizations of systems that dynamically change over time, which makes it well suited to the task of communicating ML algorithms. However, the current approach to animating ML algorithms is to handcraft applications that highlight specific algorithms or use complex generalized animation software. We developed ManimML, an open-source Python library for easily generating animations of ML algorithms directly from code. We sought to leverage ML practitioners' preexisting knowledge of programming rather than requiring them to learn complex animation software. ManimML has a familiar syntax for specifying neural networks that mimics popular deep learning frameworks like Pytorch. A user can take a preexisting neural network architecture and easily write a specification for an animation in ManimML, which will then automatically compose animations for different components of the system into a final animation of the entire neural network. ManimML is open source and available at https://github.com/helblazer811/ManimML.
翻译:近年来,机器学习因其在科学与工程领域的应用而引发广泛关注。然而,随着机器学习技术的进步,用于解释和可视化新型机器学习算法的工具却发展滞后。动画已被证明是制作随时间动态变化系统的生动可视化的强大工具,因此非常适合传达机器学习算法。然而,当前对机器学习算法进行动画化的方法是人工定制突出特定算法的应用或使用复杂的通用动画软件。我们开发了ManimML,这是一个开源Python库,可直接通过代码轻松生成机器学习算法的动画。我们旨在利用机器学习从业者已有的编程知识,而非要求其学习复杂的动画软件。ManimML具有类似PyTorch等流行深度学习框架的神经网络指定语法,用户可基于现有神经网络架构,轻松编写ManimML动画规范,系统将自动将各组件的动画组合成整个神经网络的最终动画。ManimML是开源的,可通过https://github.com/helblazer811/ManimML获取。