Name Last Update
..
README.md Loading commit data...
fed_train.py Loading commit data...
install_tensorRT.ipynb Loading commit data...
model.py Loading commit data...
onnx2tensorRT.py Loading commit data...
tensorRT_test.py Loading commit data...
torch2onnx.py Loading commit data...
utils_simple.py Loading commit data...

추론시간 개선 - 양자화 시도

Pytorch quantization

  • Pytorch 가 제공하는 라이브러리로 양자화 학습 - 실패
  • 하지만 cpu 에서만 실행 가능, 또한 모델의 채널 수를 신중하게 고르지 않으면 cpu 에서 조차 속도 개선이 미미함.
  • 양자화 과정으로 학습된 모델은 pytorch model -> onnx -> tensorRT 변환이 불가능하여 gpu 에서 실행 불가능.

TensorRT

  • Google Colab - install_tensorRT.ipynb
  • 양자화 학습을 사용하지 않고, 라이브러리를 활용하여 모델의 정밀도 감소 및 양자화 시도.
  • 모델에 따라 속도 차이가 크고 아래 단계의 정밀도가 더 빠른 경우가 있었음
  • 정확한 이해가 필요해 보임 (사용법 미숙, 입력 값은 float 등)
<table>
    <tr align="center">
        <td >Inference Time(msec)</td>
        <td >Densenet - 32 packet</td>
        <td >Ours - 1 packet</td>
    </tr>
    <tr align="center">
        <td >Torch - float32</td>
        <td >19.49</td>
        <td >0.49</td>
    </tr>
    <tr align="center">
        <td >TensorRT - float32</td>
        <td >4.30</td>
        <td >0.37</td>
    </tr>
    <tr align="center">
        <td >TensorRT - float16</td>
        <td >4.32</td>
        <td >0.35</td>
    </tr>
    <tr align="center">
        <td >TensorRT - int8</td>
        <td >3.70</td>
        <td >0.41</td>
    </tr>
</table>