Skip to content

Latest commit

 

History

History
89 lines (67 loc) · 3.34 KB

README.md

File metadata and controls

89 lines (67 loc) · 3.34 KB

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