I have spent a lot of time lately training neural networks. However, my poor laptop has only an AMD GPU, so I am stuck training these networks on the CPU. That means I get to train networks over multiple days only to learn that I made a mistake in my loss function.
I don't have enough money to build a new computer or buy an eGPU, so it seems that my best solution is to train these networks on a cloud provider instead.
There are a lot of options nowadays for these cloud GPUS - AWS, Paperspace, Floydhub, etc.
The good news is that MMA neural networks use MXNET under the hood, and you are able to export any network as MXNET files - Export["mynet.json", network]
appears to work quite well (though I haven't tried to install MXNET to see if they'll actually work correctly).
Has anybody trained these MMA-defined MXNET neural networks on these cloud providers? If so, what are your recommendations? I am specifically looking for:
- ease of use - ideally, export->upload->train->download->use in MMA, with limited hassle - I feel that the data is going to be an annoying step here. I'm currently training on 4000 image-mask pairs, a few hundred MB worth of data. Getting some python written to actually train the network is also not going to be very fun.
- pricing - it seems to be that FloydHub is the best option in terms of price?
- does anyone know if the Wolfram Cloud is going to support GPU training anytime soon and I can save myself this hassle?
Device->"Cloud"
and not have to deal with any of this, but then transferring datasets etc would be hassle. $\endgroup$