Closed dayo05 closed 2 years ago
@dayo05
I can not speak for the Microsoft team.
The TorchSharp project need more contribution like yourself to support new users to join this project.
I took the liberty to check your github profile. https://github.com/dayo05/DeepLearningExample
Do consider porting some of these codes to TorchSharp and hopefully you find something that need improvement in TorchSharp
Introducing deep learning starting with PyTorch
Although the site is written in Korean, it has the comprehensive structure with PyTorch codes to support new users who prefer .NET to TorchSharp. Once, they realize they can do almost everything provided by the site with minimum effort using TorchSharp.
If you have further questions, please ask.
Me or one of Microsoft team will answer you.
==> The goal, some computer science lecturers who prefer .NET start to use TorchSharp to teach PyTorch
@dayo05 -- this is very nice. I'll take a look at it, but I would like to encourage you to do something different with this:
The example datasets belong in torchvision (I just put them in examples, because the design was kind of hacky, and just to get things going). I would like to get a number of data sets into torchvision (and start on torchtext data sets), and they should look as much like PyTorch as possible.
For small data sets, that fit in GPU memory, putting everything in tensors and moving them to GPU makes sense, just like the current readers do. For larger datasets, it would be good to have a mode that only reads in a number of mini-batches at a time, and then refills with new ones once iterating past the ones that are already in memory. Reusing the tensors would be a good idea here, if it's safe to do so (the training loop should not keep old data live, anyway.
So, I would encourage you to take this work over to the main repo, start on a datasets.MNIST implementation, and we can iterate on the design together.
If you want to, of course -- no pressure. :-)
I think this will improve TorchSharp more easier for beginners.
In pytorch:
In my commit: