Attributes
Includes Deno configuration
Repository
Current version released
2 years ago
Dependencies
Netsaur
neo
neural network deno module usingMaintainers
- Loading (@load1n9)
- CarrotzRule (@carrotzrule123)
Usage
import {
DenseLayer,
NeuralNetwork,
tensor1D,
tensor2D,
} from "https://deno.land/x/netsaur/mod.ts";
const net = new NeuralNetwork({
silent: true,
layers: [
new DenseLayer({ size: 3, activation: "sigmoid" }),
new DenseLayer({ size: 1, activation: "sigmoid" }),
],
cost: "crossentropy",
});
await net.train(
[
{
inputs: await tensor2D([
[0, 0],
[1, 0],
[0, 1],
[1, 1],
]),
outputs: await tensor1D([0, 1, 1, 0]),
},
],
5000,
);
console.log(await net.predict(new Float32Array([0, 0])));
console.log(await net.predict(new Float32Array([1, 0])));
console.log(await net.predict(new Float32Array([0, 1])));
console.log(await net.predict(new Float32Array([1, 1])));
Use the Native Backend
import { DenseLayer, NeuralNetwork } from "https://deno.land/x/netsaur/mod.ts";
import {
Matrix,
Native,
} from "https://deno.land/x/netsaur/backends/native/mod.ts";
const network = await new NeuralNetwork({
input: 2,
layers: [
new DenseLayer({ size: 3, activation: "sigmoid" }),
new DenseLayer({ size: 1, activation: "sigmoid" }),
],
cost: "crossentropy",
}).setupBackend(Native);
network.train(
[
{
inputs: Matrix.of([
[0, 0],
[0, 1],
[1, 0],
[1, 1],
]),
outputs: Matrix.column([0, 1, 1, 0]),
},
],
5000,
0.1,
);
console.log(
await network.predict(
Matrix.of([
[0, 0],
[0, 1],
[1, 0],
[1, 1],
]),
),
);
Saving Models
import {
DenseLayer,
NeuralNetwork,
tensor1D,
tensor2D,
} from "https://deno.land/x/netsaur/mod.ts";
import { Model } from "https://deno.land/x/netsaur/model/mod.ts";
const net = new NeuralNetwork({
silent: true,
layers: [
new DenseLayer({ size: 3, activation: "sigmoid" }),
new DenseLayer({ size: 1, activation: "sigmoid" }),
],
cost: "crossentropy",
});
await net.train(
[
{
inputs: await tensor2D([
[0, 0],
[1, 0],
[0, 1],
[1, 1],
]),
outputs: await tensor1D([0, 1, 1, 0]),
},
],
5000,
);
await Model.save("./network.json", net);
Loading & Running Models
import { Model } from "https://deno.land/x/netsaur/model/mod.ts";
const net = await Model.load("./network.json");
console.log(await net.predict(new Float32Array([0, 0])));
console.log(await net.predict(new Float32Array([1, 0])));
console.log(await net.predict(new Float32Array([0, 1])));
console.log(await net.predict(new Float32Array([1, 1])));