Skip to main content

AdderNet 1.6 development fork

This directory contains an audited and extended version of the addernet 1.5.0 package. It keeps the original scalar, HDC, attention, boosting, clustering, and additive APIs while adding safer native bindings and genuine multi-input models.

Main additions

  • AdderNetLayer.fit(...): direct O(n + range) scalar LUT fitting.
  • AdderNetLayer.partial_fit(...): blended streaming updates.
  • Explicit close() and context-manager lifecycle.
  • Atomic native saves and portable versioned .npz saves.
  • Hardened native file loading and full validation of C arguments.
  • AdderNetMultiInputLayer: N inputs, one or more outputs, additive and pairwise LUTs.
  • AdderNetRegressor: alias for the multi-input regression model.
  • AdderNetClassifier: classification wrapper with arbitrary class labels.
  • Improved UniformQuantizer with feature-shape validation and inverse transform.
  • OpenMP changed to opt-in because it slowed the memory-bound scalar lookup on the test host.

Two-input example

import numpy as np
from addernet import AdderNetMultiInputLayer

x = np.arange(32)
y = np.arange(32)
xx, yy = np.meshgrid(x, y, indexing="ij")
X = np.column_stack([xx.ravel(), yy.ravel()])
target = (xx * yy).ravel()

model = AdderNetMultiInputLayer(bins=32, interactions="auto")
model.fit(X, target)

print(model.predict(7, 9))  # approximately 63
print(model.predict_batch([[2, 3], [4, 5]]))

Build and test

python -m pip install -e .
addernet-selftest
python -m pytest

Set ADDERNET_OPENMP=1 before building only after benchmarking on the target hardware. The default single-threaded native loop is often faster for this LUT.

Metadata

Release files for addernet 1.6.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 addernet 1.6.0
File Size Uploaded
addernet-1.6.0.tar.gz 107.8 kB Details

Release files / addernet-1.6.0.tar.gz

Download URL addernet-1.6.0.tar.gz
Size 107.8 kB
Tags Source
SHA-256 checksum
How to use checksums
72c886aa8fd3605be94050d449f34f39d000b1d3a4a90edee084ae9d20e090a9
BLAKE2b-256 checksum
How to use checksums
630ab107207c8d09be66fea8dac3e37ddae10b84f91c9a4de449ff37f2cd316e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.5

Release history Release notifications | RSS feed

This release

1.6.0 This release

1 release file

1.5.0

1 release file

1.4.6

2 release files

1.4.5

2 release files

1.4.2

2 release files

1.4.1

2 release files

1.4.0

2 release files

1.3.8

2 release files

1.3.7

1 release file

1.3.6

1 release file

1.3.5

1 release file

1.3.4

1 release file

1.3.3

1 release file

1.3.2

1 release file

1.3.1

1 release file

1.3.0

2 release files

1.2.9

2 release files

1.2.8

2 release files

1.2.7

2 release files

1.2.6

2 release files

1.2.5

2 release files

1.2.2

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.9

2 release files

1.0.8

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

1 release file

1.0.3

2 release files

1.0.2

1 release file

1.0.1

1 release file

1.0.0

2 release files

0.1.0

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