Skip to content

WebNN use cases, models and ops

Ningxin Hu edited this page Jul 4, 2019 · 4 revisions

Use cases and networks

Use case Network
Image classification MobileNet, SqueezeNet, ResNet, Inception
Object/Person detection TinyYOLO, SSD
Semantic Segmentation DeepLab
Skeleton Detection PoseNet

Network/Models and ops

ONNX Op MobileNetV2 (ONNX) MobileNetV2 (TFLite) SqueezeNet1.1 (ONNX) [4] SqueezeNet (TFLite) ResNet50V2 (ONNX) InceptionV4 (TFLite) TinyYOLOV2 (ONNX) [6] SSD MobileNetV1 (TFLite) [7] PoseNet (TFLite) DeepLabV3 (TFLite)
Add ✔️ ✔️ ✔️ ✔️
AveragePool ✔️ [1] ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
BatchNormalization ✔️ ✔️ ✔️
Clip ✔️ [2] ✔️ [2] ✔️ [2] ✔️ [2]
Concat ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Conv ✔️ ✔️ [3] ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ [3] ✔️ [3] ✔️ [3]
Gemm ✔️ ✔️ [5]
LeakyRelu ✔️
MaxPool ✔️ ✔️ ✔️ ✔️ ✔️
Relu ✔️ ✔️ ✔️ ✔️ ✔️
Reshape ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Resize ✔️ [8]
Sigmoid ✔️
Softmax ✔️ ✔️ ✔️ ✔️ ✔️ ✔️

Notes:

  1. GlobalAveragePool op of ONNX
  2. RELU6 op of TFLite
  3. CONV_2D and DEPTHWISE_CONV_2D op of TFLite
  4. Ignore Dropout op of ONNX
  5. FULLY_CONNECTED op of TFLite
  6. Ignore ImageScalar op of ONNX
  7. Ignore TFLite_Detection_PostProcess op of TFLite
  8. RESIZE_BILINEAR op of TFLite

Covered TFLite ops

TFLite Op ONNX Op
ADD Add
AVERAGE_POOL_2D AveragePool
CONCATENATION Concat
CONV_2D Conv
DEPTHWISE_CONV_2D Conv
FULLY_CONNECTED Gemm
LEAKY_RELU LeakyRelu
LOGISTIC Sigmoid
MAX_POOL_2D MaxPool
RELU Relu
RELU6 Clip
RESHAPE Reshape
RESIZE_BILINEAR Resize
SOFTMAX Softmax