https://github.com/sdadia/deep-learning-and-optimization
C++ Optimization/Deep Learning Framework For Research & Prototyping
https://github.com/sdadia/deep-learning-and-optimization
cpp cpp14 deep-learning optimization-library
Last synced: 6 months ago
JSON representation
C++ Optimization/Deep Learning Framework For Research & Prototyping
- Host: GitHub
- URL: https://github.com/sdadia/deep-learning-and-optimization
- Owner: sdadia
- License: mit
- Created: 2017-08-12T20:41:43.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2017-08-17T15:08:59.000Z (over 8 years ago)
- Last Synced: 2025-01-29T16:31:44.616Z (11 months ago)
- Topics: cpp, cpp14, deep-learning, optimization-library
- Language: C++
- Size: 76.2 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README

## Dependencies
- Xtensor : https://github.com/QuantStack/xtensor
- BLAS & LAPACK
- Gtest : https://github.com/google/googletest
- Cmake
- Make
- Doxygen
- Git
## Install Dependencies
sudo apt-get update ; sudo apt-get upgrade
- BLAS and LAPACK, Make, libstdc++, GCC, Doxygen, Gtest:
sudo apt-get install build-essential git libblas-dev liblapack-dev libgtest-dev doxygen
- Xtensor : https://github.com/QuantStack/xtensor
cd $HOME ; git clone https://github.com/QuantStack/xtensor
cd xtensor; mkdir build && cd build;
cmake -DBUILD_TESTS=ON -DDOWNLOAD_GTEST=ON ..
make
make xtest
sudo make install
## Compilation & Install
This will create static library in **build/lib** & executibles in **build/bin/**
make all -j4 -s -O # to make static library and test executible
make docs # to create documentation
make clean # to remove all the above
## Create new layer
Just create a new .hpp and .cpp file with the corresponding layer name
* implement setUp(), forward(), backward() functions
**sigmoid.hpp**
#include "common.hpp"
namespace dpl
{
class MySigmoidLayer
{
void setUp(std::vector inputs);
void forward();
void backward(std::vector grad_from_top);
}
}
**sigmoid.cpp**
#include "common.hpp"
#include "sigmoid.hpp"
namespace dpl
{
void MySigmoidLayer::setUp(std::vector inputs)
{
// code here
}
void MySigmoidLayer::forward()
{
// forward prop code here
}
void MySigmoidLayer::backward(std::vector grad_from_top)
{
// back prop code here
}
}