Skip to main content

Library of neural network with a evolutive algorithm of autolearned

Project description

NeuralRaven — Evolutionary Neural Network Library

NeuralRaven is a Python library that implements a fully customizable neural network architecture capable of training itself using an evolutionary algorithm (genetic optimization).
Unlike traditional machine-learning libraries, neuralRaven does not use gradient descent, backpropagation, or optimizers.
Instead, it evolves network weights over generations.

This makes RAVEN suitable for:

  • Environments where gradient-based training performs poorly.
  • Reinforcement learning tasks.
  • Black-box optimization problems.
  • Scenarios with non-differentiable fitness functions.

✨ Features

  • Fully implemented neural network written in Python.
  • Genetic/Evolutionary algorithm for self-training.
  • Support for mutation, crossover, elitism, and population-based evolution.
  • Save/Load functionality for evolved models.
  • Small footprint and easy to integrate.
  • Cross-platform wheel support (Windows, Linux, macOS).
  • Compatible with Python 3.8–3.14.

📦 Installation

Once the package is published on PyPI:

pip install neuralRaven

If installing from source:

pip install .

🚀 Quick Example

# main.py

import neuralRaven

def main():
    print("=== Executing in neuralRaven.IO.fromFiles() ===")

    # Name files
    config_file = "configurationfile"
    data_file = "datatest"

    try:
        neuralRaven.IO.fromFiles(config_file, data_file)
        print("\n=== Execution complete without errors ===")
    except Exception as e:
        print("\n*** Error in the execution ***")
        print(e)

if __name__ == "__main__":
    main()

📁 Project Structure

raven/
    __init__.py
    neural_network.py
    evolutionary.py
test/
    test_basic.py
data/
    example_input.json
    example_output.json

🛠 Building Wheels (for PyPI)

This project uses cibuildwheel to build platform-specific wheels.

GitHub Actions workflows:

.github/workflows/build_wheels.yml — builds wheels for Windows/Linux/macOS.

.github/workflows/publish.yml — publishes wheels to PyPI.

📄 License

This project is released under the MIT License — see the LICENSE file for details.

👥 Authors

Carlos Gerardo Euresty Uribe
Lead author and primary developer of the neural network architecture and evolutionary algorithm.
Email: gerardo.eeuresty@itcelaya.edu.mx

Jesús Miguel Cerda González
Contributor responsible for packaging the project as a Python library, optimizing modules, and improving usability.
Email: cerda.gonzalez.jesus@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

neuralraven-1.1.0.tar.gz (411.8 kB view details)

Uploaded Source

Built Distribution

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

neuralraven-1.1.0-cp311-cp311-win_amd64.whl (416.4 kB view details)

Uploaded CPython 3.11Windows x86-64

File details

Details for the file neuralraven-1.1.0.tar.gz.

File metadata

  • Download URL: neuralraven-1.1.0.tar.gz
  • Upload date:
  • Size: 411.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.13

File hashes

Hashes for neuralraven-1.1.0.tar.gz
Algorithm Hash digest
SHA256 e707dd81b0cb33af47192715cc4fb92cfb9737602af1a4785d00af3c33e1859e
MD5 746777ab2b9fa1266174c33ef9c74fe6
BLAKE2b-256 f28bc5f444a1a5942081b2e53fa2b35308f07ce7dd4c2b32e379cd6474455aad

See more details on using hashes here.

File details

Details for the file neuralraven-1.1.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for neuralraven-1.1.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 62cb00b9bb8f7b140591e24893553bba701af0443a78eb63ebb6e7293ecaf8dc
MD5 1ae62e491072e70d4ddc8281ba595277
BLAKE2b-256 10f64c2455430af0ededd12acb392c03bf07977d97468efb899a575203aea45f

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