A TensorFlow implementation of End-To-End Memory Networks with a scikit-learn-like interface for bAbI tasks.
MemN2N is an implementation of End-To-End Memory Networks, a neural architecture for question-answering and reasoning tasks. It uses TensorFlow with a scikit-learn-like interface to train models on the bAbI dataset, solving tasks that require memory and inference. The project provides tools for both single-task and joint training across multiple bAbI challenges.
Machine learning researchers and developers working on natural language processing, question-answering systems, or memory-augmented neural networks. It's particularly useful for those experimenting with the bAbI dataset or memory network architectures.
Developers choose MemN2N for its straightforward, scikit-learn-inspired API built on TensorFlow, making it easy to prototype and evaluate memory networks. It offers reproducible results and configurable training for both isolated and multi-task learning scenarios.
End-To-End Memory Network using Tensorflow
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides a straightforward TensorFlow 1.0 implementation of End-To-End Memory Networks with detailed accuracy tables for single and joint training on bAbI tasks, ensuring reproducible results for research.
Offers a familiar API similar to scikit-learn, as evidenced by the simple training scripts (single.py and joint.py), making it accessible for prototyping and experimentation.
Allows tuning of key hyperparameters like embedding size, hops, and epochs, with examples in the README showing how different settings affect performance across tasks.
Supports both single-task and joint training on bAbI tasks, with provided scripts and results, enabling flexible evaluation of memory network approaches.
Requires TensorFlow 1.0 and scikit-learn 0.17.1, which are deprecated and may not be compatible with modern Python environments or libraries, increasing setup complexity.
Primarily designed for the bAbI dataset with no built-in extensibility for other datasets, restricting its use to specific question-answering benchmarks without custom work.
As shown in the results tables, many bAbI tasks (e.g., tasks 16, 17, 19) have low testing accuracy, indicating the model may not generalize well without extensive hyperparameter tuning.