Customize Mining Models and Structure

Applies to: SQL Server 2019 and earlier Analysis Services Azure Analysis Services Fabric/Power BI Premium

Important

Data mining was deprecated in SQL Server 2017 Analysis Services and now discontinued in SQL Server 2022 Analysis Services. Documentation is not updated for deprecated and discontinued features. To learn more, see Analysis Services backward compatibility.

After you have selected an algorithm that meets your business needs, you can customize the mining model in the following ways to potentially improve results.

  • Use different columns of data in the model, or change the usage, content type, or discretization method for the columns.

  • Create filters on the mining model to restrict the data used in training the model.

  • Change the algorithm that was used to analyze data.

  • Set algorithm parameters to control thresholds, tree splits, and other important conditions.

This topic describes these options.

Changing Data Used by the Model

The decisions that you make about which columns of data to use in the model, and how to use and process that data, greatly affect the results of analysis. The following topics provide information to help you understand these choices.

Using Feature Selection

Most data mining algorithms in SQL Server Analysis Services use a process called feature selection to select only the most useful attributes for addition to a model. Reducing the number of columns and attributes can improve performance and the quality of the model. The feature selection methods that are available differ depending on the algorithm that you choose.

Feature Selection (Data Mining).

Changing Usage

You can change which columns are included in a mining model and how each column is used. If you do not get the results you expect, you should example the columns you used as input, and ask yourself whether the columns are a good choice, and whether there is anything you can do to improve the handling of data, including:

  • Identifying categorical variables that have mistakenly labeled as numbers.

  • Adding categories to collapse the number of attributes and make it easier t find correlations.

  • Changing the way that numbers are binned, or discretized.

  • Removing columns that have a lot of unique values, or columns that are really reference data and not useful for analysis, such as addresses or middle names.

You don't need to physically remove columns from the mining structure; you can just flag the column as Ignore. The column is removed from the mining model, but can still be used by other mining models in the structure, ore referenced in a drillthrough query.

Creating Aliases for Model Columns

When SQL Server Analysis Services creates the mining model, it uses the same column names that are in the mining structure. You can add an alias to any column in the mining model. This might make it easier to understand the column contents or usage, or make the name shorter for convenience in creating queries. Aliases are also helpful when you want to create a copy of a column and name it something descriptive.

You create an alias by editing the Name property of the mining model column. SQL Server Analysis Services continues to use the original name as the ID of the column, and the new value that you type for Name becomes the column alias, and appears in the grid in parentheses next to the column usage.

aliases on mining model columns

The graphic shows related models that have multiple copies of a mining structure column, all related to Income. Each copy of the structure column has been discretized in a different way. The models in the diagram each use a different column from the mining structure; however, for convenience in comparing the columns across the models, the column in each model has been renamed to [Income].

Adding Filters

You can add a filter to a mining model. A filter is a set of WHERE conditions that restrict the data in the model cases to some subset. The filter is used when training the model, and can optionally be used when you test the model or create accuracy charts.

By adding filters, you can reuse mining structures but create models based on very different subsets of the data. Or, you can simply use filters to eliminate certain rows and improve the quality of analysis.

For more information, see Filters for Mining Models (Analysis Services - Data Mining).

Changing the Algorithm

Although new models that you add to a mining structure share the same data set, you can get different results by using a different algorithm (if the data supports it), or by changing the parameters for the algorithm. You can also set modeling flags.

The choice of algorithm determines what kind of results you will get. For general information about how a specific algorithm works, or the business scenarios where you would benefit from using a particular algorithm, see Data Mining Algorithms (Analysis Services - Data Mining).

See the technical reference topic for each algorithm for a description of the requirements and restrictions, as well as detailed information about the customizations that each algorithm supports.

Customizing Algorithm Parameters

Each algorithm supports parameters that you can use to customize the behavior of the algorithm and fine-tune the results of your model. For a description of how to use each parameter, see the following topics:

The topic for each algorithm type also lists the prediction functions that can be used with models based on that algorithm.

Property name Applies to
AUTO_DETECT_PERIODICITY Microsoft Time Series Algorithm Technical Reference
CLUSTER_COUNT Microsoft Clustering Algorithm Technical Reference

Microsoft Sequence Clustering Algorithm Technical Reference
CLUSTER_SEED Microsoft Clustering Algorithm Technical Reference
CLUSTERING_METHOD Microsoft Clustering Algorithm Technical Reference
COMPLEXITY_PENALTY Microsoft Decision Trees Algorithm Technical Reference

