-
Notifications
You must be signed in to change notification settings - Fork 0
Repository Organization
Complete organization of the Neural Network Notions repository.
Primary branch for all Neural Network Notions packages.
master - Branch
├─ .github/workflows/ - GitHub YAML workflows
│ └─ release.yml - Workflow for automatically publishing GitHub, .NET, and UPM releases for every new Git tag
│
├─ NNN-Solution/ - Complete Neural Network Notions solution
│ ├─ Models/ Small collection of pretrained models for the default included environments
│ │ ├─ 2dmovedemo.nnn - Demonstration model for movement on a 2D grid
│ │ ├─ mnistdemo.nnn - Demonstration model for the MNIST dataset
│ │ └─ tictactoedemo.nnn - Demonstration model for playing Tic-Tac-Toe
│ │
│ ├─ NNN/ - C++ native DLL
│ │ ├─ Header Files - Filter
│ │ │ ├─ DataContainers.h - POD structs
│ │ │ ├─ MathUtils.h - Vectorization and math utility functions
│ │ │ ├─ Models.h - Model-level functions
│ │ │ ├─ Optimizers.h - Optimizer functions
│ │ │ ├─ Tensor.h - Tensor and autodiff engine functions
│ │ │ ├─ exports.h - Export functions for interop with C#
│ │ │ ├─ framework.h - Standard framework header file
│ │ │ └─ pch.h - Standard precompiled header file
│ │ │
│ │ ├─ Source Files - Filter
│ │ │ ├─ MathUtils.cpp - Vectorization and math utility functions
│ │ │ ├─ Models.cpp - Model-level functions
│ │ │ ├─ Optimizers.cpp - Optimizer functions
│ │ │ ├─ TensorActivations.cpp - Tensor activation functions
│ │ │ ├─ TensorCosts.cpp - Tensor cost functions
│ │ │ ├─ TensorGraph.cpp - Autograd graph functions
│ │ │ ├─ TensorIndexing.cpp - Tensor property and data access
│ │ │ ├─ TensorInitializations.cpp - Tensor constructors and initialization functions
│ │ │ ├─ TensorOperations.cpp - Tensor mathematical operations
│ │ │ ├─ TensorProperties.cpp - Tensor static property initializations
│ │ │ ├─ TensorUtilities.cpp - Tensor utility and miscellaneous functions
│ │ │ ├─ dllmain.cpp - Standard C++ DLL source file
│ │ │ ├─ exports.cpp - Export functions for interop with C#
│ │ │ └─ pch.cpp - Standard precompiled header source file
│ │ │
│ │ ├─ NNN.vcxproj - Standard Microsoft Visual C++ project file
│ │ └─ NNN.vcxproj.filters - Standard Microsoft Visual C++ project filters file
│ │
│ ├─ NNNCSharp/ - C# managed DLL
│ │ ├─ Components/ - C# managed DLL components
│ │ │ ├─ Activations/ - Activation function classes
│ │ │ │ ├─ Activation.cs - Base activation function class
│ │ │ │ ├─ LeakyReLU.cs - Leaky Rectified Linear Unit activation function
│ │ │ │ ├─ Linear.cs - Linear activation function
│ │ │ │ ├─ ReLU.cs - Rectified Linear Unit activation function
│ │ │ │ ├─ Sigmoid.cs - Sigmoid activation function
│ │ │ │ ├─ Softmax.cs - Softmax activation function
│ │ │ │ └─ Tanh.cs - Hyperbolic tangent activation function
│ │ │ │
│ │ │ ├─ Autodiff/ - Automatic differentiation and tensor logic
│ │ │ │ └─ Tensor.cs - C# tensor wrapper class
│ │ │ │
│ │ │ ├─ Buffers/ - Training and data buffers
│ │ │ │ ├─ BatchBuffer.cs - Standard supervised training batch buffer
│ │ │ │ ├─ FIFOBuffer.cs - Standard First-In First-Out buffer
│ │ │ │ ├─ ReplayBuffer.cs - DQN training replay buffer
│ │ │ │ └─ SumTree.cs - Standard sum tree class
│ │ │ │
│ │ │ ├─ CompilerAttributes/ - Miscellaneous C# compiler attributes
│ │ │ │ └─ CompilerAttributes.cs - Applies any necessary compiler attributes
│ │ │ │
│ │ │ ├─ Costs/ - Cost function classes
│ │ │ │ ├─ Cost.cs - Base cost function class
│ │ │ │ ├─ Huber.cs - Pseudo-Huber cost function
│ │ │ │ ├─ MSE.cs - Mean Squared Error cost function
│ │ │ │ └─ SoftmaxCrossEntropy.cs - Softmax Cross-Entropy cost function
│ │ │ │
│ │ │ ├─ DQNEnvironments/ - DQN training environment classes
│ │ │ │ ├─ DQNEnvironment.cs - Base DQN environment class
│ │ │ │ ├─ MovementGrid2D.cs - 2D movement grid DQN environment
│ │ │ │ ├─ Snake.cs - Snake DQN environment
│ │ │ │ └─ TicTacToe.cs - Tic-Tac-Toe DQN environment
│ │ │ │
│ │ │ ├─ Episodes/ - Data structures for DQN experience storage
│ │ │ │ ├─ Episode.cs - Record data structure for a full DQN training episode
│ │ │ │ └─ Experience.cs - Record data structure for a single DQN training experience
│ │ │ │
│ │ │ ├─ Interop/ - C# interop with native C++ DLL
│ │ │ │ ├─ NativeMethods.cs - DLL imports for native C++ methods
│ │ │ │ └─ TensorSafeHandle.cs - Safe handle for C# tensor wrapper
│ │ │ │
│ │ │ ├─ Models/ - Neural network model functionality
│ │ │ │ ├─ Layers/ - Neural network layer functionality
│ │ │ │ │ ├─ Conv.cs - Convolutional layer class
│ │ │ │ │ ├─ Dense.cs - Fully connected layer class
│ │ │ │ │ └─ Layer.cs - Base layer class
│ │ │ │ │
│ │ │ │ └─ Model.cs - Complete neural network container class
│ │ │ │
│ │ │ ├─ Optimizers/ - Optimizer classes
│ │ │ │ ├─ Adam.cs - Adaptive Moment Estimation optimizer class
│ │ │ │ ├─ Optimizer.cs - Base optimizer class
│ │ │ │ └─ SGD.cs - Stochastic Gradient Descent optimizer class
│ │ │ │
│ │ │ ├─ Trainers/ - Trainer classes
│ │ │ │ ├─ DQNTrainer.cs - DQN trainer class
│ │ │ │ └─ Trainer.cs - Standard supervised training class
│ │ │ │
│ │ │ └─ Utilities/ - Various utility classes
│ │ │ ├─ DataLoaders/ - Utilities for loading training datasets
│ │ │ │ └─ MNISTLoader.cs - Static loader class for the MNIST dataset
│ │ │ │
│ │ │ ├─ SaveSystem/ - Utilities for saving/loading trained neural networks
│ │ │ │ ├─ FileUtils.cs - Static class for reading/writing .nnn files
│ │ │ │ └─ Saver.cs - Static class for saving/loading neural networks
│ │ │ │
│ │ │ ├─ ArrayUtils.cs - Utility functions for handling arrays
│ │ │ ├─ IDManager.cs - Static class for looking up .nnn file format IDs
│ │ │ ├─ MathUtils.cs - Various math utility functions
│ │ │ ├─ NNNLog.cs - Logging output target control
│ │ │ └─ UIUtils.cs - Utility functions for handling CLI input/output
│ │ │
│ │ ├─ Properties/ - Standard C# project properties
│ │ │ └─ launchSettings.json - Standard C# project launch settings file
│ │ │
│ │ ├─ NNN.props - NuGet package properties file
│ │ ├─ NNNCSharp.Core.csproj - Standard C# project file
│ │ └─ NNNCSharp.nuspec - NuGet package XML manifest file
│ │
│ ├─ NNNDemo/ - Program for running Neural Network Notions demonstrations
│ │ ├─ Properties/ - Standard C# project properties
│ │ │ └─ launchSettings.json - Standard C# project launch settings file
│ │ │
│ │ ├─ NNNDemo.cs - Neural Network Notions demonstrations program script
│ │ └─ NNNDemo.csproj - Standard C# project file
│ │
│ ├─ NNNExplorer/ - Neural Network Notions file viewer - for viewing .nnn files
│ │ ├─ Properties/ - Standard C# project properties
│ │ │ └─ launchSettings.json - Standard C# project launch settings file
│ │ │
│ │ ├─ NNNExplorer.cs - Neural Network Notions file viewer program script
│ │ └─ NNNExplorer.csproj - Standard C# project file
│ │
│ ├─ NNNTester/ - Program for testing changes made to C# and C++ implementations
│ │ ├─ Properties/ - Standard C# project properties
│ │ │ └─ launchSettings.json - Standard C# project launch settings file
│ │ │
│ │ ├─ NNNTester.cs - Neural Network Notions tester program script
│ │ └─ NNNTester.csproj - Standard C# project file
│ │
│ ├─ NNNTrainer/ - Program for training models using the Neural Network Notions framework
│ │ ├─ Properties/ - Standard C# project properties
│ │ │ └─ launchSettings.json - Standard C# project launch settings file
│ │ │
│ │ ├─ NNNTrainer.cs - Neural Network Notions trainer program script
│ │ └─ NNNTrainer.csproj - Standard C# project file
│ │
│ ├─ TrainingData/ - Small collection of included training datasets
│ │ └─ MNIST/ - MNIST dataset data
│ │ ├─ t10k-images.idx3-ubyte - Testing images file
│ │ ├─ t10k-labels.idx1-ubyte - Testing labels file
│ │ ├─ train-images.idx3-ubyte - Training images file
│ │ └─ train-labels.idx1-ubyte - Training labels file
│ │
│ └─ NNN-Solution.sln - Neural Network Notions solution file
│
├─ upm - Directory (Unity Package Manager release configuration)
│
├─ .gitattributes - Standard Git repository attributes file
├─ .gitignore - Standard Git repository ignore file
├─ LICENSE.txt - Neural Network Notions license
├─ LICENSE.txt.meta - Corresponding Unity .meta file
├─ README.md - Neural Network Notions readme
└─ README.md.meta - Corresponding Unity .meta file
Unity Package Manager release branch.
upm - Branch
├─ Runtime - Directory (package runtime data)
│ ├─ NNN.Runtime.asmdef - Assembly definition file for Unity package
│ ├─ NNN.Runtime.asmdef.meta - Corresponding Unity .meta file
│ ├─ NNN.dll - Native C++ DLL
│ ├─ NNN.dll.meta - Corresponding Unity .meta file
│ ├─ NNNCSharp.dll - Managed C# DLL
│ └─ NNNCSharp.dll.meta - Corresponding Unity .meta file
│
├─ LICENSE.txt - Neural Network Notions license
├─ LICENSE.txt.meta - Corresponding Unity .meta file
├─ README.md - Neural Network Notions readme
├─ README.md.meta - Corresponding Unity .meta file
├─ Runtime.meta - Unity .meta file for the Runtime/ directory
├─ Package.json - Unity package data
└─ Package.json.meta - Corresponding Unity .meta file