Train a neural network with your dataset & save it's trained state!
Demo • Installation • Getting started • Docs • License
<script src="https://cdn.jsdelivr.net/gh/matiasvlevi/dann@v2.2.2d/build/dann.min.js"></script>
npm i dannjs
Object types from the library can be imported like this
const dn = require('dannjs');
const Dann = dn.dann;
const Layer = dn.layer;
const Matrix = dn.matrix;
The objects containing functions can be imported this way
const dn = require('dannjs');
const lossfuncs = dn.lossfuncs;
const activations = dn.activations;
const poolfuncs = dn.poolfuncs;
Setting up a small (4,6,6,2) neural network.
const dn = require('dannjs');
const Dann = dn.dann;
let nn = new Dann(4,2);
nn.addHiddenLayer(6,'leakyReLU');
nn.addHiddenLayer(6,'leakyReLU');
nn.outputActivation('tanH');
nn.makeWeights();
nn.lr = 0.0001;
nn.log({details:true});
Training with a dataset.
//some example data... 4 inputs, 2 outputs
const dataset = [
{
input: [0,1,0,0],
output: [0,1]
},
{
input: [0,0,0,1],
output: [0,1]
},
{
input: [0,1,0,1],
output: [1,0]
},
{
input: [0,1,1,0],
output: [1,1]
},
// ... more data
];
//train 1 epoch
for (data of dataset) {
nn.backpropagate(data.input,data.output);
console.log(nn.loss);
}
For neuroevolution simulations. Works best with small models & large population size.
const population = 1000;
let newGeneration = [];
for (let i = 0; i < population; i++) {
// parentNN would be the best nn from past generation.
const childNN = parentNN;
childNN.mutateRandom(0.01,0.65);
newGeneration.push(childNN);
}
AI predicts San-francisco Housing prices.
more examples & demos here
MIT