-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make smart-models a library with a dependency on smart-learner. #13
Comments
Or we could put those objects in smartpy? |
@mgermain raised a good point about that. We should keep in smart-_learner_ things only related to the training/learning process. For instance, the A good rule of thumb to know if something should go in smart-models might be: once a model is trained we should be able to use it without having the smart-learner library installed. That being said, |
I think the main focus of smart-models was really fuzzy from the start. We should use this library to put everything that can help us creating models but no models per se. For instance, we could have many types of layers, activation functions, etc. That said, we definitively need a repo (yes, yet another one) to keep ours models. We could call it smartlearner-examples or smartlab-projects or something along those lines. That repo will contain one folder per project/example (as we wanted to do initially). So, we probably don't want a dependency with smart-learner. Also, @ASalvail I think we both agree we don't want to spend time reimplementing every "brick" that goes into smartmodels, and prefer reusing stuff from blocks whenever possible. If we do go all the way with blocks, we might want to rename this repo smartmodels-blocks just so it's clear to everyone that it has a hard dependency on blocks. |
If we do that, it should be merged in SL.
At this point, these would be private repositories.
That would be difficult to achieve, but I guess not impossible. Still, I'd rather merge the models parts back inside SL. You would have no reasons not to.
I don't see why. We never though of calling SM smartmodels-theano even though it has a pretty hard dependency on it. Blocks is still in its infancy. I think we'd rather try to contribute actively to it instead of go on using SM. However, their pipeline for training is really not what I'm looking for, so SL still has something going for it. tl;dr : ditch smartmodels and integrate the good parts into smartlearners. Use private repositories for models. Cannonical models could be brought into smartlearners, eventually. For now it doesn't really matter as we all work on separate models. |
Right now, there is nothing in smartmodels excepts the perceptron model. What would you want to integrate in smartlearners?
I'll create a smartlearner-examples repo. I intend to fork it and have my different models I'm working on in different branches. Feel free to use your own private repo (my student pack expired so I can't have private repo on github anymore). |
Most of the content of PR #15
That's weird : Github just gave me 5 private repos for life. |
We could more easily import reusable pieces of code that are related only to the models (e.g. WeightInitializer, Layer objects, etc.) if smart-models is a library i.e. accessible via PYTHONPATH.
We already started, just make it clean.
The text was updated successfully, but these errors were encountered: