nlptoolkit-classification 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,6 +3,7 @@ import { Bootstrap } from "nlptoolkit-sampling/dist/Bootstrap";
3
3
  import { DiscreteDistribution } from "nlptoolkit-math/dist/DiscreteDistribution";
4
4
  import { Vector } from "nlptoolkit-math/dist/Vector";
5
5
  import { Matrix } from "nlptoolkit-math/dist/Matrix";
6
+ import { Random } from "nlptoolkit-util/dist/Random";
6
7
  export declare class InstanceList {
7
8
  protected list: Array<Instance>;
8
9
  /**
@@ -56,9 +57,9 @@ export declare class InstanceList {
56
57
  sort(attributeIndex?: number): void;
57
58
  /**
58
59
  * Shuffles the instance list.
59
- * @param seed Seed is used for random number generation.
60
+ * @param random Random number generation.
60
61
  */
61
- shuffle(seed: number): void;
62
+ shuffle(random: Random): void;
62
63
  /**
63
64
  * Creates a bootstrap sample from the current instance list.
64
65
  *
@@ -130,9 +130,10 @@
130
130
  }
131
131
  /**
132
132
  * Shuffles the instance list.
133
- * @param seed Seed is used for random number generation.
133
+ * @param random Random number generation.
134
134
  */
135
- shuffle(seed) {
135
+ shuffle(random) {
136
+ random.shuffle(this.list);
136
137
  }
137
138
  /**
138
139
  * Creates a bootstrap sample from the current instance list.
@@ -1 +1 @@
1
- {"version":3,"file":"InstanceList.js","sourceRoot":"","sources":["../../source/InstanceList/InstanceList.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InstanceList.js","sourceRoot":"","sources":["../../source/InstanceList/InstanceList.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
1
  import { InstanceList } from "./InstanceList";
2
2
  import { Instance } from "../Instance/Instance";
3
+ import { Random } from "nlptoolkit-util/dist/Random";
3
4
  export declare class Partition {
4
5
  private multiList;
5
- constructor(instanceList?: InstanceList, attributeIndex?: number, stratifiedOrValue?: any);
6
+ constructor(instanceList?: InstanceList, attributeIndex?: number, stratifiedOrValue?: any, random?: Random);
6
7
  /**
7
8
  * Adds given instance list to the list of instance lists.
8
9
  *
@@ -13,7 +13,7 @@
13
13
  const InstanceList_1 = require("./InstanceList");
14
14
  const InstanceListOfSameClass_1 = require("./InstanceListOfSameClass");
15
15
  class Partition {
16
- constructor(instanceList, attributeIndex, stratifiedOrValue) {
16
+ constructor(instanceList, attributeIndex, stratifiedOrValue, random) {
17
17
  this.multiList = new Array();
18
18
  if (instanceList != undefined) {
19
19
  if (attributeIndex == undefined) {
@@ -46,6 +46,9 @@
46
46
  for (let i = 0; i < instanceList.size(); i++) {
47
47
  randomArray.push(i);
48
48
  }
49
+ if (random != undefined) {
50
+ random.shuffle(randomArray);
51
+ }
49
52
  for (let i = 0; i < instanceList.size(); i++) {
50
53
  let instance = instanceList.get(randomArray[i]);
51
54
  let classIndex = distribution.getIndex(instance.getClassLabel());
@@ -60,6 +63,7 @@
60
63
  }
61
64
  }
62
65
  else {
66
+ instanceList.shuffle(random);
63
67
  for (let i = 0; i < instanceList.size(); i++) {
64
68
  let instance = instanceList.get(i);
65
69
  let ratio = attributeIndex;
@@ -1 +1 @@
1
- {"version":3,"file":"Partition.js","sourceRoot":"","sources":["../../source/InstanceList/Partition.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Partition.js","sourceRoot":"","sources":["../../source/InstanceList/Partition.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "./DecisionCondition", "../Model", "../../Attribute/DiscreteIndexedAttribute", "../../Attribute/DiscreteAttribute", "../../Attribute/ContinuousAttribute", "nlptoolkit-math/dist/DiscreteDistribution", "../../InstanceList/Partition", "../../Instance/CompositeInstance"], factory);
7
+ define(["require", "exports", "./DecisionCondition", "../Model", "../../Attribute/DiscreteIndexedAttribute", "../../Attribute/DiscreteAttribute", "../../Attribute/ContinuousAttribute", "nlptoolkit-math/dist/DiscreteDistribution", "../../InstanceList/Partition", "../../Instance/CompositeInstance", "nlptoolkit-util/dist/Random"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
@@ -18,6 +18,7 @@
18
18
  const DiscreteDistribution_1 = require("nlptoolkit-math/dist/DiscreteDistribution");
19
19
  const Partition_1 = require("../../InstanceList/Partition");
20
20
  const CompositeInstance_1 = require("../../Instance/CompositeInstance");
21
+ const Random_1 = require("nlptoolkit-util/dist/Random");
21
22
  class DecisionNode {
22
23
  /**
23
24
  * The DecisionNode method takes {@link InstanceList} data as input, and then it sets the class label parameter by finding
@@ -68,6 +69,8 @@
68
69
  }
69
70
  let size;
70
71
  if (parameter != undefined && parameter.getAttributeSubsetSize() < data.get(0).attributeSize()) {
72
+ let random = new Random_1.Random(parameter.getSeed());
73
+ random.shuffle(indexList);
71
74
  size = parameter.getAttributeSubsetSize();
72
75
  }
73
76
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"DecisionNode.js","sourceRoot":"","sources":["../../../source/Model/DecisionTree/DecisionNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DecisionNode.js","sourceRoot":"","sources":["../../../source/Model/DecisionTree/DecisionNode.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "./NeuralNetworkModel", "nlptoolkit-math/dist/Matrix", "../Parameter/ActivationFunction", "nlptoolkit-math/dist/Vector", "../Performance/ClassificationPerformance"], factory);
7
+ define(["require", "exports", "./NeuralNetworkModel", "nlptoolkit-math/dist/Matrix", "../Parameter/ActivationFunction", "nlptoolkit-math/dist/Vector", "../Performance/ClassificationPerformance", "nlptoolkit-util/dist/Random"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
@@ -15,6 +15,7 @@
15
15
  const ActivationFunction_1 = require("../Parameter/ActivationFunction");
16
16
  const Vector_1 = require("nlptoolkit-math/dist/Vector");
17
17
  const ClassificationPerformance_1 = require("../Performance/ClassificationPerformance");
18
+ const Random_1 = require("nlptoolkit-util/dist/Random");
18
19
  class DeepNetworkModel extends NeuralNetworkModel_1.NeuralNetworkModel {
19
20
  /**
20
21
  * Constructor that takes two {@link InstanceList} train set and validation set and {@link DeepNetworkParameter} as inputs.
@@ -42,7 +43,7 @@
42
43
  let epoch = parameters.getEpoch();
43
44
  let learningRate = parameters.getLearningRate();
44
45
  for (let i = 0; i < epoch; i++) {
45
- trainSet.shuffle(parameters.getSeed());
46
+ trainSet.shuffle(new Random_1.Random(parameters.getSeed()));
46
47
  for (let j = 0; j < trainSet.size(); j++) {
47
48
  this.createInputVector(trainSet.get(j));
48
49
  hidden = new Array();
@@ -119,11 +120,11 @@
119
120
  */
120
121
  allocateWeights(parameters) {
121
122
  this.weights = new Array();
122
- this.weights.push(this.allocateLayerWeights(parameters.getHiddenNodes(0), this.d + 1));
123
+ this.weights.push(this.allocateLayerWeights(parameters.getHiddenNodes(0), this.d + 1, new Random_1.Random(parameters.getSeed())));
123
124
  for (let i = 0; i < parameters.layerSize() - 1; i++) {
124
- this.weights.push(this.allocateLayerWeights(parameters.getHiddenNodes(i + 1), parameters.getHiddenNodes(i) + 1));
125
+ this.weights.push(this.allocateLayerWeights(parameters.getHiddenNodes(i + 1), parameters.getHiddenNodes(i) + 1, new Random_1.Random(parameters.getSeed())));
125
126
  }
126
- this.weights.push(this.allocateLayerWeights(this.K, parameters.getHiddenNodes(parameters.layerSize() - 1) + 1));
127
+ this.weights.push(this.allocateLayerWeights(this.K, parameters.getHiddenNodes(parameters.layerSize() - 1) + 1, new Random_1.Random(parameters.getSeed())));
127
128
  this.hiddenLayerSize = parameters.layerSize();
128
129
  }
129
130
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"DeepNetworkModel.js","sourceRoot":"","sources":["../../source/Model/DeepNetworkModel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DeepNetworkModel.js","sourceRoot":"","sources":["../../source/Model/DeepNetworkModel.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "./NeuralNetworkModel", "nlptoolkit-math/dist/Matrix", "../Performance/ClassificationPerformance"], factory);
7
+ define(["require", "exports", "./NeuralNetworkModel", "nlptoolkit-math/dist/Matrix", "../Performance/ClassificationPerformance", "nlptoolkit-util/dist/Random"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
@@ -13,6 +13,7 @@
13
13
  const NeuralNetworkModel_1 = require("./NeuralNetworkModel");
14
14
  const Matrix_1 = require("nlptoolkit-math/dist/Matrix");
15
15
  const ClassificationPerformance_1 = require("../Performance/ClassificationPerformance");
16
+ const Random_1 = require("nlptoolkit-util/dist/Random");
16
17
  class LinearPerceptronModel extends NeuralNetworkModel_1.NeuralNetworkModel {
17
18
  /**
18
19
  * Constructor that takes {@link InstanceList}s as trainsSet and validationSet. Initially it allocates layer weights,
@@ -26,13 +27,13 @@
26
27
  constructor(trainSet, validationSet, parameters) {
27
28
  super(trainSet);
28
29
  if (validationSet != undefined) {
29
- let W = this.allocateLayerWeights(this.K, this.d + 1);
30
+ let W = this.allocateLayerWeights(this.K, this.d + 1, new Random_1.Random(parameters.getSeed()));
30
31
  let bestW = W.clone();
31
32
  let bestClassificationPerformance = new ClassificationPerformance_1.ClassificationPerformance(0.0);
32
33
  let epoch = parameters.getEpoch();
33
34
  let learningRate = parameters.getLearningRate();
34
35
  for (let i = 0; i < epoch; i++) {
35
- trainSet.shuffle(parameters.getSeed());
36
+ trainSet.shuffle(new Random_1.Random(parameters.getSeed()));
36
37
  for (let j = 0; j < trainSet.size(); j++) {
37
38
  this.createInputVector(trainSet.get(j));
38
39
  let rMinusY = this.calculateRMinusY(trainSet.get(j), this.x, W);
@@ -1 +1 @@
1
- {"version":3,"file":"LinearPerceptronModel.js","sourceRoot":"","sources":["../../source/Model/LinearPerceptronModel.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,6DAAwD;IACxD,wDAAmD;IAGnD,wFAAmF;IAEnF,MAAa,qBAAsB,SAAQ,uCAAkB;QAIzD;;;;;;;;WAQG;QACH,YAAY,QAAsB,EAAE,aAA4B,EAAE,UAAsC;YACpG,KAAK,CAAC,QAAQ,CAAC,CAAC;YAChB,IAAI,aAAa,IAAI,SAAS,EAAC;gBAC3B,IAAI,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBACtD,IAAI,KAAK,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;gBACtB,IAAI,6BAA6B,GAAG,IAAI,qDAAyB,CAAC,GAAG,CAAC,CAAC;gBACvE,IAAI,KAAK,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC;gBAClC,IAAI,YAAY,GAAG,UAAU,CAAC,eAAe,EAAE,CAAC;gBAChD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;oBAC5B,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;oBACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;wBACtC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;wBACxC,IAAI,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBAChE,IAAI,MAAM,GAAG,IAAI,eAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;wBACzC,MAAM,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC;wBAC1C,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;qBACjB;oBACD,IAAI,gCAAgC,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;oBAC1E,IAAI,gCAAgC,CAAC,WAAW,EAAE,GAAG,6BAA6B,CAAC,WAAW,EAAE,EAAE;wBAC9F,6BAA6B,GAAG,gCAAgC,CAAC;wBACjE,KAAK,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;qBACrB;oBACD,YAAY,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC;iBAC/C;gBACD,CAAC,GAAG,KAAK,CAAC;aACb;QACL,CAAC;QAED;;WAEG;QACO,eAAe;YACrB,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxD,CAAC;KAEJ;IAhDD,sDAgDC"}
1
+ {"version":3,"file":"LinearPerceptronModel.js","sourceRoot":"","sources":["../../source/Model/LinearPerceptronModel.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,6DAAwD;IACxD,wDAAmD;IAGnD,wFAAmF;IACnF,wDAAmD;IAEnD,MAAa,qBAAsB,SAAQ,uCAAkB;QAIzD;;;;;;;;WAQG;QACH,YAAY,QAAsB,EAAE,aAA4B,EAAE,UAAsC;YACpG,KAAK,CAAC,QAAQ,CAAC,CAAC;YAChB,IAAI,aAAa,IAAI,SAAS,EAAC;gBAC3B,IAAI,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,eAAM,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;gBACxF,IAAI,KAAK,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;gBACtB,IAAI,6BAA6B,GAAG,IAAI,qDAAyB,CAAC,GAAG,CAAC,CAAC;gBACvE,IAAI,KAAK,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC;gBAClC,IAAI,YAAY,GAAG,UAAU,CAAC,eAAe,EAAE,CAAC;gBAChD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;oBAC5B,QAAQ,CAAC,OAAO,CAAC,IAAI,eAAM,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;oBACnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;wBACtC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;wBACxC,IAAI,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBAChE,IAAI,MAAM,GAAG,IAAI,eAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;wBACzC,MAAM,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC;wBAC1C,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;qBACjB;oBACD,IAAI,gCAAgC,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;oBAC1E,IAAI,gCAAgC,CAAC,WAAW,EAAE,GAAG,6BAA6B,CAAC,WAAW,EAAE,EAAE;wBAC9F,6BAA6B,GAAG,gCAAgC,CAAC;wBACjE,KAAK,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;qBACrB;oBACD,YAAY,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC;iBAC/C;gBACD,CAAC,GAAG,KAAK,CAAC;aACb;QACL,CAAC;QAED;;WAEG;QACO,eAAe;YACrB,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxD,CAAC;KAEJ;IAhDD,sDAgDC"}
@@ -9,6 +9,7 @@ export declare class MultiLayerPerceptronModel extends LinearPerceptronModel {
9
9
  * The allocateWeights method allocates layers' weights of Matrix W and V.
10
10
  *
11
11
  * @param H Integer value for weights.
12
+ * @param random Random function to set weights.
12
13
  */
13
14
  private allocateWeights;
14
15
  /**
@@ -4,7 +4,7 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "./LinearPerceptronModel", "nlptoolkit-math/dist/Matrix", "../Parameter/ActivationFunction", "../Performance/ClassificationPerformance", "nlptoolkit-math/dist/Vector"], factory);
7
+ define(["require", "exports", "./LinearPerceptronModel", "nlptoolkit-math/dist/Matrix", "../Parameter/ActivationFunction", "../Performance/ClassificationPerformance", "nlptoolkit-math/dist/Vector", "nlptoolkit-util/dist/Random"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
@@ -15,6 +15,7 @@
15
15
  const ActivationFunction_1 = require("../Parameter/ActivationFunction");
16
16
  const ClassificationPerformance_1 = require("../Performance/ClassificationPerformance");
17
17
  const Vector_1 = require("nlptoolkit-math/dist/Vector");
18
+ const Random_1 = require("nlptoolkit-util/dist/Random");
18
19
  class MultiLayerPerceptronModel extends LinearPerceptronModel_1.LinearPerceptronModel {
19
20
  /**
20
21
  * A constructor that takes {@link InstanceList}s as trainsSet and validationSet. It sets the {@link NeuralNetworkModel}
@@ -29,14 +30,14 @@
29
30
  constructor(trainSet, validationSet, parameters) {
30
31
  super(trainSet);
31
32
  this.activationFunction = parameters.getActivationFunction();
32
- this.allocateWeights(parameters.getHiddenNodes());
33
+ this.allocateWeights(parameters.getHiddenNodes(), new Random_1.Random(parameters.getSeed()));
33
34
  let bestW = this.W.clone();
34
35
  let bestV = this.V.clone();
35
36
  let bestClassificationPerformance = new ClassificationPerformance_1.ClassificationPerformance(0.0);
36
37
  let epoch = parameters.getEpoch();
37
38
  let learningRate = parameters.getLearningRate();
38
39
  for (let i = 0; i < epoch; i++) {
39
- trainSet.shuffle(parameters.getSeed());
40
+ trainSet.shuffle(new Random_1.Random(parameters.getSeed()));
40
41
  for (let j = 0; j < trainSet.size(); j++) {
41
42
  this.createInputVector(trainSet.get(j));
42
43
  let hidden = this.calculateHidden(this.x, this.W, this.activationFunction);
@@ -84,10 +85,11 @@
84
85
  * The allocateWeights method allocates layers' weights of Matrix W and V.
85
86
  *
86
87
  * @param H Integer value for weights.
88
+ * @param random Random function to set weights.
87
89
  */
88
- allocateWeights(H) {
89
- this.W = this.allocateLayerWeights(H, this.d + 1);
90
- this.V = this.allocateLayerWeights(this.K, H + 1);
90
+ allocateWeights(H, random) {
91
+ this.W = this.allocateLayerWeights(H, this.d + 1, random);
92
+ this.V = this.allocateLayerWeights(this.K, H + 1, random);
91
93
  }
92
94
  /**
93
95
  * The calculateOutput method calculates the forward single hidden layer by using Matrices W and V.
@@ -1 +1 @@
1
- {"version":3,"file":"MultiLayerPerceptronModel.js","sourceRoot":"","sources":["../../source/Model/MultiLayerPerceptronModel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MultiLayerPerceptronModel.js","sourceRoot":"","sources":["../../source/Model/MultiLayerPerceptronModel.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import { InstanceList } from "../InstanceList/InstanceList";
4
4
  import { Matrix } from "nlptoolkit-math/dist/Matrix";
5
5
  import { Instance } from "../Instance/Instance";
6
6
  import { ActivationFunction } from "../Parameter/ActivationFunction";
7
+ import { Random } from "nlptoolkit-util/dist/Random";
7
8
  export declare abstract class NeuralNetworkModel extends ValidatedModel {
8
9
  protected classLabels: Array<string>;
9
10
  protected K: number;
@@ -23,9 +24,10 @@ export declare abstract class NeuralNetworkModel extends ValidatedModel {
23
24
  *
24
25
  * @param row Number of rows.
25
26
  * @param column Number of columns.
27
+ * @param random Random function to set weights.
26
28
  * @return Matrix with random weights.
27
29
  */
28
- protected allocateLayerWeights(row: number, column: number): Matrix;
30
+ protected allocateLayerWeights(row: number, column: number, random: Random): Matrix;
29
31
  /**
30
32
  * The normalizeOutput method takes an input {@link Vector} o, gets the result for e^o of each element of o,
31
33
  * then sums them up. At the end, divides each e^o by the summation.
@@ -32,10 +32,11 @@
32
32
  *
33
33
  * @param row Number of rows.
34
34
  * @param column Number of columns.
35
+ * @param random Random function to set weights.
35
36
  * @return Matrix with random weights.
36
37
  */
37
- allocateLayerWeights(row, column) {
38
- return new Matrix_1.Matrix(row, column, -0.01, +0.01);
38
+ allocateLayerWeights(row, column, random) {
39
+ return new Matrix_1.Matrix(row, column, -0.01, +0.01, random);
39
40
  }
40
41
  /**
41
42
  * The normalizeOutput method takes an input {@link Vector} o, gets the result for e^o of each element of o,
@@ -1 +1 @@
1
- {"version":3,"file":"NeuralNetworkModel.js","sourceRoot":"","sources":["../../source/Model/NeuralNetworkModel.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,qDAAgD;IAChD,wDAAmD;IAEnD,wDAAmD;IAEnD,wEAAmE;IACnE,qEAAgE;IAEhE,MAAsB,kBAAmB,SAAQ,+BAAc;QAW3D;;;;WAIG;QACH,YAAsB,QAAsB;YACxC,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC,sBAAsB,EAAE,CAAA;YACpD,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAA;YAChC,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,uBAAuB,EAAE,CAAA;QACtD,CAAC;QAED;;;;;;WAMG;QACO,oBAAoB,CAAC,GAAW,EAAE,MAAc;YACtD,OAAO,IAAI,eAAM,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC;QACjD,CAAC;QAED;;;;;;WAMG;QACO,eAAe,CAAC,CAAS;YAC/B,IAAI,GAAG,GAAG,GAAG,CAAC;YACd,IAAI,MAAM,GAAG,IAAI,KAAK,EAAU,CAAA;YAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAC;gBACnC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;aAClC;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAC;gBACnC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;aAC9C;YACD,OAAO,IAAI,eAAM,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;QAED;;;;;WAKG;QACO,iBAAiB,CAAC,QAAkB;YAC1C,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC;YAC7B,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAC1B,CAAC;QAED;;;;;;;;WAQG;QACO,eAAe,CAAC,KAAa,EAAE,OAAe,EAAE,kBAAsC;YAC5F,IAAI,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC;YACnD,QAAQ,kBAAkB,EAAC;gBACvB,KAAK,uCAAkB,CAAC,OAAO,CAAC;gBAChC;oBACI,CAAC,CAAC,OAAO,EAAE,CAAC;oBACZ,MAAM;gBACV,KAAK,uCAAkB,CAAC,IAAI;oBACxB,CAAC,CAAC,IAAI,EAAE,CAAC;oBACT,MAAM;gBACV,KAAK,uCAAkB,CAAC,IAAI;oBACxB,CAAC,CAAC,IAAI,EAAE,CAAC;oBACT,MAAM;aACb;YACD,OAAO,CAAC,CAAC;QACb,CAAC;QAED;;;;;;WAMG;QACO,uBAAuB,CAAC,MAAc;YAC5C,IAAI,GAAG,GAAG,IAAI,eAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;YACzC,OAAO,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC;QAED;;;;;;;WAOG;QACO,iCAAiC,CAAC,CAAS,EAAE,CAAS,EAAE,kBAAsC;YACpG,IAAI,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,kBAAkB,CAAC,CAAC;YACjE,IAAI,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YACnC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,2BAA2B,CAAC,YAAY,CAAC,CAAC;QACzD,CAAC;QAED;;;;;;;;;WASG;QACO,gBAAgB,CAAC,QAAkB,EAAE,KAAa,EAAE,OAAe;YACzE,IAAI,CAAC,CAAC,GAAG,IAAI,eAAM,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;YACrF,IAAI,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC;YACnD,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;YACjC,OAAO,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrC,CAAC;QAED;;;;;;WAMG;QACO,4BAA4B,CAAC,mBAAkC;YACrE,IAAI,cAAc,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC;YAC5C,IAAI,IAAI,GAAG,MAAM,CAAC,iBAAiB,CAAA;YACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC9C,IAAI,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE;oBAChF,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;oBAC1B,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;iBACxC;aACJ;YACD,OAAO,cAAc,CAAC;QAC1B,CAAC;QAED;;;;;;WAMG;QACH,OAAO,CAAC,QAAkB;YACtB,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACjC,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,QAAQ,YAAY,qCAAiB,EAAE;gBACvC,OAAO,IAAI,CAAC,4BAA4B,CAAsB,QAAS,CAAC,sBAAsB,EAAE,CAAC,CAAC;aACrG;iBAAM;gBACH,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;aAC9C;QACL,CAAC;QAED,kBAAkB,CAAC,QAAkB;YACjC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACjC,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;YACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAC;gBAC7C,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;aACvD;YACD,OAAO,MAAM,CAAC;QAClB,CAAC;KACJ;IAlLD,gDAkLC"}
1
+ {"version":3,"file":"NeuralNetworkModel.js","sourceRoot":"","sources":["../../source/Model/NeuralNetworkModel.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { Model } from "./Model";
2
2
  import { Instance } from "../Instance/Instance";
3
3
  export declare class RandomModel extends Model {
4
4
  private classLabels;
5
- private seed;
5
+ private random;
6
6
  constructor(classLabels: Array<string>, seed: number);
7
7
  /**
8
8
  * The predict method gets an Instance as an input and retrieves the possible class labels as an ArrayList. Then selects a
@@ -4,7 +4,7 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "./Model", "../Instance/CompositeInstance"], factory);
7
+ define(["require", "exports", "./Model", "../Instance/CompositeInstance", "nlptoolkit-util/dist/Random"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
@@ -12,11 +12,12 @@
12
12
  exports.RandomModel = void 0;
13
13
  const Model_1 = require("./Model");
14
14
  const CompositeInstance_1 = require("../Instance/CompositeInstance");
15
+ const Random_1 = require("nlptoolkit-util/dist/Random");
15
16
  class RandomModel extends Model_1.Model {
16
17
  constructor(classLabels, seed) {
17
18
  super();
18
19
  this.classLabels = classLabels;
19
- this.seed = seed;
20
+ this.random = new Random_1.Random(seed);
20
21
  }
21
22
  /**
22
23
  * The predict method gets an Instance as an input and retrieves the possible class labels as an ArrayList. Then selects a
@@ -29,12 +30,12 @@
29
30
  if ((instance instanceof CompositeInstance_1.CompositeInstance)) {
30
31
  let possibleClassLabels = instance.getPossibleClassLabels();
31
32
  let size = possibleClassLabels.length;
32
- let index = Math.floor(Math.random() * size);
33
+ let index = this.random.nextInt(size);
33
34
  return possibleClassLabels[index];
34
35
  }
35
36
  else {
36
37
  let size = this.classLabels.length;
37
- let index = Math.floor(Math.random() * size);
38
+ let index = this.random.nextInt(size);
38
39
  return this.classLabels[index];
39
40
  }
40
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RandomModel.js","sourceRoot":"","sources":["../../source/Model/RandomModel.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,mCAA8B;IAE9B,qEAAgE;IAEhE,MAAa,WAAY,SAAQ,aAAK;QAKlC,YAAY,WAA0B,EAAE,IAAY;YAChD,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;YAC9B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QACpB,CAAC;QAED;;;;;;WAMG;QACH,OAAO,CAAC,QAAkB;YACtB,IAAI,CAAC,QAAQ,YAAY,qCAAiB,CAAC,EAAE;gBACzC,IAAI,mBAAmB,GAAwB,QAAS,CAAC,sBAAsB,EAAE,CAAC;gBAClF,IAAI,IAAI,GAAG,mBAAmB,CAAC,MAAM,CAAC;gBACtC,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;gBAC7C,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC;aACrC;iBAAM;gBACH,IAAI,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;gBACnC,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;gBAC7C,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;aAClC;QACL,CAAC;QAED,kBAAkB,CAAC,QAAkB;YACjC,IAAI,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;YACvC,KAAK,IAAI,UAAU,IAAI,IAAI,CAAC,WAAW,EAAC;gBACpC,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;aACzD;YACD,OAAO,MAAM,CAAC;QAClB,CAAC;KAEJ;IAvCD,kCAuCC"}
1
+ {"version":3,"file":"RandomModel.js","sourceRoot":"","sources":["../../source/Model/RandomModel.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,mCAA8B;IAE9B,qEAAgE;IAChE,wDAAmD;IAEnD,MAAa,WAAY,SAAQ,aAAK;QAKlC,YAAY,WAA0B,EAAE,IAAY;YAChD,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;YAC9B,IAAI,CAAC,MAAM,GAAG,IAAI,eAAM,CAAC,IAAI,CAAC,CAAA;QAClC,CAAC;QAED;;;;;;WAMG;QACH,OAAO,CAAC,QAAkB;YACtB,IAAI,CAAC,QAAQ,YAAY,qCAAiB,CAAC,EAAE;gBACzC,IAAI,mBAAmB,GAAwB,QAAS,CAAC,sBAAsB,EAAE,CAAC;gBAClF,IAAI,IAAI,GAAG,mBAAmB,CAAC,MAAM,CAAC;gBACtC,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACtC,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC;aACrC;iBAAM;gBACH,IAAI,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;gBACnC,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACtC,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;aAClC;QACL,CAAC;QAED,kBAAkB,CAAC,QAAkB;YACjC,IAAI,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;YACvC,KAAK,IAAI,UAAU,IAAI,IAAI,CAAC,WAAW,EAAC;gBACpC,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;aACzD;YACD,OAAO,MAAM,CAAC;QAClB,CAAC;KAEJ;IAvCD,kCAuCC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nlptoolkit-classification",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "description": "Classification Library",
5
5
  "main": "index.js",
6
6
  "types": "index.js",
@@ -21,9 +21,9 @@
21
21
  "@types/mocha": "^9.0.0",
22
22
  "mocha": "^9.1.3",
23
23
  "nlptoolkit-datastructure": "^1.0.0",
24
- "nlptoolkit-math": "^1.0.0",
24
+ "nlptoolkit-math": "^1.0.1",
25
25
  "nlptoolkit-sampling": "^1.0.0",
26
- "nlptoolkit-util": "^1.0.2",
26
+ "nlptoolkit-util": "^1.0.4",
27
27
  "ts-node": "^10.4.0",
28
28
  "typescript": "^4.5.4"
29
29
  }
@@ -13,6 +13,7 @@ import {DiscreteIndexedAttribute} from "../Attribute/DiscreteIndexedAttribute";
13
13
  import {DiscreteDistribution} from "nlptoolkit-math/dist/DiscreteDistribution";
14
14
  import {Vector} from "nlptoolkit-math/dist/Vector";
15
15
  import {Matrix} from "nlptoolkit-math/dist/Matrix";
16
+ import {Random} from "nlptoolkit-util/dist/Random";
16
17
 
17
18
  export class InstanceList {
18
19
 
@@ -128,9 +129,10 @@ export class InstanceList {
128
129
 
129
130
  /**
130
131
  * Shuffles the instance list.
131
- * @param seed Seed is used for random number generation.
132
+ * @param random Random number generation.
132
133
  */
133
- shuffle(seed: number){
134
+ shuffle(random: Random){
135
+ random.shuffle(this.list)
134
136
  }
135
137
 
136
138
  /**
@@ -4,12 +4,13 @@ import {DiscreteAttribute} from "../Attribute/DiscreteAttribute";
4
4
  import {DiscreteIndexedAttribute} from "../Attribute/DiscreteIndexedAttribute";
5
5
  import {ContinuousAttribute} from "../Attribute/ContinuousAttribute";
6
6
  import {Instance} from "../Instance/Instance";
7
+ import {Random} from "nlptoolkit-util/dist/Random";
7
8
 
8
9
  export class Partition {
9
10
 
10
11
  private multiList: Array<InstanceList> = new Array<InstanceList>()
11
12
 
12
- constructor(instanceList?: InstanceList, attributeIndex?: number, stratifiedOrValue?: any) {
13
+ constructor(instanceList?: InstanceList, attributeIndex?: number, stratifiedOrValue?: any, random?: Random) {
13
14
  if (instanceList != undefined){
14
15
  if (attributeIndex == undefined){
15
16
  let classLabels = instanceList.getDistinctClassLabels();
@@ -39,6 +40,9 @@ export class Partition {
39
40
  for (let i = 0; i < instanceList.size(); i++){
40
41
  randomArray.push(i);
41
42
  }
43
+ if (random != undefined){
44
+ random.shuffle(randomArray)
45
+ }
42
46
  for (let i = 0; i < instanceList.size(); i++) {
43
47
  let instance = instanceList.get(randomArray[i]);
44
48
  let classIndex = distribution.getIndex(instance.getClassLabel());
@@ -51,6 +55,7 @@ export class Partition {
51
55
  counts[classIndex]++;
52
56
  }
53
57
  } else {
58
+ instanceList.shuffle(random)
54
59
  for (let i = 0; i < instanceList.size(); i++) {
55
60
  let instance = instanceList.get(i);
56
61
  let ratio = attributeIndex
@@ -9,6 +9,7 @@ import {DiscreteDistribution} from "nlptoolkit-math/dist/DiscreteDistribution";
9
9
  import {Partition} from "../../InstanceList/Partition";
10
10
  import {Instance} from "../../Instance/Instance";
11
11
  import {CompositeInstance} from "../../Instance/CompositeInstance";
12
+ import {Random} from "nlptoolkit-util/dist/Random";
12
13
 
13
14
  export class DecisionNode {
14
15
 
@@ -62,6 +63,8 @@ export class DecisionNode {
62
63
  }
63
64
  let size
64
65
  if (parameter != undefined && parameter.getAttributeSubsetSize() < data.get(0).attributeSize()) {
66
+ let random = new Random(parameter.getSeed())
67
+ random.shuffle(indexList)
65
68
  size = parameter.getAttributeSubsetSize();
66
69
  } else {
67
70
  size = data.get(0).attributeSize();
@@ -5,6 +5,7 @@ import {DeepNetworkParameter} from "../Parameter/DeepNetworkParameter";
5
5
  import {InstanceList} from "../InstanceList/InstanceList";
6
6
  import {Vector} from "nlptoolkit-math/dist/Vector";
7
7
  import {ClassificationPerformance} from "../Performance/ClassificationPerformance";
8
+ import {Random} from "nlptoolkit-util/dist/Random";
8
9
 
9
10
  export class DeepNetworkModel extends NeuralNetworkModel{
10
11
 
@@ -21,11 +22,11 @@ export class DeepNetworkModel extends NeuralNetworkModel{
21
22
  */
22
23
  private allocateWeights(parameters: DeepNetworkParameter){
23
24
  this.weights = new Array<Matrix>();
24
- this.weights.push(this.allocateLayerWeights(parameters.getHiddenNodes(0), this.d + 1));
25
+ this.weights.push(this.allocateLayerWeights(parameters.getHiddenNodes(0), this.d + 1, new Random(parameters.getSeed())));
25
26
  for (let i = 0; i < parameters.layerSize() - 1; i++) {
26
- this.weights.push(this.allocateLayerWeights(parameters.getHiddenNodes(i + 1), parameters.getHiddenNodes(i) + 1));
27
+ this.weights.push(this.allocateLayerWeights(parameters.getHiddenNodes(i + 1), parameters.getHiddenNodes(i) + 1, new Random(parameters.getSeed())));
27
28
  }
28
- this.weights.push(this.allocateLayerWeights(this.K, parameters.getHiddenNodes(parameters.layerSize() - 1) + 1));
29
+ this.weights.push(this.allocateLayerWeights(this.K, parameters.getHiddenNodes(parameters.layerSize() - 1) + 1, new Random(parameters.getSeed())));
29
30
  this.hiddenLayerSize = parameters.layerSize();
30
31
  }
31
32
 
@@ -69,7 +70,7 @@ export class DeepNetworkModel extends NeuralNetworkModel{
69
70
  let epoch = parameters.getEpoch();
70
71
  let learningRate = parameters.getLearningRate();
71
72
  for (let i = 0; i < epoch; i++) {
72
- trainSet.shuffle(parameters.getSeed());
73
+ trainSet.shuffle(new Random(parameters.getSeed()));
73
74
  for (let j = 0; j < trainSet.size(); j++) {
74
75
  this.createInputVector(trainSet.get(j));
75
76
  hidden = new Array<Vector>();
@@ -3,6 +3,7 @@ import {Matrix} from "nlptoolkit-math/dist/Matrix";
3
3
  import {InstanceList} from "../InstanceList/InstanceList";
4
4
  import {LinearPerceptronParameter} from "../Parameter/LinearPerceptronParameter";
5
5
  import {ClassificationPerformance} from "../Performance/ClassificationPerformance";
6
+ import {Random} from "nlptoolkit-util/dist/Random";
6
7
 
7
8
  export class LinearPerceptronModel extends NeuralNetworkModel{
8
9
 
@@ -20,13 +21,13 @@ export class LinearPerceptronModel extends NeuralNetworkModel{
20
21
  constructor(trainSet: InstanceList, validationSet?: InstanceList, parameters?: LinearPerceptronParameter) {
21
22
  super(trainSet);
22
23
  if (validationSet != undefined){
23
- let W = this.allocateLayerWeights(this.K, this.d + 1);
24
+ let W = this.allocateLayerWeights(this.K, this.d + 1, new Random(parameters.getSeed()));
24
25
  let bestW = W.clone();
25
26
  let bestClassificationPerformance = new ClassificationPerformance(0.0);
26
27
  let epoch = parameters.getEpoch();
27
28
  let learningRate = parameters.getLearningRate();
28
29
  for (let i = 0; i < epoch; i++) {
29
- trainSet.shuffle(parameters.getSeed());
30
+ trainSet.shuffle(new Random(parameters.getSeed()));
30
31
  for (let j = 0; j < trainSet.size(); j++) {
31
32
  this.createInputVector(trainSet.get(j));
32
33
  let rMinusY = this.calculateRMinusY(trainSet.get(j), this.x, W);
@@ -5,6 +5,7 @@ import {InstanceList} from "../InstanceList/InstanceList";
5
5
  import {MultiLayerPerceptronParameter} from "../Parameter/MultiLayerPerceptronParameter";
6
6
  import {ClassificationPerformance} from "../Performance/ClassificationPerformance";
7
7
  import {Vector} from "nlptoolkit-math/dist/Vector";
8
+ import {Random} from "nlptoolkit-util/dist/Random";
8
9
 
9
10
  export class MultiLayerPerceptronModel extends LinearPerceptronModel{
10
11
 
@@ -15,10 +16,11 @@ export class MultiLayerPerceptronModel extends LinearPerceptronModel{
15
16
  * The allocateWeights method allocates layers' weights of Matrix W and V.
16
17
  *
17
18
  * @param H Integer value for weights.
19
+ * @param random Random function to set weights.
18
20
  */
19
- private allocateWeights(H: number){
20
- this.W = this.allocateLayerWeights(H, this.d + 1);
21
- this.V = this.allocateLayerWeights(this.K, H + 1);
21
+ private allocateWeights(H: number, random: Random){
22
+ this.W = this.allocateLayerWeights(H, this.d + 1, random);
23
+ this.V = this.allocateLayerWeights(this.K, H + 1, random);
22
24
  }
23
25
 
24
26
  /**
@@ -34,14 +36,14 @@ export class MultiLayerPerceptronModel extends LinearPerceptronModel{
34
36
  constructor(trainSet: InstanceList, validationSet: InstanceList, parameters: MultiLayerPerceptronParameter) {
35
37
  super(trainSet);
36
38
  this.activationFunction = parameters.getActivationFunction();
37
- this.allocateWeights(parameters.getHiddenNodes());
39
+ this.allocateWeights(parameters.getHiddenNodes(), new Random(parameters.getSeed()));
38
40
  let bestW = this.W.clone();
39
41
  let bestV = this.V.clone();
40
42
  let bestClassificationPerformance = new ClassificationPerformance(0.0);
41
43
  let epoch = parameters.getEpoch();
42
44
  let learningRate = parameters.getLearningRate();
43
45
  for (let i = 0; i < epoch; i++) {
44
- trainSet.shuffle(parameters.getSeed());
46
+ trainSet.shuffle(new Random(parameters.getSeed()));
45
47
  for (let j = 0; j < trainSet.size(); j++) {
46
48
  this.createInputVector(trainSet.get(j));
47
49
  let hidden = this.calculateHidden(this.x, this.W, this.activationFunction);
@@ -5,6 +5,7 @@ import {Matrix} from "nlptoolkit-math/dist/Matrix";
5
5
  import {Instance} from "../Instance/Instance";
6
6
  import {ActivationFunction} from "../Parameter/ActivationFunction";
7
7
  import {CompositeInstance} from "../Instance/CompositeInstance";
8
+ import {Random} from "nlptoolkit-util/dist/Random";
8
9
 
9
10
  export abstract class NeuralNetworkModel extends ValidatedModel{
10
11
 
@@ -34,10 +35,11 @@ export abstract class NeuralNetworkModel extends ValidatedModel{
34
35
  *
35
36
  * @param row Number of rows.
36
37
  * @param column Number of columns.
38
+ * @param random Random function to set weights.
37
39
  * @return Matrix with random weights.
38
40
  */
39
- protected allocateLayerWeights(row: number, column: number): Matrix{
40
- return new Matrix(row, column, -0.01, +0.01);
41
+ protected allocateLayerWeights(row: number, column: number, random: Random): Matrix{
42
+ return new Matrix(row, column, -0.01, +0.01, random);
41
43
  }
42
44
 
43
45
  /**
@@ -1,16 +1,17 @@
1
1
  import {Model} from "./Model";
2
2
  import {Instance} from "../Instance/Instance";
3
3
  import {CompositeInstance} from "../Instance/CompositeInstance";
4
+ import {Random} from "nlptoolkit-util/dist/Random";
4
5
 
5
6
  export class RandomModel extends Model{
6
7
 
7
8
  private classLabels: Array<string>
8
- private seed: number
9
+ private random: Random
9
10
 
10
11
  constructor(classLabels: Array<string>, seed: number) {
11
12
  super();
12
13
  this.classLabels = classLabels
13
- this.seed = seed
14
+ this.random = new Random(seed)
14
15
  }
15
16
 
16
17
  /**
@@ -24,11 +25,11 @@ export class RandomModel extends Model{
24
25
  if ((instance instanceof CompositeInstance)) {
25
26
  let possibleClassLabels = (<CompositeInstance> instance).getPossibleClassLabels();
26
27
  let size = possibleClassLabels.length;
27
- let index = Math.floor(Math.random() * size);
28
+ let index = this.random.nextInt(size);
28
29
  return possibleClassLabels[index];
29
30
  } else {
30
31
  let size = this.classLabels.length;
31
- let index = Math.floor(Math.random() * size);
32
+ let index = this.random.nextInt(size);
32
33
  return this.classLabels[index];
33
34
  }
34
35
  }