Presentation is loading. Please wait.

Presentation is loading. Please wait.

Approximate Fully Connected Neural Network Generation

Similar presentations


Presentation on theme: "Approximate Fully Connected Neural Network Generation"— Presentation transcript:

1 Approximate Fully Connected Neural Network Generation
Tuba Ayhan, Mustafa Altun Istanbul Technical University Electronics and Communication Engineering Department Emerging Circuits and Computation (ECC) Group – ITU

2 Approximate computing
Exact implementation High performance High area and power consumption Approximate FCNN Generation

3 Approximate computing
Exact implementation High performance High area and power consumption Approximate implementation Lower performance Low area and power consumption Approximate FCNN Generation

4 Approximate FCNN Generation tuba.ayhan@itu.edu.tr
Outline Area reduction Network generation Approximation model Network implementation Multiplier library Architecture template Layer information Error tolerance w, b Performance loss estimation Area cost estimation Network architecture Layer architecture Constant multiplier block Area reduction Error propagation Area reduction algorithm Test results Conclusion Approximate FCNN Generation

5 Approximate FCNN Generation tuba.ayhan@itu.edu.tr
Outline Area reduction Network generation Approximation model Network implementation Multiplier library Architecture template Layer information Error tolerance w, b Performance loss estimation Area cost estimation Network architecture Layer architecture Constant multiplier block Area reduction Error propagation Area reduction algorithm Test results Conclusion Approximate FCNN Generation

6 Approximate FCNN Generation tuba.ayhan@itu.edu.tr
Outline Area reduction Network generation Approximation model Network implementation Multiplier library Architecture template Layer information Error tolerance w, b Performance loss estimation Area cost estimation Network architecture Layer architecture Constant multiplier block Area reduction Error propagation Area reduction algorithm Test results Conclusion Approximate FCNN Generation

7 Approximate FCNN Generation tuba.ayhan@itu.edu.tr
Outline Area reduction Network generation Approximation model Network implementation Multiplier library Architecture template Layer information Error tolerance w, b Performance loss estimation Area cost estimation Network architecture Layer architecture Constant multiplier block Area reduction Error propagation Area reduction algorithm Test results Conclusion Approximate FCNN Generation

8 Network architecture – Layer architecture 1/2
X0 X1 1 LAYER 1 w00 + X w01 w02 w04 b0 w11 w12 w14 w10 b1 b2 b3 b4 w03 w13 X0 X1 O0 O1 y 𝑛 =𝑓 𝑤 0𝑛 . 𝑥 0 + 𝑤 1𝑛 . 𝑥 1 + 𝑏 𝑛 .1 O 0 = 𝑤 00 . 𝑥 0 + 𝑤 01 . 𝑥 1 + 𝑏 0 .1 O 1 = 𝑤 01 . 𝑥 0 + 𝑤 11 . 𝑥 1 + 𝑏 1 .1 .... .... Layer 1 architecture O 4 = 𝑤 04 . 𝑥 0 + 𝑤 14 . 𝑥 1 + 𝑏 4 .1 Approximate FCNN Generation

9 Network architecture – Layer architecture 2/2
X X0 X1 1 LAYER 1 LAYER 2 LAYER 3 w00 + w01 w02 w03 w04 b0 w11 w12 w13 w14 w10 b1 b2 b3 b4 X0 X1 O0 O1 Approximate FCNN Generation

10 Network architecture – Constant multiplier block 1/2
<<0 + <<1 <<2 <<3 <<4 <<5 <<6 <<7 CMB-L1 Xi O0 O1 O2 O3 O4 𝐎= 𝒏=𝟏 𝑲 𝒂 𝒏 𝒙 Constant multiplier block for layer 1: 5 outputs  5 adders 8 bit input  8 shifted versions and a 0. 𝒂 𝒏 = 𝟐 𝒊 ,𝟎 Approximate FCNN Generation

11 Network architecture – Constant multiplier block 2/2
8-bit signed multiplication Error: Mean = 0 std = depends on # addends Implemented on Spartan6 FPGA Approximate FCNN Generation

12 Area reduction – Error propagation
Take binary classification problem X0 X1 O0 O1 O0-O1 Class0 Class1 Exact: A3 Error H3 A2 H2 Approx.: Class0 Class1 A1 H1 Approximation level of layer i: Ai Noise added at layer i: Hi # neurons in layer i: ni O0-O1 Error tolerance, eT 𝑯 𝒊 = 𝑨 𝒊 + 𝑯 𝒊−𝟏 𝟐 𝒏 𝒊−𝟏 𝑯 𝟑 ≤ 𝐞 𝐓 Approximate FCNN Generation

13 Area reduction – Area reduction algorithm
𝐦𝐢𝐧 𝑵 𝑻 .𝑪 𝒙 s.t. 𝑯 𝑳 ≤ 𝒆 𝑻 𝒍𝒃≤𝒙≤𝒖𝒃 Curve fitting applied: C(A)=𝟓𝟓 𝒆 −𝟐.𝟓𝑨 +𝟔𝟑 𝒆 −𝟎.𝟏𝑨 Example 𝑳=𝟑 X0 X1 O0 O1 𝒙= 𝑨 𝟏 𝑨 𝟐 𝑨 𝟑 𝑵= 𝟏𝟎 𝟏𝟓 𝟔 𝑯 𝟑 = 𝑨 𝟑 + 𝑨 𝟐 + 𝑨 𝟏 𝟐 .𝟓 𝟏 𝟐 .𝟑 ≤ 𝒆 𝑻 Approximate FCNN Generation

14 Approximate FCNN Generation tuba.ayhan@itu.edu.tr
Simulation results Simulation Setup #neurons Exact eT = 0.5% eT = 5% eT = 10% 120 1826 1521 513 380 96 1463 1431 529 328 72 1026 927 497 286 60 745 617 314 216 36 614 292 165 163 12 252 106 104 Define architecture Implement Exact Approx.with eT=0.5 Approx.with eT=5 Approx.with eT=10 Include weights Problem 1 Problem 10 Problem 2 . 12 Neurons X0 X1 O0 O1 120 Neurons Approximation Xilinx Spartan6 FPGA with ISE 14.7 design tools Networks have 12 ~120 neurons. 1 exact and 3 approximate implementations are available. Each network is trained for 10 different classification problems. Results are given as average over 10 problems. Approximate FCNN Generation

15 Approximate FCNN Generation tuba.ayhan@itu.edu.tr
Conclusion Approximate FCNN generation framework is proposed with: An FCN structure and An area reduction algorithm utilizing the proposed structure The approximation error of the constant multiplier blocks can be altered. The area consumption of the network is reduced, yet the network can provide targeted classification performance. The area optimization can be completely detached from FCN training. Without prior information on network constants, the framework can still achieve up to 73% area saving with less than 5% loss in classification accuracy, in our examples. This project is funded by TUBITAK (The Scientific and Technological Research Council of Turkey) 1001 Project # 117E078. Approximate FCNN Generation

16 Approximate FCNN Generation tuba.ayhan@itu.edu.tr
Thank you. Istanbul Technical University Emerging Circuits and Computation (ECC) Group Approximate FCNN Generation


Download ppt "Approximate Fully Connected Neural Network Generation"

Similar presentations


Ads by Google