How teytra/teytrnn works
TeytrNN is a from-scratch C++ neural-network library with dense and convolutional network APIs. The principal workflow is to load or construct data, configure a network, train or predict, then evaluate or save/load model parameters. Its documented capabilities include CSV/TXT datasets and batching, CNN and dense layers, activation and loss choices, optimizers, and a custom matrix engine. Wiring reflects the supplied implementation excerpts and README; some subsystem internals were not sampled.
Main entry points: CNNNetwork.cpp CNN orchestration · NeuralNetwork.cpp Dense training and evaluation · Dataset.h Dataset · NeuralNetwork.h Dense network
Components 22
Data handling
- Dataset
include/Dataset.h - Dataset loading
src/Dataset.cpp
Network workflows
- Dense network
include/NeuralNetwork.h - Dense training and evaluation
src/NeuralNetwork.cpp - CNN network
include/CNNNetwork.h - CNN orchestration
src/CNNNetwork.cpp
Layer components
- Dense layer
include/Layer.h - Layer computation
src/Layer.cpp - Convolution
include/Conv2D.h - Convolution computation
src/Conv2D.cpp - Pooling
include/MaxPool.h - 2D pooling
include/MaxPool2D.h - Flatten
include/Flatten.h
Math and optimization
- Activation functions
include/ActivationUtils.h - Loss functions
include/Loss.h - Optimizer interface
include/Optimizer.h - SGD optimizer
src/SGDOptimizer.cpp - Adam optimizer
src/AdamOptimizer.cpp - Matrix engine
include/Matrix.h
Other components
- Library user
- Dataset files
- Model file
Connections 26
- Library user → Dataset: loads data
- Dataset → Dataset loading: uses loading
- Dataset loading → Dataset files: reads
- Dataset → Library user: provides batches
- Library user → Dense network: configures and trains
- Dense network → Dense training and evaluation: implements
- Dense training and evaluation → Dataset: reads samples
- Dense training and evaluation → Dense layer: forwards and backpropagates
- Dense training and evaluation → Loss functions: calculates loss
- Library user → CNN network: configures and predicts
- CNN network → CNN orchestration: implements
- CNN orchestration → Convolution: dispatches convolution
- CNN orchestration → Pooling: dispatches pooling
- CNN orchestration → Flatten: flattens features
- CNN orchestration → Dense network: dispatches dense network
- Layer computation → Activation functions: applies activation
- Layer computation → Optimizer interface: updates parameters
- SGD optimizer → Optimizer interface: implements
- Adam optimizer → Optimizer interface: implements
- CNN orchestration → Convolution computation: runs forward and backward
- Convolution computation → Matrix engine: uses operations
- Layer computation → Matrix engine: uses operations
- Dataset loading → Matrix engine: creates samples
- Dense training and evaluation → Model file: saves and loads
- CNN orchestration → Dense network: delegates model persistence
- 2D pooling → Matrix engine: uses operations