0.4.0 • Published 5 years ago

@__username/decision-tree v0.4.0

Weekly downloads
2
License
-
Repository
-
Last release
5 years ago

Decision Tree for NodeJS

This module contains the NodeJS Implementation of Decision Tree using ID3 Algorithm

Table Of Contents

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 model:

    		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 treeModel = dt.toJSON();