nlptoolkit-classification 1.0.6 → 1.0.8
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.
- package/README.md +1 -0
- package/dist/Attribute/DiscreteAttribute.d.ts +1 -1
- package/dist/Attribute/DiscreteAttribute.js.map +1 -1
- package/dist/Attribute/DiscreteIndexedAttribute.d.ts +2 -2
- package/dist/DataSet/DataDefinition.d.ts +11 -0
- package/dist/DataSet/DataDefinition.js +11 -0
- package/dist/DataSet/DataDefinition.js.map +1 -1
- package/dist/Experiment/BootstrapRun.js +2 -2
- package/dist/Experiment/BootstrapRun.js.map +1 -1
- package/dist/Experiment/Experiment.d.ts +7 -7
- package/dist/Experiment/Experiment.js +6 -6
- package/dist/Experiment/Experiment.js.map +1 -1
- package/dist/Experiment/KFoldRun.d.ts +17 -2
- package/dist/Experiment/KFoldRun.js +19 -4
- package/dist/Experiment/KFoldRun.js.map +1 -1
- package/dist/Experiment/KFoldRunSeparateTest.d.ts +13 -2
- package/dist/Experiment/KFoldRunSeparateTest.js +15 -4
- package/dist/Experiment/KFoldRunSeparateTest.js.map +1 -1
- package/dist/Experiment/MxKFoldRun.js +1 -1
- package/dist/Experiment/MxKFoldRun.js.map +1 -1
- package/dist/Experiment/MxKFoldRunSeparateTest.js +1 -1
- package/dist/Experiment/MxKFoldRunSeparateTest.js.map +1 -1
- package/dist/Experiment/SingleRunWithK.d.ts +18 -3
- package/dist/Experiment/SingleRunWithK.js +18 -3
- package/dist/Experiment/SingleRunWithK.js.map +1 -1
- package/dist/Experiment/StratifiedKFoldRun.js +1 -1
- package/dist/Experiment/StratifiedKFoldRun.js.map +1 -1
- package/dist/Experiment/StratifiedKFoldRunSeparateTest.js +1 -1
- package/dist/Experiment/StratifiedKFoldRunSeparateTest.js.map +1 -1
- package/dist/Experiment/StratifiedMxKFoldRun.js +1 -1
- package/dist/Experiment/StratifiedMxKFoldRun.js.map +1 -1
- package/dist/Experiment/StratifiedMxKFoldRunSeparateTest.js +3 -3
- package/dist/Experiment/StratifiedMxKFoldRunSeparateTest.js.map +1 -1
- package/dist/Experiment/StratifiedSingleRunWithK.js +1 -1
- package/dist/Experiment/StratifiedSingleRunWithK.js.map +1 -1
- package/dist/Filter/LaryFilter.d.ts +1 -1
- package/dist/Filter/LaryFilter.js +1 -1
- package/dist/Filter/TrainedFeatureFilter.d.ts +1 -1
- package/dist/Filter/TrainedFeatureFilter.js +1 -1
- package/dist/InstanceList/Partition.d.ts +45 -0
- package/dist/InstanceList/Partition.js +125 -70
- package/dist/InstanceList/Partition.js.map +1 -1
- package/dist/Model/DecisionTree/DecisionCondition.d.ts +8 -0
- package/dist/Model/DecisionTree/DecisionCondition.js +8 -0
- package/dist/Model/DecisionTree/DecisionCondition.js.map +1 -1
- package/dist/Model/DecisionTree/DecisionNode.d.ts +39 -1
- package/dist/Model/DecisionTree/DecisionNode.js +64 -22
- package/dist/Model/DecisionTree/DecisionNode.js.map +1 -1
- package/dist/Model/DecisionTree/DecisionStump.d.ts +17 -0
- package/dist/{Classifier/C45Stump.js → Model/DecisionTree/DecisionStump.js} +13 -10
- package/dist/Model/DecisionTree/DecisionStump.js.map +1 -0
- package/dist/Model/DecisionTree/DecisionTree.d.ts +24 -9
- package/dist/Model/DecisionTree/DecisionTree.js +39 -16
- package/dist/Model/DecisionTree/DecisionTree.js.map +1 -1
- package/dist/Model/DummyModel.d.ts +28 -3
- package/dist/Model/DummyModel.js +36 -23
- package/dist/Model/DummyModel.js.map +1 -1
- package/dist/{Classifier/Bagging.d.ts → Model/Ensemble/BaggingModel.d.ts} +8 -4
- package/dist/{Classifier/Bagging.js → Model/Ensemble/BaggingModel.js} +16 -14
- package/dist/Model/Ensemble/BaggingModel.js.map +1 -0
- package/dist/{Classifier/RandomForest.d.ts → Model/Ensemble/RandomForestModel.d.ts} +8 -4
- package/dist/{Classifier/RandomForest.js → Model/Ensemble/RandomForestModel.js} +16 -14
- package/dist/Model/Ensemble/RandomForestModel.js.map +1 -0
- package/dist/Model/Ensemble/TreeEnsembleModel.d.ts +32 -0
- package/dist/Model/{TreeEnsembleModel.js → Ensemble/TreeEnsembleModel.js} +23 -17
- package/dist/Model/Ensemble/TreeEnsembleModel.js.map +1 -0
- package/dist/Model/Model.d.ts +52 -0
- package/dist/Model/Model.js +84 -1
- package/dist/Model/Model.js.map +1 -1
- package/dist/Model/NeuralNetwork/DeepNetworkModel.d.ts +47 -0
- package/dist/Model/{DeepNetworkModel.js → NeuralNetwork/DeepNetworkModel.js} +55 -55
- package/dist/Model/NeuralNetwork/DeepNetworkModel.js.map +1 -0
- package/dist/Model/NeuralNetwork/LinearPerceptronModel.d.ts +31 -0
- package/dist/Model/NeuralNetwork/LinearPerceptronModel.js +84 -0
- package/dist/Model/NeuralNetwork/LinearPerceptronModel.js.map +1 -0
- package/dist/Model/NeuralNetwork/MultiLayerPerceptronModel.d.ts +39 -0
- package/dist/Model/{MultiLayerPerceptronModel.js → NeuralNetwork/MultiLayerPerceptronModel.js} +41 -37
- package/dist/Model/NeuralNetwork/MultiLayerPerceptronModel.js.map +1 -0
- package/dist/Model/{NeuralNetworkModel.d.ts → NeuralNetwork/NeuralNetworkModel.d.ts} +19 -5
- package/dist/Model/{NeuralNetworkModel.js → NeuralNetwork/NeuralNetworkModel.js} +19 -6
- package/dist/Model/NeuralNetwork/NeuralNetworkModel.js.map +1 -0
- package/dist/Model/{KnnInstance.d.ts → NonParametric/KnnInstance.d.ts} +1 -1
- package/dist/Model/NonParametric/KnnInstance.js.map +1 -0
- package/dist/Model/{KnnModel.d.ts → NonParametric/KnnModel.d.ts} +30 -6
- package/dist/Model/{KnnModel.js → NonParametric/KnnModel.js} +42 -19
- package/dist/Model/NonParametric/KnnModel.js.map +1 -0
- package/dist/Model/{GaussianModel.d.ts → Parametric/GaussianModel.d.ts} +20 -2
- package/dist/Model/{GaussianModel.js → Parametric/GaussianModel.js} +21 -3
- package/dist/Model/Parametric/GaussianModel.js.map +1 -0
- package/dist/Model/Parametric/KMeansModel.d.ts +36 -0
- package/dist/Model/Parametric/KMeansModel.js +73 -0
- package/dist/Model/Parametric/KMeansModel.js.map +1 -0
- package/dist/Model/Parametric/LdaModel.d.ts +44 -0
- package/dist/Model/Parametric/LdaModel.js +98 -0
- package/dist/Model/Parametric/LdaModel.js.map +1 -0
- package/dist/Model/{NaiveBayesModel.d.ts → Parametric/NaiveBayesModel.d.ts} +30 -10
- package/dist/Model/{NaiveBayesModel.js → Parametric/NaiveBayesModel.js} +64 -27
- package/dist/Model/Parametric/NaiveBayesModel.js.map +1 -0
- package/dist/Model/Parametric/QdaModel.d.ts +30 -0
- package/dist/Model/Parametric/QdaModel.js +84 -0
- package/dist/Model/Parametric/QdaModel.js.map +1 -0
- package/dist/Model/RandomModel.d.ts +32 -2
- package/dist/Model/RandomModel.js +48 -16
- package/dist/Model/RandomModel.js.map +1 -1
- package/dist/Parameter/C45Parameter.d.ts +2 -2
- package/dist/Parameter/DeepNetworkParameter.d.ts +2 -2
- package/dist/Parameter/KnnParameter.d.ts +1 -1
- package/dist/Parameter/LinearPerceptronParameter.d.ts +4 -4
- package/dist/Parameter/MultiLayerPerceptronParameter.d.ts +2 -2
- package/dist/Parameter/Parameter.d.ts +1 -1
- package/dist/Performance/ConfusionMatrix.d.ts +1 -1
- package/dist/StatisticalTest/Combined5x2F.d.ts +12 -0
- package/dist/StatisticalTest/Combined5x2F.js +12 -0
- package/dist/StatisticalTest/Combined5x2F.js.map +1 -1
- package/dist/StatisticalTest/Combined5x2t.d.ts +13 -0
- package/dist/StatisticalTest/Combined5x2t.js +13 -0
- package/dist/StatisticalTest/Combined5x2t.js.map +1 -1
- package/dist/StatisticalTest/Paired5x2t.d.ts +12 -0
- package/dist/StatisticalTest/Paired5x2t.js +12 -0
- package/dist/StatisticalTest/Paired5x2t.js.map +1 -1
- package/dist/StatisticalTest/PairedTest.d.ts +12 -0
- package/dist/StatisticalTest/PairedTest.js +12 -0
- package/dist/StatisticalTest/PairedTest.js.map +1 -1
- package/dist/StatisticalTest/Pairedt.d.ts +12 -0
- package/dist/StatisticalTest/Pairedt.js +12 -0
- package/dist/StatisticalTest/Pairedt.js.map +1 -1
- package/dist/StatisticalTest/Sign.d.ts +17 -0
- package/dist/StatisticalTest/Sign.js +17 -0
- package/dist/StatisticalTest/Sign.js.map +1 -1
- package/dist/StatisticalTest/StatisticalTestResult.d.ts +30 -0
- package/dist/StatisticalTest/StatisticalTestResult.js +30 -0
- package/dist/StatisticalTest/StatisticalTestResult.js.map +1 -1
- package/dist/index.d.ts +88 -0
- package/dist/index.js +111 -0
- package/dist/index.js.map +1 -0
- package/models/bagging-bupa.txt +10346 -0
- package/models/bagging-car.txt +40752 -0
- package/models/bagging-dermatology.txt +2990 -0
- package/models/bagging-iris.txt +1332 -0
- package/models/bagging-tictactoe.txt +29442 -0
- package/models/c45-bupa.txt +3 -0
- package/models/c45-car.txt +212 -0
- package/models/c45-carIndexed.txt +92 -0
- package/models/c45-dermatology.txt +22 -0
- package/models/c45-iris.txt +7 -0
- package/models/c45-tictactoe.txt +147 -0
- package/models/c45-tictactoeIndexed.txt +79 -0
- package/models/c45stump-bupa.txt +6 -0
- package/models/c45stump-car.txt +11 -0
- package/models/c45stump-chess.txt +35 -0
- package/models/c45stump-dermatology.txt +11 -0
- package/models/c45stump-iris.txt +5 -0
- package/models/c45stump-nursery.txt +10 -0
- package/models/c45stump-tictactoe.txt +9 -0
- package/models/randomforest-bupa.txt +10346 -0
- package/models/randomforest-car.txt +40752 -0
- package/models/randomforest-carIndexed.txt +15594 -0
- package/models/randomforest-dermatology.txt +2990 -0
- package/models/randomforest-iris.txt +1332 -0
- package/models/randomforest-tictactoe.txt +29442 -0
- package/package.json +7 -7
- package/source/Attribute/DiscreteAttribute.ts +1 -1
- package/source/Attribute/DiscreteIndexedAttribute.ts +2 -2
- package/source/DataSet/DataDefinition.ts +11 -0
- package/source/Experiment/BootstrapRun.ts +2 -2
- package/source/Experiment/Experiment.ts +10 -10
- package/source/Experiment/KFoldRun.ts +20 -5
- package/source/Experiment/KFoldRunSeparateTest.ts +16 -5
- package/source/Experiment/MxKFoldRun.ts +1 -1
- package/source/Experiment/MxKFoldRunSeparateTest.ts +1 -1
- package/source/Experiment/SingleRunWithK.ts +20 -5
- package/source/Experiment/StratifiedKFoldRun.ts +1 -1
- package/source/Experiment/StratifiedKFoldRunSeparateTest.ts +1 -1
- package/source/Experiment/StratifiedMxKFoldRun.ts +1 -1
- package/source/Experiment/StratifiedMxKFoldRunSeparateTest.ts +3 -3
- package/source/Experiment/StratifiedSingleRunWithK.ts +1 -1
- package/source/Filter/LaryFilter.ts +1 -1
- package/source/Filter/TrainedFeatureFilter.ts +1 -1
- package/source/InstanceList/Partition.ts +125 -65
- package/source/Model/DecisionTree/DecisionCondition.ts +8 -0
- package/source/Model/DecisionTree/DecisionNode.ts +65 -22
- package/source/Model/DecisionTree/DecisionStump.ts +26 -0
- package/source/Model/DecisionTree/DecisionTree.ts +44 -15
- package/source/Model/DummyModel.ts +40 -19
- package/source/{Classifier/Bagging.ts → Model/Ensemble/BaggingModel.ts} +15 -12
- package/source/{Classifier/RandomForest.ts → Model/Ensemble/RandomForestModel.ts} +14 -12
- package/source/Model/{TreeEnsembleModel.ts → Ensemble/TreeEnsembleModel.ts} +26 -18
- package/source/Model/Model.ts +92 -0
- package/source/Model/{DeepNetworkModel.ts → NeuralNetwork/DeepNetworkModel.ts} +59 -56
- package/source/Model/NeuralNetwork/LinearPerceptronModel.ts +81 -0
- package/source/Model/{MultiLayerPerceptronModel.ts → NeuralNetwork/MultiLayerPerceptronModel.ts} +46 -39
- package/source/Model/{NeuralNetworkModel.ts → NeuralNetwork/NeuralNetworkModel.ts} +20 -7
- package/source/Model/{KnnInstance.ts → NonParametric/KnnInstance.ts} +1 -1
- package/source/Model/{KnnModel.ts → NonParametric/KnnModel.ts} +48 -19
- package/source/Model/{GaussianModel.ts → Parametric/GaussianModel.ts} +21 -3
- package/source/Model/Parametric/KMeansModel.ts +72 -0
- package/source/Model/Parametric/LdaModel.ts +98 -0
- package/source/Model/{NaiveBayesModel.ts → Parametric/NaiveBayesModel.ts} +68 -25
- package/source/Model/Parametric/QdaModel.ts +83 -0
- package/source/Model/RandomModel.ts +54 -16
- package/source/Parameter/C45Parameter.ts +2 -2
- package/source/Parameter/DeepNetworkParameter.ts +2 -2
- package/source/Parameter/KnnParameter.ts +1 -1
- package/source/Parameter/LinearPerceptronParameter.ts +4 -4
- package/source/Parameter/MultiLayerPerceptronParameter.ts +2 -2
- package/source/Parameter/Parameter.ts +1 -1
- package/source/Performance/ConfusionMatrix.ts +1 -1
- package/source/StatisticalTest/Combined5x2F.ts +12 -0
- package/source/StatisticalTest/Combined5x2t.ts +13 -0
- package/source/StatisticalTest/Paired5x2t.ts +12 -0
- package/source/StatisticalTest/PairedTest.ts +12 -0
- package/source/StatisticalTest/Pairedt.ts +12 -0
- package/source/StatisticalTest/Sign.ts +17 -0
- package/source/StatisticalTest/StatisticalTestResult.ts +30 -0
- package/source/index.ts +88 -0
- package/source/tsconfig.json +1 -1
- package/tests/Classifier/C45Test.ts +2 -2
- package/tests/Classifier/DeepNetworkTest.ts +3 -5
- package/tests/Classifier/DummyTest.ts +2 -2
- package/tests/Classifier/KMeansTest.ts +2 -2
- package/tests/Classifier/KnnTest.ts +2 -2
- package/tests/Classifier/LdaTest.ts +2 -2
- package/tests/Classifier/LinearPerceptronTest.ts +2 -2
- package/tests/Classifier/MultiLayerPerceptronTest.ts +2 -3
- package/tests/Classifier/NaiveBayesTest.ts +2 -2
- package/tests/Classifier/QdaTest.ts +2 -2
- package/tests/Classifier/RandomForestTest.ts +2 -2
- package/tsconfig.json +1 -2
- package/dist/Classifier/Bagging.js.map +0 -1
- package/dist/Classifier/C45.d.ts +0 -14
- package/dist/Classifier/C45.js +0 -43
- package/dist/Classifier/C45.js.map +0 -1
- package/dist/Classifier/C45Stump.d.ts +0 -13
- package/dist/Classifier/C45Stump.js.map +0 -1
- package/dist/Classifier/Classifier.d.ts +0 -40
- package/dist/Classifier/Classifier.js +0 -72
- package/dist/Classifier/Classifier.js.map +0 -1
- package/dist/Classifier/DeepNetwork.d.ts +0 -14
- package/dist/Classifier/DeepNetwork.js +0 -34
- package/dist/Classifier/DeepNetwork.js.map +0 -1
- package/dist/Classifier/Dummy.d.ts +0 -14
- package/dist/Classifier/Dummy.js +0 -32
- package/dist/Classifier/Dummy.js.map +0 -1
- package/dist/Classifier/KMeans.d.ts +0 -13
- package/dist/Classifier/KMeans.js +0 -39
- package/dist/Classifier/KMeans.js.map +0 -1
- package/dist/Classifier/Knn.d.ts +0 -14
- package/dist/Classifier/Knn.js +0 -32
- package/dist/Classifier/Knn.js.map +0 -1
- package/dist/Classifier/Lda.d.ts +0 -13
- package/dist/Classifier/Lda.js +0 -55
- package/dist/Classifier/Lda.js.map +0 -1
- package/dist/Classifier/LinearPerceptron.d.ts +0 -15
- package/dist/Classifier/LinearPerceptron.js +0 -35
- package/dist/Classifier/LinearPerceptron.js.map +0 -1
- package/dist/Classifier/MultiLayerPerceptron.d.ts +0 -15
- package/dist/Classifier/MultiLayerPerceptron.js +0 -35
- package/dist/Classifier/MultiLayerPerceptron.js.map +0 -1
- package/dist/Classifier/NaiveBayes.d.ts +0 -26
- package/dist/Classifier/NaiveBayes.js +0 -70
- package/dist/Classifier/NaiveBayes.js.map +0 -1
- package/dist/Classifier/Qda.d.ts +0 -13
- package/dist/Classifier/Qda.js +0 -53
- package/dist/Classifier/Qda.js.map +0 -1
- package/dist/Classifier/RandomClassifier.d.ts +0 -13
- package/dist/Classifier/RandomClassifier.js +0 -35
- package/dist/Classifier/RandomClassifier.js.map +0 -1
- package/dist/Classifier/RandomForest.js.map +0 -1
- package/dist/Model/DeepNetworkModel.d.ts +0 -45
- package/dist/Model/DeepNetworkModel.js.map +0 -1
- package/dist/Model/GaussianModel.js.map +0 -1
- package/dist/Model/KMeansModel.d.ts +0 -28
- package/dist/Model/KMeansModel.js +0 -61
- package/dist/Model/KMeansModel.js.map +0 -1
- package/dist/Model/KnnInstance.js.map +0 -1
- package/dist/Model/KnnModel.js.map +0 -1
- package/dist/Model/LdaModel.d.ts +0 -28
- package/dist/Model/LdaModel.js +0 -67
- package/dist/Model/LdaModel.js.map +0 -1
- package/dist/Model/LinearPerceptronModel.d.ts +0 -24
- package/dist/Model/LinearPerceptronModel.js +0 -91
- package/dist/Model/LinearPerceptronModel.js.map +0 -1
- package/dist/Model/MultiLayerPerceptronModel.d.ts +0 -33
- package/dist/Model/MultiLayerPerceptronModel.js.map +0 -1
- package/dist/Model/NaiveBayesModel.js.map +0 -1
- package/dist/Model/NeuralNetworkModel.js.map +0 -1
- package/dist/Model/QdaModel.d.ts +0 -27
- package/dist/Model/QdaModel.js +0 -63
- package/dist/Model/QdaModel.js.map +0 -1
- package/dist/Model/TreeEnsembleModel.d.ts +0 -22
- package/dist/Model/TreeEnsembleModel.js.map +0 -1
- package/index.js +0 -100
- package/source/Classifier/C45.ts +0 -34
- package/source/Classifier/C45Stump.ts +0 -23
- package/source/Classifier/Classifier.ts +0 -72
- package/source/Classifier/DeepNetwork.ts +0 -26
- package/source/Classifier/Dummy.ts +0 -23
- package/source/Classifier/KMeans.ts +0 -30
- package/source/Classifier/Knn.ts +0 -25
- package/source/Classifier/Lda.ts +0 -47
- package/source/Classifier/LinearPerceptron.ts +0 -27
- package/source/Classifier/MultiLayerPerceptron.ts +0 -27
- package/source/Classifier/NaiveBayes.ts +0 -66
- package/source/Classifier/Qda.ts +0 -46
- package/source/Classifier/RandomClassifier.ts +0 -26
- package/source/Model/KMeansModel.ts +0 -56
- package/source/Model/LdaModel.ts +0 -62
- package/source/Model/LinearPerceptronModel.ts +0 -83
- package/source/Model/QdaModel.ts +0 -57
- /package/dist/Model/{KnnInstance.js → NonParametric/KnnInstance.js} +0 -0
package/README.md
CHANGED
|
@@ -55,6 +55,7 @@ You can also see [Java](https://github.com/starlangsoftware/Classification),
|
|
|
55
55
|
[Cython](https://github.com/starlangsoftware/Classification-Cy),
|
|
56
56
|
[Swift](https://github.com/starlangsoftware/Classification-Swift),
|
|
57
57
|
[C++](https://github.com/starlangsoftware/Classification-CPP),
|
|
58
|
+
[C](https://github.com/starlangsoftware/Classification-C),
|
|
58
59
|
or [C#](https://github.com/starlangsoftware/Classification-CS) repository.
|
|
59
60
|
|
|
60
61
|
## Requirements
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DiscreteAttribute.js","sourceRoot":"","sources":["../../source/Attribute/DiscreteAttribute.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,2CAAsC;IAEtC,MAAa,iBAAkB,SAAQ,qBAAS;QAI5C;;;;WAIG;QACH,YAAY,KAAa;YACrB,KAAK,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"DiscreteAttribute.js","sourceRoot":"","sources":["../../source/Attribute/DiscreteAttribute.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,2CAAsC;IAEtC,MAAa,iBAAkB,SAAQ,qBAAS;QAI5C;;;;WAIG;QACH,YAAY,KAAa;YACrB,KAAK,EAAE,CAAC;YARK,UAAK,GAAW,MAAM,CAAA;YASnC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QACtB,CAAC;QAED;;;;WAIG;QACH,QAAQ;YACJ,OAAO,IAAI,CAAC,KAAK,CAAA;QACrB,CAAC;QAED;;;;WAIG;QACH,QAAQ;YACJ,IAAI,IAAI,CAAC,KAAK,IAAI,GAAG,EAAC;gBAClB,OAAO,OAAO,CAAC;aAClB;YACD,OAAO,IAAI,CAAC,KAAK,CAAC;QACtB,CAAC;QAED,uBAAuB;YACnB,OAAO,CAAC,CAAC;QACb,CAAC;QAED,oBAAoB;YAChB,OAAO,IAAI,KAAK,EAAU,CAAC;QAC/B,CAAC;KAEJ;IA3CD,8CA2CC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { DiscreteAttribute } from "./DiscreteAttribute";
|
|
2
2
|
export declare class DiscreteIndexedAttribute extends DiscreteAttribute {
|
|
3
|
-
private index;
|
|
4
|
-
private maxIndex;
|
|
3
|
+
private readonly index;
|
|
4
|
+
private readonly maxIndex;
|
|
5
5
|
/**
|
|
6
6
|
* Constructor for a discrete attribute.
|
|
7
7
|
*
|
|
@@ -10,7 +10,18 @@ export declare class DataDefinition {
|
|
|
10
10
|
* @param attributeValueList Array of array of strings to represent all possible values of discrete features.
|
|
11
11
|
*/
|
|
12
12
|
constructor(attributeTypes?: Array<AttributeType>, attributeValueList?: Array<Array<String>>);
|
|
13
|
+
/**
|
|
14
|
+
* Returns number of distinct values for a given discrete attribute with index attributeIndex.
|
|
15
|
+
* @param attributeIndex Index of the discrete attribute.
|
|
16
|
+
* @return Number of distinct values for a given discrete attribute
|
|
17
|
+
*/
|
|
13
18
|
numberOfValues(attributeIndex: number): number;
|
|
19
|
+
/**
|
|
20
|
+
* Returns the index of the given value in the values list of the attributeIndex'th discrete attribute.
|
|
21
|
+
* @param attributeIndex Index of the discrete attribute.
|
|
22
|
+
* @param value Value of the discrete attribute
|
|
23
|
+
* @return Index of the given value in the values list of the discrete attribute.
|
|
24
|
+
*/
|
|
14
25
|
featureValueIndex(attributeIndex: number, value: String): number;
|
|
15
26
|
/**
|
|
16
27
|
* Returns the number of attribute types.
|
|
@@ -26,9 +26,20 @@
|
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
|
+
/**
|
|
30
|
+
* Returns number of distinct values for a given discrete attribute with index attributeIndex.
|
|
31
|
+
* @param attributeIndex Index of the discrete attribute.
|
|
32
|
+
* @return Number of distinct values for a given discrete attribute
|
|
33
|
+
*/
|
|
29
34
|
numberOfValues(attributeIndex) {
|
|
30
35
|
return this.attributeValueList[attributeIndex].length;
|
|
31
36
|
}
|
|
37
|
+
/**
|
|
38
|
+
* Returns the index of the given value in the values list of the attributeIndex'th discrete attribute.
|
|
39
|
+
* @param attributeIndex Index of the discrete attribute.
|
|
40
|
+
* @param value Value of the discrete attribute
|
|
41
|
+
* @return Index of the given value in the values list of the discrete attribute.
|
|
42
|
+
*/
|
|
32
43
|
featureValueIndex(attributeIndex, value) {
|
|
33
44
|
for (let i = 0; i < this.attributeValueList[attributeIndex].length; i++) {
|
|
34
45
|
if (this.attributeValueList[attributeIndex][i] == value) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataDefinition.js","sourceRoot":"","sources":["../../source/DataSet/DataDefinition.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,8DAAyD;IAGzD,MAAa,cAAc;QAKvB;;;;;WAKG;QACH,YAAY,cAAqC,EAAE,kBAAyC;YACxF,IAAI,cAAc,IAAI,SAAS,EAAC;gBAC5B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAA;gBACpC,IAAI,kBAAkB,IAAI,SAAS,EAAC;oBAChC,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;iBAChD;aACJ;QACL,CAAC;QAED,cAAc,CAAC,cAAsB;YACjC,OAAO,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC,MAAM,CAAA;QACzD,CAAC;QAED,iBAAiB,CAAC,cAAsB,EAAE,KAAa;YACnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAC;gBACpE,IAAI,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,EAAC;oBACpD,OAAO,CAAC,CAAA;iBACX;aACJ;YACD,OAAO,CAAC,CAAC,CAAA;QACb,CAAC;QAED;;;;WAIG;QACH,cAAc;YACV,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,CAAA;QACrC,CAAC;QAED;;;;WAIG;QACH,sBAAsB;YAClB,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,KAAK,IAAI,aAAa,IAAI,IAAI,CAAC,cAAc,EAAE;gBAC3C,IAAI,aAAa,IAAI,6BAAa,CAAC,QAAQ,IAAI,aAAa,IAAI,6BAAa,CAAC,MAAM,EAAE;oBAClF,KAAK,EAAE,CAAC;iBACX;aACJ;YACD,OAAO,KAAK,CAAC;QACjB,CAAC;QAED;;;;WAIG;QACH,wBAAwB;YACpB,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,KAAK,IAAI,aAAa,IAAI,IAAI,CAAC,cAAc,EAAE;gBAC3C,IAAI,aAAa,IAAI,6BAAa,CAAC,UAAU,EAAE;oBAC3C,KAAK,EAAE,CAAC;iBACX;aACJ;YACD,OAAO,KAAK,CAAC;QACjB,CAAC;QAED;;;;;WAKG;QACH,gBAAgB,CAAC,KAAa;YAC1B,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;QACrC,CAAC;QAED;;;;WAIG;QACH,YAAY,CAAC,aAA4B;YACrC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;QAC3C,CAAC;QAED;;;;WAIG;QACH,eAAe,CAAC,KAAa;YACzB,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;QACxC,CAAC;QAED;;WAEG;QACH,mBAAmB;YACf,IAAI,CAAC,cAAc,GAAG,IAAI,KAAK,EAAiB,CAAA;QACpD,CAAC;QAED;;;;;WAKG;QACH,mBAAmB,CAAC,aAA4B;YAC5C,IAAI,iBAAiB,GAAG,IAAI,KAAK,EAAiB,CAAC;YACnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;gBAC3C,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACrE;YACD,OAAO,IAAI,cAAc,CAAC,iBAAiB,CAAC,CAAC;QACjD,CAAC;KACJ;
|
|
1
|
+
{"version":3,"file":"DataDefinition.js","sourceRoot":"","sources":["../../source/DataSet/DataDefinition.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,8DAAyD;IAGzD,MAAa,cAAc;QAKvB;;;;;WAKG;QACH,YAAY,cAAqC,EAAE,kBAAyC;YACxF,IAAI,cAAc,IAAI,SAAS,EAAC;gBAC5B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAA;gBACpC,IAAI,kBAAkB,IAAI,SAAS,EAAC;oBAChC,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;iBAChD;aACJ;QACL,CAAC;QAED;;;;WAIG;QACH,cAAc,CAAC,cAAsB;YACjC,OAAO,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC,MAAM,CAAA;QACzD,CAAC;QAED;;;;;WAKG;QACH,iBAAiB,CAAC,cAAsB,EAAE,KAAa;YACnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAC;gBACpE,IAAI,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,EAAC;oBACpD,OAAO,CAAC,CAAA;iBACX;aACJ;YACD,OAAO,CAAC,CAAC,CAAA;QACb,CAAC;QAED;;;;WAIG;QACH,cAAc;YACV,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,CAAA;QACrC,CAAC;QAED;;;;WAIG;QACH,sBAAsB;YAClB,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,KAAK,IAAI,aAAa,IAAI,IAAI,CAAC,cAAc,EAAE;gBAC3C,IAAI,aAAa,IAAI,6BAAa,CAAC,QAAQ,IAAI,aAAa,IAAI,6BAAa,CAAC,MAAM,EAAE;oBAClF,KAAK,EAAE,CAAC;iBACX;aACJ;YACD,OAAO,KAAK,CAAC;QACjB,CAAC;QAED;;;;WAIG;QACH,wBAAwB;YACpB,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,KAAK,IAAI,aAAa,IAAI,IAAI,CAAC,cAAc,EAAE;gBAC3C,IAAI,aAAa,IAAI,6BAAa,CAAC,UAAU,EAAE;oBAC3C,KAAK,EAAE,CAAC;iBACX;aACJ;YACD,OAAO,KAAK,CAAC;QACjB,CAAC;QAED;;;;;WAKG;QACH,gBAAgB,CAAC,KAAa;YAC1B,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;QACrC,CAAC;QAED;;;;WAIG;QACH,YAAY,CAAC,aAA4B;YACrC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;QAC3C,CAAC;QAED;;;;WAIG;QACH,eAAe,CAAC,KAAa;YACzB,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;QACxC,CAAC;QAED;;WAEG;QACH,mBAAmB;YACf,IAAI,CAAC,cAAc,GAAG,IAAI,KAAK,EAAiB,CAAA;QACpD,CAAC;QAED;;;;;WAKG;QACH,mBAAmB,CAAC,aAA4B;YAC5C,IAAI,iBAAiB,GAAG,IAAI,KAAK,EAAiB,CAAC;YACnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;gBAC3C,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACrE;YACD,OAAO,IAAI,cAAc,CAAC,iBAAiB,CAAC,CAAC;QACjD,CAAC;KACJ;IAnID,wCAmIC"}
|
|
@@ -33,8 +33,8 @@
|
|
|
33
33
|
for (let i = 0; i < this.numberOfBootstraps; i++) {
|
|
34
34
|
let bootstrap = new Bootstrap_1.Bootstrap(experiment.getDataSet().getInstances(), i + experiment.getParameter().getSeed());
|
|
35
35
|
let bootstrapSample = new InstanceList_1.InstanceList(bootstrap.getSample());
|
|
36
|
-
experiment.
|
|
37
|
-
result.add(experiment.
|
|
36
|
+
experiment.getmodel().train(bootstrapSample, experiment.getParameter());
|
|
37
|
+
result.add(experiment.getmodel().test(experiment.getDataSet().getInstanceList()));
|
|
38
38
|
}
|
|
39
39
|
return result;
|
|
40
40
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BootstrapRun.js","sourceRoot":"","sources":["../../source/Experiment/BootstrapRun.ts"],"names":[],"mappings":";;;;;;;;;;;;IAEA,gFAA2E;IAC3E,kEAA6D;IAC7D,+DAA0D;IAG1D,MAAa,YAAY;QAIrB;;;;WAIG;QACH,YAAY,kBAA0B;YAClC,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAA;QAChD,CAAC;QAED;;;;;WAKG;QACH,OAAO,CAAC,UAAsB;YAC1B,IAAI,MAAM,GAAG,IAAI,6CAAqB,EAAE,CAAC;YACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC,EAAE,EAAE;gBAC9C,IAAI,SAAS,GAAG,IAAI,qBAAS,CAAW,UAAU,CAAC,UAAU,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,GAAG,UAAU,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;gBACzH,IAAI,eAAe,GAAG,IAAI,2BAAY,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;gBAC9D,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"BootstrapRun.js","sourceRoot":"","sources":["../../source/Experiment/BootstrapRun.ts"],"names":[],"mappings":";;;;;;;;;;;;IAEA,gFAA2E;IAC3E,kEAA6D;IAC7D,+DAA0D;IAG1D,MAAa,YAAY;QAIrB;;;;WAIG;QACH,YAAY,kBAA0B;YAClC,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAA;QAChD,CAAC;QAED;;;;;WAKG;QACH,OAAO,CAAC,UAAsB;YAC1B,IAAI,MAAM,GAAG,IAAI,6CAAqB,EAAE,CAAC;YACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC,EAAE,EAAE;gBAC9C,IAAI,SAAS,GAAG,IAAI,qBAAS,CAAW,UAAU,CAAC,UAAU,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,GAAG,UAAU,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;gBACzH,IAAI,eAAe,GAAG,IAAI,2BAAY,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;gBAC9D,UAAU,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,eAAe,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC;gBACxE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;aACrF;YACD,OAAO,MAAM,CAAC;QAClB,CAAC;KACJ;IA7BD,oCA6BC"}
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import { Classifier } from "../Classifier/Classifier";
|
|
2
1
|
import { Parameter } from "../Parameter/Parameter";
|
|
3
2
|
import { DataSet } from "../DataSet/DataSet";
|
|
4
3
|
import { FeatureSubSet } from "../FeatureSelection/FeatureSubSet";
|
|
4
|
+
import { Model } from "../Model/Model";
|
|
5
5
|
export declare class Experiment {
|
|
6
|
-
private
|
|
7
|
-
private parameter;
|
|
8
|
-
private dataSet;
|
|
6
|
+
private readonly model;
|
|
7
|
+
private readonly parameter;
|
|
8
|
+
private readonly dataSet;
|
|
9
9
|
/**
|
|
10
10
|
* Constructor for a specific machine learning experiment
|
|
11
|
-
* @param
|
|
11
|
+
* @param model Model used in the machine learning experiment
|
|
12
12
|
* @param parameter Parameter(s) of the classifier.
|
|
13
13
|
* @param dataSet DataSet on which the classifier is run.
|
|
14
14
|
*/
|
|
15
|
-
constructor(
|
|
15
|
+
constructor(model: Model, parameter: Parameter, dataSet: DataSet);
|
|
16
16
|
/**
|
|
17
17
|
* Accessor for the classifier attribute.
|
|
18
18
|
* @return Classifier attribute.
|
|
19
19
|
*/
|
|
20
|
-
|
|
20
|
+
getmodel(): Model;
|
|
21
21
|
/**
|
|
22
22
|
* Accessor for the parameter attribute.
|
|
23
23
|
* @return Parameter attribute.
|
|
@@ -13,12 +13,12 @@
|
|
|
13
13
|
class Experiment {
|
|
14
14
|
/**
|
|
15
15
|
* Constructor for a specific machine learning experiment
|
|
16
|
-
* @param
|
|
16
|
+
* @param model Model used in the machine learning experiment
|
|
17
17
|
* @param parameter Parameter(s) of the classifier.
|
|
18
18
|
* @param dataSet DataSet on which the classifier is run.
|
|
19
19
|
*/
|
|
20
|
-
constructor(
|
|
21
|
-
this.
|
|
20
|
+
constructor(model, parameter, dataSet) {
|
|
21
|
+
this.model = model;
|
|
22
22
|
this.parameter = parameter;
|
|
23
23
|
this.dataSet = dataSet;
|
|
24
24
|
}
|
|
@@ -26,8 +26,8 @@
|
|
|
26
26
|
* Accessor for the classifier attribute.
|
|
27
27
|
* @return Classifier attribute.
|
|
28
28
|
*/
|
|
29
|
-
|
|
30
|
-
return this.
|
|
29
|
+
getmodel() {
|
|
30
|
+
return this.model;
|
|
31
31
|
}
|
|
32
32
|
/**
|
|
33
33
|
* Accessor for the parameter attribute.
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
* @return Experiment constructed
|
|
50
50
|
*/
|
|
51
51
|
featureSelectedExperiment(featureSubSet) {
|
|
52
|
-
return new Experiment(this.
|
|
52
|
+
return new Experiment(this.model, this.parameter, this.dataSet.getSubSetOfFeatures(featureSubSet));
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
55
|
exports.Experiment = Experiment;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Experiment.js","sourceRoot":"","sources":["../../source/Experiment/Experiment.ts"],"names":[],"mappings":";;;;;;;;;;;;IAKA,MAAa,UAAU;QAMnB;;;;;WAKG;QACH,YAAY,
|
|
1
|
+
{"version":3,"file":"Experiment.js","sourceRoot":"","sources":["../../source/Experiment/Experiment.ts"],"names":[],"mappings":";;;;;;;;;;;;IAKA,MAAa,UAAU;QAMnB;;;;;WAKG;QACH,YAAY,KAAY,EAAE,SAAoB,EAAE,OAAgB;YAC5D,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;YAClB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;YAC1B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QAC1B,CAAC;QAED;;;WAGG;QACH,QAAQ;YACJ,OAAO,IAAI,CAAC,KAAK,CAAA;QACrB,CAAC;QAED;;;WAGG;QACH,YAAY;YACR,OAAO,IAAI,CAAC,SAAS,CAAA;QACzB,CAAC;QAED;;;WAGG;QACH,UAAU;YACN,OAAO,IAAI,CAAC,OAAO,CAAA;QACvB,CAAC;QAED;;;;WAIG;QACH,yBAAyB,CAAC,aAA4B;YAClD,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC,CAAC;QACvG,CAAC;KAEJ;IAnDD,gCAmDC"}
|
|
@@ -1,14 +1,29 @@
|
|
|
1
1
|
import { MultipleRun } from "./MultipleRun";
|
|
2
2
|
import { Experiment } from "./Experiment";
|
|
3
3
|
import { ExperimentPerformance } from "../Performance/ExperimentPerformance";
|
|
4
|
-
import { Classifier } from "../Classifier/Classifier";
|
|
5
4
|
import { Parameter } from "../Parameter/Parameter";
|
|
6
5
|
import { CrossValidation } from "nlptoolkit-sampling/dist/CrossValidation";
|
|
7
6
|
import { Instance } from "../Instance/Instance";
|
|
7
|
+
import { Model } from "../Model/Model";
|
|
8
8
|
export declare class KFoldRun implements MultipleRun {
|
|
9
9
|
protected K: number;
|
|
10
|
+
/**
|
|
11
|
+
* Constructor for KFoldRun class. Basically sets K parameter of the K-fold cross-validation.
|
|
12
|
+
*
|
|
13
|
+
* @param K K of the K-fold cross-validation.
|
|
14
|
+
*/
|
|
10
15
|
constructor(K: number);
|
|
11
|
-
|
|
16
|
+
/**
|
|
17
|
+
* Runs a K fold cross-validated experiment for the given classifier with the given parameters. The experiment
|
|
18
|
+
* results will be added to the experimentPerformance.
|
|
19
|
+
* @param model Model for the experiment
|
|
20
|
+
* @param parameter Hyperparameters of the classifier of the experiment
|
|
21
|
+
* @param experimentPerformance Storage to add experiment results
|
|
22
|
+
* @param crossValidation K-fold crossvalidated dataset.
|
|
23
|
+
* @throws DiscreteFeaturesNotAllowed If the classifier does not allow discrete features and the dataset contains
|
|
24
|
+
* discrete features, DiscreteFeaturesNotAllowed will be thrown.
|
|
25
|
+
*/
|
|
26
|
+
protected runExperiment(model: Model, parameter: Parameter, experimentPerformance: ExperimentPerformance, crossValidation: CrossValidation<Instance>): void;
|
|
12
27
|
/**
|
|
13
28
|
* Execute K-fold cross-validation with the given classifier on the given data set using the given parameters.
|
|
14
29
|
*
|
|
@@ -14,15 +14,30 @@
|
|
|
14
14
|
const InstanceList_1 = require("../InstanceList/InstanceList");
|
|
15
15
|
const KFoldCrossValidation_1 = require("nlptoolkit-sampling/dist/KFoldCrossValidation");
|
|
16
16
|
class KFoldRun {
|
|
17
|
+
/**
|
|
18
|
+
* Constructor for KFoldRun class. Basically sets K parameter of the K-fold cross-validation.
|
|
19
|
+
*
|
|
20
|
+
* @param K K of the K-fold cross-validation.
|
|
21
|
+
*/
|
|
17
22
|
constructor(K) {
|
|
18
23
|
this.K = K;
|
|
19
24
|
}
|
|
20
|
-
|
|
25
|
+
/**
|
|
26
|
+
* Runs a K fold cross-validated experiment for the given classifier with the given parameters. The experiment
|
|
27
|
+
* results will be added to the experimentPerformance.
|
|
28
|
+
* @param model Model for the experiment
|
|
29
|
+
* @param parameter Hyperparameters of the classifier of the experiment
|
|
30
|
+
* @param experimentPerformance Storage to add experiment results
|
|
31
|
+
* @param crossValidation K-fold crossvalidated dataset.
|
|
32
|
+
* @throws DiscreteFeaturesNotAllowed If the classifier does not allow discrete features and the dataset contains
|
|
33
|
+
* discrete features, DiscreteFeaturesNotAllowed will be thrown.
|
|
34
|
+
*/
|
|
35
|
+
runExperiment(model, parameter, experimentPerformance, crossValidation) {
|
|
21
36
|
for (let i = 0; i < this.K; i++) {
|
|
22
37
|
let trainSet = new InstanceList_1.InstanceList(crossValidation.getTrainFold(i));
|
|
23
38
|
let testSet = new InstanceList_1.InstanceList(crossValidation.getTestFold(i));
|
|
24
|
-
|
|
25
|
-
experimentPerformance.add(
|
|
39
|
+
model.train(trainSet, parameter);
|
|
40
|
+
experimentPerformance.add(model.test(testSet));
|
|
26
41
|
}
|
|
27
42
|
}
|
|
28
43
|
/**
|
|
@@ -34,7 +49,7 @@
|
|
|
34
49
|
execute(experiment) {
|
|
35
50
|
let result = new ExperimentPerformance_1.ExperimentPerformance();
|
|
36
51
|
let crossValidation = new KFoldCrossValidation_1.KFoldCrossValidation(experiment.getDataSet().getInstances(), this.K, experiment.getParameter().getSeed());
|
|
37
|
-
this.runExperiment(experiment.
|
|
52
|
+
this.runExperiment(experiment.getmodel(), experiment.getParameter(), result, crossValidation);
|
|
38
53
|
return result;
|
|
39
54
|
}
|
|
40
55
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KFoldRun.js","sourceRoot":"","sources":["../../source/Experiment/KFoldRun.ts"],"names":[],"mappings":";;;;;;;;;;;;IAEA,gFAA2E;
|
|
1
|
+
{"version":3,"file":"KFoldRun.js","sourceRoot":"","sources":["../../source/Experiment/KFoldRun.ts"],"names":[],"mappings":";;;;;;;;;;;;IAEA,gFAA2E;IAI3E,+DAA0D;IAC1D,wFAAmF;IAGnF,MAAa,QAAQ;QAIjB;;;;WAIG;QACH,YAAY,CAAS;YACjB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;QACd,CAAC;QAED;;;;;;;;;WASG;QACO,aAAa,CAAC,KAAY,EACZ,SAAoB,EACpB,qBAA4C,EAC5C,eAA0C;YAC9D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC7B,IAAI,QAAQ,GAAG,IAAI,2BAAY,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjE,IAAI,OAAO,GAAG,IAAI,2BAAY,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC/D,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;gBACjC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;aAClD;QACL,CAAC;QAED;;;;;WAKG;QACH,OAAO,CAAC,UAAsB;YAC1B,IAAI,MAAM,GAAG,IAAI,6CAAqB,EAAE,CAAC;YACzC,IAAI,eAAe,GAAG,IAAI,2CAAoB,CAAW,UAAU,CAAC,UAAU,EAAE,CAAC,YAAY,EAAE,EAAE,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YAC9I,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,UAAU,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;YAC9F,OAAO,MAAM,CAAC;QAClB,CAAC;KAEJ;IAhDD,4BAgDC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { KFoldRun } from "./KFoldRun";
|
|
2
|
-
import { Classifier } from "../Classifier/Classifier";
|
|
3
2
|
import { Parameter } from "../Parameter/Parameter";
|
|
4
3
|
import { ExperimentPerformance } from "../Performance/ExperimentPerformance";
|
|
5
4
|
import { InstanceList } from "../InstanceList/InstanceList";
|
|
6
5
|
import { CrossValidation } from "nlptoolkit-sampling/dist/CrossValidation";
|
|
7
6
|
import { Instance } from "../Instance/Instance";
|
|
8
7
|
import { Experiment } from "./Experiment";
|
|
8
|
+
import { Model } from "../Model/Model";
|
|
9
9
|
export declare class KFoldRunSeparateTest extends KFoldRun {
|
|
10
10
|
/**
|
|
11
11
|
* Constructor for KFoldRunSeparateTest class. Basically sets K parameter of the K-fold cross-validation.
|
|
@@ -13,7 +13,18 @@ export declare class KFoldRunSeparateTest extends KFoldRun {
|
|
|
13
13
|
* @param K K of the K-fold cross-validation.
|
|
14
14
|
*/
|
|
15
15
|
constructor(K: number);
|
|
16
|
-
|
|
16
|
+
/**
|
|
17
|
+
* Runs a K fold cross-validated experiment for the given classifier with the given parameters. Testing will be
|
|
18
|
+
* done on the separate test set. The experiment results will be added to the experimentPerformance.
|
|
19
|
+
* @param model Model for the experiment
|
|
20
|
+
* @param parameter Hyperparameters of the classifier of the experiment
|
|
21
|
+
* @param experimentPerformance Storage to add experiment results
|
|
22
|
+
* @param crossValidation K-fold crossvalidated dataset.
|
|
23
|
+
* @param testSet Test set on which experiment performance is calculated.
|
|
24
|
+
* @throws DiscreteFeaturesNotAllowed If the classifier does not allow discrete features and the dataset contains
|
|
25
|
+
* discrete features, DiscreteFeaturesNotAllowed will be thrown.
|
|
26
|
+
*/
|
|
27
|
+
protected runExperiment(model: Model, parameter: Parameter, experimentPerformance: ExperimentPerformance, crossValidation: CrossValidation<Instance>, testSet?: InstanceList): void;
|
|
17
28
|
/**
|
|
18
29
|
* Execute K-fold cross-validation with separate test set with the given classifier on the given data set using the given parameters.
|
|
19
30
|
*
|
|
@@ -24,11 +24,22 @@
|
|
|
24
24
|
constructor(K) {
|
|
25
25
|
super(K);
|
|
26
26
|
}
|
|
27
|
-
|
|
27
|
+
/**
|
|
28
|
+
* Runs a K fold cross-validated experiment for the given classifier with the given parameters. Testing will be
|
|
29
|
+
* done on the separate test set. The experiment results will be added to the experimentPerformance.
|
|
30
|
+
* @param model Model for the experiment
|
|
31
|
+
* @param parameter Hyperparameters of the classifier of the experiment
|
|
32
|
+
* @param experimentPerformance Storage to add experiment results
|
|
33
|
+
* @param crossValidation K-fold crossvalidated dataset.
|
|
34
|
+
* @param testSet Test set on which experiment performance is calculated.
|
|
35
|
+
* @throws DiscreteFeaturesNotAllowed If the classifier does not allow discrete features and the dataset contains
|
|
36
|
+
* discrete features, DiscreteFeaturesNotAllowed will be thrown.
|
|
37
|
+
*/
|
|
38
|
+
runExperiment(model, parameter, experimentPerformance, crossValidation, testSet) {
|
|
28
39
|
for (let i = 0; i < this.K; i++) {
|
|
29
40
|
let trainSet = new InstanceList_1.InstanceList(crossValidation.getTrainFold(i));
|
|
30
|
-
|
|
31
|
-
experimentPerformance.add(
|
|
41
|
+
model.train(trainSet, parameter);
|
|
42
|
+
experimentPerformance.add(model.test(testSet));
|
|
32
43
|
}
|
|
33
44
|
}
|
|
34
45
|
/**
|
|
@@ -42,7 +53,7 @@
|
|
|
42
53
|
let instanceList = experiment.getDataSet().getInstanceList();
|
|
43
54
|
let partition = new Partition_1.Partition(instanceList, 0.25, true);
|
|
44
55
|
let crossValidation = new KFoldCrossValidation_1.KFoldCrossValidation(partition.get(1).getInstances(), this.K, experiment.getParameter().getSeed());
|
|
45
|
-
this.runExperiment(experiment.
|
|
56
|
+
this.runExperiment(experiment.getmodel(), experiment.getParameter(), result, crossValidation, partition.get(0));
|
|
46
57
|
return result;
|
|
47
58
|
}
|
|
48
59
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KFoldRunSeparateTest.js","sourceRoot":"","sources":["../../source/Experiment/KFoldRunSeparateTest.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,yCAAoC;
|
|
1
|
+
{"version":3,"file":"KFoldRunSeparateTest.js","sourceRoot":"","sources":["../../source/Experiment/KFoldRunSeparateTest.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,yCAAoC;IAEpC,gFAA2E;IAC3E,+DAA0D;IAI1D,wFAAmF;IACnF,yDAAoD;IAGpD,MAAa,oBAAqB,SAAQ,mBAAQ;QAE9C;;;;WAIG;QACH,YAAY,CAAS;YACjB,KAAK,CAAC,CAAC,CAAC,CAAC;QACb,CAAC;QAED;;;;;;;;;;WAUG;QACO,aAAa,CAAC,KAAY,EACZ,SAAoB,EACpB,qBAA4C,EAC5C,eAA0C,EAC1C,OAAsB;YAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC7B,IAAI,QAAQ,GAAG,IAAI,2BAAY,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjE,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;gBACjC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;aAClD;QACL,CAAC;QAED;;;;;WAKG;QACH,OAAO,CAAC,UAAsB;YAC1B,IAAI,MAAM,GAAG,IAAI,6CAAqB,EAAE,CAAC;YACzC,IAAI,YAAY,GAAG,UAAU,CAAC,UAAU,EAAE,CAAC,eAAe,EAAE,CAAC;YAC7D,IAAI,SAAS,GAAG,IAAI,qBAAS,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACxD,IAAI,eAAe,GAAG,IAAI,2CAAoB,CAAW,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,EAAE,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YACvI,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,UAAU,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,eAAe,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAChH,OAAO,MAAM,CAAC;QAClB,CAAC;KAEJ;IAjDD,oDAiDC"}
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
let result = new ExperimentPerformance_1.ExperimentPerformance();
|
|
35
35
|
for (let j = 0; j < this.M; j++) {
|
|
36
36
|
let crossValidation = new KFoldCrossValidation_1.KFoldCrossValidation(experiment.getDataSet().getInstances(), this.K, experiment.getParameter().getSeed());
|
|
37
|
-
this.runExperiment(experiment.
|
|
37
|
+
this.runExperiment(experiment.getmodel(), experiment.getParameter(), result, crossValidation);
|
|
38
38
|
}
|
|
39
39
|
return result;
|
|
40
40
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MxKFoldRun.js","sourceRoot":"","sources":["../../source/Experiment/MxKFoldRun.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,yCAAoC;IAEpC,gFAA2E;IAC3E,wFAAmF;IAGnF,MAAa,UAAW,SAAQ,mBAAQ;QAIpC;;;;;WAKG;QACH,YAAY,CAAS,EAAE,CAAS;YAC5B,KAAK,CAAC,CAAC,CAAC,CAAC;YACT,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;QACd,CAAC;QAED;;;;;WAKG;QACH,OAAO,CAAC,UAAsB;YAC1B,IAAI,MAAM,GAAG,IAAI,6CAAqB,EAAE,CAAC;YACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC7B,IAAI,eAAe,GAAG,IAAI,2CAAoB,CAAW,UAAU,CAAC,UAAU,EAAE,CAAC,YAAY,EAAE,EAAE,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC9I,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"MxKFoldRun.js","sourceRoot":"","sources":["../../source/Experiment/MxKFoldRun.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,yCAAoC;IAEpC,gFAA2E;IAC3E,wFAAmF;IAGnF,MAAa,UAAW,SAAQ,mBAAQ;QAIpC;;;;;WAKG;QACH,YAAY,CAAS,EAAE,CAAS;YAC5B,KAAK,CAAC,CAAC,CAAC,CAAC;YACT,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;QACd,CAAC;QAED;;;;;WAKG;QACH,OAAO,CAAC,UAAsB;YAC1B,IAAI,MAAM,GAAG,IAAI,6CAAqB,EAAE,CAAC;YACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC7B,IAAI,eAAe,GAAG,IAAI,2CAAoB,CAAW,UAAU,CAAC,UAAU,EAAE,CAAC,YAAY,EAAE,EAAE,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC9I,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,UAAU,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;aACjG;YACD,OAAO,MAAM,CAAC;QAClB,CAAC;KAEJ;IA9BD,gCA8BC"}
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
let partition = new Partition_1.Partition(instanceList, 0.25, true);
|
|
39
39
|
for (let j = 0; j < this.M; j++) {
|
|
40
40
|
let crossValidation = new KFoldCrossValidation_1.KFoldCrossValidation(partition.get(1).getInstances(), this.K, experiment.getParameter().getSeed());
|
|
41
|
-
this.runExperiment(experiment.
|
|
41
|
+
this.runExperiment(experiment.getmodel(), experiment.getParameter(), result, crossValidation, partition.get(0));
|
|
42
42
|
}
|
|
43
43
|
return result;
|
|
44
44
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MxKFoldRunSeparateTest.js","sourceRoot":"","sources":["../../source/Experiment/MxKFoldRunSeparateTest.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,iEAA4D;IAC5D,gFAA2E;IAE3E,yDAAoD;IACpD,wFAAmF;IAGnF,MAAa,sBAAuB,SAAQ,2CAAoB;QAI5D;;;;;;WAMG;QACH,YAAY,CAAS,EAAE,CAAS;YAC5B,KAAK,CAAC,CAAC,CAAC,CAAC;YACT,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;QACd,CAAC;QAED;;;;;WAKG;QACH,OAAO,CAAC,UAAsB;YAC1B,IAAI,MAAM,GAAG,IAAI,6CAAqB,EAAE,CAAC;YACzC,IAAI,YAAY,GAAG,UAAU,CAAC,UAAU,EAAE,CAAC,eAAe,EAAE,CAAC;YAC7D,IAAI,SAAS,GAAG,IAAI,qBAAS,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACxD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC7B,IAAI,eAAe,GAAG,IAAI,2CAAoB,CAAW,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,EAAE,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;gBACvI,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"MxKFoldRunSeparateTest.js","sourceRoot":"","sources":["../../source/Experiment/MxKFoldRunSeparateTest.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,iEAA4D;IAC5D,gFAA2E;IAE3E,yDAAoD;IACpD,wFAAmF;IAGnF,MAAa,sBAAuB,SAAQ,2CAAoB;QAI5D;;;;;;WAMG;QACH,YAAY,CAAS,EAAE,CAAS;YAC5B,KAAK,CAAC,CAAC,CAAC,CAAC;YACT,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;QACd,CAAC;QAED;;;;;WAKG;QACH,OAAO,CAAC,UAAsB;YAC1B,IAAI,MAAM,GAAG,IAAI,6CAAqB,EAAE,CAAC;YACzC,IAAI,YAAY,GAAG,UAAU,CAAC,UAAU,EAAE,CAAC,eAAe,EAAE,CAAC;YAC7D,IAAI,SAAS,GAAG,IAAI,qBAAS,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACxD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC7B,IAAI,eAAe,GAAG,IAAI,2CAAoB,CAAW,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,EAAE,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;gBACvI,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,UAAU,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,eAAe,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aACnH;YACD,OAAO,MAAM,CAAC;QAClB,CAAC;KACJ;IAhCD,wDAgCC"}
|
|
@@ -2,13 +2,28 @@ import { SingleRun } from "./SingleRun";
|
|
|
2
2
|
import { Experiment } from "./Experiment";
|
|
3
3
|
import { Instance } from "../Instance/Instance";
|
|
4
4
|
import { Performance } from "../Performance/Performance";
|
|
5
|
-
import { Classifier } from "../Classifier/Classifier";
|
|
6
5
|
import { Parameter } from "../Parameter/Parameter";
|
|
7
6
|
import { CrossValidation } from "nlptoolkit-sampling/dist/CrossValidation";
|
|
7
|
+
import { Model } from "../Model/Model";
|
|
8
8
|
export declare class SingleRunWithK implements SingleRun {
|
|
9
|
-
private K;
|
|
9
|
+
private readonly K;
|
|
10
|
+
/**
|
|
11
|
+
* Constructor for SingleRunWithK class. Basically sets K parameter of the K-fold cross-validation.
|
|
12
|
+
*
|
|
13
|
+
* @param K K of the K-fold cross-validation.
|
|
14
|
+
*/
|
|
10
15
|
constructor(K: number);
|
|
11
|
-
|
|
16
|
+
/**
|
|
17
|
+
* Runs first fold of a K fold cross-validated experiment for the given classifier with the given parameters.
|
|
18
|
+
* The experiment result will be returned.
|
|
19
|
+
* @param model Classifier for the experiment
|
|
20
|
+
* @param parameter Hyperparameters of the classifier of the experiment
|
|
21
|
+
* @param crossValidation K-fold crossvalidated dataset.
|
|
22
|
+
* @return The experiment result of the first fold of the K-fold cross-validated experiment.
|
|
23
|
+
* @throws DiscreteFeaturesNotAllowed If the classifier does not allow discrete features and the dataset contains
|
|
24
|
+
* discrete features, DiscreteFeaturesNotAllowed will be thrown.
|
|
25
|
+
*/
|
|
26
|
+
runExperiment(model: Model, parameter: Parameter, crossValidation: CrossValidation<Instance>): Performance;
|
|
12
27
|
/**
|
|
13
28
|
* Execute Single K-fold cross-validation with the given classifier on the given data set using the given parameters.
|
|
14
29
|
*
|
|
@@ -13,13 +13,28 @@
|
|
|
13
13
|
const KFoldCrossValidation_1 = require("nlptoolkit-sampling/dist/KFoldCrossValidation");
|
|
14
14
|
const InstanceList_1 = require("../InstanceList/InstanceList");
|
|
15
15
|
class SingleRunWithK {
|
|
16
|
+
/**
|
|
17
|
+
* Constructor for SingleRunWithK class. Basically sets K parameter of the K-fold cross-validation.
|
|
18
|
+
*
|
|
19
|
+
* @param K K of the K-fold cross-validation.
|
|
20
|
+
*/
|
|
16
21
|
constructor(K) {
|
|
17
22
|
this.K = K;
|
|
18
23
|
}
|
|
19
|
-
|
|
24
|
+
/**
|
|
25
|
+
* Runs first fold of a K fold cross-validated experiment for the given classifier with the given parameters.
|
|
26
|
+
* The experiment result will be returned.
|
|
27
|
+
* @param model Classifier for the experiment
|
|
28
|
+
* @param parameter Hyperparameters of the classifier of the experiment
|
|
29
|
+
* @param crossValidation K-fold crossvalidated dataset.
|
|
30
|
+
* @return The experiment result of the first fold of the K-fold cross-validated experiment.
|
|
31
|
+
* @throws DiscreteFeaturesNotAllowed If the classifier does not allow discrete features and the dataset contains
|
|
32
|
+
* discrete features, DiscreteFeaturesNotAllowed will be thrown.
|
|
33
|
+
*/
|
|
34
|
+
runExperiment(model, parameter, crossValidation) {
|
|
20
35
|
let trainSet = new InstanceList_1.InstanceList(crossValidation.getTrainFold(0));
|
|
21
36
|
let testSet = new InstanceList_1.InstanceList(crossValidation.getTestFold(0));
|
|
22
|
-
return
|
|
37
|
+
return model.singleRun(parameter, trainSet, testSet);
|
|
23
38
|
}
|
|
24
39
|
/**
|
|
25
40
|
* Execute Single K-fold cross-validation with the given classifier on the given data set using the given parameters.
|
|
@@ -29,7 +44,7 @@
|
|
|
29
44
|
*/
|
|
30
45
|
execute(experiment) {
|
|
31
46
|
let crossValidation = new KFoldCrossValidation_1.KFoldCrossValidation(experiment.getDataSet().getInstances(), this.K, experiment.getParameter().getSeed());
|
|
32
|
-
return this.runExperiment(experiment.
|
|
47
|
+
return this.runExperiment(experiment.getmodel(), experiment.getParameter(), crossValidation);
|
|
33
48
|
}
|
|
34
49
|
}
|
|
35
50
|
exports.SingleRunWithK = SingleRunWithK;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SingleRunWithK.js","sourceRoot":"","sources":["../../source/Experiment/SingleRunWithK.ts"],"names":[],"mappings":";;;;;;;;;;;;IAEA,wFAAmF;IAGnF,+DAA0D;IAK1D,MAAa,cAAc;QAIvB,YAAY,CAAS;YACjB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;QACd,CAAC;QAED,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"SingleRunWithK.js","sourceRoot":"","sources":["../../source/Experiment/SingleRunWithK.ts"],"names":[],"mappings":";;;;;;;;;;;;IAEA,wFAAmF;IAGnF,+DAA0D;IAK1D,MAAa,cAAc;QAIvB;;;;WAIG;QACH,YAAY,CAAS;YACjB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;QACd,CAAC;QAED;;;;;;;;;WASG;QACH,aAAa,CAAC,KAAY,EACZ,SAAoB,EACpB,eAA0C;YACpD,IAAI,QAAQ,GAAG,IAAI,2BAAY,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YACjE,IAAI,OAAO,GAAG,IAAI,2BAAY,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/D,OAAO,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QACzD,CAAC;QAED;;;;;WAKG;QACH,OAAO,CAAC,UAAsB;YAC1B,IAAI,eAAe,GAAG,IAAI,2CAAoB,CAAW,UAAU,CAAC,UAAU,EAAE,CAAC,YAAY,EAAE,EAAE,IAAI,CAAC,CAAC,EACnG,UAAU,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YACzC,OAAO,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,UAAU,CAAC,YAAY,EAAE,EAAE,eAAe,CAAC,CAAC;QACjG,CAAC;KAEJ;IA3CD,wCA2CC"}
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
execute(experiment) {
|
|
31
31
|
let result = new ExperimentPerformance_1.ExperimentPerformance();
|
|
32
32
|
let crossValidation = new StratifiedKFoldCrossValidation_1.StratifiedKFoldCrossValidation(experiment.getDataSet().getClassInstances(), this.K, experiment.getParameter().getSeed());
|
|
33
|
-
this.runExperiment(experiment.
|
|
33
|
+
this.runExperiment(experiment.getmodel(), experiment.getParameter(), result, crossValidation);
|
|
34
34
|
return result;
|
|
35
35
|
}
|
|
36
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StratifiedKFoldRun.js","sourceRoot":"","sources":["../../source/Experiment/StratifiedKFoldRun.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,yCAAoC;IAEpC,gFAA2E;IAC3E,4GAAuG;IAGvG,MAAa,kBAAmB,SAAQ,mBAAQ;QAE5C;;;WAGG;QACH,YAAY,CAAS;YACjB,KAAK,CAAC,CAAC,CAAC,CAAC;QACb,CAAC;QAED;;;;;WAKG;QACH,OAAO,CAAC,UAAsB;YAC1B,IAAI,MAAM,GAAG,IAAI,6CAAqB,EAAE,CAAC;YACzC,IAAI,eAAe,GAAG,IAAI,+DAA8B,CAAW,UAAU,CAAC,UAAU,EAAE,CAAC,iBAAiB,EAAE,EAAE,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YAC7J,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"StratifiedKFoldRun.js","sourceRoot":"","sources":["../../source/Experiment/StratifiedKFoldRun.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,yCAAoC;IAEpC,gFAA2E;IAC3E,4GAAuG;IAGvG,MAAa,kBAAmB,SAAQ,mBAAQ;QAE5C;;;WAGG;QACH,YAAY,CAAS;YACjB,KAAK,CAAC,CAAC,CAAC,CAAC;QACb,CAAC;QAED;;;;;WAKG;QACH,OAAO,CAAC,UAAsB;YAC1B,IAAI,MAAM,GAAG,IAAI,6CAAqB,EAAE,CAAC;YACzC,IAAI,eAAe,GAAG,IAAI,+DAA8B,CAAW,UAAU,CAAC,UAAU,EAAE,CAAC,iBAAiB,EAAE,EAAE,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YAC7J,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,UAAU,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;YAC9F,OAAO,MAAM,CAAC;QAClB,CAAC;KAEJ;IAvBD,gDAuBC"}
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
let instanceList = experiment.getDataSet().getInstanceList();
|
|
35
35
|
let partition = new Partition_1.Partition(instanceList, 0.25, true);
|
|
36
36
|
let crossValidation = new StratifiedKFoldCrossValidation_1.StratifiedKFoldCrossValidation(new Partition_1.Partition(partition.get(1)).getLists(), this.K, experiment.getParameter().getSeed());
|
|
37
|
-
this.runExperiment(experiment.
|
|
37
|
+
this.runExperiment(experiment.getmodel(), experiment.getParameter(), result, crossValidation, partition.get(0));
|
|
38
38
|
return result;
|
|
39
39
|
}
|
|
40
40
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StratifiedKFoldRunSeparateTest.js","sourceRoot":"","sources":["../../source/Experiment/StratifiedKFoldRunSeparateTest.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,iEAA4D;IAE5D,gFAA2E;IAC3E,yDAAoD;IACpD,4GAAuG;IAGvG,MAAa,8BAA+B,SAAQ,2CAAoB;QAEpE;;;;WAIG;QACH,YAAY,CAAS;YACjB,KAAK,CAAC,CAAC,CAAC,CAAC;QACb,CAAC;QAED;;;;;WAKG;QACH,OAAO,CAAC,UAAsB;YAC1B,IAAI,MAAM,GAAG,IAAI,6CAAqB,EAAE,CAAC;YACzC,IAAI,YAAY,GAAG,UAAU,CAAC,UAAU,EAAE,CAAC,eAAe,EAAE,CAAC;YAC7D,IAAI,SAAS,GAAG,IAAI,qBAAS,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACxD,IAAI,eAAe,GAAG,IAAI,+DAA8B,CAAW,IAAI,qBAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5J,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"StratifiedKFoldRunSeparateTest.js","sourceRoot":"","sources":["../../source/Experiment/StratifiedKFoldRunSeparateTest.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,iEAA4D;IAE5D,gFAA2E;IAC3E,yDAAoD;IACpD,4GAAuG;IAGvG,MAAa,8BAA+B,SAAQ,2CAAoB;QAEpE;;;;WAIG;QACH,YAAY,CAAS;YACjB,KAAK,CAAC,CAAC,CAAC,CAAC;QACb,CAAC;QAED;;;;;WAKG;QACH,OAAO,CAAC,UAAsB;YAC1B,IAAI,MAAM,GAAG,IAAI,6CAAqB,EAAE,CAAC;YACzC,IAAI,YAAY,GAAG,UAAU,CAAC,UAAU,EAAE,CAAC,eAAe,EAAE,CAAC;YAC7D,IAAI,SAAS,GAAG,IAAI,qBAAS,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACxD,IAAI,eAAe,GAAG,IAAI,+DAA8B,CAAW,IAAI,qBAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5J,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,UAAU,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,eAAe,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAChH,OAAO,MAAM,CAAC;QAClB,CAAC;KACJ;IAzBD,wEAyBC"}
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
let result = new ExperimentPerformance_1.ExperimentPerformance();
|
|
34
34
|
for (let j = 0; j < this.M; j++) {
|
|
35
35
|
let crossValidation = new StratifiedKFoldCrossValidation_1.StratifiedKFoldCrossValidation(experiment.getDataSet().getClassInstances(), this.K, experiment.getParameter().getSeed());
|
|
36
|
-
this.runExperiment(experiment.
|
|
36
|
+
this.runExperiment(experiment.getmodel(), experiment.getParameter(), result, crossValidation);
|
|
37
37
|
}
|
|
38
38
|
return result;
|
|
39
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StratifiedMxKFoldRun.js","sourceRoot":"","sources":["../../source/Experiment/StratifiedMxKFoldRun.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,6CAAwC;IAExC,gFAA2E;IAC3E,4GAAuG;IAGvG,MAAa,oBAAqB,SAAQ,uBAAU;QAEhD;;;;;WAKG;QACH,YAAY,CAAS,EAAE,CAAS;YAC5B,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAChB,CAAC;QAED;;;;;WAKG;QACH,OAAO,CAAC,UAAsB;YAC1B,IAAI,MAAM,GAAG,IAAI,6CAAqB,EAAE,CAAC;YACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC7B,IAAI,eAAe,GAAG,IAAI,+DAA8B,CAAW,UAAU,CAAC,UAAU,EAAE,CAAC,iBAAiB,EAAE,EAC1G,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;gBACjD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"StratifiedMxKFoldRun.js","sourceRoot":"","sources":["../../source/Experiment/StratifiedMxKFoldRun.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,6CAAwC;IAExC,gFAA2E;IAC3E,4GAAuG;IAGvG,MAAa,oBAAqB,SAAQ,uBAAU;QAEhD;;;;;WAKG;QACH,YAAY,CAAS,EAAE,CAAS;YAC5B,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAChB,CAAC;QAED;;;;;WAKG;QACH,OAAO,CAAC,UAAsB;YAC1B,IAAI,MAAM,GAAG,IAAI,6CAAqB,EAAE,CAAC;YACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC7B,IAAI,eAAe,GAAG,IAAI,+DAA8B,CAAW,UAAU,CAAC,UAAU,EAAE,CAAC,iBAAiB,EAAE,EAC1G,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;gBACjD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,UAAU,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;aACjG;YACD,OAAO,MAAM,CAAC;QAClB,CAAC;KACJ;IA3BD,oDA2BC"}
|
|
@@ -33,11 +33,11 @@
|
|
|
33
33
|
*/
|
|
34
34
|
execute(experiment) {
|
|
35
35
|
let result = new ExperimentPerformance_1.ExperimentPerformance();
|
|
36
|
+
let instanceList = experiment.getDataSet().getInstanceList();
|
|
37
|
+
let partition = new Partition_1.Partition(instanceList, 0.25, true);
|
|
36
38
|
for (let j = 0; j < this.M; j++) {
|
|
37
|
-
let instanceList = experiment.getDataSet().getInstanceList();
|
|
38
|
-
let partition = new Partition_1.Partition(instanceList, 0.25, true);
|
|
39
39
|
let crossValidation = new StratifiedKFoldCrossValidation_1.StratifiedKFoldCrossValidation(new Partition_1.Partition(partition.get(1)).getLists(), this.K, experiment.getParameter().getSeed());
|
|
40
|
-
this.runExperiment(experiment.
|
|
40
|
+
this.runExperiment(experiment.getmodel(), experiment.getParameter(), result, crossValidation, partition.get(0));
|
|
41
41
|
}
|
|
42
42
|
return result;
|
|
43
43
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StratifiedMxKFoldRunSeparateTest.js","sourceRoot":"","sources":["../../source/Experiment/StratifiedMxKFoldRunSeparateTest.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,qFAAgF;IAEhF,gFAA2E;IAC3E,yDAAoD;IAEpD,4GAAuG;IAEvG,MAAa,gCAAiC,SAAQ,+DAA8B;QAIhF;;;;;WAKG;QACH,YAAY,CAAS,EAAE,CAAS;YAC5B,KAAK,CAAC,CAAC,CAAC,CAAC;YACT,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;QACd,CAAC;QAED;;;;;WAKG;QACH,OAAO,CAAC,UAAsB;YAC1B,IAAI,MAAM,GAAG,IAAI,6CAAqB,EAAE,CAAC;YACzC,
|
|
1
|
+
{"version":3,"file":"StratifiedMxKFoldRunSeparateTest.js","sourceRoot":"","sources":["../../source/Experiment/StratifiedMxKFoldRunSeparateTest.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,qFAAgF;IAEhF,gFAA2E;IAC3E,yDAAoD;IAEpD,4GAAuG;IAEvG,MAAa,gCAAiC,SAAQ,+DAA8B;QAIhF;;;;;WAKG;QACH,YAAY,CAAS,EAAE,CAAS;YAC5B,KAAK,CAAC,CAAC,CAAC,CAAC;YACT,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;QACd,CAAC;QAED;;;;;WAKG;QACH,OAAO,CAAC,UAAsB;YAC1B,IAAI,MAAM,GAAG,IAAI,6CAAqB,EAAE,CAAC;YACzC,IAAI,YAAY,GAAG,UAAU,CAAC,UAAU,EAAE,CAAC,eAAe,EAAE,CAAC;YAC7D,IAAI,SAAS,GAAG,IAAI,qBAAS,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACxD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC7B,IAAI,eAAe,GAAG,IAAI,+DAA8B,CAAW,IAAI,qBAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,EACzG,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;gBACjD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,UAAU,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,eAAe,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aACnH;YACD,OAAO,MAAM,CAAC;QAClB,CAAC;KACJ;IAhCD,4EAgCC"}
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
let crossValidation = new StratifiedKFoldCrossValidation_1.StratifiedKFoldCrossValidation(experiment.getDataSet().getClassInstances(), this.K, experiment.getParameter().getSeed());
|
|
32
32
|
let trainSet = new InstanceList_1.InstanceList(crossValidation.getTrainFold(0));
|
|
33
33
|
let testSet = new InstanceList_1.InstanceList(crossValidation.getTestFold(0));
|
|
34
|
-
return experiment.
|
|
34
|
+
return experiment.getmodel().singleRun(experiment.getParameter(), trainSet, testSet);
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
37
|
exports.StratifiedSingleRunWithK = StratifiedSingleRunWithK;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StratifiedSingleRunWithK.js","sourceRoot":"","sources":["../../source/Experiment/StratifiedSingleRunWithK.ts"],"names":[],"mappings":";;;;;;;;;;;;IAEA,4GAAuG;IAEvG,+DAA0D;IAE1D,MAAa,wBAAwB;QAIjC;;;;WAIG;QACH,YAAY,CAAS;YACjB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;QACd,CAAC;QAED;;;;;WAKG;QACH,OAAO,CAAC,UAAsB;YAC1B,IAAI,eAAe,GAAG,IAAI,+DAA8B,CAAW,UAAU,CAAC,UAAU,EAAE,CAAC,iBAAiB,EAAE,EAC1G,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YACjD,IAAI,QAAQ,GAAG,IAAI,2BAAY,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YACjE,IAAI,OAAO,GAAG,IAAI,2BAAY,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/D,OAAO,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"StratifiedSingleRunWithK.js","sourceRoot":"","sources":["../../source/Experiment/StratifiedSingleRunWithK.ts"],"names":[],"mappings":";;;;;;;;;;;;IAEA,4GAAuG;IAEvG,+DAA0D;IAE1D,MAAa,wBAAwB;QAIjC;;;;WAIG;QACH,YAAY,CAAS;YACjB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;QACd,CAAC;QAED;;;;;WAKG;QACH,OAAO,CAAC,UAAsB;YAC1B,IAAI,eAAe,GAAG,IAAI,+DAA8B,CAAW,UAAU,CAAC,UAAU,EAAE,CAAC,iBAAiB,EAAE,EAC1G,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YACjD,IAAI,QAAQ,GAAG,IAAI,2BAAY,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YACjE,IAAI,OAAO,GAAG,IAAI,2BAAY,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/D,OAAO,UAAU,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QACzF,CAAC;KACJ;IA1BD,4DA0BC"}
|
|
@@ -7,7 +7,7 @@ export declare abstract class LaryFilter extends FeatureFilter {
|
|
|
7
7
|
/**
|
|
8
8
|
* Constructor that sets the dataSet and all the attributes distributions.
|
|
9
9
|
*
|
|
10
|
-
* @param dataSet DataSet that will
|
|
10
|
+
* @param dataSet DataSet that will be used.
|
|
11
11
|
*/
|
|
12
12
|
constructor(dataSet: DataSet);
|
|
13
13
|
/**
|