Сиамская нейронная сеть в Pytorch - PullRequest
0 голосов
/ 16 декабря 2018

Как реализовать сиамскую нейронную сеть в PyTorch?

Что такое сиамская нейронная сеть? Сиамская нейронная сеть состоит из двух идентичных нейронные сети, каждая из которых принимает один вход. Идентичный означает, что две нейронные сети имеют одинаковую архитектуру и имеют одинаковые веса.

enter image description here

1 Ответ

0 голосов
/ 16 декабря 2018

Реализовать сиамские нейронные сети в PyTorch так же просто, как дважды вызвать сетевую функцию на разных входах.

mynet = torch.nn.Sequential(
        nn.Linear(10, 512),
        nn.ReLU(),
        nn.Linear(512, 2))
...
output1 = mynet(input1)
output2 = mynet(input2)
...
loss.backward()

При вызове loss.backwad() PyTorch автоматически суммирует градиенты, поступающие из двух вызовов mynet.

Вы можете найти полноценный пример здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...