Преобразование PyTorch в CoreMLPython

Программы на Python
Ответить
Anonymous
 Преобразование PyTorch в CoreML

Сообщение Anonymous »

У меня есть эта модель: https://github.com/williamyang1991/DualStyleGAN, и я пытаюсь преобразовать ее в CoreML. На данный момент я создаю копию исходного блокнота Colab и добавляю в конце два блока:

Код: Выделить всё

!pip install coremltools
import coremltools as ct
и

Код: Выделить всё

#@title Convert inverted image.
inverted_latent = torch.Tensor(result_latents[0][4]).cuda().unsqueeze(0).unsqueeze(1)

with torch.no_grad():
net.eval()

[sampled_src, sampled_dst] = net(inverted_latent, input_is_latent=True)[0]

traced_model = torch.jit.trace(net, inverted_latent)
mlmodel = ct.convert(traced_model, inputs=[ct.ImageType(name="input", shape=inverted_latent.shape,bias=[-1,-1,-1],scale=2.0/255.0)])
mlmodel.save("modelsaved.mlmodel")
Чтобы запустить его, вы должны поместить любое изображение лицом в /content и в /usr/local/lib/python3.7/dist-packages/torchvision/transforms/functional.pyзамените метод round в 545, 546 строках на np.round
Но тогда он не работает

mlmodel = ct.convert(...

with:

RuntimeError: PyTorch Convert функция для операции «pythonop» не реализована.

Я предлагаю переписать этот модуль с помощью методов, которые можно было бы преобразовать, но я прав? Я не могу понять, как найти источник этого модуль.
Поэтому мой вопрос:
Если я правильно думаю, как я могу найти источник модуля?
И если я ошибаюсь, пожалуйста, сообщите мне правильный способ сделать это.

Подробнее здесь: https://stackoverflow.com/questions/741 ... -to-coreml
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»