Как применить оптимизацию к изображению в tensorflow, чтобы вывод нейросети был высоким?

Есть нейросеть на keras, у нее есть 1 вывод softmax (стандартная модель собака или кошка) хочу применить оптимизацию на изображение кошки так, чтобы модель думала что это собака на pytorch такое легко сделать, а как это сделать на tensorflow?

на pytorch выглядит это так:

import torch
from torchvision import transforms
from PIL import Image

img = Image.open("cat.jpg").resize((100,100))

to_tensor = transforms.ToTensor()

img = to_tensor(img)

img.requires_grad = True
print(img.shape)

nn = torch.load("catvdog.pth") #replace to real model

y = torch.tensor([1.0])
optim = torch.optim.Adam([img])
loss = torch.nn.MSELoss()
#tensorflow analog?
for i in range(100):
  losses = loss(nn(img),y)
  losses.backward()
  optim.step()
  optim.zero_grad()
  print(losses.data)
  ...

ссылка на файлы
ссылка на collab


Ответы (0 шт):