You are on page 1of 7

Microsoft Decision Trees Algorithm The Microsoft Decision Trees algorithm is a classification and regression algorithm provided by Microsoft

SQL Server Analysis Services for use in predictive modeling of both discrete and continuous attributes. For discrete attributes, the algorithm makes predictions based on the relationships between input columns in a dataset. It uses the values, known as states, of those columns to predict the states of a column that you designate as predictable. Specifically, the algorithm identifies the input columns that are correlated with the predictable column. For example, in a scenario to predict which customers are likely to purchase a bicycle, if nine out of ten younger customers buy a bicycle, but only two out of ten older customers do so, the algorithm infers that age is a good predictor of bicycle purchase. The decision tree makes predictions based on this tendency toward a particular outcome. For continuous attributes, the algorithm uses linear regression to determine where a decision tree splits. If more than one column is set to predictable, or if the input data contains a nested table that is set to predictable, the algorithm builds a separate decision tree for each predictable column Example The marketing department of the Adventure Works Cycles company wants to identify the characteristics of previous customers that might indicate whether those customers are likely to buy a product in the future. The AdventureWorks2008R 2 database stores demographic information that describes previous customers. By using the Microsoft Decision Trees algorithm to analyze this information, the marketing department can build a model that predicts whether a particular customer will purchase products, based on the states of known columns about that customer, such as demographics or past buying patterns. How the Algorithm Works The Microsoft Decision Trees algorithm builds a data mining model by creating a series of splits in the tree. These splits are represented as nodes. The algorithm adds a node to the model every time that an input column is found to be significantly correlated with the predictable column. The way that the algorithm determines a split is different depending on whether it is predicting a continuous column or a discrete column. The Microsoft Decision Trees algorithm uses feature selection to guide the selection of the most useful attributes. Feature selection is used by all Analysi s Services data mining algorithms to improve performance and the quality of analysis. Feature selection is important to prevent unimportant attributes from using processor time. If you use too many input or predictable attributes when you design a data min ing model, the model can take a very long time to process, or even run out of memory. Methods used to determine whether to split the tree include industry-standard metrics for entropy and Bayesian networks. For

more information about the methods used to se lect meaningful attributes and then score and rank the attributes. A common problem in data mining models is that the model becomes too sensitive to small differences in the training data, in which case it said to be over-fitted or over-trained. An overfitted model cannot be generalized to other data sets. To avoid overfitting on any particular set of data, the Microsoft Decision Trees algorithm uses techniques for controlling the growth of the tree. For a more in -depth explanation of how the Microsoft Deci sion Trees algorithm works. Predicting Discrete Columns The way that the Microsoft Decision Trees algorithm builds a tree for a discrete predictable column can be demonstrated by using a histogram. The following diagram shows a histogram that plots a predictable column, Bike Buyers, against an input column, Age. The histogram shows that the age of a person helps distinguish whether that person will purchase a bicycle.

The correlation that is shown in the diagram would cause the Microsoft Decision Trees algorithm to create a new node in the model.

As the algorithm adds new nodes to a model, a tree structure is formed. The top node of the tree describes the breakdown of the predictable column for the overall population of customers. As the model continue s to grow, the algorithm considers all columns. Predicting Continuous Columns When the Microsoft Decision Trees algorithm builds a tree based on a continuous predictable column, each node contains a regression formula. A split occurs at a point of non-linearity in the regression formula. For example, consider the following diagram.

The diagram contains data that can be modeled either by using a single line or by using two connected lines. However, a single line would do a poor job of representing the data . Instead, if you use two lines, the model will do a much better job of approximating the data. The point where the two lines come together is the point of non -linearity, and is the point where a node in a decision tree model would split. For example, the node that corresponds to the point of non-linearity in the previous graph could be represented by the following diagram. The two equations represent the regression equations for the two lines.

Data Required for Decision Tree Models When you prepare data for use in a decision trees model, you should understand the requirements for the particular algorithm, including how much data is needed, and how the data is used. The requirements for a decision trees model are as follows:
y y

A single key column Each model must contain one numeric or text column that uniquely identifies each record. Compound keys are not permitted. A predictable column Requires at least one predictable column. You can include multiple predictable attributes in a model, and the predictable attributes can be of different types, either numeric or discrete. However, increasing the number of predictable attributes can increase processing time.

Input columns Requires input columns, which can be d iscrete or continuous. Increasing the number of input attributes affects processing time.

Viewing a Decision Trees Model To explore the model, you can use the Microsoft Tree Viewer. If your model generates multiple trees, you can select a tree and the viewer shows you a breakdown of how the cases are categorized for each predictable attribute. You can also view the interaction of the trees by using the dependency network viewer Creating Predictions After the model has been processed, the results are stored as a set of patterns and statistics, which you can use to explore relationships or make predictions. Remarks
y y y

Supports the use of Predictive Model Markup Language (PMML) to create mining models. Supports drill through. Supports the use of OLAP mining models and the creation of data mining dimensions.

Microsoft Clustering Algorithm


Clustering is a tool for data analysis, which solves classification problems. Its object is to distribute cases (people, objects , events etc.) into groups, so that the degree of association to be strong between members of the same cluster and weak between members of different clusters. This way each cluster describes, in terms of data collected, the class to which its members belong. Clustering is discovery tool. It may reveal associations and structure in data which, though not previously evident, neverth eless are sensible and useful once found. The results of cluster analysis may contribute to the definition of a formal classification scheme, such as a taxonomy for related animals, insects or plants; or suggest statistical models with which to describe populations; or indicate rules for assigning new cases to classes for identification and diagnostic purposes; or provide measures of definition, size and change in what previously were only broad concepts; or find exemplars to represent classes. Whatever business you're in, the chances are that sooner or later you will run into a classification problem. Cluster analysis might provide the methodology to help you solve it. In short: The algorithm Clustering attempts to find natural groups of components, based on some similarity.

The example below demonstrates the clustering of padlocks of same kind. There are a total of 10 padlocks which are of three different colors. We are interested in clustering of padlocks of the three different kind into three different groups.

The padlocks of same kind are clustered into a group as shown below:

Thus, we see clustering means grouping of data or dividing a large data set into smaller data sets of some similarity. Clustering algorithm is included in BI2M application. Clustering is one of the Data Mining algorithms implemented in BI2M. The C query in BI2M should be defined by two steps: 1. choosing the case. A case is the basic unit, which will be analyzed by the algorithm 2. choosing the characteristics, on which the algorithm will form clusters. You can start Clustering module using the main menu of BI2M - click File-> New-> Clustering. Choose the desired OLAP cube and the Data Mining wizard appears.

Example: The database FoodMart 2000 with the OLAP cube Sales is given. We are interested in finding 3 segments of the customers of FoodMart stores in order to create a program for offering different benefits for the customers depending on their personal characteristics. The goal is to increase their loyalty to the stores. We will use the Clustering algorithm in the FoodMart 2000 database that segments the customers in the OLAP cube Sales into three categories based on the following information: Gender, Marital Status, Yearly Income, Education, Member Card, and Store Sales. Step 1 As we will group customers, we have to choose Customer as a case on the first page of the OLAP Data Mining Wizard.

Step 2 at this step we choose the characteristics which will be processed by the algorithm. On their basis the clusters will be created. In current task we are interested in Customers Gender, Marital Status, Education, Yearly income Member Card and Stor es Sales, that is why we select them.

Set the number of clusters = 3:

The result of data mining is: