akid is a python neural network package that uses dataism abstraction on backends (Tensorflow, or PyTorch are supported) for research in NNs. It supports Acyclic Directed Computational Graph, Multi-GPU Computing, Visualization (computation graph, weight filters, feature maps, and training dynamics statistics), Meta-Syntax to generate network structure and more.
The source code can be found at Github. See readthedocs for documentation. The document is dated, and has not been updated to include new changes e.g., the PyTorch backend. But the backbone design is the same, and main features are there. A report is available on the design principles.