A pure-Python machine learning and deep learning framework with no external dependencies.
Project description
PyLearn-AI
PyLearn-AI is a pure-Python machine learning and deep learning framework built entirely with the Python standard library. No external dependencies required.
Features
- No dependencies (NO NumPy, SciPy, or Pandas), just Python 3.10
- Supports basic machine learning and deep learning models
- Includes custom matrix and tensor operations
- Educational and easy to understand, encouraging users to learn the underlying functionality of modern ML/DL libraries
Note: The dependencies listed in requirements.txt are only for documentation, testing, and package publishing.
Novelty
Before starting this project, I searched for similar packages and was not surprised to find a handful of them, many of which use NumPy at the core of their framework.
What makes this project stand out is that PyLearn-AI does not use NumPy or any other external libraries.
At the core of the package is the UnitFrame data structure, which assists with common matrix operations performed in modern ML/DL libraries. It serves a similar purpose as a NumPy array or a pandas DataFrame.
The compromise with this approach is speed, efficiency, and computation.
This package is not intended to be used to train, optimize, or build the next machine learning model. It is intended as a learning experience to remove as much abstraction as possible.
Work in Progress
To my surprise, PyLearn-AI was available in the Python Package Index. To secure the name, I published the package prematurely. I will be releasing beta versions as development continues.
Installation
pip install pylearn-ai
Usage
from pylearn.core.unitframe import UnitFrame
uf = UnitFrame([[1, 2], [3, 4]])
print(uf)
Project Structure
PyLearn-AI/
├── core/
├── neural/
├── reinforcement/
├── supervised/
├── unsupervised/
├── utils/
- core: Core algorithms, structures, and tensor class
- neural: Deep learning models (MLP, CNN, GNN)
- reinforcement: Reinforcement learning (Q-learning, policy optimization)
- supervised: Supervised learning (regression, classification)
- unsupervised: Clustering, dimensionality reduction
- utils: Activations, losses, metrics, and preprocessing
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pylearn_ai-0.1.0b2.tar.gz.
File metadata
- Download URL: pylearn_ai-0.1.0b2.tar.gz
- Upload date:
- Size: 5.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9e274002bf95f9f52a675e5319793f65ff5eda3e5ed54e45724892470ff9e3e4
|
|
| MD5 |
8b135a1c6adb0f620d6599a4ff8661ef
|
|
| BLAKE2b-256 |
3f36bb64cec14538971320214627eee17283c5bbc1c4b00ebec147d83241bc44
|
File details
Details for the file pylearn_ai-0.1.0b2-py3-none-any.whl.
File metadata
- Download URL: pylearn_ai-0.1.0b2-py3-none-any.whl
- Upload date:
- Size: 8.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
486e1a1b1ccbf191af535026d19248abd86b17a12cc26ec19c5e573d6aa94ca3
|
|
| MD5 |
94b7943acc33caed615f136f8f852c1e
|
|
| BLAKE2b-256 |
0389bd97b9fdc439b98069c9733684dfc78de918a1557a9b7480fc2f30affa4d
|