Skip to main content

Dynamic Neural Organism (DNO): A self-evolving, growing, and pruning neural network framework.

Project description

DNO: Dynamic Neural Organism 🧬

DNO (formerly DeeDe) is a PyTorch-based framework for creating biological neural networks that grow, think, and evolve at runtime.

Unlike static deep learning models, a DNO is an organism that starts small and evolves its architecture based on the problem complexity.

Key Features

  • 🧠 Dynamic Growth: Starts with a seed and adds layers via mitosis when "confused" (High Entropy).
  • 🗡️ Survival of the Fittest: Prunes inefficient neurons and layers using Information Gain (KL-Divergence).
  • 🧬 Fluid Serialization: Save the entire organism (Weights + Topology + History) into a single .dno file.
  • 📺 Live Dashboard: Visualize the organism's anatomy and health in the terminal.

Installation

pip install dno

Quick Start

import torch
import torch.nn as nn
from dno.core.organism import OrganismManager, BaseEvolvableModule
from dno.core.network import DynamicNetwork
from dno.config import DnoConfig
from dno.utils.dashboard import print_organism_status

# 1. Create the Organism
manager = OrganismManager()
config = DnoConfig(entropy_threshold=0.6, growth_alpha=0.5)
network = DynamicNetwork(manager, config)

# 2. Add a Seed Layer
seed = BaseEvolvableModule(nn.Linear(10, 10))
seed.dynamic_id = "seed_layer"
network.add_layer(seed)

# 3. Live Life (Forward Pass)
input_data = torch.randn(1, 10)
output = network(input_data)

# 4. Check Status
print_organism_status(manager)

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dno-0.1.1.tar.gz (21.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dno-0.1.1-py3-none-any.whl (19.2 kB view details)

Uploaded Python 3

File details

Details for the file dno-0.1.1.tar.gz.

File metadata

  • Download URL: dno-0.1.1.tar.gz
  • Upload date:
  • Size: 21.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for dno-0.1.1.tar.gz
Algorithm Hash digest
SHA256 1399ed645ce74f925ec22e21bc676dea60cb033e67b45ed952522227f7cc86ea
MD5 f99010d3578bea9f1a9dbd414e6ab276
BLAKE2b-256 03f26ff84d916d31e5e5ad8558d515b9f3212cad0b7dbc63e8ab9f1e4a559636

See more details on using hashes here.

File details

Details for the file dno-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: dno-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 19.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for dno-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a759411e691f2c975b08bcd7f4a62125f0f9f874f9ed628e2b0d584ca82d9667
MD5 4de41e2aadd8754fe7078f603a27719c
BLAKE2b-256 b9153ea31b918e6bf834132e616deb06a031529440a5d597d30b9f36dd69ca7a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page