ElieNicolas BNNs

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 16

December 9,

2022
Binary Neural Elie Nicolas

Networks: An Extensive University of


Balamand
Investigation on FPGA Department
of Computer
Engineering
Outline

• Introduction
• Methodology
• Research Question
• Analysis Technique
• Results
a. Accuracy
b. Size
c. Speed
d. Performance
• Conclusion
Introduction

What are Neural Networks? Convolutional Neural Networks


• Are computing systems inspired by • Special type of neural networks that
human learning in their biological uses convolution instead of general
neurons that constitute of their brain multiplication.
and nervous system. • Designed for image processing and
• They imitate biological learning and recognition
how neurons work in our body.
Introduction (cont.)

Binarized Neural Networks


• A variant of convolutional neural
networks in which all the weights
and activations are purely in binary.
• Its main idea is that since it is binary,
it will use much less memory and
processing than full precision.
• Due to 1-bit of precision, a lot of
information will be lost (loss of
accuracy)
Procedure/Methodology

• In this project, we’ll be comparing the most optimized and


efficient variants of Binary Neural Networks with Convolutional
Neural Networks on a DE1-SoC FPGA to see if they are worth using
nowadays instead of CNNs.
• Key assumptions:
1. BNNs are much faster and more efficient that CNNs
2. BNNs will have a huge loss of accuracy compared to CNNs
3. Modified and optimized versions of BNNs might have a smaller
gap compared to CNNs
Research Question

• The main question we are trying to answer is:


• Are Binary Neural Networks able to replace ordinary Convolutional
Neural Networks for FPGAs and IoTs? If so, what are the best
optimization technique for BNNs to replace and better other types
of neural networks?
Analysis Technique
• A Comparative, Statistical approach is used.
• Averaging of some figures is also used.
Expected Results

• CNNs having better accuracy than BNNs, even the most optimized
types.
• BNNs being faster that CNNs, with less complexity and memory
usage.
• Certain BNNs having an acceptable accuracy.
Discussion of Results

a. Accuracy b. Size

c. Speed d. Performance
a. Accuracy

Full Accuracy BNN Type Accuracy


Precision (%) (%)
CNN Type XNOR-Net 87.7
VGG-Small 92.6 PCNN 91.3
NIN 89.1 RBNN 90.6
ResNet-18 91.2 BONN 96.4
WRN-22 90.8 ReActNet 88.9
b. Size (Average)

• Notice how BNNs are as 16 times


smaller than CNNs in size.
• Theoretically it should be 32 times
smaller, but size the optimizations and
variants take some space also
c. Speed

Full-Precision Time (ms) BNN Type Time (ms)


CNN Type XNOR-Net 5.2
VGG-Small 52 PCNN 7.5
NIN 48 RBNN 4.3
ResNet-18 57 BONN 6.1
WRN-22 49.2 ReActNet 5.7
d. Performance

Full-Precision FLOPs BNN Type FLOPs


CNN Type (x108) (x108)
VGG-Small 16.7 XNOR-Net 1.4
NIN 12.9 PCNN 1.2
ResNet-18 13.6 RBNN 1.22
WRN-22 12.7 BONN 1.5
ReActNet 1.32
Data observations

Average of CNNs Average of BNNs

Accuracy Speed Size Performance Needed


Conclusion

• BNNs are an interesting type of recently developed neural networks which


provide a faster and more efficient neural network than ordinary CNNs.

• Results suggest that BNNs might be useful and able to replace CNNs, but
under certain conditions in which BNNs are optimized.
References

1. Kim, S., & Rutenbar, R. (2018, April). Accelerator Design with Effective Resource Utilization for Binary
Convolutional Neural Networks on an FPGA. 2018 IEEE 26th Annual International Symposium on
Field-Programmable Custom Computing Machines (FCCM). https://doi.org/10.1109/fccm.2018.00052
2. Valencia, R., & Sham, C. W. (2020, December 16). FPGA deployment of neuroevolved Binary Neural
Networks. 2020 IEEE Asia-Pacific Conference on Computer Science and Data Engineering (CSDE).
https://doi.org/10.1109/csde50874.2020.9411568
3. Zhou, Y., Redkar, S., & Huang, X. (2017, August). Deep learning binary neural network on an FPGA.
2017 IEEE 60th International Midwest Symposium on Circuits and Systems (MWSCAS).
https://doi.org/10.1109/mwscas.2017.8052915.
4. Hatano, T., & Yamane, S. (2020, October 13). Boosting Binary Neural Networks for FPGA. 2020 IEEE
9th Global Conference on Consumer Electronics (GCCE).
https://doi.org/10.1109/gcce50665.2020.9292056
5. Fukuda, Y., & Kawahara, T. (2018, May). Stochastic weights binary neural networks on FPGA. 2018 7th
International Symposium on Next Generation Electronics (ISNE).
https://doi.org/10.1109/isne.2018.8394726

6. Yuan, C., & Agaian, S. (in press). A comprehensive review of Binary Neural Network. Cs.NE.
https://doi.org/10.48550/arXiv.2110.06804

You might also like