I am currently studying GPU programming to improve the performance of machine learning algorithms. I initially try to learn cuda programming with pure c, then I found pycuda, which for me was a wrapper for the cuda library, and then I found theano and pylearn2 and got a little confused:
I understand them as follows:
- pycuda: python shell for cuda library. A.
- theano: similar to numpy but transparent to the GPU and CPU.
- pylearn2: A deep learning package that is built on theano and has implemented several machine learning / deep learning models.
Since I'm new to GPU programming, do I have to start learning with a C / C ++ implementation, or starting with pycuda enough, even starting with theano? For example. I would like to implement the randomForest model after learning GPU programming. Thanks.
theano deep-learning pycuda
user1754197
source share