Skip to content

jdermody/brightwire

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 

image

Bright Wire is an extensible machine learning library for .NET with GPU support (via CUDA).

Getting Started

Bright Wire is a .net 6 class library.

The previous .net 4.6 version can be found here: https://github.com/jdermody/brightwire-v2

Bright Wire runs "out of the box" for CPU based computation. For GPU based computation, you will need to install NVIDIA CUDA Toolkit 11 (and have a Kepler or better NVIDIA GPU).

To enable higher performance CPU based computation, Bright Wire also supports the Intel Math Kernel Library (MKL) via the Numerics.Net Wrapper.

Tutorials

Nuget Installation

To install the cpu version (no CUDA support) use:

Install-Package BrightWire
Install-Package BrightData.Numerics

To add CUDA support use:

Install-Package BrightWire
Install-Package BrightData.Cuda

Features

Connectionist aka "Deep Learning"

  • Feed Forward, Convolutional, Bidirectional and Sequence to Sequence (seq2seq) network architectures
  • LSTM, GRU, Simple, Elman and Jordan recurrent neural networks
  • L2, Dropout and DropConnect regularisation
  • Relu, LeakyRelu, Sigmoid, Tanh and SoftMax activation functions
  • Gaussian, Xavier and Identity weight initialisation
  • Cross Entropy, Quadratic and Binary cost functions
  • Momentum, NesterovMomentum, Adagrad, RMSprop and Adam gradient descent optimisations

Bayesian

  • Naive Bayes
  • Multinomial Bayes
  • Multivariate Bernoulli
  • Markov Models

Unsupervised

  • K Means clustering
  • Hierachical clustering
  • Non Negative Matrix Factorisation
  • Random Projection

Linear

  • Regression
  • Logistic Regression
  • Multinomial Logistic Regression

Tree Based

  • Decision Trees
  • Random Forest

Ensemble Methods

  • Stacking

Other

  • K Nearest Neighbour classification
  • In-memory and file based data processing

Dependencies