UNPKG

layer-oriented-deep-learning-network-js

Version:

A feed-forward neural network with injectable layers, activation functions, and optimizers.

43 lines (23 loc) 1.66 kB
'use strict'; var _DeepNetwork = require('./DeepNetwork'); var _DeepNetwork2 = _interopRequireDefault(_DeepNetwork); var _Linear = require('../activation-function/Linear'); var _Linear2 = _interopRequireDefault(_Linear); var _LeakyRelu = require('../activation-function/LeakyRelu'); var _LeakyRelu2 = _interopRequireDefault(_LeakyRelu); var _InputLayer = require('../layer/InputLayer'); var _InputLayer2 = _interopRequireDefault(_InputLayer); var _HiddenLayer = require('../layer/HiddenLayer'); var _HiddenLayer2 = _interopRequireDefault(_HiddenLayer); var _OutputLayer = require('../layer/OutputLayer'); var _OutputLayer2 = _interopRequireDefault(_OutputLayer); var _StochasticGradientDescent = require('../optimizer/StochasticGradientDescent'); var _StochasticGradientDescent2 = _interopRequireDefault(_StochasticGradientDescent); var _shuffleTrain = require('../trainer/shuffleTrain'); var _shuffleTrain2 = _interopRequireDefault(_shuffleTrain); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var network = new _DeepNetwork2.default([new _InputLayer2.default(2), new _HiddenLayer2.default(100, new _LeakyRelu2.default(), new _StochasticGradientDescent2.default(0.1)), new _OutputLayer2.default(6, new _Linear2.default(), new _StochasticGradientDescent2.default(0.1))]); var trainingSets = [//Outputs: [XOR, OR, AND, GreaterThan, LessThan, NotBoth] [[0, 0], [0, 0, 0, 0, 0, 1]], [[0, 1], [1, 1, 0, 0, 1, 0]], [[1, 0], [1, 1, 0, 1, 0, 0]], [[1, 1], [0, 1, 1, 0, 0, 0]]]; (0, _shuffleTrain2.default)(network, trainingSets, 100); //console.log('Output for input [1,1]:', network.invoke([1, 1]));