ai library

Library for creating AI with Dart

This library represent an simple way to create neural network. Currently multilayer and single-layer perceptron can be created. In learning used backpropagation algorithm for both of them.

Perseptron is designed due to Rosenblatt's perseptron.

The main class is the MultilayerPerseptron which can contains Layers. Each layer consist of one or many Neurons. First layer always consist of InputNeurons where each of them take one input value and have weight equal to 1. All neurons of previous layer have contacts with each neurons of next layer.

Neural network have long-time and short-time memory. All information (knowledge - weights of synapces) of neural network during studying pass through short-time memory. When studying finished and knowledge is structured, then it pass to long-time memory. Knowledge is saved in JSON file knowledge.json in resources directory. For next time network take knowledge from file and initialize with proper weights.

Classes

AE
Class that represent the autoencoder (AE)
AeStructure
Class that represent structure.json for AE
CNN
Class that represent the convolutional neural network (CNN) [...]
Layer
Class that represent layer of neural network
LongMemory
Class that retain network's data
MLP
Class that represent the multilayer perseptron (MLP)
MlpStructure
Class that represent structure.json for MLP
Neuron
Model of neuron
ShortMemory
Class that imitates humans short memory
Structure
Class that represent structure.json file