Skip to main content

Uniqueness in Deep Neural Networks: The Inevitable Singularity of Learning Trajectories (Initial Release)

Project description

Uniqueness in Deep Neural Networks

The Inevitable Singularity of Learning Trajectories

๐Ÿ“„ Paper

Full Preprint
DOI: 10.5281/zenodo.18433336

๐Ÿง  Abstract

This repository accompanies the paper "Uniqueness in Deep Neural Networks: The Inevitable Singularity of Learning Trajectories" by Haamed Ghiassian.

We establish fundamental physical and mathematical constraints on parameter-level reproducibility in deep neural networks, proving three impossibility theorems:

  1. Dynamical Impossibility (Chaotic Divergence)
    Gradient-based training exhibits positive Lyapunov exponents, causing exponential sensitivity to initial conditions.

  2. Thermodynamic Impossibility (Irreversible Learning)
    The learning process is a thermodynamically irreversible non-equilibrium process with strictly positive entropy production.

  3. Topological Impossibility (Topological Distinctness)
    Different training trajectories occupy distinct topological equivalence classes in parameter space.

These results collectively imply that each trained neural network is structurally unique with probability one, establishing inherent limits to exact reproducibility in deep learning.

Keywords:
Deep Neural Networks, Physics of Learning, Chaotic Dynamics, Information Theory, Topology, Learning Trajectories, Uniqueness

๐Ÿš€ Quickstart

Note: This repository is under active development. Version 0.0.1 is an initial release establishing the project structure and package infrastructure. Full experimental implementations will be available in upcoming releases.

To set up the development environment:

git clone https://github.com/HaAmedghiassian/uniq-nets.git
cd uniq-nets
conda env create -f environment.yml
conda activate uniq-nets

Experimental simulations will be available in future releases.

๐Ÿ“ฆ PyPI Installation

The package is available on PyPI for easy installation:

# Install minimal version (CPU) - v0.0.1 (project infrastructure only)
pip install uniq-nets

# For future releases with Theorem 1 dependencies:
# pip install "uniq-nets[lyapunov]"

# For development (testing, formatting, etc.):
# pip install "uniq-nets[dev]"

# Install in development mode from source:
git clone https://github.com/HaAmedghiassian/uniq-nets.git
cd uniq-nets
pip install -e .

Note on PyTorch version:
The default installation uses PyTorch CPU. For GPU support, install PyTorch separately:

pip install torch torchvision --index-url https://download.pytorch.org/whl/cu118

Current Status:
Version 0.0.1 establishes the project infrastructure. Full functionality (Theorems 1-3 implementations) will be available in version 0.1.0+.

๐ŸŽฏ Package Overview

import uniq_nets

# Check version
print(f"Using uniq-nets v{uniq_nets.__version__}")

# Package is under active development
# Full functionality will be implemented in upcoming releases

Repository Structure

uniq-nets/
โ”œโ”€โ”€ ๐Ÿ“œ README.md                 # This file
โ”œโ”€โ”€ ๐Ÿ“„ Uniqueness_in_Deep_Neural_Networks__The_Inevitable_Singularity_of_Learning_Trajectories.pdf   # Main paper (PDF)
โ”œโ”€โ”€ ๐Ÿ“œ pyproject.toml            # Project configuration and dependencies
โ”œโ”€โ”€ ๐Ÿ“œ requirements-minimal.txt  # Minimal pip requirements for quick install
โ”œโ”€โ”€ ๐Ÿ“œ environment.yml           # Conda environment for reproducibility
โ”œโ”€โ”€ ๐Ÿ“œ LICENSE                   # MIT License
โ”‚
โ”œโ”€โ”€ ๐Ÿ“‚ uniq_nets/                # Main Python package
โ”‚   โ””โ”€โ”€ ๐Ÿ“œ __init__.py           # Package initialization and metadata
โ”‚
โ”œโ”€โ”€ ๐Ÿ“‚ theory/                   # Theoretical foundations
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ theorem_1_dynamical/  # Theorem 1: Chaotic Divergence
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“œ theorem_1_math.tex    # Mathematical formulation
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ““ theorem_1_dynamical.ipynb   # Interactive notebook (planned)
โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“œ README.md          # Theorem-specific documentation
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ theorem_2_thermodynamic/  # Theorem 2: Thermodynamic Irreversibility
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“œ theorem_2_math.tex    # Mathematical formulation
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ““ theorem_2_thermodynamic.ipynb  # Interactive notebook (planned)
โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“œ README.md          # Theorem-specific documentation
โ”‚   โ””โ”€โ”€ ๐Ÿ“ theorem_3_topological/  # Theorem 3: Topological Distinctness
โ”‚       โ”œโ”€โ”€ ๐Ÿ“œ theorem_3_math.tex    # Mathematical formulation
โ”‚       โ”œโ”€โ”€ ๐Ÿ““ theorem_3_topological.ipynb  # Interactive notebook (planned)
โ”‚       โ””โ”€โ”€ ๐Ÿ“œ README.md          # Theorem-specific documentation
โ”‚
โ”œโ”€โ”€ ๐Ÿ“‚ experiments/              # Numerical experiments (under development)
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ 01_lyapunov/         # Lyapunov exponent estimation (planned)
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“œ simulate.py      # Simulation code (planned)
โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“œ config.yaml      # Hyperparameters (planned)
โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“Š results/         # Output plots/data (planned)
โ”‚   โ”œโ”€โ”€ ๐Ÿ“ 02_entropy/          # Entropy production experiments (planned)
โ”‚   โ””โ”€โ”€ ๐Ÿ“ 03_topology/         # Topological data analysis (planned)
โ”‚
โ””โ”€โ”€ ๐Ÿ“‚ assets/                   # All non-code resources
    โ”œโ”€โ”€ ๐Ÿ“ figures/             # Paper figures (high-quality)
    โ”‚   โ”œโ”€โ”€ figure_1.png
    โ”‚   โ”œโ”€โ”€ figure_2.pdf
    โ”‚   โ””โ”€โ”€ ...
    โ”œโ”€โ”€ ๐Ÿ“ diagrams/            # Supplementary schematic diagrams
    โ”œโ”€โ”€ ๐Ÿ“ data_samples/        # Example datasets for demonstration
    โ””โ”€โ”€ ๐Ÿ“ media/               # Videos and other multimedia content

