How can I implement a custom RNN (specifically an ESN) in Tensorflow?
To give a quick summary:
Look in the TensorFlow source code under python/ops/rnn_cell.py
too see how to subclass RNNCell. It's usually like this:
class MyRNNCell(RNNCell):
def __init__(...):
@property
def output_size(self):
...
@property
def state_size(self):
...
def __call__(self, input_, state, name=None):
... your per-step iteration here ...
I may arrive a bit late but for anybody trying to do the same, tensorflow-addons added an implementation of ESNCell and ESN layer.