A Hardware-Oriented Echo State Network and Its FPGA Implementation
A Hardware-Oriented Echo State Network and Its FPGA Implementation
A Hardware-Oriented Echo State Network and Its FPGA Implementation
Research Article
A Hardware-Oriented Echo State Network and its
FPGA Implementation
1. INTRODUCTION which the neurons of the reservoir layer are randomly connected
to each other.
Neural networks are highly expected to be applied into embedded
ESN is described by Equations (1) and (2),
systems such as robots and automobiles. However, Deep Neural
Networks (DNNs) [1] require high computational power because
x(t ) = f ((1 - d )x(t - 1) + d (winu(t ) + wres x(t - 1))) (1)
a lot of accumulate operations are being processed using them.
Generally, graphics processing units are used to accelerate these
z (t ) = wout × x(t ) (2)
computations; however, as their power consumption is high, imple-
menting embedded systems using them is difficult due to a power
limit. To mitigate this problem, we have implemented DNNs into where x(t) and z(t) are output of the reservoir and output layer,
hardware such as Field Programmable Gate Arrays (FPGAs), realiz- respectively, time t, u(t) is an input data, d is the leak rate, which is
ing high-speed calculation with low power consumption. the rate of the term x(t − 1) that affects x(t). win, wres, and wout are the
weights of the input, reservoir and output layer, respectively. The
In this paper, we have implemented an Echo State Network (ESN) activation function f is defined as the hyperbolic tangent function.
[2], a kind of Reservoir Computing (RC) into an FPGA. An RC is a The reservoir layer follows the Echo State Property (ESP) [3] and its
Recurrent Neural Network (RNN) model in which only the weights weights are initialized by the following steps:
of an output layer are defined in the training step. ESNs are able to
learn time-series data faster than general RNNs such as Long Short- 1. All weights of the reservoir layer are generated from a normal
term Memory (LSTM). In ESNs, a lot of accumulate operations of distribution.
input data and weights are executed, however, there are limitations
of FPGA resources such as Loot Up Table (LUT), Flip Flop (FF) and 2. A spectral radius (the maximum eigenvalue of the weights) is
Digital Signal Processor (DSP). As a result, we have modified the calculated and all the generated weights are divided by it.
algorithms and architectures of ESNs. Furthermore, we implement 3. All weights are multiplied by a constant value.
the proposed hardware-oriented algorithms into the FPGA and
show the effectiveness of the proposed methods by comparing the
In standard RNNs, all weights are updated following the backprop-
proposed circuit with other.
agation through time algorithm [4]. On the other hand, in the ESN,
only the weights of the output layer are updated in one-shot learning
through ridge regression as follows:
2. ECHO STATE NETWORK
wout = ( X T X + l I )-1 X TY (3)
The ESN is a type of RC which consists of three layers: an input
layer, a reservoir layer and an output layer, shown in Figure 1, in
where X is the matrix of x(t) for all time-series, Y is the matrix of the
Corresponding author. Email: [email protected]
* supervised signal for all time-series, and l is the regularization term.
K. Honda and H. Tamukoh / Journal of Robotics, Networking and Artificial Life 7(1) 58–62 59
uk = m + s vk (5)
REFERENCES
Table 4 | Utilization of resources for the proposed circuit
[1] G.E. Hinton, S. Osindero, Y.W. Teh, A fast learning algorithm for
Used Total Utilization deep belief nets, Neural Comput. 18 (2006), 1527–1554.
BRAM_18k 48 912 5.26 [2] H. Jaeger, The “echo state” approach to analysing and training
DSP_48E 20 2520 0.79 recurrent neural networks – with an Erratum note, German
LUT 28933 274,080 10.56 National Research Center for Information Technology GMD,
FF 44021 548,160 8.03 Bonn, Germany, Technical Report, 148 (2001), 13.
[3] I.B. Yildiz, H. Jaeger, S.J. Kiebel, Re-visiting the echo state prop-
erty, Neural Netw. 35 (2012), 1–9.
Table 5 | Electric energy consumption of each circuits [4] P.J. Werbos, Backpropagation through time: what it does and how
to do it, Proc. IEEE 78 (1990), 1550–1560.
Electric energy
Latency (ms) Power (w) [5] Y. Aratani, Y.Y. Jye, A. Suzuki, D. Shuto, T. Morie, H. Tamukoh,
(w*ms)
Multi-valued quantization neural networks toward hardware
Conventional 0.43 1.46 0.63 implementation, IEEE International Conference on Artificial Life
Proposed 0.20 0.67 0.13 and Robotics (ICAROB), 22 (2017), 132–135.
[6] A.F. Atiya, A.G. Parlos, New results on recurrent network training:
unifying the algorithms and accelerating convergence, IEEE
7. CONCLUSION Trans. Neural Netw. 11 (2000), 697–709.
[7] XILINX, Zynq UltraScale+ MPSoC ZCU102 Evaluation Kit,
We were able to successfully adapt the circuit to enhance ESN com- available from: https://www.xilinx.com/products/boards-and-
putation in the FPGA. As a result, high-speed computation was kits/ek-u1-zcu102-g.html (accessed December 1, 2019).
62 K. Honda and H. Tamukoh / Journal of Robotics, Networking and Artificial Life 7(1) 58–62
AUTHORS INTRODUCTION