Lots of changes to the LMU API to make it more user-friendly, and add support for new features (like multi-dimensional memories and dropout).
Some of the most significant changes are:
Removed a bunch of elements that we haven't really found to be that useful in our experimentation with LMUs, like individual trainable/initializer arguments for each connection within the LMU, or the LMUCellODE class (although we have plans to implement an improved method for optimizing the memory component in the future)
Added the ability to selectively enable/disable connections within the LMU between the hidden and memory components. Note that these default to disabled, so the new default LMU will be a trimmed-down version of the old defaults.
Added support for multi-dimensional memories.
Added support for arbitrary hidden components (anything that implements the Keras RNNCell API can be used, e.g. tf.keras.layers.LSTMCell).
Lots of changes to the LMU API to make it more user-friendly, and add support for new features (like multi-dimensional memories and dropout).
Some of the most significant changes are:
tf.keras.layers.LSTMCell
).See the diff in CHANGES.rst for all the details.