Microsoft Time Series Algorithm Technical Reference
FORCE_REGRESSOR Microsoft Decision Trees Algorithm Technical Reference

Microsoft Linear Regression Algorithm Technical Reference

Modeling Flags (Data Mining)
FORECAST_METHOD Microsoft Time Series Algorithm Technical Reference
HIDDEN_NODE_RATIO Microsoft Neural Network Algorithm Technical Reference
HISTORIC_MODEL_COUNT Microsoft Time Series Algorithm Technical Reference
HISTORICAL_MODEL_GAP Microsoft Time Series Algorithm Technical Reference
HOLDOUT_PERCENTAGE Microsoft Logistic Regression Algorithm Technical Reference

Microsoft Neural Network Algorithm Technical Reference

Note: This parameter is different from the holdout percentage value that applies to a mining structure.
HOLDOUT_SEED Microsoft Logistic Regression Algorithm Technical Reference

Microsoft Neural Network Algorithm Technical Reference

Note: This parameter is different from the holdout seed value that applies to a mining structure.
INSTABILITY_SENSITIVITY Microsoft Time Series Algorithm Technical Reference
MAXIMUM_INPUT_ATTRIBUTES Microsoft Clustering Algorithm Technical Reference

Microsoft Decision Trees Algorithm Technical Reference

Microsoft Linear Regression Algorithm Technical Reference

Microsoft Naive Bayes Algorithm Technical Reference

Microsoft Neural Network Algorithm Technical Reference

Microsoft Logistic Regression Algorithm Technical Reference
MAXIMUM_ITEMSET_COUNT Microsoft Association Algorithm Technical Reference
MAXIMUM_ITEMSET_SIZE Microsoft Association Algorithm Technical Reference
MAXIMUM_OUTPUT_ATTRIBUTES Microsoft Decision Trees Algorithm Technical Reference

Microsoft Linear Regression Algorithm Technical Reference

Microsoft Logistic Regression Algorithm Technical Reference

Microsoft Naive Bayes Algorithm Technical Reference

Microsoft Neural Network Algorithm Technical Reference
MAXIMUM_SEQUENCE_STATES Microsoft Sequence Clustering Algorithm Technical Reference
MAXIMUM_SERIES_VALUE Microsoft Time Series Algorithm Technical Reference
MAXIMUM_STATES Microsoft Clustering Algorithm Technical Reference

Microsoft Neural Network Algorithm Technical Reference

Microsoft Sequence Clustering Algorithm Technical Reference
MAXIMUM_SUPPORT Microsoft Association Algorithm Technical Reference
MINIMUM_IMPORTANCE Microsoft Association Algorithm Technical Reference
MINIMUM_ITEMSET_SIZE Microsoft Association Algorithm Technical Reference
MINIMUM_DEPENDENCY_PROBABILITY Microsoft Naive Bayes Algorithm Technical Reference
MINIMUM_PROBABILITY Microsoft Association Algorithm Technical Reference
MINIMUM_SERIES_VALUE Microsoft Time Series Algorithm Technical Reference
MINIMUM_SUPPORT Microsoft Association Algorithm Technical Reference

Microsoft Clustering Algorithm Technical Reference

Microsoft Decision Trees Algorithm Technical Reference

Microsoft Sequence Clustering Algorithm Technical Reference

Microsoft Time Series Algorithm Technical Reference
MISSING_VALUE_SUBSTITUTION Microsoft Time Series Algorithm Technical Reference
MODELLING_CARDINALITY Microsoft Clustering Algorithm Technical Reference
PERIODICITY_HINT Microsoft Time Series Algorithm Technical Reference
PREDICTION_SMOOTHING Microsoft Time Series Algorithm Technical Reference
SAMPLE_SIZE Microsoft Clustering Algorithm Technical Reference

Microsoft Logistic Regression Algorithm Technical Reference

Microsoft Neural Network Algorithm Technical Reference
SCORE_METHOD Microsoft Decision Trees Algorithm Technical Reference
SPLIT_METHOD Microsoft Decision Trees Algorithm Technical Reference
STOPPING_TOLERANCE Microsoft Clustering Algorithm Technical Reference

See Also

Data Mining Algorithms (Analysis Services - Data Mining)
Physical Architecture (Analysis Services - Data Mining)