JarateKing / keras-vpnn

Implementation of "Volume Preserving Neural Networks" by MacDonald et al. in keras.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

keras-vpnn

Implementation of "Volume Preserving Neural Networks" by MacDonald et al. in keras.

Examples

Using layers

from vpnn.layers import VPNNLayer
from keras.layers import Input
from keras.models import Model

in_dim, out_dim = 784, 10 # MNIST
input_layer = Input((in_dim,))
vpnn_layer = VPNNLayer(in_dim,
                       activation='softmax',
                       output_dim=out_dim)
vpnn_model = Model(input_layer, vpnn_layer(input_layer))

Using models

from vpnn import vpnn

in_dim, out_dim = 784, 10 # MNIST
vpnn_model = vpnn(in_dim,
                  n_layers=3,
                  activation='softmax',
                  out_dim=out_dim)

Demos

Citation of original work:

@misc{macdonald2019volumepreserving,
    title={Volume-preserving Neural Networks: A Solution to the Vanishing Gradient Problem},
    author={Gordon MacDonald and Andrew Godbout and Bryn Gillcash and Stephanie Cairns},
    year={2019},
    eprint={1911.09576},
    archivePrefix={arXiv},
    primaryClass={cs.LG}
}

About

Implementation of "Volume Preserving Neural Networks" by MacDonald et al. in keras.

License:MIT License


Languages

Language:Python 100.0%