Skip to content

benchiverton/GingerbreadAI

Repository files navigation

Gingerbread AI

C# libraries written written to model different neural networks, and deep learning algorithms that train them.

Build and Test (All)

What's supported?

The following neural networks are supported:

Network Supports
Dense Neural Networks Deep networks
Convolutional Neural Networks 1D + filtering, 2D + filtering

The following activation functions are supported:

Function Links
Linear https://en.wikipedia.org/wiki/Identity_function
RELU https://en.wikipedia.org/wiki/Rectifier_(neural_networks)
Sigmoid https://en.wikipedia.org/wiki/Logistic_function
Tanh https://en.wikipedia.org/wiki/Hyperbolic_functions#Hyperbolic_tangent

There is an implementation of backpropagation and negative sampling (both with momentum), where the following error functions are supported:

Function Links
Mean Squared Error https://en.wikipedia.org/wiki/Mean_squared_error
Cross Entropy https://en.wikipedia.org/wiki/Cross_entropy

There is an implementation of Word2vec, supporting both Skip Gram and CBOW architectures. To analyse word embeddings, there are implementations of the following algorithms:

Algorithm Links
k-means clustering https://en.wikipedia.org/wiki/K-means_clustering
Density-based spatial clustering of applications with noise (DBSCAN) https://en.wikipedia.org/wiki/DBSCAN
T-distributed Stochastic Neighbor Embedding (t-SNE) https://en.wikipedia.org/wiki/T-distributed_stochastic_neighbor_embedding

Getting Started

Open the GingerbreadAI.NeuralNetwork.Test solution file.

Prerequisites

Visual Studio 2019 (with dotnet core 3.1).

Unit tests

All unit tests should be runnable from the GingerbreadAI solution.

Long running tests

Longer running tests that produce a report need to be run in debug mode, and can be found in the GinbergreadAI.NeuralNetwork.Test project (in the GingerbreadAI solution).

Authors

See the list of contributors who participated in this project.

Contributing

See our Contributing Guidelines.

Code of Conduct

See our Code of Conduct.

License

This project is licensed under the MIT License - see the LICENSE file for details.