目前X2Paddle支持50+的TensorFlow OP,40+的Caffe Layer,覆盖了大部分CV分类模型常用的操作。我们在如下模型列表中测试了X2Paddle的转换。
注: 受限于不同框架的差异,部分模型可能会存在目前无法转换的情况,如TensorFlow中包含控制流的模型,NLP模型等。对于CV常见的模型,如若您发现无法转换或转换失败,存在较大diff等问题,欢迎通过ISSUE反馈的方式告知我们(模型名,代码实现或模型获取方式),我们会及时跟进:)
| 模型 | 代码 | 备注 |
|---|---|---|
| SqueezeNet | code | - |
| MobileNet_V1 | code | - |
| MobileNet_V2 | code | - |
| ShuffleNet | code | - |
| mNASNet | code | - |
| EfficientNet | code | - |
| Inception_V3 | code | - |
| Inception_V4 | code | - |
| Inception_ResNet_V2 | code | - |
| VGG16 | code | - |
| ResNet_V1_101 | code | - |
| ResNet_V2_101 | code | - |
| UNet | code1/code2 | - |
| MTCNN | code | - |
| YOLO-V3 | code | 转换需要关闭NHWC->NCHW的优化,见文档Q2 |
| FALSR | code | - |
| DCSCN | code | - |
| 模型 | 代码 |
|---|---|
| SqueezeNet | code |
| MobileNet_V1 | code |
| MobileNet_V2 | code |
| ShuffleNet_v2 | code |
| mNASNet | code |
| MTCNN | code |
| Mobilenet_SSD | code |
| ResNet18 | code |
| ResNet50 | code |
| Unet | code |
| VGGNet | code |
| FaceDetection | code |
注: 部分模型来源于PyTorch,PyTorch的转换可参考pytorch_to_onnx.md
| 模型 | 来源 | operator version | 备注 |
|---|---|---|---|
| ResNet18 | torchvison.model.resnet18 | 9 | |
| ResNet34 | torchvison.model.resnet34 | 9 | |
| ResNet50 | torchvison.model.resnet50 | 9 | |
| ResNet101 | torchvison.model.resnet101 | 9 | |
| VGG11 | torchvison.model.vgg11 | 9 | |
| VGG11_bn | torchvison.model.vgg11_bn | 9 | |
| VGG19 | torchvison.model.vgg19 | 9 | |
| DenseNet121 | torchvison.model.densenet121 | 9 | |
| AlexNet | torchvison.model.alexnet | 9 | |
| ShuffleNet | onnx official | 9 | |
| Inception_V2 | onnx official | 9 | |
| MobileNet_V2 | pytorch(personal practice) | 9 | |
| mNASNet | pytorch(personal practice) | 9 | |
| EfficientNet | pytorch(personal practice) | 9 | |
| SqueezeNet | onnx official | 9 | |
| Ultra-Light-Fast-Generic-Face-Detector-1MB | onnx_model | 9 | |
| BERT | pytorch(huggingface) | 11 | 转换时需指定input shape,见文档Q3 |
| GPT2 | pytorch(huggingface) | 11 | 转换时需指定input shape,见文档Q3 |