This is a simple machine learning library for C++ that I wrote for my own learning purposes. It is not meant to be used in production code, but rather as a learning tool for understanding machine learning algorithms. The library is not using any external libraries. Library also supports Vector and Matrix manipulation.
Features:
- Matrix data structures and operations
- Vector data structures and operations
- Batch gradient descent
- Stochastic gradient descent
- Mini-batch gradient descent
- Data Encoding
- Loading data from CSV files
- Data splitting
- Loading and saving weights and biases to files
- Feature scaling
- Polynomial features
- Linear regression
- Logistic regression
- Locally weighted
- K-means
- K-nearest neighbors
- Visualization
- Neural network
- Utilize GPU
- Decision tree
- Support vector machine
- Random forest
- Performance measurements
- Utilize multi-threading