This repository tries to implement the code for Siamese Neural Networks for One-shot Image Recognition by Koch et al..
Siamese Networks are widely used for one shot learning tasks such as image verification and facial recognition. Siamese Nets calculate the degree of similarity or differences between given two images. The basic idea behind siamese nets is to pass two images one by one through a network and then compute the similarity score between the feature vectors produced during feedforward. In the paper, the authors have used a simple "siamese twin" convnet to compute the feature vectors. The L1 distance between the feature vectors is then passed through a fully connected layer to compute the final simmilarity score.
The whole training was done on google colab. The omniglot_p.ipynb notebook can be imported to colab for training.