Conversation
This makes it possible to manage the Net pointer externally (e.g., from the Python interface) using a shared_ptr. No existing code is affected.
Also, internally drop the "Caffe" prefix for classes exported by the internal _caffe module. This change means that SGDSolver will automatically return a Net with the "nice" Python interface rather than the internal one, (and avoids the extra layer of method wrapping that results from switching to composition).
|
Now rewriting |
Expose SGDSolver to pycaffe, switch from inheritance to overriding for caffe.Net
|
Thanks Jon! |
|
Would be great if there was an IPython notebook example of this, or any reference materials to get someone started who's less familiar with caffe internals. Seems like an awesome feature! |
Expose SGDSolver to pycaffe, switch from inheritance to overriding for caffe.Net
|
I second @alexbw's comment. @longjon @shelhamer would it be possible for you to post a brief example on how to use the python interface to train a net? |
|
I third (4th?) this. @longjon @shelhamer or anyone, please can we get a python example for training |
|
Here's solving LeNet in Python from the tutorial branch. The new notebooks and presentation content will be merged soon. |
|
Wonderful! Thank you!! |
This allows training nets directly from Python (without using subprocess or syncing net parameters with the filesystem). The resulting nets can be immediately examined and used for prediction through the existing Python interface. (This is useful for quick interactive experiments, and scripts that need to train nets in a loop or perform intermediate processing during training.)