Decision Tree using Machine Learning
Not only you can make a robust rational decision using the SpiceLogic Decision Tree Software, but also you can discover how others made the decision by mining data. Yes, learning from data and making a Decision Tree from that learning is called Decision Tree Machine Learning. While 'Normative Decision Theories' is all about how to make a rational decision for a rational agent, 'Descriptive Decision Theories' is about how people make a decision, not necessarily the decisions are Rational or Not. It is like, learning to read other's mind, based on their activity.
The SpiceLogic Decision Tree software can serve you to apply both normative and description decision theories. Using machine learning, the decision tree software can analyze data and create both Classification Decision Tree and Regression Tree.
Classification Decision Tree
Classification tree analysis is a kind of analysis where the predicted outcome is Category (or class) to which the data belongs. Say you want to sell hot dogs near a Tennis Court where Tennis Players are the primary customers. But you figured that not every day the players show up. You gathered some data like Outlook of the day, Temperature, Wind, Humidity etc and trying to figure out what makes them decide to come out and play Tennis. Say, your data looks like this:
At this moment, SpiceLogic Decision Tree Software can analyze data from CSV file, Excel file, and SQL Server database. Say, you have an Excel file that contains this data. In order to discover a decision tree from this data set, start the Decision Tree software and click the Machine Learning button as shown below.
Then select the data source type. Let's choose the Excel data source.
Then select the Excel file and select the Sheet that contains your data.
After clicking Proceed, you will see the list of all columns from that data set. Select the columns that you think important in the decision. Obviously, the Day Number has nothing to do with the decisions, so Uncheck the "Day" column. Then select the "PlayTennis" as the Decision Column.
Then click the button "Learn from Data"
Once the Learn from Data button is clicked, applying a Machine Learning Algorithm, a Decision Tree will be generated as shown below.
Click the Rule Set button to view the Generated Rule Set.
A compact rule set can be generated by clicking the Compact checkbox. Notice that the compact rule set combines the conditions using "OR".
Click the "Rebuild" button to rebuild the tree again from the same data source. Click the "Columns" button to change the columns that you want to consider as deciding factors. Click the Data Source button to change the data source like SQL Server database, or Excel / CSV file path, etc.
Regression Tree analysis is a kind of analysis where the predicted outcome is a real number like "price of a house", "expected salary" etc. In order to perform a Regression tree analysis, the procedure is the same as the Classification Decision Tree analysis, except the Decision Column, needs to be a Continuous (number type) variable. Say, you want to understand, how long a Tennis player plays tennis in a day based on various factors like Outlook, Temperature, Wind, Humidity, etc. Say, your data set looks like this:
Following the same procedure, as shown for Classification Tree Analysis, you can generate the Tree and the generated tree will look like this.
Breast Cancer Data set - example.
Let's do something for real and useful. We can analyze the breast cancer data set and get a decision tree on the recurrence event classification.
You can get the CSV file dataset from this link: https://datahub.io/machine-learning/breast-cancer
The Dataset looks like this:
Now, start the Decision Tree software and open Machine Learning wizard the same as shown in the previous section. Choose the CSV file data source and select the columns as shown below. (Notice that, I have unchecked 2 columns just to create a smaller decision tree).
Then click the button 'Learn from Data'. The Decision Tree software will generate a Decision Tree applying machine learning algorithms and produce the decision tree like this.