Тип данных int8 в Pytorch - PullRequest
       29

Тип данных int8 в Pytorch

0 голосов
/ 22 марта 2019

Каков наилучший способ запуска qauntized модели с использованием типов данных int8 в Pytorch?Я знаю, что в pytorch я могу определить тензоры как int8 , однако, когда я на самом деле хочу использовать int8, я получаю:

RuntimeError: _thnn_conv2d_forward is not implemented for type torch.CharTensor

Так что я запутался, как запустить квантованную модель вpytorch, который использует, например, int8, когда тип данных не поддерживается для вычислительных блоков, таких как свертки?Я использую версию Pytorch 1.0.1.post2 .

1 Ответ

1 голос
/ 22 марта 2019

Зависит от ваших целей.

  1. Если вы хотите смоделировать вашу квантованную модель:

Вы можете придерживаться существующего типа данных с плавающей запятой и вводить только усечение при необходимости., т.е.:

 x = torch.floor(x * 2**8) / 2**8

при условии, что x является тензором с плавающей точкой.

Если вы хотите смоделировать свою квантованную модель эффективно :

Тогда, я боюсь, PyTorch будет не очень полезен, поскольку низкоуровневый сверточный оператор реализован только длятип с плавающей точкой.

...