40 lines
1.2 KiB
Markdown
40 lines
1.2 KiB
Markdown
# squeezenet v1.1
|
|
|
|
SqueezeNet 1.1 model from the official SqueezeNet repo
|
|
<https://github.com/DeepScale/SqueezeNet/tree/master/SqueezeNet_v1.1>
|
|
|
|
SqueezeNet 1.1 has 2.4x less computation and slightly fewer parameters
|
|
than SqueezeNet 1.0, without sacrificing accuracy.
|
|
|
|
For the Pytorch implementation, you can refer to [pytorchx/squeezenet](https://github.com/wang-xinyu/pytorchx/tree/master/squeezenet)
|
|
|
|
Following tricks are used in this squeezenet,
|
|
|
|
- MaxPool2d(ceil_mode=True), ceilmode=True, which is not supported in Tensorrt4, we use a padding layer before maxpool to solve this problem.
|
|
- For Pytorch AdaptiveAvgPool2d(), we use fixed input dimension, and use regular average pooling to replace it.
|
|
|
|
```
|
|
// 1. generate squeezenet.wts from [pytorchx/squeezenet](https://github.com/wang-xinyu/pytorchx/tree/master/squeezenet)
|
|
|
|
// 2. put squeezenet.wts into tensorrtx/squeezenet
|
|
|
|
// 3. build and run
|
|
|
|
cd tensorrtx/squeezenet
|
|
|
|
mkdir build
|
|
|
|
cd build
|
|
|
|
cmake ..
|
|
|
|
make
|
|
|
|
sudo ./squeezenet -s // serialize model to plan file i.e. 'squeezenet.engine'
|
|
sudo ./squeezenet -d // deserialize plan file and run inference
|
|
|
|
// 4. see if the output is same as pytorchx/squeezenet
|
|
```
|
|
|
|
|