Installation

Create and activate the Conda environment:

conda env create -f environment.yml
conda activate uniq-nets

Or install dependencies manually:

pip install jax jaxlib numpy scipy matplotlib seaborn torch torchvision scikit-learn tqdm gudhi

Theory

The theory/ directory contains three main theorems, each with its own folder containing mathematical formulations and documentation:

Theorem 1: Dynamical Impossibility (Chaotic Divergence)

Located in theory/theorem_1_dynamical/:

  • theorem_1_math.tex: Complete mathematical proof using Lyapunov exponents and dynamical systems theory
  • theorem_1_dynamical.ipynb: Interactive Jupyter notebook with derivations and visualizations (planned)
  • README.md: Theorem-specific documentation, assumptions, and implications

Theorem 2: Thermodynamic Impossibility (Irreversible Learning)

Located in theory/theorem_2_thermodynamic/:

  • theorem_2_math.tex: Complete mathematical proof using stochastic thermodynamics and information theory
  • theorem_2_thermodynamic.ipynb: Interactive Jupyter notebook with derivations and visualizations (planned)
  • README.md: Theorem-specific documentation, assumptions, and implications

Theorem 3: Topological Impossibility (Topological Distinctness)

Located in theory/theorem_3_topological/:

  • theorem_3_math.tex: Complete mathematical proof using persistent homology and high-dimensional geometry
  • theorem_3_topological.ipynb: Interactive Jupyter notebook with derivations and visualizations (planned)
  • README.md: Theorem-specific documentation, assumptions, and implications

Each theorem folder includes:

  • Formal mathematical statements and proofs
  • Visualizations of key concepts (planned)
  • Connections to empirical observations
  • Detailed assumptions and boundary conditions

Experiments

The experimental framework is under active development. The following descriptions outline planned implementations.

1. Lyapunov Exponents (01_lyapunov/) - Under Development

Will estimate maximal Lyapunov exponents for different architectures using the Benettin algorithm.

# Planned for future releases:
# python -m experiments.01_lyapunov.simulate --config experiments/01_lyapunov/config.yaml

2. Entropy Production (02_entropy/) - Under Development

Will compute entropy production rates during training using discrete-time stochastic thermodynamics.

# Planned for future releases:
# python -m experiments.02_entropy.simulate --config experiments/02_entropy/config.yaml

3. Topological Analysis (03_topology/) - Under Development

Will apply persistent homology to training trajectories to compute Wasserstein distances between persistence diagrams.

# Planned for future releases:
# python -m experiments.03_topology.simulate --config experiments/03_topology/config.yaml

Each experiment will include:

  • Clean, modular Python code
  • Configuration files for hyperparameters
  • Visualization scripts
  • Pre-computed results for verification

Development Roadmap

Version 0.0.1 (Current): Project infrastructure and package setup
Version 0.1.0 (Planned): Implementation of Theorem 1 (Chaotic divergence analysis)
Version 0.2.0 (Planned): Implementation of Theorem 2 (Thermodynamic irreversibility)
Version 0.3.0 (Planned): Implementation of Theorem 3 (Topological distinctness)
Version 1.0.0 (Planned): Complete implementation with all experiments and documentation

Citation

If you use this work, please cite:

@article{ghiassian2026uniqueness,
  title={Uniqueness in Deep Neural Networks: The Inevitable Singularity of Learning Trajectories},
  author={Ghiassian, Haamed},
  journal={Zenodo},
  year={2026},
  doi={10.5281/zenodo.18433336},
  url={https://doi.org/10.5281/zenodo.18433336}
}

License

MIT License. See LICENSE file for details.

Contact

For questions or discussions, please open an issue on GitHub or contact the author directly.

haamedghiasian@gmail.com

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

uniq_nets-0.0.1.tar.gz (6.8 kB view details)

Uploaded Source

Built Distribution

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

uniq_nets-0.0.1-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

Details for the file uniq_nets-0.0.1.tar.gz.

File metadata

  • Download URL: uniq_nets-0.0.1.tar.gz
  • Upload date:
  • Size: 6.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.19

File hashes

Hashes for uniq_nets-0.0.1.tar.gz
Algorithm Hash digest
SHA256 c7ec3aa3b82da19752c0f990332f8b563b40ba6eb41d995a1b915dc271ad1767
MD5 c7dfc1a7ffe530e1830b2617aba6578b
BLAKE2b-256 deacfa06f4665a3253f99a74b079dea91f5e1ba3e4d237602f5ca0467eb8ff2e

See more details on using hashes here.

File details

Details for the file uniq_nets-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: uniq_nets-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 6.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.19

File hashes

Hashes for uniq_nets-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b2d78ae238caf63caab0fcf026502beef50ca211a45bcfd2cf0abc6572acdec9
MD5 3b9266095c36eafca96ef974fb39efe9
BLAKE2b-256 31f7e241faa7bac4929a4644fe97ed4762bb178552987cb2e70212d2ebc6fe56

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