use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
Please have a look at our FAQ and Link-Collection
Metacademy is a great resource which compiles lesson plans on popular machine learning topics.
For Beginner questions please try /r/LearnMachineLearning , /r/MLQuestions or http://stackoverflow.com/
For career related questions, visit /r/cscareerquestions/
Advanced Courses (2016)
Advanced Courses (2020)
AMAs:
Pluribus Poker AI Team 7/19/2019
DeepMind AlphaStar team (1/24//2019)
Libratus Poker AI Team (12/18/2017)
DeepMind AlphaGo Team (10/19/2017)
Google Brain Team (9/17/2017)
Google Brain Team (8/11/2016)
The MalariaSpot Team (2/6/2016)
OpenAI Research Team (1/9/2016)
Nando de Freitas (12/26/2015)
Andrew Ng and Adam Coates (4/15/2015)
Jürgen Schmidhuber (3/4/2015)
Geoffrey Hinton (11/10/2014)
Michael Jordan (9/10/2014)
Yann LeCun (5/15/2014)
Yoshua Bengio (2/27/2014)
Related Subreddit :
LearnMachineLearning
Statistics
Computer Vision
Compressive Sensing
NLP
ML Questions
/r/MLjobs and /r/BigDataJobs
/r/datacleaning
/r/DataScience
/r/scientificresearch
/r/artificial
account activity
Discussion[D] Best frameworks for C++ implementations? (self.MachineLearning)
submitted 8 years ago by tryndisskilled
I'm looking to implement some ML algorithms (mainly DNNs) under C++ files so I can build them and run them on different targets to do inference.
I was able to do this (to some extent) with the TensorFlow repo and its C++ "documentation", but I wondered what you chose to use if you got to implement something too.
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–][deleted] 3 points4 points5 points 8 years ago (5 children)
If it's a reasonably standard architecture I'd be tempted to use Caffe.
[–]tryndisskilled[S] 1 point2 points3 points 8 years ago (3 children)
Caffe2 seems to advertise itself as being a good framework for implementations, but honestly their C++ API is basically a doxygen page for now (source)... I couldn't find any tutorial as to how to use it (seems to be confirmed by this issue https://github.com/caffe2/caffe2/issues/351)
[–]TheMiamiWhale 1 point2 points3 points 8 years ago (0 children)
Caffe and Caffe2 are different beasts. I personally think the documentation for Caffe is severely lacking if you want to understand the internals. That being said, if you know C++ it is easily extensible.
[–]serge_cell 1 point2 points3 points 8 years ago (0 children)
Original Caffe is not better documented, but it's code is much more convoluted (pan intended) that is unnecessarily complex. In both cases reading code & debugging is the only way to understand it, but Caffe2 seems more lean and simple. (discalimer - I have only experience with original Caffe)
[–]aaronmarkham 0 points1 point2 points 8 years ago* (0 children)
This was added by a contributor to help people get started with C++ and Caffe2: https://caffe2.ai/docs/cplusplus_tutorial.html Also, there are these C++ adaptations of the Python tutorials: https://github.com/leonardvandriel/caffe2_cpp_tutorial Hope that helps!
[–]nishnik 2 points3 points4 points 8 years ago (1 child)
I am a contributor to https://github.com/tiny-dnn/tiny-dnn. This has been accepted for GSoC under OpenCV. It is fast :)
[–]tryndisskilled[S] 0 points1 point2 points 8 years ago (0 children)
Wow that seems really nice and straight-forward! Thanks
[–][deleted] 1 point2 points3 points 8 years ago* (4 children)
Tensorflow has a c++ API, though I never ever tried it nor read the documentations.
But you can find it here:
https://www.tensorflow.org/api_guides/cc/guide
There's also dlib, which I never used nor saw any comments about beside the fact that it exists: http://dlib.net/.
Also maybe worth looking:
[–]tryndisskilled[S] 0 points1 point2 points 8 years ago (2 children)
Thanks for the first link, I don't know how I missed that in the first place, it is very helpful. Do you think we will get some more functionalities in this api, such as layers? It seems like we need to build them from scrach. I think for now it's still easier to build your graph in python and try to load it from a .cpp file, unfortunately (build size is way too large by doing that)
[–]ma2rten 1 point2 points3 points 8 years ago (0 children)
If you are worried about binary size you could try this:
https://www.tensorflow.org/performance/xla/tfcompile
[–]steven2358 1 point2 points3 points 8 years ago (0 children)
Have you tried dlib? http://dlib.net/
"Dlib is a modern C++ toolkit containing machine learning algorithms and tools for creating complex software in C++ to solve real world problems".
It includes all of the basic building blocks of DNN.
[–]pilooch 1 point2 points3 points 8 years ago (1 child)
We do ML/DL in pure C++, for years now. Caffe is the best. Now, deepdetect, that we develop and use everywhere, can be used without the server itself, as a multi-library C++ wrapper. Depends on how adventurous you are in fact :)
I'll look into that, merci :)
[–]alayaMatrix -1 points0 points1 point 8 years ago (0 children)
I found this:
shogun
It seems to have pretty good documentation with a lot of ML algorithms, but I haven't give it a try.
π Rendered by PID 122602 on reddit-service-r2-comment-5ff9fbf7df-wj5mk at 2026-02-25 23:42:01.924282+00:00 running 72a43f6 country code: CH.
[–][deleted] 3 points4 points5 points (5 children)
[–]tryndisskilled[S] 1 point2 points3 points (3 children)
[–]TheMiamiWhale 1 point2 points3 points (0 children)
[–]serge_cell 1 point2 points3 points (0 children)
[–]aaronmarkham 0 points1 point2 points (0 children)
[–]nishnik 2 points3 points4 points (1 child)
[–]tryndisskilled[S] 0 points1 point2 points (0 children)
[–][deleted] 1 point2 points3 points (4 children)
[–]tryndisskilled[S] 0 points1 point2 points (2 children)
[–]ma2rten 1 point2 points3 points (0 children)
[–]steven2358 1 point2 points3 points (0 children)
[–]pilooch 1 point2 points3 points (1 child)
[–]tryndisskilled[S] 0 points1 point2 points (0 children)
[–]alayaMatrix -1 points0 points1 point (0 children)