Wondering what’s next for npm?Check out our public roadmap! »

    decision-tree

    0.3.7 • Public • Published

    Decision Tree for Node.js

    This Node.js module implements a Decision Tree using the ID3 Algorithm

    Installation

    npm install decision-tree
    

    Usage

    Import the module

    var DecisionTree = require('decision-tree');
    

    Prepare training dataset

    var training_data = [
    	{"color":"blue", "shape":"square", "liked":false},
    	{"color":"red", "shape":"square", "liked":false},
    	{"color":"blue", "shape":"circle", "liked":true},
    	{"color":"red", "shape":"circle", "liked":true},
    	{"color":"blue", "shape":"hexagon", "liked":false},
    	{"color":"red", "shape":"hexagon", "liked":false},
    	{"color":"yellow", "shape":"hexagon", "liked":true},
    	{"color":"yellow", "shape":"circle", "liked":true}
    ];
    

    Prepare test dataset

    var test_data = [
    	{"color":"blue", "shape":"hexagon", "liked":false},
    	{"color":"red", "shape":"hexagon", "liked":false},
    	{"color":"yellow", "shape":"hexagon", "liked":true},
    	{"color":"yellow", "shape":"circle", "liked":true}
    ];
    

    Setup Target Class used for prediction

    var class_name = "liked";
    

    Setup Features to be used by decision tree

    var features = ["color", "shape"];
    

    Create decision tree and train the model

    var dt = new DecisionTree(class_name, features);
    dt.train(training_data);
    

    Alternately, you can also create and train the tree when instantiating the tree itself:

    var dt = new DecisionTree(training_data, class_name, features);
    

    Predict class label for an instance

    var predicted_class = dt.predict({
    	color: "blue",
    	shape: "hexagon"
    });
    

    Evaluate model on a dataset

    var accuracy = dt.evaluate(test_data);
    

    Export underlying model for visualization or inspection

    var treeJson = dt.toJSON();
    

    Create a decision tree from a previously trained model

    var treeJson = dt.toJSON();
    var preTrainedDecisionTree = new DecisionTree(treeJson);
    

    Alternately, you can also import a previously trained model on an existing tree instance, assuming the features & class are the same:

    var treeJson = dt.toJSON();
    dt.import(treeJson);
    

    Install

    npm i decision-tree

    DownloadsWeekly Downloads

    120

    Version

    0.3.7

    License

    MIT

    Unpacked Size

    6.38 MB

    Total Files

    27

    Last publish

    Collaborators

    • avatar