|
1 | 1 | function AnnyFactory($rootScope) {
|
2 |
| - var factory = {}; |
| 2 | + var factory = {} |
3 | 3 |
|
4 | 4 | factory.init = function init() {
|
5 |
| - factory.newNetwork([2, 1]); |
6 |
| - }; |
| 5 | + factory.newNetwork([2, 1]) |
| 6 | + } |
7 | 7 |
|
8 | 8 | factory.activate = function(inputs) {
|
9 |
| - factory.network.activate(inputs); |
10 |
| - factory.emitChange(); |
11 |
| - }; |
| 9 | + factory.network.activate(inputs) |
| 10 | + factory.emitChange() |
| 11 | + } |
12 | 12 |
|
13 |
| - factory.data = anny.DATA; |
| 13 | + factory.data = anny.DATA |
14 | 14 |
|
15 | 15 | factory.getRandomLayers = function getRandomLayers() {
|
16 |
| - var inputs = 2; |
17 |
| - var outputs = 1; |
18 |
| - var numHiddenLayers = _.random(1, 3); |
19 |
| - var hiddenLayers = []; |
| 16 | + var inputs = 2 |
| 17 | + var outputs = 1 |
| 18 | + var numHiddenLayers = _.random(1, 3) |
| 19 | + var hiddenLayers = [] |
20 | 20 |
|
21 | 21 | _.times(numHiddenLayers, function time() {
|
22 |
| - hiddenLayers.push(_.random(3, 5)); |
23 |
| - }); |
| 22 | + hiddenLayers.push(_.random(3, 5)) |
| 23 | + }) |
24 | 24 |
|
25 |
| - return [].concat(inputs, hiddenLayers, outputs); |
26 |
| - }; |
| 25 | + return [].concat(inputs, hiddenLayers, outputs) |
| 26 | + } |
27 | 27 |
|
28 | 28 | factory.train = function(trainingSet, callback, frequency) {
|
29 |
| - var results = ['Predictions after training:']; |
30 |
| - factory.network.train(trainingSet, callback, frequency); |
| 29 | + var results = ['Predictions after training:'] |
| 30 | + factory.network.train(trainingSet, callback, frequency) |
31 | 31 |
|
32 | 32 | _.each(trainingSet, function(sample) {
|
33 |
| - var input = sample.input; |
34 |
| - var output = factory.network.activate(input); |
| 33 | + var input = sample.input |
| 34 | + var output = factory.network.activate(input) |
35 | 35 | results.push(
|
36 | 36 | '[' + input.toString() + '] == ' + (output >= 0.5) + ' ' + output
|
37 |
| - ); |
38 |
| - }); |
| 37 | + ) |
| 38 | + }) |
39 | 39 |
|
40 |
| - console.log(results.join('\n')); |
| 40 | + console.log(results.join('\n')) |
41 | 41 |
|
42 |
| - factory.emitChange(); |
43 |
| - }; |
| 42 | + factory.emitChange() |
| 43 | + } |
44 | 44 |
|
45 | 45 | factory.newNetwork = function newNetwork(layers) {
|
46 |
| - factory.network = new anny.Network(layers || factory.getRandomLayers()); |
47 |
| - factory.emitChange(); |
48 |
| - }; |
| 46 | + factory.network = new anny.Network(layers || factory.getRandomLayers()) |
| 47 | + factory.emitChange() |
| 48 | + } |
49 | 49 |
|
50 | 50 | factory.emitChange = function emitChange() {
|
51 |
| - $rootScope.$broadcast('anny:changed'); |
52 |
| - window.network = factory.network; |
53 |
| - }; |
| 51 | + $rootScope.$broadcast('anny:changed') |
| 52 | + window.network = factory.network |
| 53 | + } |
54 | 54 |
|
55 |
| - factory.init(); |
| 55 | + factory.init() |
56 | 56 |
|
57 |
| - return factory; |
| 57 | + return factory |
58 | 58 | }
|
59 | 59 |
|
60 | 60 | angular.module('anny')
|
61 |
| - .factory('AnnyFactory', AnnyFactory); |
| 61 | + .factory('AnnyFactory', AnnyFactory) |
0 commit comments