Skip to content

Latest commit

 

History

History
32 lines (22 loc) · 1.46 KB

README.md

File metadata and controls

32 lines (22 loc) · 1.46 KB

One Shot Learning

One Shot Learning using Omniglot data set and Siamese Network

This repository contains an implementation version of the paper koch et al, Siamese Networks for one-shot learning.

The model has been created using keras.

The codebase has been divided in the following components:

  • OmniglotService: Download the Omniglot data from the repository.
  • OmniglotLoader: Load the Omniglot data based on categories.
  • OmniglotDataset: Expose an api to process Omniglot data set.
  • SiameseNet: Create a SiameseNetwork with the default configuration.
  • OneShotRunner: Run One-shot learning experiments using Omniglot data set and siamese network.
  • RunnerVisualizer: To display runner results.
  • Utils: I/O funtionality to read/save state/data.

Details about the machine learning problem, the implementation and experiments are explained in the one shot notebook.

Disclaimer

This is an early version of a work in progress prototype.

Roadmap

  • Allow Data preprocessing (normalization, resizing, augmentation, ...)
  • Allow more configuration parameters for the runner
  • Allow more distance discriminator functions to compare two encoded images
  • Implement a NetworkConfigurator component for hyperparameter tunning
  • Implement another model using a different approach
  • ...