Keras implementation of a NALU layer
Project description
Keras NALU (Neural Arithmetic Logic Units)
Keras implementation of a NALU layer (Neural Arithmetic Logic Units). See: https://arxiv.org/pdf/1808.00508.pdf.
Installation
pip install keras-nalu
Usage
from keras.layers import Input
from keras.models import Model
from keras.optimizers import RMSprop
from keras_nalu.nalu import NALU
# Your dataset
X_test = ... # Interpolation data
Y_test = ... # Interpolation data
X_validation = ... # Extrapolation data (validation)
Y_validation = ... # Extrapolation data (validation)
X_test = ... # Extrapolation data (test)
Y_test = ... # Extrapolation data (test)
# Hyper parameters
epoch_count = 1000
learning_rate = 0.05
sequence_len = 100
inputs = Input(shape=(sequence_len, ))
hidden = NALU(units=2)(inputs)
hidden = NALU(units=2)(hidden)
outputs = NALU(units=1)(hidden)
model = Model(inputs=inputs, outputs=outputs)
model.summary()
model.compile(loss='mse', optimizer=RMSprop(lr=learning_rate))
model.fit(
batch_size=256,
epochs=epoch_count,
validation_data=(X_validation, Y_validation),
x=X_train,
y=Y_train,
)
extrapolation_loss = model.evaluate(
batch_size=256,
x=X_test,
y=Y_test,
)
Options
cell
Cell to use in the NALU layer. May be 'a' (addition/subtraction), 'm' (multiplication/division/power), or None which, will apply a gating function to toggle between 'a' or 'm'.
- Default:
None
- Type:
?('a' | 'm' | None)
e
Epsilon value added to inputs in order to prevent calculating the log of zero.
- Default:
1e-7
- Type:
?float
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
keras-nalu-1.3.0.tar.gz
(14.5 kB
view details)
Built Distribution
File details
Details for the file keras-nalu-1.3.0.tar.gz
.
File metadata
- Download URL: keras-nalu-1.3.0.tar.gz
- Upload date:
- Size: 14.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/0.12.11 CPython/3.7.0 Darwin/17.7.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 85664c773a75797a5fe3fe5db0e0889e4ad553d4184bf5ffdf6d0da89b057f10 |
|
MD5 | f7d6184711025836024623d36e4e6b42 |
|
BLAKE2b-256 | 89f1502af7bedc4fa2fe7b6d35d20a97c30f2989af6486eff0facffe54b7003b |
File details
Details for the file keras_nalu-1.3.0-py3-none-any.whl
.
File metadata
- Download URL: keras_nalu-1.3.0-py3-none-any.whl
- Upload date:
- Size: 38.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/0.12.11 CPython/3.7.0 Darwin/17.7.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7f9f5bacd096dd82e68c8850b57e08b5ce841a87bec595e25a14c45e2620dd7d |
|
MD5 | b13c7b9852cd773f21a284a8f593f2d5 |
|
BLAKE2b-256 | f3220e80455884cb0caf7b0e9e7ed9193998b3d0ef63f5e416bbf70a74115f33 |