High-level TensorFlow network definitions with pre-trained weights for easy integration into existing ML workflows.
TensorNets is a Python library that provides high-level implementations of popular deep learning architectures with pre-trained weights for TensorFlow. It solves the problem of quickly integrating state-of-the-art models into existing machine learning workflows without dealing with complex custom classes or implementation details. The library includes models for image classification and object detection with utilities for pre-processing, weight loading, and intermediate layer access.
Machine learning practitioners and researchers who use TensorFlow and want to quickly benchmark or deploy pre-trained models like ResNet, MobileNet, or YOLO without writing boilerplate code. It's particularly useful for those with existing ML workflows who need plug-and-play model integration.
Developers choose TensorNets because it offers simple functional interfaces that return standard TensorFlow tensors, making models easily composable with existing code. Unlike other implementations, it provides consistent APIs across many architectures, pre-trained weights with reproduction utilities, and compatibility with multiple TensorFlow versions.
High level network definitions with pre-trained weights in 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.
Models are simple functions that take and return tf.Tensors, making them easy to plug into existing TensorFlow workflows without custom classes, as demonstrated in the ResNet50 quick example.
Includes pretrained() for loading weights and preprocess() for input normalization, enabling reproduction of original paper results with minimal code, shown in the classification and detection examples.
Provides middles() and outputs() methods to extract values from specific layers, useful for feature extraction and debugging, with detailed examples in the utilities section.
Supports a wide range of models from ResNet to EfficientNet, with performance metrics provided for benchmarking, as seen in the comprehensive tables for image classification and object detection.
FasterRCNN models require manual installation and setup of the external roi_pooling library, adding complexity beyond a standard pip install, as noted in the object detection example.
Using TensorFlow 2 requires importing tensorflow.compat.v1 and disabling v2 behavior, which adds boilerplate code and may feel outdated for modern eager execution workflows.
The library focuses on a specific set of image models; newer or niche architectures are absent, and future work like training codes or additional models is pending, as mentioned in the 'Future work' section.