Skip to content

Latest commit

 

History

History
42 lines (39 loc) · 9.53 KB

first_wave_models.md

File metadata and controls

42 lines (39 loc) · 9.53 KB

The first-wave models

Model Use Case
SqueezeNet Image Classification
MobileNet Image Classification
ResNet Image Classification
TinyYOLO Object Detection
RNNoise Noise Suppression
NSNet Noise Suppression

The ops required by the first-wave models

Op SqueezeNetV1.1 ONNX TFLite MobileNetV2 ONNX TFLite ResNetV2 ONNX TFLite TinyYOLOV2 ONNX TFLite RNNoise C NSNet ONNX ONNX XLA-HLO
add ✔️ ✔️ ✔️ ✔️ ✔️ Add Add
averagePool2d ✔️ AveragePool Lowering to ReduceWindow, Add and Div.
batchNormalization (1) ✔️ ✔️ ✔️ BatchNormalization BatchNormInference
clamp ✔️ (6) ✔️ Clip Clamp
concat ✔️ ✔️ Concat Concatenate
conv2d ✔️ ✔️ (2) ✔️ ✔️ Conv ConvGeneralDilated
gemm ✔️ Gemm Lowering to Broadcast, Transpose, Mul, Dot and Add
globalAveragePool (a variant of averagePool2d) ✔️ ✔️ GlobalAveragePool Lowering to ReduceWindow, Add and Div.
gru ✔️ (5) ✔️ GRU Lowering to Add, Mul, and Tanh.
leakyRelu (3) ✔️ LeakyRelu Lowering to Mul, Gt and Select.
matmul ✔️ ✔️ MatMul Dot
maxPool2d ✔️ ✔️ ✔️ MaxPool Lowering to ReduceWindow and Max.
mul ✔️ Mul Mul
relu ✔️ ✔️ ✔️ ✔️ Relu Lowering to Max
reshape ✔️ ✔️ ✔️ Reshape Reshape
sigmoid ✔️ ✔️ Sigmoid Lowering to Tanh
softmax (4) ✔️ ✔️ ✔️ Softmax Lowering to Add, Div, Exp, Max, Sub and Reduce.
split ✔️ Split Lowering to Slice
squeeze ✔️ Squeeze Lowering to Reshape
tanh ✔️ Tanh Tanh

Remarks:

  1. TFLite models don't contain batchNormalization. It is fused with other operations during the model conversion.
  2. A depthwise conv2d operation is a variant of grouped conv2d, used in MobileNet, where the groups = input_channels = output_channels.
  3. TFLite models don't contain leakyRelu. It is replaced with other operations during the model conversion.
  4. ONNX models don't contain softmax. It is implemented in the post-processing script.
  5. RNNoise implements gru as a combination of sigmoid, tanh, relu, add, split, matmul and mul.
  6. TFLite model uses Relu6 which can be lowered to clamp.