Introduction ============ Fireball is a Deep Neural Network (DNN) library for creating, training, evaluating, quantizing, and compressing DNN based models across a range of applications. Features ~~~~~~~~ Here is a summary of main features: * Easily create any network structure using a limited set of fundamental building blocks chained together in a text string. * Create models for classification, regression, object detection, and NLP applications. * Add functionality by creating your own "Blocks" and reuse them in your network structure. * Define your own layer types or loss functions and use them in the network structure. * Apply Low-Rank decomposition on layers of your model to reduce the number of network parameters. * Apply Pruning to the network parameters. * Apply K-Means quantization on network parameters to further reduce the size of model. * Retrain your model after applying low-rank decomposition, pruning, and/or quantization. * Compress models using arithmetic entropy coding. * Export the models to ONNX, Tensorflow, or CoreML even after applying low-rank decomposition, pruning, and/or quantization.