Towards Machine Learning on the Automata Processor

Towards Machine Learning on the Automata Processor
复制标题

在自动机处理器上迈向机器学习

DOI:
--
复制
发表时间:
2016
期刊:
Information Security Conference
影响因子:
--
通讯作者:
P. Glendenning
P. Glendenning
中科院分区:
--
文献类型:
--
作者:
Tommy Tracy;Yao Fu;Indranil Roy;Eric Jonas;P. Glendenning

文献摘要

被引文献

相似文献

各种应用程序使用集成学习模型,使用决策树集合,基于输入的特征向量快速而准确地对输入进行分类。在本文中,我们讨论了这样一种方法的实现,即随机森林,作为第一个在自动机处理器(AP)上执行的机器学习算法。AP是一种即将问世的可重构协处理器加速器,它支持针对单个输入数据流并行执行多个自动机。由于这种执行模型,我们的方法从根本上是不同的,将随机森林模型从现有的内存绑定的树遍历算法转换为流水线设计,使用多个自动机独立并并行地检查所有必需的阈值。我们还描述了处理本地硬件中不支持的浮点特征值的技术、执行阶段的流水线以及为实现最快执行时间而压缩自动机的技术。最终的结果是,当使用两个应用程序(即手写数字识别和情感分析)进行评估时,该解决方案的速度分别比基于最先进CPU的单核解决方案快63倍和93倍。我们预计这些算法技术不仅在加速使用随机森林的其他应用中有用,而且在这种新的体系结构上实现其他机器学习方法也是有用的。
A variety of applications employ ensemble learning models, using a collection of decision trees, to quickly and accurately classify an input based on its vector of features. In this paper, we discuss the implementation of such a method, namely Random Forests, as the first machine learning algorithm to be executed on the Automata Processor (AP). The AP is an upcoming reconfigurable co-processor accelerator which supports the execution of numerous automata in parallel against a single input data-flow. Owing to this execution model, our approach is fundamentally different, translating Random Forest models from existing memory-bound tree-traversal algorithms to pipelined designs that use multiple automata to check all of the required thresholds independently and in parallel. We also describe techniques to handle floating-point feature values which are not supported in the native hardware, pipelining of the execution stages, and compression of automata for the fastest execution times. The net result is a solution which when evaluated using two applications, namely handwritten digit recognition and sentiment analysis, produce up to 63 and 93 times speed-up respectively over single-core state-of-the-art CPU-based solutions. We foresee these algorithmic techniques to be useful not only in the acceleration of other applications employing Random Forests, but also in the implementation of other machine learning methods on this novel architecture.