{"id":16623173,"url":"https://github.com/siris2314/mlpp","last_synced_at":"2026-04-25T22:33:49.546Z","repository":{"id":87110896,"uuid":"595703771","full_name":"Siris2314/MLPP","owner":"Siris2314","description":"ML++ is a C++ Machine Learning Library built from the ground up using only C/C++ standard libraries","archived":false,"fork":false,"pushed_at":"2023-05-19T01:20:00.000Z","size":14761,"stargazers_count":0,"open_issues_count":2,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-04T21:44:12.738Z","etag":null,"topics":["api","bayesian-network","convolutional-neural-network","cpp","cpp-programming","cpp20","machine-learning","machine-learning-algorithms","neural-network","neural-networks","opencv","torch"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Siris2314.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-01-31T16:32:46.000Z","updated_at":"2023-05-09T22:00:47.000Z","dependencies_parsed_at":null,"dependency_job_id":"73d13b03-3d5a-479a-8d36-506e380fec9a","html_url":"https://github.com/Siris2314/MLPP","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Siris2314/MLPP","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Siris2314%2FMLPP","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Siris2314%2FMLPP/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Siris2314%2FMLPP/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Siris2314%2FMLPP/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Siris2314","download_url":"https://codeload.github.com/Siris2314/MLPP/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Siris2314%2FMLPP/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32279656,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-25T18:29:39.964Z","status":"ssl_error","status_checked_at":"2026-04-25T18:29:32.149Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","bayesian-network","convolutional-neural-network","cpp","cpp-programming","cpp20","machine-learning","machine-learning-algorithms","neural-network","neural-networks","opencv","torch"],"created_at":"2024-10-12T03:22:43.631Z","updated_at":"2026-04-25T22:33:49.541Z","avatar_url":"https://github.com/Siris2314.png","language":"C++","readme":"# ML++\n\nML++ is a C++ Machine Learning Library built from the ground up using only C/C++ standard libraries. ML++ is made not only to be used to also educate on implementing Machine Learning algorithms from scratch in C++.\n\n\n## Setup\n\nYou can choose to either fork the repo or simply download the contents of the repo it, do as you see fit,understanding the structure of how the code is setup is important to understand how to use the library.\n\n### Structure\n\nThe structure of the library is as follows:\n\n```\n├── ML\n│   ├── include\n│   │   ├── common.hpp\n│   │   ├── data.hpp\n│   │   ├── handle_data.hpp\n│   ├── KMEANS\n│   │   ├── include\n│   │   │   ├── kmeans.hpp\n│   │   ├── src\n│   │   │   ├── kmeans.cc\n|   |   ├── Makefile\n|   ├── CNN\n│   │   ├── include\n│   │   │   ├── Config.hpp\n│   │   │   ├── convolution.hpp\n│   │   │   ├── Layer \n│   │   │   │   ├── Conv.hpp\n│   │   │   │   ├── FullyConnected.hpp\n│   │   │   │   ├── Pooling.hpp\n│   │   │   ├── Activation\n│   │   │   │   ├── ReLU.hpp\n│   │   │   │   ├── Sigmoid.hpp\n│   │   │   │   ├── Softmax.hpp\n│   │   │   |   ├── Tanh.hpp\n|   |   |   |   ├── Identity.hpp\n│   ├── KNN\n│   │   ├── include\n│   │   │   ├── knn.hpp\n│   │   ├── src\n│   │   │   ├── knn.cc\n|   |   ├── Makefile\n│   ├── NN\n│   │   ├── include\n│   │   │   ├── nn.hpp\n│   │   |   ├── layer.hpp\n|   |   |   ├── neuron.hpp\n│   │   ├── src\n│   │   │   ├── nn.cc\n│   │   │   ├── layer.cc\n│   │   │   ├── neuron.cc\n|   |   ├── Makefile\n│   ├── src\n│   │   ├── common.cc\n│   │   ├── data.cc\n│   │   ├── handle_data.cc\n|   ├── add_model.sh\n|   ├── exist.sh\n|   ├── Makefile\n├── dataset\n│   ├── MNIST\n```\n\nThe `ML` directory contains all the source code for the library, the `dataset` directory contains all the datasets that are used for testing the library, currently only the MNIST dataset is available, but you can test with whichever dataset you want, also be sure to change the path to the dataset in the functions that load the dataset.\n### Building\n\nTo build the library you can simply run the `make` command in the root directory of the repo, this will build all the libraries and place them in the `lib` directory, you can then link the libraries to your project and use them. Each model has it's own makefile, so you can also build each model individually.\n\n### Current Models\n\nCurrently the following models are available:\n\n* K-Means Clustering\n* K-Nearest Neighbors\n* Neural Network (Feed Forward)\n* Convolutional Neural Networks\n\nI will add more models in the future.\n\n### Adding Models\n\nIf you want to add models, use the `add_model.sh` script, it will create the necessary directories and files for you, you can then add your code to the files and build the library. This way the structure of the library is maintained.\n\n\n## License\n\n[MIT](https://choosealicense.com/licenses/mit/)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsiris2314%2Fmlpp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsiris2314%2Fmlpp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsiris2314%2Fmlpp/lists"}