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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DecisionNode.js","sourceRoot":"","sources":["../../../source/Model/DecisionTree/DecisionNode.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,kEAA6D;IAC7D,2DAAsD;IAEtD,oCAA+B;IAC/B,uFAAkF;IAClF,yEAAoE;IACpE,6EAAwE;IACxE,oFAA+E;IAC/E,4DAAuD;IAEvD,wEAAmE;IACnE,kEAA6D;IAC7D,oEAA+D;IAE/D,MAAa,YAAY;QAuIrB;;;;;;;;;;;;;;;;;;;;;;WAsBG;QACH,YAAY,IAAiC,EAAE,SAA6B,EAAE,SAAiC,EAAE,OAAiB;YA5JlI,aAAQ,GAAwB,SAAS,CAAA;YACjC,YAAO,GAAW,YAAY,CAAC;YAC/B,SAAI,GAAkB,SAAS,CAAA;YAC/B,eAAU,GAAY,SAAS,CAAA;YACvC,SAAI,GAAY,KAAK,CAAA;YACb,cAAS,GAAsB,SAAS,CAAA;YAwJ5C,IAAI,IAAI,YAAY,2BAAY,IAAI,CAAC,SAAS,YAAY,qCAAiB,IAAI,SAAS,IAAI,SAAS,CAAC,EAAC;gBACnG,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAA;aACzD;iBAAM;gBACH,IAAI,IAAI,YAAY,2BAAY,EAAC;oBAC7B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;iBAC1B;aACJ;QACL,CAAC;QA7JD,YAAY,CAAC,IAAkB,EAAE,SAAsC,EAAE,SAAiC,EAAE,OAAiB;YACzH,IAAI,aAAa,GAAG,CAAC,CAAC,CAAA;YACtB,IAAI,cAAc,GAAG,CAAC,CAAA;YACtB,IAAI,SAAS,YAAY,qCAAiB,EAAC;gBACvC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;aAC9B;YACD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,IAAI,CAAC,UAAU,GAAG,aAAK,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;YAC1D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,IAAI,WAAW,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAChD,IAAI,WAAW,CAAC,MAAM,IAAI,CAAC,EAAE;gBACzB,OAAO;aACV;YACD,IAAI,OAAO,IAAI,SAAS,IAAI,IAAI,EAAE;gBAC9B,OAAO;aACV;YACD,IAAI,SAAS,CAAA;YACb,IAAI,IAAI,CAAA;YACR,IAAI,SAAS,IAAI,SAAS,IAAI,SAAS,CAAC,sBAAsB,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,EAAE;gBAC5F,SAAS,GAAG,yBAAW,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC,CAAA;gBACpF,IAAI,GAAG,SAAS,CAAC,sBAAsB,EAAE,CAAC;aAC7C;iBAAM;gBACH,SAAS,GAAG,IAAI,KAAK,EAAU,CAAC;gBAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,EAAE,EAAE;oBAClD,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;iBACrB;gBACD,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;aACtC;YACD,IAAI,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACjD,IAAI,WAAW,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC,OAAO,EAAE,CAAC;YACrD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE;gBAC3B,IAAI,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBACzB,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,YAAY,mDAAwB,EAAE;oBACrE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAA8B,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAE,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,EAAE;wBAChG,IAAI,YAAY,GAAG,IAAI,CAAC,yCAAyC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;wBAC5E,IAAI,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE;4BAC3B,iBAAiB,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;4BACnD,IAAI,OAAO,GAAG,CAAC,iBAAiB,CAAC,OAAO,EAAE,GAAG,iBAAiB,CAAC,MAAM,EAAE,GAAG,YAAY,CAAC,OAAO,EAAE,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;4BACxI,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,GAAG,WAAW,EAAE;gCACtC,WAAW,GAAG,OAAO,CAAC;gCACtB,aAAa,GAAG,KAAK,CAAC;gCACtB,cAAc,GAAG,CAAC,CAAC;6BACtB;4BACD,iBAAiB,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;yBACnD;qBACJ;iBACJ;qBAAM;oBACH,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,YAAY,qCAAiB,EAAE;wBAC9D,IAAI,OAAO,GAAG,IAAI,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC;wBACtD,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,GAAG,WAAW,EAAE;4BACtC,WAAW,GAAG,OAAO,CAAC;4BACtB,aAAa,GAAG,KAAK,CAAC;yBACzB;qBACJ;yBAAM;wBACH,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,YAAY,yCAAmB,EAAE;4BAChE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;4BACjB,IAAI,aAAa,GAAG,MAAM,CAAC,iBAAiB,CAAC;4BAC7C,IAAI,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;4BAChD,IAAI,iBAAiB,GAAG,IAAI,2CAAoB,EAAE,CAAC;4BACnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;gCAClC,IAAI,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gCAC3B,IAAI,CAAC,IAAI,CAAC,EAAE;oCACR,aAAa,GAAyB,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAE,CAAC,QAAQ,EAAE,CAAC;iCAClF;qCAAM;oCACH,IAA0B,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAE,CAAC,QAAQ,EAAE,IAAI,aAAa,EAAE;wCACjF,IAAI,UAAU,GAAG,CAAC,aAAa,GAAyB,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;wCACtG,aAAa,GAAyB,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAE,CAAC,QAAQ,EAAE,CAAC;wCAC/E,IAAI,OAAO,GAAG,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,gBAAgB,CAAC,OAAO,EAAE,GAAG,CAAC,iBAAiB,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,iBAAiB,CAAC,OAAO,EAAE,CAAC;wCAChK,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,GAAG,WAAW,EAAE;4CACtC,WAAW,GAAG,OAAO,CAAC;4CACtB,cAAc,GAAG,UAAU,CAAC;4CAC5B,aAAa,GAAG,KAAK,CAAC;yCACzB;qCACJ;iCACJ;gCACD,gBAAgB,CAAC,UAAU,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;gCACtD,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;6BACvD;yBACJ;qBACJ;iBACJ;aACJ;YACD,IAAI,aAAa,IAAI,CAAC,CAAC,EAAE;gBACrB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;gBAClB,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,YAAY,mDAAwB,EAAE;oBAC7E,IAAI,CAAC,gCAAgC,CAAC,aAAa,EAAE,cAAc,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;iBAC5F;qBAAM;oBACH,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,YAAY,qCAAiB,EAAE;wBACtE,IAAI,CAAC,yBAAyB,CAAC,aAAa,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;qBACrE;yBAAM;wBACH,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,YAAY,yCAAmB,EAAE;4BACxE,IAAI,CAAC,2BAA2B,CAAC,aAAa,EAAE,cAAc,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;yBACvF;qBACJ;iBACJ;aACJ;QACL,CAAC;QAED,YAAY,CAAC,QAAsB;YAC/B,IAAI,KAAK,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAC1C,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,EAAC;gBACjB,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAC;oBACnB,IAAI,CAAC,SAAS,GAAG,IAAI,qCAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,qCAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;iBAC3G;qBAAM;oBACH,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAC;wBACnB,IAAI,CAAC,SAAS,GAAG,IAAI,qCAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,mDAAwB,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;qBAC5I;yBAAM;wBACH,IAAI,CAAC,SAAS,GAAG,IAAI,qCAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,yCAAmB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;qBACzH;iBACJ;aACJ;iBAAM;gBACH,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;aACxB;YACD,IAAI,gBAAgB,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAA;YACpD,IAAI,gBAAgB,IAAI,CAAC,EAAC;gBACtB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAA;gBACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,KAAK,EAAgB,CAAA;gBACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,EAAE,CAAC,EAAE,EAAC;oBACtC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAA;iBACjD;aACJ;iBAAM;gBACH,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;gBAChB,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAA;aACxC;QACL,CAAC;QAmCD;;;;;;WAMG;QACK,2BAA2B,CAAC,cAAsB;YACtD,IAAI,GAAG,GAAG,GAAG,CAAC;YACd,IAAI,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,cAAc,CAAC,CAAC;YACzE,KAAK,IAAI,YAAY,IAAI,aAAa,EAAE;gBACpC,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,YAAY,CAAC,OAAO,EAAE,CAAC;aAC9E;YACD,OAAO,GAAG,CAAC;QACf,CAAC;QAED;;;;;;;;WAQG;QACK,gCAAgC,CAAC,cAAsB,EAAE,cAAsB,EAAE,SAAgC,EAAE,OAAgB;YACvI,IAAI,YAAY,GAAG,IAAI,qBAAS,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;YAC5E,IAAI,CAAC,QAAQ,GAAG,IAAI,KAAK,EAAgB,CAAC;YAC1C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,qCAAiB,CAAC,cAAc,EAAE,IAAI,mDAAwB,CAAC,EAAE,EAAE,cAAc,EAA8B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,cAAc,CAAE,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;YACjQ,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,qCAAiB,CAAC,cAAc,EAAE,IAAI,mDAAwB,CAAC,EAAE,EAAE,CAAC,CAAC,EAA8B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,cAAc,CAAE,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QACzP,CAAC;QAED;;;;;;;WAOG;QACK,yBAAyB,CAAC,cAAsB,EAAE,SAAgC,EAAE,OAAgB;YACxG,IAAI,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAC;YAChE,IAAI,YAAY,GAAG,IAAI,qBAAS,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;YAC5D,IAAI,CAAC,QAAQ,GAAG,IAAI,KAAK,EAAgB,CAAC;YAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACvC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,qCAAiB,CAAC,cAAc,EAAE,IAAI,qCAAiB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;aAC7J;QACL,CAAC;QAED;;;;;;;;WAQG;QACK,2BAA2B,CAAC,cAAsB,EAAE,UAAkB,EAAE,SAAgC,EAAE,OAAgB;YAC9H,IAAI,YAAY,GAAG,IAAI,qBAAS,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,UAAU,GAAG,SAAS,CAAC,CAAC;YACpF,IAAI,CAAC,QAAQ,GAAG,IAAI,KAAK,EAAgB,CAAC;YAC1C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,qCAAiB,CAAC,cAAc,EAAE,IAAI,yCAAmB,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;YAC/J,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,qCAAiB,CAAC,cAAc,EAAE,IAAI,yCAAmB,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QACnK,CAAC;QAED;;;;;;WAMG;QACH,OAAO,CAAC,QAAkB;YACtB,IAAI,QAAQ,YAAY,qCAAiB,EAAE;gBACvC,IAAI,mBAAmB,GAAwB,QAAS,CAAC,sBAAsB,EAAE,CAAC;gBAClF,IAAI,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACjD,IAAI,cAAc,GAAG,YAAY,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;gBAClE,IAAI,IAAI,CAAC,IAAI,EAAE;oBACX,OAAO,cAAc,CAAC;iBACzB;qBAAM;oBACH,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE;wBAC5B,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;4BAClC,IAAI,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;4BAC7C,IAAI,eAAe,IAAI,SAAS,EAAE;gCAC9B,OAAO,eAAe,CAAC;6BAC1B;iCAAM;gCACH,OAAO,cAAc,CAAC;6BACzB;yBACJ;qBACJ;oBACD,OAAO,cAAc,CAAC;iBACzB;aACJ;iBAAM;gBACH,IAAI,IAAI,CAAC,IAAI,EAAE;oBACX,OAAO,IAAI,CAAC,UAAU,CAAC;iBAC1B;qBAAM;oBACH,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE;wBAC5B,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;4BAClC,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;yBACjC;qBACJ;oBACD,OAAO,IAAI,CAAC,UAAU,CAAC;iBAC1B;aACJ;QACL,CAAC;QAED,8BAA8B,CAAC,QAAkB;YAC7C,IAAI,IAAI,CAAC,IAAI,EAAE;gBACX,OAAO,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,0BAA0B,EAAE,CAAC;aACrE;iBAAM;gBACH,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE;oBAC5B,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;wBAClC,OAAO,IAAI,CAAC,8BAA8B,CAAC,QAAQ,CAAC,CAAC;qBACxD;iBACJ;gBACD,OAAO,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,0BAA0B,EAAE,CAAC;aACrE;QACL,CAAC;KACJ;IA9RD,oCA8RC"}
|
|
1
|
+
{"version":3,"file":"DecisionNode.js","sourceRoot":"","sources":["../../../source/Model/DecisionTree/DecisionNode.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { DecisionTree } from "./DecisionTree";
|
|
2
|
+
import { InstanceList } from "../../InstanceList/InstanceList";
|
|
3
|
+
import { Parameter } from "../../Parameter/Parameter";
|
|
4
|
+
export declare class DecisionStump extends DecisionTree {
|
|
5
|
+
/**
|
|
6
|
+
* Training algorithm for C4.5 Stump univariate decision tree classifier.
|
|
7
|
+
*
|
|
8
|
+
* @param trainSet Training data given to the algorithm.
|
|
9
|
+
* @param parameters -
|
|
10
|
+
*/
|
|
11
|
+
train(trainSet: InstanceList, parameters: Parameter): void;
|
|
12
|
+
/**
|
|
13
|
+
* Loads the decision tree model from an input file.
|
|
14
|
+
* @param fileName File name of the decision tree model.
|
|
15
|
+
*/
|
|
16
|
+
loadModel(fileName: string): void;
|
|
17
|
+
}
|
|
@@ -4,16 +4,15 @@
|
|
|
4
4
|
if (v !== undefined) module.exports = v;
|
|
5
5
|
}
|
|
6
6
|
else if (typeof define === "function" && define.amd) {
|
|
7
|
-
define(["require", "exports", "./
|
|
7
|
+
define(["require", "exports", "./DecisionTree", "./DecisionNode"], factory);
|
|
8
8
|
}
|
|
9
9
|
})(function (require, exports) {
|
|
10
10
|
"use strict";
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
|
|
16
|
-
class C45Stump extends Classifier_1.Classifier {
|
|
12
|
+
exports.DecisionStump = void 0;
|
|
13
|
+
const DecisionTree_1 = require("./DecisionTree");
|
|
14
|
+
const DecisionNode_1 = require("./DecisionNode");
|
|
15
|
+
class DecisionStump extends DecisionTree_1.DecisionTree {
|
|
17
16
|
/**
|
|
18
17
|
* Training algorithm for C4.5 Stump univariate decision tree classifier.
|
|
19
18
|
*
|
|
@@ -21,12 +20,16 @@
|
|
|
21
20
|
* @param parameters -
|
|
22
21
|
*/
|
|
23
22
|
train(trainSet, parameters) {
|
|
24
|
-
this.
|
|
23
|
+
this.root = new DecisionNode_1.DecisionNode(trainSet, undefined, undefined, true);
|
|
25
24
|
}
|
|
25
|
+
/**
|
|
26
|
+
* Loads the decision tree model from an input file.
|
|
27
|
+
* @param fileName File name of the decision tree model.
|
|
28
|
+
*/
|
|
26
29
|
loadModel(fileName) {
|
|
27
|
-
this.
|
|
30
|
+
this.constructor2(fileName);
|
|
28
31
|
}
|
|
29
32
|
}
|
|
30
|
-
exports.
|
|
33
|
+
exports.DecisionStump = DecisionStump;
|
|
31
34
|
});
|
|
32
|
-
//# sourceMappingURL=
|
|
35
|
+
//# sourceMappingURL=DecisionStump.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DecisionStump.js","sourceRoot":"","sources":["../../../source/Model/DecisionTree/DecisionStump.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,iDAA4C;IAG5C,iDAA4C;IAE5C,MAAa,aAAc,SAAQ,2BAAY;QAE3C;;;;;WAKG;QACH,KAAK,CAAC,QAAsB,EAAE,UAAqB;YAC/C,IAAI,CAAC,IAAI,GAAG,IAAI,2BAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QACvE,CAAC;QAED;;;WAGG;QACH,SAAS,CAAC,QAAgB;YACtB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;QAC/B,CAAC;KAEJ;IApBD,sCAoBC"}
|
|
@@ -2,22 +2,24 @@ import { ValidatedModel } from "../ValidatedModel";
|
|
|
2
2
|
import { DecisionNode } from "./DecisionNode";
|
|
3
3
|
import { Instance } from "../../Instance/Instance";
|
|
4
4
|
import { InstanceList } from "../../InstanceList/InstanceList";
|
|
5
|
+
import { Parameter } from "../../Parameter/Parameter";
|
|
5
6
|
export declare class DecisionTree extends ValidatedModel {
|
|
6
|
-
|
|
7
|
+
protected root: DecisionNode;
|
|
8
|
+
constructor2(fileName: string): void;
|
|
9
|
+
constructor(root?: DecisionNode);
|
|
7
10
|
/**
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* @param rootOrFileName DecisionNode type input or fileName
|
|
11
|
-
*/
|
|
12
|
-
constructor(rootOrFileName: DecisionNode | string);
|
|
13
|
-
/**
|
|
14
|
-
* The predict method performs prediction on the root node of given instance, and if it is null, it returns the possible class labels.
|
|
15
|
-
* Otherwise it returns the returned class labels.
|
|
11
|
+
* The predict method performs prediction on the root node of given instance, and if it is null, it returns the
|
|
12
|
+
* possible class labels. Otherwise, it returns the returned class labels.
|
|
16
13
|
*
|
|
17
14
|
* @param instance Instance make prediction.
|
|
18
15
|
* @return Possible class labels.
|
|
19
16
|
*/
|
|
20
17
|
predict(instance: Instance): string;
|
|
18
|
+
/**
|
|
19
|
+
* Calculates the posterior probability distribution for the given instance according to Decision tree model.
|
|
20
|
+
* @param instance Instance for which posterior probability distribution is calculated.
|
|
21
|
+
* @return Posterior probability distribution for the given instance.
|
|
22
|
+
*/
|
|
21
23
|
predictProbability(instance: Instance): Map<string, number>;
|
|
22
24
|
saveTxt(fileName: string): void;
|
|
23
25
|
/**
|
|
@@ -35,4 +37,17 @@ export declare class DecisionTree extends ValidatedModel {
|
|
|
35
37
|
* @param pruneSet {@link InstanceList} to perform pruning.
|
|
36
38
|
*/
|
|
37
39
|
prune(pruneSet: InstanceList): void;
|
|
40
|
+
/**
|
|
41
|
+
* Training algorithm for C4.5 univariate decision tree classifier. 20 percent of the data are left aside for pruning
|
|
42
|
+
* 80 percent of the data is used for constructing the tree.
|
|
43
|
+
*
|
|
44
|
+
* @param trainSet Training data given to the algorithm.
|
|
45
|
+
* @param parameters -
|
|
46
|
+
*/
|
|
47
|
+
train(trainSet: InstanceList, parameters: Parameter): void;
|
|
48
|
+
/**
|
|
49
|
+
* Loads the decision tree model from an input file.
|
|
50
|
+
* @param fileName File name of the decision tree model.
|
|
51
|
+
*/
|
|
52
|
+
loadModel(fileName: string): void;
|
|
38
53
|
}
|
|
@@ -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", "../ValidatedModel", "./DecisionNode", "../../Instance/CompositeInstance", "nlptoolkit-util/dist/FileContents"], factory);
|
|
7
|
+
define(["require", "exports", "../ValidatedModel", "./DecisionNode", "../../Instance/CompositeInstance", "nlptoolkit-util/dist/FileContents", "../../InstanceList/Partition"], factory);
|
|
8
8
|
}
|
|
9
9
|
})(function (require, exports) {
|
|
10
10
|
"use strict";
|
|
@@ -14,25 +14,19 @@
|
|
|
14
14
|
const DecisionNode_1 = require("./DecisionNode");
|
|
15
15
|
const CompositeInstance_1 = require("../../Instance/CompositeInstance");
|
|
16
16
|
const FileContents_1 = require("nlptoolkit-util/dist/FileContents");
|
|
17
|
+
const Partition_1 = require("../../InstanceList/Partition");
|
|
17
18
|
class DecisionTree extends ValidatedModel_1.ValidatedModel {
|
|
18
|
-
|
|
19
|
-
* Constructor that sets root node of the decision tree.
|
|
20
|
-
*
|
|
21
|
-
* @param rootOrFileName DecisionNode type input or fileName
|
|
22
|
-
*/
|
|
23
|
-
constructor(rootOrFileName) {
|
|
19
|
+
constructor(root) {
|
|
24
20
|
super();
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
this.root = new DecisionNode_1.DecisionNode(contents);
|
|
31
|
-
}
|
|
21
|
+
this.root = root;
|
|
22
|
+
}
|
|
23
|
+
constructor2(fileName) {
|
|
24
|
+
let contents = new FileContents_1.FileContents(fileName);
|
|
25
|
+
this.root = new DecisionNode_1.DecisionNode(contents);
|
|
32
26
|
}
|
|
33
27
|
/**
|
|
34
|
-
* The predict method performs prediction on the root node of given instance, and if it is null, it returns the
|
|
35
|
-
* Otherwise it returns the returned class labels.
|
|
28
|
+
* The predict method performs prediction on the root node of given instance, and if it is null, it returns the
|
|
29
|
+
* possible class labels. Otherwise, it returns the returned class labels.
|
|
36
30
|
*
|
|
37
31
|
* @param instance Instance make prediction.
|
|
38
32
|
* @return Possible class labels.
|
|
@@ -44,6 +38,11 @@
|
|
|
44
38
|
}
|
|
45
39
|
return predictedClass;
|
|
46
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* Calculates the posterior probability distribution for the given instance according to Decision tree model.
|
|
43
|
+
* @param instance Instance for which posterior probability distribution is calculated.
|
|
44
|
+
* @return Posterior probability distribution for the given instance.
|
|
45
|
+
*/
|
|
47
46
|
predictProbability(instance) {
|
|
48
47
|
return this.root.predictProbabilityDistribution(instance);
|
|
49
48
|
}
|
|
@@ -79,6 +78,30 @@
|
|
|
79
78
|
prune(pruneSet) {
|
|
80
79
|
this.pruneNode(this.root, pruneSet);
|
|
81
80
|
}
|
|
81
|
+
/**
|
|
82
|
+
* Training algorithm for C4.5 univariate decision tree classifier. 20 percent of the data are left aside for pruning
|
|
83
|
+
* 80 percent of the data is used for constructing the tree.
|
|
84
|
+
*
|
|
85
|
+
* @param trainSet Training data given to the algorithm.
|
|
86
|
+
* @param parameters -
|
|
87
|
+
*/
|
|
88
|
+
train(trainSet, parameters) {
|
|
89
|
+
if (parameters.isPrune()) {
|
|
90
|
+
let partition = new Partition_1.Partition(trainSet, parameters.getCrossValidationRatio(), true);
|
|
91
|
+
this.root = new DecisionNode_1.DecisionNode(partition.get(1), undefined, undefined, false);
|
|
92
|
+
this.prune(partition.get(0));
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
this.root = new DecisionNode_1.DecisionNode(trainSet, undefined, undefined, false);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Loads the decision tree model from an input file.
|
|
100
|
+
* @param fileName File name of the decision tree model.
|
|
101
|
+
*/
|
|
102
|
+
loadModel(fileName) {
|
|
103
|
+
this.constructor2(fileName);
|
|
104
|
+
}
|
|
82
105
|
}
|
|
83
106
|
exports.DecisionTree = DecisionTree;
|
|
84
107
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DecisionTree.js","sourceRoot":"","sources":["../../../source/Model/DecisionTree/DecisionTree.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,sDAAiD;IACjD,iDAA4C;IAE5C,wEAAmE;IAEnE,oEAA+D;
|
|
1
|
+
{"version":3,"file":"DecisionTree.js","sourceRoot":"","sources":["../../../source/Model/DecisionTree/DecisionTree.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,sDAAiD;IACjD,iDAA4C;IAE5C,wEAAmE;IAEnE,oEAA+D;IAG/D,4DAAuD;IAEvD,MAAa,YAAa,SAAQ,+BAAc;QAS5C,YAAY,IAAmB;YAC3B,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACrB,CAAC;QARD,YAAY,CAAC,QAAgB;YACzB,IAAI,QAAQ,GAAG,IAAI,2BAAY,CAAC,QAAQ,CAAC,CAAA;YACzC,IAAI,CAAC,IAAI,GAAG,IAAI,2BAAY,CAAC,QAAQ,CAAC,CAAA;QAC1C,CAAC;QAOD;;;;;;WAMG;QACH,OAAO,CAAC,QAAkB;YACtB,IAAI,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACjD,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,YAAY,qCAAiB,CAAC,CAAC,EAAE;gBACvE,cAAc,GAAwB,QAAS,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC,CAAC;aAC/E;YACD,OAAO,cAAc,CAAC;QAC1B,CAAC;QAED;;;;WAIG;QACH,kBAAkB,CAAC,QAAkB;YACjC,OAAO,IAAI,CAAC,IAAI,CAAC,8BAA8B,CAAC,QAAQ,CAAC,CAAA;QAC7D,CAAC;QAED,OAAO,CAAC,QAAgB;QACxB,CAAC;QAED;;;;;;;WAOG;QACH,SAAS,CAAC,IAAkB,EAAE,QAAsB;YAChD,IAAI,IAAI,CAAC,IAAI,EAAC;gBACV,OAAO;aACV;YACD,IAAI,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;YAC3C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,IAAI,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;YAC1C,IAAI,KAAK,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,WAAW,EAAE,EAAE;gBAC5C,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;gBAClB,KAAK,IAAI,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE;oBAC7B,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;iBACnC;aACJ;QACL,CAAC;QAED;;;;WAIG;QACH,KAAK,CAAC,QAAsB;YACxB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;QACvC,CAAC;QAED;;;;;;WAMG;QACH,KAAK,CAAC,QAAsB,EAAE,UAAqB;YAC/C,IAAoB,UAAW,CAAC,OAAO,EAAE,EAAE;gBACvC,IAAI,SAAS,GAAG,IAAI,qBAAS,CAAC,QAAQ,EAAkB,UAAW,CAAC,uBAAuB,EAAE,EAAE,IAAI,CAAC,CAAC;gBACrG,IAAI,CAAC,IAAI,GAAG,IAAI,2BAAY,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;gBAC5E,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aAChC;iBAAM;gBACH,IAAI,CAAC,IAAI,GAAG,IAAI,2BAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;aACvE;QACL,CAAC;QAED;;;WAGG;QACH,SAAS,CAAC,QAAgB;YACtB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;QAC/B,CAAC;KAEJ;IAlGD,oCAkGC"}
|
|
@@ -1,14 +1,21 @@
|
|
|
1
1
|
import { Model } from "./Model";
|
|
2
2
|
import { Instance } from "../Instance/Instance";
|
|
3
3
|
import { InstanceList } from "../InstanceList/InstanceList";
|
|
4
|
+
import { Parameter } from "../Parameter/Parameter";
|
|
4
5
|
export declare class DummyModel extends Model {
|
|
5
6
|
private distribution;
|
|
6
7
|
/**
|
|
7
|
-
*
|
|
8
|
+
* Training algorithm for the dummy classifier. Actually dummy classifier returns the maximum occurring class in
|
|
9
|
+
* the training data, there is no training. Sets the distribution using the given {@link InstanceList}.
|
|
8
10
|
*
|
|
9
|
-
* @param trainSet
|
|
11
|
+
* @param trainSet Training data given to the algorithm.
|
|
10
12
|
*/
|
|
11
|
-
|
|
13
|
+
constructor1(trainSet: InstanceList): void;
|
|
14
|
+
/**
|
|
15
|
+
* Loads the dummy model from an input file.
|
|
16
|
+
* @param fileName File name of the dummy model.
|
|
17
|
+
*/
|
|
18
|
+
constructor2(fileName: string): void;
|
|
12
19
|
/**
|
|
13
20
|
* The predict method takes an Instance as an input and returns the entry of distribution which has the maximum value.
|
|
14
21
|
*
|
|
@@ -16,6 +23,24 @@ export declare class DummyModel extends Model {
|
|
|
16
23
|
* @return The entry of distribution which has the maximum value.
|
|
17
24
|
*/
|
|
18
25
|
predict(instance: Instance): string;
|
|
26
|
+
/**
|
|
27
|
+
* Calculates the posterior probability distribution for the given instance according to dummy model.
|
|
28
|
+
* @param instance Instance for which posterior probability distribution is calculated.
|
|
29
|
+
* @return Posterior probability distribution for the given instance.
|
|
30
|
+
*/
|
|
19
31
|
predictProbability(instance: Instance): Map<string, number>;
|
|
20
32
|
saveTxt(fileName: string): void;
|
|
33
|
+
/**
|
|
34
|
+
* Training algorithm for the dummy classifier. Actually dummy classifier returns the maximum occurring class in
|
|
35
|
+
* the training data, there is no training.
|
|
36
|
+
*
|
|
37
|
+
* @param trainSet Training data given to the algorithm.
|
|
38
|
+
* @param parameters -
|
|
39
|
+
*/
|
|
40
|
+
train(trainSet: InstanceList, parameters: Parameter): void;
|
|
41
|
+
/**
|
|
42
|
+
* Loads the dummy model from an input file.
|
|
43
|
+
* @param fileName File name of the dummy model.
|
|
44
|
+
*/
|
|
45
|
+
loadModel(fileName: string): void;
|
|
21
46
|
}
|
package/dist/Model/DummyModel.js
CHANGED
|
@@ -4,41 +4,32 @@
|
|
|
4
4
|
if (v !== undefined) module.exports = v;
|
|
5
5
|
}
|
|
6
6
|
else if (typeof define === "function" && define.amd) {
|
|
7
|
-
define(["require", "exports", "./Model", "
|
|
7
|
+
define(["require", "exports", "./Model", "../Instance/CompositeInstance", "nlptoolkit-util/dist/FileContents"], factory);
|
|
8
8
|
}
|
|
9
9
|
})(function (require, exports) {
|
|
10
10
|
"use strict";
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.DummyModel = void 0;
|
|
13
13
|
const Model_1 = require("./Model");
|
|
14
|
-
const DiscreteDistribution_1 = require("nlptoolkit-math/dist/DiscreteDistribution");
|
|
15
|
-
const InstanceList_1 = require("../InstanceList/InstanceList");
|
|
16
14
|
const CompositeInstance_1 = require("../Instance/CompositeInstance");
|
|
17
15
|
const FileContents_1 = require("nlptoolkit-util/dist/FileContents");
|
|
18
16
|
class DummyModel extends Model_1.Model {
|
|
19
17
|
/**
|
|
20
|
-
*
|
|
18
|
+
* Training algorithm for the dummy classifier. Actually dummy classifier returns the maximum occurring class in
|
|
19
|
+
* the training data, there is no training. Sets the distribution using the given {@link InstanceList}.
|
|
21
20
|
*
|
|
22
|
-
* @param trainSet
|
|
21
|
+
* @param trainSet Training data given to the algorithm.
|
|
23
22
|
*/
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
let line = input.readLine();
|
|
35
|
-
let items = line.split(" ");
|
|
36
|
-
let count = parseInt(items[1]);
|
|
37
|
-
for (let j = 0; j < count; j++) {
|
|
38
|
-
this.distribution.addItem(items[0]);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
}
|
|
23
|
+
constructor1(trainSet) {
|
|
24
|
+
this.distribution = trainSet.classDistribution();
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Loads the dummy model from an input file.
|
|
28
|
+
* @param fileName File name of the dummy model.
|
|
29
|
+
*/
|
|
30
|
+
constructor2(fileName) {
|
|
31
|
+
let input = new FileContents_1.FileContents(fileName);
|
|
32
|
+
this.distribution = Model_1.Model.loadDiscreteDistribution(input);
|
|
42
33
|
}
|
|
43
34
|
/**
|
|
44
35
|
* The predict method takes an Instance as an input and returns the entry of distribution which has the maximum value.
|
|
@@ -55,11 +46,33 @@
|
|
|
55
46
|
return this.distribution.getMaxItem();
|
|
56
47
|
}
|
|
57
48
|
}
|
|
49
|
+
/**
|
|
50
|
+
* Calculates the posterior probability distribution for the given instance according to dummy model.
|
|
51
|
+
* @param instance Instance for which posterior probability distribution is calculated.
|
|
52
|
+
* @return Posterior probability distribution for the given instance.
|
|
53
|
+
*/
|
|
58
54
|
predictProbability(instance) {
|
|
59
55
|
return this.distribution.getProbabilityDistribution();
|
|
60
56
|
}
|
|
61
57
|
saveTxt(fileName) {
|
|
62
58
|
}
|
|
59
|
+
/**
|
|
60
|
+
* Training algorithm for the dummy classifier. Actually dummy classifier returns the maximum occurring class in
|
|
61
|
+
* the training data, there is no training.
|
|
62
|
+
*
|
|
63
|
+
* @param trainSet Training data given to the algorithm.
|
|
64
|
+
* @param parameters -
|
|
65
|
+
*/
|
|
66
|
+
train(trainSet, parameters) {
|
|
67
|
+
this.constructor1(trainSet);
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Loads the dummy model from an input file.
|
|
71
|
+
* @param fileName File name of the dummy model.
|
|
72
|
+
*/
|
|
73
|
+
loadModel(fileName) {
|
|
74
|
+
this.constructor2(fileName);
|
|
75
|
+
}
|
|
63
76
|
}
|
|
64
77
|
exports.DummyModel = DummyModel;
|
|
65
78
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DummyModel.js","sourceRoot":"","sources":["../../source/Model/DummyModel.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,mCAA8B;
|
|
1
|
+
{"version":3,"file":"DummyModel.js","sourceRoot":"","sources":["../../source/Model/DummyModel.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,mCAA8B;IAI9B,qEAAgE;IAChE,oEAA+D;IAG/D,MAAa,UAAW,SAAQ,aAAK;QAIjC;;;;;WAKG;QACH,YAAY,CAAC,QAAsB;YAC/B,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC,iBAAiB,EAAE,CAAA;QACpD,CAAC;QAED;;;WAGG;QACH,YAAY,CAAC,QAAgB;YACzB,IAAI,KAAK,GAAG,IAAI,2BAAY,CAAC,QAAQ,CAAC,CAAA;YACtC,IAAI,CAAC,YAAY,GAAG,aAAK,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAA;QAC7D,CAAC;QAED;;;;;WAKG;QACH,OAAO,CAAC,QAAkB;YACtB,IAAI,CAAC,QAAQ,YAAY,qCAAiB,CAAC,EAAE;gBACzC,IAAI,mBAAmB,GAAwB,QAAS,CAAC,sBAAsB,EAAE,CAAC;gBAClF,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;aAC5D;iBAAM;gBACH,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC;aACzC;QACL,CAAC;QAED;;;;WAIG;QACH,kBAAkB,CAAC,QAAkB;YACjC,OAAO,IAAI,CAAC,YAAY,CAAC,0BAA0B,EAAE,CAAC;QAC1D,CAAC;QAED,OAAO,CAAC,QAAgB;QACxB,CAAC;QAED;;;;;;WAMG;QACH,KAAK,CAAC,QAAsB,EAAE,UAAqB;YAC/C,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;QAC/B,CAAC;QAED;;;WAGG;QACH,SAAS,CAAC,QAAgB;YACtB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;QAC/B,CAAC;KAGJ;IAtED,gCAsEC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { InstanceList } from "
|
|
3
|
-
import { Parameter } from "
|
|
4
|
-
export declare class
|
|
1
|
+
import { TreeEnsembleModel } from "./TreeEnsembleModel";
|
|
2
|
+
import { InstanceList } from "../../InstanceList/InstanceList";
|
|
3
|
+
import { Parameter } from "../../Parameter/Parameter";
|
|
4
|
+
export declare class BaggingModel extends TreeEnsembleModel {
|
|
5
5
|
/**
|
|
6
6
|
* Bagging bootstrap ensemble method that creates individuals for its ensemble by training each classifier on a random
|
|
7
7
|
* redistribution of the training set.
|
|
@@ -13,5 +13,9 @@ export declare class Bagging extends Classifier {
|
|
|
13
13
|
* @param parameters Parameters of the bagging trees algorithm. ensembleSize returns the number of trees in the bagged forest.
|
|
14
14
|
*/
|
|
15
15
|
train(trainSet: InstanceList, parameters: Parameter): void;
|
|
16
|
+
/**
|
|
17
|
+
* Loads the Bagging ensemble model from an input file.
|
|
18
|
+
* @param fileName File name of the decision tree model.
|
|
19
|
+
*/
|
|
16
20
|
loadModel(fileName: string): void;
|
|
17
21
|
}
|
|
@@ -4,18 +4,17 @@
|
|
|
4
4
|
if (v !== undefined) module.exports = v;
|
|
5
5
|
}
|
|
6
6
|
else if (typeof define === "function" && define.amd) {
|
|
7
|
-
define(["require", "exports", "./
|
|
7
|
+
define(["require", "exports", "./TreeEnsembleModel", "../../InstanceList/InstanceList", "../DecisionTree/DecisionTree", "../DecisionTree/DecisionNode"], factory);
|
|
8
8
|
}
|
|
9
9
|
})(function (require, exports) {
|
|
10
10
|
"use strict";
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.
|
|
13
|
-
const
|
|
14
|
-
const InstanceList_1 = require("
|
|
15
|
-
const DecisionTree_1 = require("../
|
|
16
|
-
const DecisionNode_1 = require("../
|
|
17
|
-
|
|
18
|
-
class Bagging extends Classifier_1.Classifier {
|
|
12
|
+
exports.BaggingModel = void 0;
|
|
13
|
+
const TreeEnsembleModel_1 = require("./TreeEnsembleModel");
|
|
14
|
+
const InstanceList_1 = require("../../InstanceList/InstanceList");
|
|
15
|
+
const DecisionTree_1 = require("../DecisionTree/DecisionTree");
|
|
16
|
+
const DecisionNode_1 = require("../DecisionTree/DecisionNode");
|
|
17
|
+
class BaggingModel extends TreeEnsembleModel_1.TreeEnsembleModel {
|
|
19
18
|
/**
|
|
20
19
|
* Bagging bootstrap ensemble method that creates individuals for its ensemble by training each classifier on a random
|
|
21
20
|
* redistribution of the training set.
|
|
@@ -28,18 +27,21 @@
|
|
|
28
27
|
*/
|
|
29
28
|
train(trainSet, parameters) {
|
|
30
29
|
let forestSize = parameters.getEnsembleSize();
|
|
31
|
-
|
|
30
|
+
this.forest = new Array();
|
|
32
31
|
for (let i = 0; i < forestSize; i++) {
|
|
33
32
|
let bootstrap = trainSet.bootstrap(i);
|
|
34
33
|
let tree = new DecisionTree_1.DecisionTree(new DecisionNode_1.DecisionNode(new InstanceList_1.InstanceList(bootstrap.getSample()), undefined, undefined, false));
|
|
35
|
-
forest.push(tree);
|
|
34
|
+
this.forest.push(tree);
|
|
36
35
|
}
|
|
37
|
-
this.model = new TreeEnsembleModel_1.TreeEnsembleModel(forest);
|
|
38
36
|
}
|
|
37
|
+
/**
|
|
38
|
+
* Loads the Bagging ensemble model from an input file.
|
|
39
|
+
* @param fileName File name of the decision tree model.
|
|
40
|
+
*/
|
|
39
41
|
loadModel(fileName) {
|
|
40
|
-
this.
|
|
42
|
+
this.constructor2(fileName);
|
|
41
43
|
}
|
|
42
44
|
}
|
|
43
|
-
exports.
|
|
45
|
+
exports.BaggingModel = BaggingModel;
|
|
44
46
|
});
|
|
45
|
-
//# sourceMappingURL=
|
|
47
|
+
//# sourceMappingURL=BaggingModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaggingModel.js","sourceRoot":"","sources":["../../../source/Model/Ensemble/BaggingModel.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,2DAAsD;IACtD,kEAA6D;IAG7D,+DAA0D;IAC1D,+DAA0D;IAE1D,MAAa,YAAa,SAAQ,qCAAiB;QAE/C;;;;;;;;;WASG;QACH,KAAK,CAAC,QAAsB,EAAE,UAAqB;YAC/C,IAAI,UAAU,GAAuB,UAAW,CAAC,eAAe,EAAE,CAAC;YACnE,IAAI,CAAC,MAAM,GAAG,IAAI,KAAK,EAAgB,CAAC;YACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE;gBACjC,IAAI,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBACtC,IAAI,IAAI,GAAG,IAAI,2BAAY,CAAC,IAAI,2BAAY,CAAC,IAAI,2BAAY,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;gBACpH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC1B;QACL,CAAC;QAED;;;WAGG;QACH,SAAS,CAAC,QAAgB;YACtB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;QAC/B,CAAC;KAEJ;IA9BD,oCA8BC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { InstanceList } from "
|
|
3
|
-
import { Parameter } from "
|
|
4
|
-
export declare class
|
|
1
|
+
import { TreeEnsembleModel } from "./TreeEnsembleModel";
|
|
2
|
+
import { InstanceList } from "../../InstanceList/InstanceList";
|
|
3
|
+
import { Parameter } from "../../Parameter/Parameter";
|
|
4
|
+
export declare class RandomForestModel extends TreeEnsembleModel {
|
|
5
5
|
/**
|
|
6
6
|
* Training algorithm for random forest classifier. Basically the algorithm creates K distinct decision trees from
|
|
7
7
|
* K bootstrap samples of the original training set.
|
|
@@ -10,5 +10,9 @@ export declare class RandomForest extends Classifier {
|
|
|
10
10
|
* @param parameters Parameters of the bagging trees algorithm. ensembleSize returns the number of trees in the random forest.
|
|
11
11
|
*/
|
|
12
12
|
train(trainSet: InstanceList, parameters: Parameter): void;
|
|
13
|
+
/**
|
|
14
|
+
* Loads the random forest model from an input file.
|
|
15
|
+
* @param fileName File name of the random forest model.
|
|
16
|
+
*/
|
|
13
17
|
loadModel(fileName: string): void;
|
|
14
18
|
}
|
|
@@ -4,18 +4,17 @@
|
|
|
4
4
|
if (v !== undefined) module.exports = v;
|
|
5
5
|
}
|
|
6
6
|
else if (typeof define === "function" && define.amd) {
|
|
7
|
-
define(["require", "exports", "./
|
|
7
|
+
define(["require", "exports", "./TreeEnsembleModel", "../../InstanceList/InstanceList", "../DecisionTree/DecisionTree", "../DecisionTree/DecisionNode"], factory);
|
|
8
8
|
}
|
|
9
9
|
})(function (require, exports) {
|
|
10
10
|
"use strict";
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.
|
|
13
|
-
const
|
|
14
|
-
const InstanceList_1 = require("
|
|
15
|
-
const DecisionTree_1 = require("../
|
|
16
|
-
const DecisionNode_1 = require("../
|
|
17
|
-
|
|
18
|
-
class RandomForest extends Classifier_1.Classifier {
|
|
12
|
+
exports.RandomForestModel = void 0;
|
|
13
|
+
const TreeEnsembleModel_1 = require("./TreeEnsembleModel");
|
|
14
|
+
const InstanceList_1 = require("../../InstanceList/InstanceList");
|
|
15
|
+
const DecisionTree_1 = require("../DecisionTree/DecisionTree");
|
|
16
|
+
const DecisionNode_1 = require("../DecisionTree/DecisionNode");
|
|
17
|
+
class RandomForestModel extends TreeEnsembleModel_1.TreeEnsembleModel {
|
|
19
18
|
/**
|
|
20
19
|
* Training algorithm for random forest classifier. Basically the algorithm creates K distinct decision trees from
|
|
21
20
|
* K bootstrap samples of the original training set.
|
|
@@ -25,18 +24,21 @@
|
|
|
25
24
|
*/
|
|
26
25
|
train(trainSet, parameters) {
|
|
27
26
|
let forestSize = parameters.getEnsembleSize();
|
|
28
|
-
|
|
27
|
+
this.forest = new Array();
|
|
29
28
|
for (let i = 0; i < forestSize; i++) {
|
|
30
29
|
let bootstrap = trainSet.bootstrap(i);
|
|
31
30
|
let tree = new DecisionTree_1.DecisionTree(new DecisionNode_1.DecisionNode(new InstanceList_1.InstanceList(bootstrap.getSample()), undefined, parameters, false));
|
|
32
|
-
forest.push(tree);
|
|
31
|
+
this.forest.push(tree);
|
|
33
32
|
}
|
|
34
|
-
this.model = new TreeEnsembleModel_1.TreeEnsembleModel(forest);
|
|
35
33
|
}
|
|
34
|
+
/**
|
|
35
|
+
* Loads the random forest model from an input file.
|
|
36
|
+
* @param fileName File name of the random forest model.
|
|
37
|
+
*/
|
|
36
38
|
loadModel(fileName) {
|
|
37
|
-
this.
|
|
39
|
+
this.constructor2(fileName);
|
|
38
40
|
}
|
|
39
41
|
}
|
|
40
|
-
exports.
|
|
42
|
+
exports.RandomForestModel = RandomForestModel;
|
|
41
43
|
});
|
|
42
|
-
//# sourceMappingURL=
|
|
44
|
+
//# sourceMappingURL=RandomForestModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RandomForestModel.js","sourceRoot":"","sources":["../../../source/Model/Ensemble/RandomForestModel.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,2DAAsD;IACtD,kEAA6D;IAG7D,+DAA0D;IAC1D,+DAA0D;IAE1D,MAAa,iBAAkB,SAAQ,qCAAiB;QAEpD;;;;;;WAMG;QACH,KAAK,CAAC,QAAsB,EAAE,UAAqB;YAC/C,IAAI,UAAU,GAA4B,UAAW,CAAC,eAAe,EAAE,CAAC;YACxE,IAAI,CAAC,MAAM,GAAG,IAAI,KAAK,EAAgB,CAAC;YACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAC;gBAChC,IAAI,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBACtC,IAAI,IAAI,GAAG,IAAI,2BAAY,CAAC,IAAI,2BAAY,CAAC,IAAI,2BAAY,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,EAAE,SAAS,EAA0B,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;gBAC7I,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC1B;QACL,CAAC;QAED;;;WAGG;QACH,SAAS,CAAC,QAAgB;YACtB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;QAC/B,CAAC;KAEJ;IA3BD,8CA2BC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Model } from "../Model";
|
|
2
|
+
import { Instance } from "../../Instance/Instance";
|
|
3
|
+
import { DecisionTree } from "../DecisionTree/DecisionTree";
|
|
4
|
+
export declare abstract class TreeEnsembleModel extends Model {
|
|
5
|
+
protected forest: Array<DecisionTree>;
|
|
6
|
+
/**
|
|
7
|
+
* A constructor which sets the {@link Array} of {@link DecisionTree} with given input.
|
|
8
|
+
*
|
|
9
|
+
* @param forest An {@link Array} of {@link DecisionTree}.
|
|
10
|
+
*/
|
|
11
|
+
constructor1(forest: Array<DecisionTree>): void;
|
|
12
|
+
/**
|
|
13
|
+
* Loads a tree ensemble model such as Random Forest model or Bagging model from an input model file.
|
|
14
|
+
* @param fileName Model file name.
|
|
15
|
+
*/
|
|
16
|
+
constructor2(fileName: string): void;
|
|
17
|
+
/**
|
|
18
|
+
* The predict method takes an {@link Instance} as an input and loops through the {@link ArrayList} of {@link DecisionTree}s.
|
|
19
|
+
* Makes prediction for the items of that ArrayList and returns the maximum item of that ArrayList.
|
|
20
|
+
*
|
|
21
|
+
* @param instance Instance to make prediction.
|
|
22
|
+
* @return The maximum prediction of a given Instance.
|
|
23
|
+
*/
|
|
24
|
+
predict(instance: Instance): string;
|
|
25
|
+
/**
|
|
26
|
+
* Calculates the posterior probability distribution for the given instance according to ensemble tree model.
|
|
27
|
+
* @param instance Instance for which posterior probability distribution is calculated.
|
|
28
|
+
* @return Posterior probability distribution for the given instance.
|
|
29
|
+
*/
|
|
30
|
+
predictProbability(instance: Instance): Map<string, number>;
|
|
31
|
+
saveTxt(fileName: string): void;
|
|
32
|
+
}
|