Skip to content

benman1/deep_learning_net

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is a deep learning network implementation based on Karpathy's python implementation.

#Compilation

You have the choice of compiling against different BLAS libraries relying either on the CPU (standard blas or openblas), CUDA, or Open CL). Please see the compile.sh script for options.

Example compilation - compile the network for OpenCL:

./compile.sh train.cpp 1
./compile.sh predict.cpp 1

#Execution

Train with a data set in a csv file, 100 nodes, 10 iterations over the complete dataset, and a learning rate of 0.01.

./train -i mnist_train.csv -c 100 -I 10 -l 0.01 -s network.bin

Predict from a data set in a csv file

./predict -i mnist_train.csv -n network.bin -i mnist_test.csv

##Speed Tests on an NVIDIA Gefore GTX 770 were quite disappointing. A script for testing is included as timings.sh.

#TODO

  • learn from streaming data:
    • allow piping similar to linux/unix programs
    • more flexible input parameters (use param library?)
  • statistics (accuracy, false positives, ..., roc)
  • cross-validation
  • better learning
  • different loss functions

About

This is a c++ deep learning network implementation that runs on cpu and gpu

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published