This project is a pure C implementation of a computational graph realized as a multilist data structure, along with a neural network constructor that builds upon this graph.
The project serves as a foundational framework for representing and manipulating computational graphs through multilist data structures in the C programming language. Additionally, it includes a neural network constructor which can be used to build and train neural networks using the defined computational graph.
- Multilist Graph Representation: Efficiently stores and manipulates computational graphs using multilist data structures.
- Neural Network Constructor: Allows users to construct custom neural networks from the computational graph.
- Memory Management: Handles dynamic memory allocation and deallocation to manage the multilist graph and neural network structures.
- Graph Operations: Supports various operations including node insertion, deletion, and traversal.
- Neural Network Training: Includes functionality to train the constructed neural networks with backpropagation (optional module).
- Pure C Implementation: Utilizes C for high-performance computations without relying on external libraries.