TensorFlow¶
TensorFlow | TensorFlow Lite | TensorFlow Lite Micro | TensorFlow.js | TensorFlow Serving | |
---|---|---|---|---|---|
Usage | Model development | Deployment to Microprocessors (laptops, mobile phones, RaspberryPi) | Deployment to Microcontrollers | Deployment to Web | Cloud, On-Prem |
Optimized for | X86 TPU GPU | X86 ARM Cortex A | ARM Cortex M DSP MCU | Browser & Node | |
User | ML researcher | Application developer | |||
Supports training | ✅ | ❌ | ❌ | ❌ | ❌ |
Supports inference | ✅ (inefficient) | ✅ | ✅ | ✅ | ✅ |
No of ops supported | ~1400 | ~130 | ~50 | ||
Native quantization support | ❌ | ✅ | ✅ | ||
OS-independent (No OS required) | ❌ | ❌ | ✅ | ||
Memory mapping of models | ❌ | ✅ | ✅ | ||
Delegation to accelerators | ✅ | ✅ | ❌ | ||
Distributed compute | Needed | Not needed | Not needed | ||
Binary size | > 3MB | 100KB | ~10KB | ||
Base memory footprint | ~ 5MB | 300KB | 20KB | ||
Weights | Variable | Fixed | |||
Topology Neuron connections | Variable | Fixed |
References¶
- Learn TensorFlow and Deep Learning (beginner friendly code) | Daniel Bourke
- Deep Learning with Keras & TensorFlow | LearnDataa
- Zero to Deployment - Deep Learning | Aladdin Persson