Skip to content

A colab notebook template to create a Multi-Input-Multi-Output Estimator using Sci-Keras and wrap it around a CapsNet Model to train the model using GridSearchCV hyperparmeter tuning.

License

Notifications You must be signed in to change notification settings

data-hound/Capsnet-with-scikeras-tutorial

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 

Repository files navigation

Capsnet-with-scikeras-tutorial

A colab notebook template to create a Multi-Input-Multi-Output Estimator using Sci-Keras and wrap it around a CapsNet Model to train the model using GridSearchCV hyperparmeter tuning. Read more about scikeras at: https://scikeras.readthedocs.io/en/latest/index.html

The peculiar features of CapsNet that make the implementation non-trivial

  • Capsule Layer - which is a non-conventional layer type, hence, user defined
  • Training via Dynamic Routing - which again can not be trivially implemented.
  • The model defining code, based on https://github.com/XifengGuo/CapsNet-Keras/blob/master/capsulenet.py, has a (X,y) -> (y,X) structure which provides a good opportunity to explore the capabilities that could be afforded by using scikeras applied to multi-input-multi-output(MIMO) models.

A few portions with room for improvement (WIP)

  • Figure out a way to make the code work in eager execution mode
  • Figure out why multiple parallel jobs are not supported with GridSearchCV, i.e., make the estimator picklable.
  • Figure out if it is possible to infer all shapes within the estimator from the data (no hardcoded shapes)

About

A colab notebook template to create a Multi-Input-Multi-Output Estimator using Sci-Keras and wrap it around a CapsNet Model to train the model using GridSearchCV hyperparmeter tuning.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published