BrabeNetz 1.5.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package BrabeNetz --version 1.5.0                
NuGet\Install-Package BrabeNetz -Version 1.5.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="BrabeNetz" Version="1.5.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add BrabeNetz --version 1.5.0                
#r "nuget: BrabeNetz, 1.5.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install BrabeNetz as a Cake Addin
#addin nuget:?package=BrabeNetz&version=1.5.0

// Install BrabeNetz as a Cake Tool
#tool nuget:?package=BrabeNetz&version=1.5.0                

BrabeNetz

🌐 A fast and clean supervised neural network in C++, capable of effectively using multiple cores 🧠

Usage

  1. Build & link library

  2. Choose your interface

    1. brabe_netz.h: [Recommended] A wrapper for the raw network.h interface, but with error handling and modern C++ interface styling such as std::vectors, std::exceptions, etc.
    2. network.h: The raw network with C-style arrays and no bound/error checking. Only use this if performance is important.
  3. Constructors

    1. (initializer_list<int>, properties): Construct a new neural network with the given network size (e.g. { 2, 3, 4, 1 }) and randomize all base weights and biases - ref
    2. (network_topology&, properties): Construct a new neural network with the given network topology and import it's existing weights and biases - ref
    3. (string, properties): Construct a new neural network with and load the neural network state from the file specified in properties.state_file - ref
  4. Functions

    1. network_result brabe_netz::feed(std::vector<double>& input_values): Feed the network input values and forward propagate through all neurons to estimate a possible output (Use the network_result structure (ref) to access the result of the forward propagation, such as .values to view the output) - ref
    2. double network_result::adjust(std::vector<double>& expected_output): Backwards propagate through the whole network to adjust wrong neurons for result trimming and return the total network error - ref
    3. void save(string path): Save the network's state to disk by serializing weights
    4. void set_learnrate(double value): Set the network's learning rate. It is good practice and generally recommended to use one divided by the train count, so the learn rate decreases the more often you train - ref
    5. network_topology& build_topology(): Build and set the network topology object of the current network's state (can be used for network visualization or similar) - ref

Usage examples can be found here, and here

Product Compatible and additional computed target framework versions.
native native is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.5.2 1,474 2/1/2018
1.5.0 1,119 1/25/2018
1.4.5 1,073 1/18/2018
1.4.3 1,237 1/18/2018
1.4.2 1,158 1/18/2018
1.4.1 1,166 1/18/2018
1.4.0 1,039 1/18/2018

Performance improvements, Code cleanup, Properties parameters