数据挖掘算法(Analysis Services – 数据挖掘)

适用于:SQL Server 2019 及更早版本的 Analysis Services Azure Analysis Services Fabric/Power BI Premium

重要

数据挖掘在 SQL Server 2017 Analysis Services 中已弃用,现在在 SQL Server 2022 Analysis Services 中已停止使用。 对于已弃用和停止使用的功能,文档不会更新。 若要了解详细信息,请参阅 Analysis Services 后向兼容性

数据挖掘(或机器学习)中的算法是根据数据创建模型的一组试探法和计算。 为了创建模型,算法将首先分析您提供的数据,并查找特定类型的模式和趋势。 算法使用此分析在许多次迭代中的结果来查找用于创建挖掘模型的最佳参数。 然后,这些参数应用于整个数据集,以便提取可行模式和详细统计信息。

算法根据您的数据创建的挖掘模型可以采用多种形式,这包括:

  • 说明数据集中的事例如何相关的一组分类。

  • 预测结果并描述不同条件是如何影响该结果的决策树。

  • 预测销量的数学模型。

  • 说明在事务中如何将产品分组到一起的一组规则,以及一起购买产品的概率。

SQL Server数据挖掘中提供的算法是从数据派生模式的最常用、经过充分研究的方法。 例如,K-means 聚类分析 是最古老的聚类分析算法之一,在许多不同的工具和许多不同的实现和选项中广泛可用。 但是,SQL Server数据挖掘中使用的 K-means 聚类分析的特定实现由 Microsoft Research 开发,然后使用 SQL Server Analysis Services 针对性能进行优化。 所有 Microsoft 数据挖掘算法都可以广泛地自定义,并且可使用提供的 API 完全编程。 还可以使用 Integration Services 中的数据挖掘组件自动创建、训练和重新训练模型。

您还可以使用符合 OLE DB for Data Mining 规范的第三方算法,或者开发可注册为服务、然后在 SQL Server 数据挖掘框架中使用的自定义算法。

选择正确的算法

为特定的分析任务选择最佳算法很有挑战性。 您可以使用不同的算法来执行同样的业务任务,每个算法会生成不同的结果,而某些算法还会生成多种类型的结果。 例如,您不仅可以将 Microsoft 决策树算法用于预测,而且还可以将它用作一种减少数据集的列数的方法,因为决策树能够识别出不影响最终挖掘模型的列。

按类型选择算法

SQL Server数据挖掘包括以下算法类型:

  • “分类算法”基于数据集中的其他属性预测一个或多个离散变量。

  • 回归算法基于数据集中的其他属性预测一个或多个连续数值变量,如利润或亏损。

  • “分段算法”将数据划分为组或分类,这些组或分类的项具有相似的属性。

  • “关联算法”查找数据集中不同属性之间的相关性。 这类算法最常见的应用是创建可用于市场篮分析的关联规则。

  • 顺序分析算法 汇总数据中的常见顺序或事件,如 Web 站点中的一系列单击或机器维护之前的一系列日志事件。

但是,限制为您的解决方案中的一种算法是没有必要的。 有经验的分析人员有时候将使用一种算法来确定最高效的输入(即变量),然后应用其他算法以便基于这些数据预测特定结果。 SQL Server数据挖掘允许在单个挖掘结构上构建多个模型,因此在单个数据挖掘解决方案中,可以使用聚类分析算法、决策树模型和 Naïve Bayes 模型来获取数据的不同视图。 还可以在单个解决方案内使用多种算法来执行单独的任务:例如,可以使用回归来获取财务预测,并且使用神经网络算法执行预测影响因素分析。

按任务选择算法

为帮助您选择用于特定任务的算法,下表给出了每种算法在传统上用于的任务类型的建议。

任务示例 可使用的 Microsoft 算法
预测离散属性:

将预期购买者列表中的客户标记为好或差的潜在客户。

计算服务器在未来 6 个月内将出现故障的概率。

将患者结果分类并探讨相关因素。
Microsoft 决策树算法

Microsoft Naive Bayes Algorithm

Microsoft Clustering Algorithm

Microsoft Neural Network Algorithm
预测连续属性:

预测下一年的销售额。

根据过去的历史信息和季节趋势,预测网站访问者。

根据人口统计信息生成风险评分。
Microsoft 决策树算法

Microsoft 时序算法

Microsoft 线性回归算法
预测顺序:

执行公司网站的点击流分析。

分析导致服务器故障的因素。

捕获和分析门诊访问期间活动的顺序,以便围绕一般的活动形成最佳做法。
Microsoft 顺序分析和聚类分析算法
查找事务中常见项的组:

使用市场篮分析来确定产品摆放。

建议客户购买其他产品。

分析来自事件访问者的调查数据,确定哪些活动或展台是相关的,以便计划将来的活动。
Microsoft 关联算法

Microsoft 决策树算法
查找相似项的组:

基于人口统计信息和行为之类的属性,创建患者风险配置文件组。

按照浏览和购买模式分析用户。

标识具有相似使用特性的服务器。
Microsoft Clustering Algorithm

Microsoft 顺序分析和聚类分析算法

以下部分提供了SQL Server数据挖掘中提供的每种数据挖掘算法的学习资源的链接:

主题 说明
确定数据挖掘模型使用的算法 查询用于创建挖掘模型的参数
创建自定义插件算法 插件算法
使用特定于算法的查看器浏览模型 数据挖掘模型查看器
使用一般的表格式查看模型的内容 使用 Microsoft 一般内容树查看器浏览模型
了解如何设置您的数据,并使用算法来创建模型 挖掘结构(Analysis Services – 数据挖掘)

挖掘模型(Analysis Services - 数据挖掘)

另请参阅

数据挖掘工具