Skip to main content

Tardigrad

A small PyTorch-like autograd engine and neural network library.

"As far as we tardigrades are concerned, Pluto is and always will be a planet. End of discussion."

― Zeno Alexander, The Library of Ever

Features

  • Automatic differentiation for scalar (Value) and tensor (Tensor) operations
  • Neural network layers (Linear, Sequential)
  • SGD optimizer with gradient zeroing
  • Lightweight with minimal dependencies (NumPy, SciPy)

Quick Start

Scalar Autograd

from tardigrad.value import Value

a = Value(2.0, label='a')
b = Value(3.0, label='b')
c = a * b + Value(1.0)

c.backward()

print(c.data)  # 7.0
print(a.grad)  # 3.0
print(b.grad)  # 2.0

Tensor Operations

from tardigrad.tensor import Tensor

x = Tensor([[1, 2], [3, 4]])
y = Tensor([[5, 6], [7, 8]])
z = x.matmul(y)

z.backward()

print(z.data)
print(x.grad)

Neural Network

from tardigrad.layers import Linear, Sequential
from tardigrad.tensor import Tensor
from tardigrad.optim import SGD

model = Sequential([
    Linear(2, 3),
    Linear(3, 1)
])

optimizer = SGD(model.get_params(), alpha=0.01)

# Training loop
for epoch in range(10):
    y_pred = model.forward(x_train)
    loss = ((y_pred - y_train) ** 2).sum()
    loss.backward()
    optimizer.step()

Project Structure

tardigrad/
├── value.py     # Scalar autograd engine
├── tensor.py    # Multi-dimensional tensor autograd
├── layers.py    # Neural network layers (Linear, Sequential)
└── optim.py     # SGD optimizer

References

Metadata

Release files for tardigrad 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tardigrad 0.1.0
File Size Uploaded
tardigrad-0.1.0.tar.gz 2.9 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for tardigrad 0.1.0
File Interpreter ABI Platform
tardigrad-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 2.9 MB

Release files / tardigrad-0.1.0.tar.gz

Download URL tardigrad-0.1.0.tar.gz
Size 2.9 MB
Tags Source
SHA-256 checksum
How to use checksums
79673c21a5f52f1f530f1d9c3446a90aa59a9d8ae1c1a4afe6101d3cf8253328
BLAKE2b-256 checksum
How to use checksums
7728c504061212f1b2af24b0f9f6ed6d3d1509d1c4a3c422de3056cfc5943e3e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.7

Release files / tardigrad-0.1.0-py3-none-any.whl

Download URL tardigrad-0.1.0-py3-none-any.whl
Size 8.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0edbc7918bb3039fad8754c048da71fda2448a85bfbbf6700631d0d241751ab9
BLAKE2b-256 checksum
How to use checksums
73ab4d63f5840dd769d569d6d79be319fc6e3e2f4769180f1e56bdf8106d8ebd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.7

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page