onithrasML
onithrasML is an open-source machine learning library for Python, designed to provide simple and efficient implementations of common machine learning utilities and algorithms.
The library combines a Python interface with a C++ backend for performance-oriented computation.
Features
- Data imputation utilities
- Feature scaling utilities
- Linear Regression
- Logistic Regression
- Decision Tree
- Model selection utilities
- C++ backend for computationally intensive operations
- Simple Python API
- Easy integration into machine learning projects
Installation
Install the latest version from PyPI:
pip install onithrasml
Quick Start
import onithrasML
You can then use the modules provided by the library according to your machine learning workflow.
Project Structure
onithrasML/ ├── src/ │ └── onithrasML/ │ ├── init.py │ ├── _backend/ │ ├── imputer/ │ ├── linear_model/ │ └── model_selection/ │ ├── cpp/ │ ├── bindings.cpp │ ├── decision_tree.cpp │ ├── linear_regression.cpp │ └── logistic_regression.cpp │ ├── tests/ ├── benchmarks/ ├── README.md ├── LICENSE └── pyproject.toml
Machine Learning Models
Linear Regression
from onithrasML.linear_model import LinearRegression model = LinearRegression() model.fit(X_train, y_train) predictions = model.predict(X_test)
Logistic Regression
from onithrasML.linear_model import LogisticRegression model = LogisticRegression() model.fit(X_train, y_train) predictions = model.predict(X_test)
Imputation
The imputer module provides utilities for handling missing values in datasets.
from onithrasML.imputer import ...
Model Selection
The model_selection module contains utilities useful for selecting and evaluating machine learning models.
from onithrasML.model_selection import ...
C++ Backend
Performance-critical components are implemented in C++ and exposed to Python through bindings.
The C++ backend currently includes implementations related to:
- Linear Regression
- Logistic Regression
- Decision Tree
This allows computationally intensive operations to be executed using native compiled code while maintaining a Python-friendly API.
Development
Clone the repository:
git clone https://github.com/vishwa-Ansh/onithrasML.git cd onithrasML
Create a virtual environment:
python -m venv .venv source .venv/bin/activate
Install the development dependencies:
pip install -r requirements.txt
Build the package:
python -m build
Check the distributions:
python -m twine check dist/*
Testing
Run the test suite with:
pytest
Benchmarks
Benchmark programs are available in the benchmarks/ directory and can be used to evaluate the performance of the implemented algorithms.
License
This project is open source. See the LICENSE file for details.
Contributing
Contributions, bug reports, feature requests, and improvements are welcome.
To contribute:
- Fork the repository.
- Create a new branch.
- Make your changes.
- Add or update tests.
- Commit your changes.
- Open a pull request.
Author
Ansh Vishwakarma
GitHub: https://github.com/vishwa-Ansh
Project
onithrasML — Machine Learning library for Python with a C++ backend.
Release files for onithrasML 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| onithrasml-0.1.1.tar.gz | 4.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| onithrasml-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 9.1 kB
Release files / onithrasml-0.1.1.tar.gz
| Download URL | onithrasml-0.1.1.tar.gz |
|---|---|
| Size | 4.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
088a6e9e7e912e3a9d202ef2cbb923198bb2cca9c4ff9f74695dc2032cc84177
|
|
BLAKE2b-256 checksum How to use checksums |
c28cb20b90b4816c5fa1b6bd1613a9333032b49d323c13da60a88f9ba799ce56
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.9
|
Release files / onithrasml-0.1.1-py3-none-any.whl
| Download URL | onithrasml-0.1.1-py3-none-any.whl |
|---|---|
| Size | 4.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8b4bd1acda5b17e455d7e70c35cffa8ff9d36a62bd0f7e4146a8fed8af5a0036
|
|
BLAKE2b-256 checksum How to use checksums |
542b080b8e6b4859c4b5e91fe4ade7d1f67936f876a1ec232a74f18642f7e940
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.9
|