Skip to content
Lightweight Neural Network library, for js, jvm and .net
JavaScript Java F# Scala CSS C# Other
Branch: master
Clone or download
mrdimosthenis Introduce CSharp version of synapses (#6)
* start implementing c# interface

* implement DataPreprocessor csharp interface

* remove unused namespace

* complete c# interface

* lowercase class functions and values

* update package info

* activation values instead of functions in java

* bring back f# version

* add c# version

* remove cs code from f#

* remove .sln file

* complete separate c# project

* c# methods are no longer static

* Revert "c# methods are no longer static"

This reverts commit 721430e

* Revert "c# methods are no longer static"

This reverts commit 721430e

* start writing csharp tests

* c# SeedNetworkTest

* adapt test to activation values

* convert ActivationFunction to Activation.Function

* c# customized test

* complete c# PreprocessorTest

* correct rmse test name

* complete c# tests

* rename c# version to SynapsesCSharp

* rename c# version to SynapsesCSharp

* inform test script and readme

* include c# in slate

* cs version is 7.1.2
Latest commit ccedff8 Jan 19, 2020

README.md

Synapses

A lightweight Neural Network library, for js, jvm and .net.

Documentation

https://mrdimosthenis.github.io/Synapses

The interface of the library is common across programming languages.

Create a Neural Network

NeuralNetwork.init param1: layers returns
JavaScript number[] NeuralNetwork
Java int[] NeuralNetwork
C# int[] NeuralNetwork
Scala List[Int] NeuralNetwork
F# List<int> NeuralNetwork
NeuralNetwork.customizedInit param1: layers param2: activationF param3: weightInitF returns
JavaScript number[] (number) => ActivationFunction (number) => number NeuralNetwork
Java int[] IntFunction<ActivationFunction> IntFunction<Double> NeuralNetwork
C# int[] Func<int, ActivationFunction> Func<int, Double> NeuralNetwork
Scala List[Int] Int => ActivationFunction Int => Double NeuralNetwork
F# List<int> int -> ActivationFunction int -> float NeuralNetwork

Train a Neural Network

NeuralNetwork.fit param1: neuralNetwork param2: learningRate param3: inputValues param4: expectedOutput returns
JavaScript NeuralNetwork number number[] number[] NeuralNetwork
Java NeuralNetwork double double[] double[] NeuralNetwork
C# NeuralNetwork double double[] double[] NeuralNetwork
Scala NeuralNetwork Double List[Double] List[Double] NeuralNetwork
F# NeuralNetwork float List<float> List<float> NeuralNetwork
NeuralNetwork.prediction param1: neuralNetwork param2: inputValues returns
JavaScript NeuralNetwork number[] number[]
Java NeuralNetwork double[] double[]
C# NeuralNetwork double[] double[]
Scala NeuralNetwork List[Double] List[Double]
F# NeuralNetwork List<float> List<float>

Convert a Neural Network

NeuralNetwork.toJson param1: neuralNetwork returns
JavaScript NeuralNetwork string
Java NeuralNetwork String
C# NeuralNetwork string
Scala NeuralNetwork String
F# NeuralNetwork string
NeuralNetwork.ofJson param1: json returns
JavaScript string NeuralNetwork
Java String NeuralNetwork
C# string NeuralNetwork
Scala String NeuralNetwork
F# string NeuralNetwork

Create a Data Preprocessor

DataPreprocessor.init param1: keysWithDiscreteFlags param2: datapoints returns
JavaScript any[][] iterable DataPreprocessor
Java Object[][] Stream<Map<String,String>> DataPreprocessor
C# (string, bool)[] IEnumerable<Dictionary<string, string>> DataPreprocessor
Scala List[(String, Boolean)] LazyList[Map[String, String]] DataPreprocessor
F# List<string * bool> seq<Map<string, string>> DataPreprocessor

Encode with a Data Preprocessor

DataPreprocessor.encodedDatapoint param1: dataPreprocessor param2: datapoint returns
JavaScript DataPreprocessor object number[]
Java DataPreprocessor Map<String,String> double[]
C# DataPreprocessor Dictionary<string, string> double[]
Scala DataPreprocessor Map[String, String] List[Double]
F# DataPreprocessor Map<string, string> List<float>
DataPreprocessor.decodedDatapoint param1: dataPreprocessor param2: encodedDatapoint returns
JavaScript DataPreprocessor number[] object
Java DataPreprocessor double[] Map<String,String>
C# DataPreprocessor double[] Dictionary<string, string>
Scala DataPreprocessor List[Double] Map[String, String]
F# DataPreprocessor List<float> Map<string, string>

Convert a Data Preprocessor

DataPreprocessor.toJson param1: dataPreprocessor returns
JavaScript DataPreprocessor string
Java DataPreprocessor String
C# DataPreprocessor string
Scala DataPreprocessor String
F# DataPreprocessor string
DataPreprocessor.ofJson param1: json returns
JavaScript string DataPreprocessor
Java String DataPreprocessor
C# string DataPreprocessor
Scala String DataPreprocessor
F# string DataPreprocessor

Calculate the Root Mean Square Error

Statistics.rootMeanSquareError param1: expectedWithOutputValues returns
JavaScript iterable number
Java Stream<double[][]> double
C# IEnumerable<(double[], double[])> double
Scala LazyList[(List[Double], List[Double])] Double
F# seq<List<float> * List<float>> float

Tests

Implementation

Dependencies

You can’t perform that action at this time.