StreamBrain: An HPC Framework for Brain-like Neural Networks on CPUs, GPUs and FPGAs
The modern deep learning method based on backpropagation has surged in popularity and has been used in multiple domains and application areas. At the same time, there are other -- less-known -- machine learning algorithms with a mature and solid theoretical foundation whose performance remains unexplored. One such example is the brain-like Bayesian Confidence Propagation Neural Network (BCPNN). In this paper, we introduce StreamBrain -- a framework that allows neural networks based on BCPNN to be practically deployed in High-Performance Computing systems. StreamBrain is a domain-specific language (DSL), similar in concept to existing machine learning (ML) frameworks, and supports backends for CPUs, GPUs, and even FPGAs. We empirically demonstrate that StreamBrain can train the well-known ML benchmark dataset MNIST within seconds, and we are the first to demonstrate BCPNN on STL-10 size networks. We also show how StreamBrain can be used to train with custom floating-point formats and illustrate the impact of using different bfloat variations on BCPNN using FPGAs.
Code (1)
Tasks
BIG-bench Machine LearningSimilar Papers 제목 키워드 기반
Higgs Boson Classification: Brain-inspired BCPNN Learning with StreamBrain
One of the most promising approaches for data analysis and exploration of large data sets is Machine Learning techniques that are inspired by brain models. Such methods use alternative learning rules potentially more eff…
ClassificationChunkflow: Distributed Hybrid Cloud Processing of Large 3D Images by Convolutional Nets
It is now common to process volumetric biomedical images using 3D Convolutional Networks (ConvNets). This can be challenging for the teravoxel and even petavoxel images that are being acquired today by light or electron …
Hybrid CPU-GPU Framework for Network Motifs
Massively parallel architectures such as the GPU are becoming increasingly important due to the recent proliferation of data. In this paper, we propose a key class of hybrid parallel graphlet algorithms that leverages mu…
CPUGPUBrainSlug: Transparent Acceleration of Deep Learning Through Depth-First Parallelism
Neural network frameworks such as PyTorch and TensorFlow are the workhorses of numerous machine learning applications ranging from object recognition to machine translation. While these frameworks are versatile and strai…
Deep LearningMachine TranslationObject RecognitionTranslationPLSSVM: A (multi-)GPGPU-accelerated Least Squares Support Vector Machine
Machine learning algorithms must be able to efficiently cope with massive data sets. Therefore, they have to scale well on any modern system and be able to exploit the computing power of accelerators independent of their…
CPU