Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sunho/katoml
C++ ML library without any dependency
https://github.com/sunho/katoml
Last synced: 11 days ago
JSON representation
C++ ML library without any dependency
- Host: GitHub
- URL: https://github.com/sunho/katoml
- Owner: sunho
- Created: 2023-06-25T03:54:47.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-05-17T09:09:51.000Z (6 months ago)
- Last Synced: 2024-10-21T02:42:49.295Z (18 days ago)
- Language: C++
- Homepage:
- Size: 350 KB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# KatoML
C++ machine learning library built from scratch that does not depends on any other external ML related library.
(in fact, only libraries it uses are STL, pybind11, and CUDA)It contains two core C++ modules:
* mltensor: dynamically typed tensor math library with numpy-like interface that supports multiple backends (e.g. CPU and GPU)
* mlcompiler: automatic differentiation library that supports various graph optimization passes in intermediate representations (IR) levelKatoML provides python binding as well so that the power of KatoML can be leveraged through python.
## Yuzu
This is a high-level python library that actually implements various machine learning techniques. There is an option to specify which ML framework it's going to use: either KatoML or PyTorch.
### Gallery
- [ ]
- [ ] PuyoPuyo AI
- [ ] Chess AI
- [ ] Tetris AI
- [x] Cliff Walking
- [x] Taxi
- [x] Moon Lander
- [x] Atari Breakout
- [x] MNIST Letters
- [ ] MNIST Cloths### Reinforcement Learning
- [x] Proximal Policy Optimization (PPO)
- Orthogonal Initialization
- Continuous Rollout Buffer
- Entropy Loss
- [x] Deep Q Network (DQN)
- Dual Deep Q Network (DDQN)
- [x] Vanilla Policy Gradient
- "Reward to go"
- Discounted Factor
- [x] Actor and Critic
- [x] Value Iteration[![Build Status](https://github.com/sunho/KatoML/actions/workflows/test.yml/badge.svg)](https://github.com/sunho/KatoML/actions/workflows/test.yml)