2016-12-14 14 views
6

Chciałbym użyć NVIDIA TensorRT do uruchomienia moich modeli Tensorflow. Obecnie TensorRT obsługuje pliki deskryptorów sieci Caffe prototxt.Uruchom Tensorflow z silnikiem inferencyjnym NVIDIA TensorRT

Nie udało mi się znaleźć kodu źródłowego do przekonwertowania modeli Tensorflow na modele Caffe. Czy są jakieś obejścia?

Odpowiedz

11

TensorRT 3.0 obsługuje import/konwersję wykresów TensorFlow poprzez jego UFF (uniwersalny format ramowy). Brakuje niektórych implementacji warstw i będą wymagać niestandardowych implementacji za pośrednictwem interfejsu IPlugin.

Poprzednie wersje nie obsługiwały natywnego importu modeli/punktów kontrolnych TensorFlow.

Możesz także wyeksportować opis warstw/sieci do swojego własnego formatu pośredniego (np. Pliku tekstowego), a następnie użyć interfejsu API TensorRT C++ do skonstruowania wykresu dla wnioskowania. Musiałbyś oddzielnie wyeksportować wagi/błędy splotu. Pamiętaj, aby zwracać uwagę na format wagi - TensorFlow używa NHWC, podczas gdy TensorRT używa NCHW. W przypadku wag, TF używa RSCK ([filter_height, filter_width, input_depth, output_depth]), a TensorRT używa KCRS.

Zobacz ten papier na dłuższy dyskusji formatach tensorowych: https://arxiv.org/abs/1410.0759

Również ten link ma przydatnych istotne informacje: https://www.tensorflow.org/versions/master/extend/tool_developers/

1

Brak obejścia są aktualnie potrzebne jako nowy TensorRT 3 dodano wsparcie dla TensorFlow.

Powiązane problemy