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.0.tar.gz (9.1 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.0-py3-none-any.whl (4.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: dno-0.1.0.tar.gz
  • Upload date:
  • Size: 9.1 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.0.tar.gz
Algorithm Hash digest
SHA256 009a98bd87816a2e75f4066f88a30764e251b29f271989f1fc0f8cced0234031
MD5 8abba2237f818838490bcf6e86653ebf
BLAKE2b-256 603464f3a59fbb1e35755cac87da73f593064f98b156787c6fd826cc3cf08877

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dno-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 4.4 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d12be5649f678ffbe33bc6cbb0f2e45be170d76d4da8769b62517fe2499d01b8
MD5 b17a5af1a26354f30426bd6f3b9783aa
BLAKE2b-256 b020eb6acca70cb926aa55a88ce714d985c5c3dc1b1bbced9c7771e0eeff1030

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