10,100 research outputs found
Variation-aware binarized memristive networks
The quantization of weights to binary states in Deep Neural Networks (DNNs) can replace resource-hungry multiply accumulate operations with simple accumulations. Such Binarized Neural Networks (BNNs) exhibit greatly reduced resource and power requirements. In addition, memristors have been shown as promising synaptic weight elements in DNNs. In this paper, we propose and simulate novel Binarized Memristive Convolutional Neural Network (BMCNN) architectures employing hybrid weight and parameter representations. We train the proposed architectures offline and then map the trained parameters to our binarized memristive devices for inference. To take into account the variations in memristive devices, and to study their effect on the performance, we introduce variations in R ON and R OFF . Moreover, we introduce means to mitigate the adverse effect of memristive variations in our proposed networks. Finally, we benchmark our BMCNNs and variation-aware BMCNNs using the MNIST dataset
Exploring FPGA Implementation for Binarized Neural Network Inference
Deep convolutional neural network has taken an important role in machine learning algorithm. It is widely used in different areas such as computer vision, robotics, and biology. However, the models of deep neural networks become larger and more computation complexity which is a big obstacle for such huge model to implement on embedded systems. Recent works have shown the binarized neural networks (BNN), utilizing binarized (i.e. +1 and -1) convolution kernel and binarized activation function, can significantly reduce the parameter size and computation cost, which makes it hardware-friendly for Field-Programmable Gate Arrays (FPGAs) implementation with efficient energy cost. This thesis proposes to implement a new parallel convolutional binarized neural network (i.e. PC-BNN) on FPGA with accurate inference. The embedded PC-BNN is designed for image classification on CIFAR-10 dataset and explores the hardware architecture and optimization of customized CNN topology. The parallel-convolution binarized neural network has two parallel binarized convolution layers which replaces the original single binarized convolution layer. It achieves around 86% on CIFAR-10 dataset and owns 2.3Mb parameter size. We implement our PC-BNN inference into the Xilinx PYNQ Z1 FPGA board which only has 4.9Mb on-chip Block RAM. Since the ultra-small network parameter, the whole model parameters can be stored on on-chip memory which can greatly reduce energy consumption and computation latency. Meanwhile, we design a new pipeline streaming architecture for PC-BNN hardware inference which can further increase the performance. The experiment results show that our PC-BNN inference on FPGA achieves 930 frames per second and 387.5 FPS/Watt, which are among the best throughput and energy efficiency compared to most recent works
Bimodal Distributed Binarized Neural Networks
Binary Neural Networks (BNNs) are an extremely promising method to reduce
deep neural networks' complexity and power consumption massively. Binarization
techniques, however, suffer from ineligible performance degradation compared to
their full-precision counterparts.
Prior work mainly focused on strategies for sign function approximation
during forward and backward phases to reduce the quantization error during the
binarization process. In this work, we propose a Bi-Modal Distributed
binarization method (\methodname{}). That imposes bi-modal distribution of the
network weights by kurtosis regularization. The proposed method consists of a
training scheme that we call Weight Distribution Mimicking (WDM), which
efficiently imitates the full-precision network weight distribution to their
binary counterpart. Preserving this distribution during binarization-aware
training creates robust and informative binary feature maps and significantly
reduces the generalization error of the BNN. Extensive evaluations on CIFAR-10
and ImageNet demonstrate the superiority of our method over current
state-of-the-art schemes. Our source code, experimental settings, training
logs, and binary models are available at
\url{https://github.com/BlueAnon/BD-BNN}
- …