Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
A library created to revitalize C++ as a machine learning front end. Per aspera ad astra.
| Date | Stars |
|---|---|
| 2026-07-31 | 1106 |
| 2026-08-02 | 1106 |
| 2026-08-06 | 1106 |
Today
— stars today
This week
— stars this week
This month
— stars this month
Momentum
0.0
growth rate 0.00%/day
# ML++
Machine learning is a vast and exiciting discipline, garnering attention from specialists of many fields. Unfortunately, for C++ programmers and enthusiasts, there appears to be a lack of support in the field of machine learning. To fill that void and give C++ a true foothold in the ML sphere, this library was written. The intent with this library is for it to act as a crossroad between low-level developers and machine learning engineers.
<p align="center">
<img src="https://user-images.githubusercontent.com/78002988/119920911-f3338d00-bf21-11eb-89b3-c84bf7c9f4ac.gif"
width = 600 height = 400>
</p>
## Installation
Begin by downloading the header files for the ML++ library. You can do this by cloning the repository and extracting the MLPP directory within it:
```
git clone https://github.com/novak-99/MLPP
```
Next, execute the "buildSO.sh" shell script:
```
sudo ./buildSO.sh
```
After doing so, maintain the ML++ source files in a local directory and include them in this fashion:
```cpp
#include "MLPP/Stat/Stat.hpp" // Including the ML++ statistics module.
int main(){
...
}
```
Finally, after you have concluded creating a project, compile it using g++:
```
g++ main.cpp /usr/local/lib/MLPP.so --std=c++17
```
## Usage
Please note that ML++ uses the ```std::vector<double>``` data type for emulating vectors, and the ```std::vector<std::vector<double>>``` data type for emulating matrices.
Begin by including the respective header file of your choice.
```cpp
#include "MLPP/LinReg/LinReg.hpp"
```
Next, instantiate an object of the class. Don't forget to pass the input set and output set as parameters.
```cpp
LinReg model(inputSet, outputSet);
```
Afterwards, call the optimizer that you would like to use. For iterative optimizers such as gradient descent, include the learning rate, epoch number, and whether or not to utilize the UI panel.
```cpp
model.gradientDescent(0.001, 1000, 0);
```
Great, you are now ready to test! To test a singular testing instance, utilize the following function:
```cpp
model.modelTest(testSetInstance);
```
This will return the model's singular prediction for that example.
To test an entire test set, use the following function:
```cpp
model.modelSetTest(testSet);
```
The result will be the model's predictions for the entire dataset.
## Contents of the Library
1. ***Regression***
1. Linear Regression
2. Logistic Regression
3. Softmax Regression
4. Exponential Regression
5. Probit Regression
6. CLogLog Regression
7. Tanh Regression
2. ***Deep, Dynamically Sized Neural Networks***
1. Possible Activation Functions
- Linear
- Sigmoid
- Softmax
- Swish
- Mish
- SinC
- Softplus
- Softsign
- CLogLog
- Logit
- Gaussian CDF
- RELU
- GELU
- Sign
- Unit Step
- Sinh
- Cosh
- Tanh
- Csch
- Sech
- Coth
- Arsinh
- Arcosh
- Artanh
- Arcsch
- Arsech
- Arcoth
2. Possible Optimization Algorithms
- Batch Gradient Descent
- Mini-Batch Gradient Descent
- Stochastic Gradient Descent
- Gradient Descent with Momentum
- Nesterov Accelerated Gradient
- Adagrad Optimizer
- Adadelta Optimizer
- Adam Optimizer
- Adamax Optimizer
- Nadam Optimizer
- AMSGrad Optimizer
- 2nd Order Newton-Raphson Optimizer*
- Normal Equation*
<p></p>
*Only available for linear regression
3. Possible Loss Functions
- MSE
- RMSE
- MAE
- MBE
- Log Loss
- Cross Entropy
- Hinge Loss
- Wasserstein Loss
4. Possible Regularization Methods
- Lasso
- Ridge
- ElasticNet
- Weight Clipping
5. Possible Weight Initialization Methods
- Uniform
- XavieExcerpt of 7,894 characters
Read on GitHub184
Australia
1
1
Would you bet a product on this? Bounded 0–100 and slow moving.
matched fp:87e25d0ee3553a65, topic:deep-learning