DeepNet with CUDA
In this project, Shaoguang Cheng implement a deep learning toolbox (DeepNet) including RBM, DBN, Multi-modal DBN with Python, in which the majority of matrix operations are carried on GPU by using the Cudamat to speed up the calculation process. There are some examples to show how to use this package.
This project make some references to the matlab code in https://github.com/dmus/API-Project. However, in comparison with the matlab code, our version improves the performance 25 times (test on the Mnist data).
The source code and data can be download at: https://github.com/shaoguangcheng/DeepNet
1. Requirements
- NumPy (http://www.numpy.org/)
- Cudamat (already included, https://github.com/cudamat/cudamat)
2. Usage
To use the toolbox, following steps are needed.
2.1 compile the Cudamat library :
cd (directory to DeepNet)
cd DeepNet/RBM/cudamat/
Make (note : correct path to gcc-4.6 or below version compiler should be given in Makefile)
2.2 change directory to RBM/
then set the DEEPNET_PATH variable in set_env.sh file to the RBM/ path in your computer
2.3 run command :
source set_env.sh
3. Demos
We provide some demo programs in this toolbox.
3.1 RBM and DBN demos
For RBM and DBN demos, we use Mnist data, which has been contained in our toolbox. To run these demos, you should first uncompress the data in example/.
cd example/
tar -xzvf mnist_data.tar.gz
python rbmDemo.py
or
python DBNdemo.py
For help information, run
python rbmDemo.py --help
or
python DBNdemo.py --help
3.2 Multi-modal DBN demo
For multi-modal demo, we employ SHREC 2007 feature data to show the usage. How the data is generated has been elaborated in paper “Multi-modal Feature Fusion for 3D Shape Recognition and Retrieval”. To run this demo, change directory to multi-modal_demo/ and run
python multiModalityDemo.py
For help information, run
python multiModalityDemo.py --help
4. Platform
This code is only tested on Linux mint-16 64-bit.
5. Contact
If you have any question about this code, please contact Shaoguang Cheng directly. His E-mail: chengshaoguang1291 # gmail.com.