Skip to content

Discussion: Synaptic 2.x #140

@Jabher

Description

@Jabher

So, we want to make Synaptic more mature.
I've created a design draft to think on it.
https://github.com/cazala/synaptic/wiki/Design-draft:-2.x-API

Let's discuss.

The most significant changes in design:

  • Pre-built architectures are dropped. Examples will be provided and should be used instead.
    They are actually an examples of "how-to" and so they are usually useless for real projects.
  • biggest API parts (activate, train etc) are async now.
  • Every "moving part" used by an API is placed separately, and so if NN is simply created and loaded - there will be no need in trainer, optimization objectives, optimizers and everything else required for training. This is very useful for a client run, when only activation is needed without any training.
  • Multiple back-ends are supported. Each of them has its own strengths and weaknesses.
  • API fingerprint is as small as possible now.
  • Lot of stuff is configurable, lot of staff is pre-built.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions