可以使用分类矩阵来评估模型预测的准确性。 若要生成分类矩阵,请通过模型运行一组测试数据,分类矩阵工具将测试集中的实际值与模型进行的预测进行比较。 通过查看矩阵,可以一目了然地了解模型的正确程度,以及模型预测错误的频率。
在这些加载项中,使用 分类矩阵 向导选择模型、指定测试数据,然后生成结果矩阵。
如何读取分类矩阵
假设你的目标是设计客户忠诚计划,然后将客户分配到适当的类别,以便你可以向他们提供适当的奖励级别。 你为奖励计划(铜牌、银牌和金牌)实施了三个级别,并在试用阶段将这些级别提供给客户。 你还设计了一个模型来分析客户并预测正确的类别。 现在,你将使用试用数据的分类矩阵来确定模型预测所有客户的正确产品/服务有多好。
分类矩阵中的表指示将基于模型分配给每个类别的客户数,并将该结果与实际注册每个奖励级别的客户数进行比较。
| 青铜(实际) | 黄金(实际) | 银 (实际) | |
|---|---|---|---|
| 青铜 | 94.45% | 15.18% | 1.70% |
| 金 | 2.72% | 84.82% | 0.00% |
| 银 | 1.84% | 0.00% | 93.80% |
| 正确 | 95.45% | 84.82% | 98.30% |
| 错误分类 | 4.55% | 15.18% | 1.70% |
每列都显示测试数据集中的实际值。
每行显示预测值。
粗体值沿着矩阵从左上角到右下角的对角线排列,显示了模型正确识别的结果。
对角线以外的所有其他值表示错误。 一些错误结果是伪阳性结果,这意味着模型预测客户将加入黄金会员计划,然而这是错误的。 根据你的领域,误报可能非常昂贵。
其他的是假阴性,意味着模型预测客户不会感兴趣,但他或她确实加入了该计划。 同样,根据问题域,这种丢失的机会成本可能会很大。
使用分类矩阵向导
选择要基于其进行预测的挖掘模型。
选择新测试数据的源,或使用与结构一起保存的测试数据。
选择你希望评估其准确性的列。 创建矩阵时只能选择一列,但该列可以有多个值。
提示:如果可预测列有多个要比较的列,则很难解释分类矩阵。
在 “选择要预测的列” 页中,还可以指定是要显示不正确和不正确的值的计数,还是显示百分比。
在“选择源数据”页上,指示使用的是外部测试数据,还是使用模型保存的测试数据。
如果使用外部测试数据,则需要将模型映射到向导的 “指定关系 ”页上的输入列。
如果使用嵌入式测试数据集,则会为你完成映射
单击“ 完成 ”,针对模型运行预测并生成分类矩阵。
该向导创建一个报表,其中包含分类矩阵以及有关分析的其他详细信息。 此报表保存为 Excel 中的表,报表上方有一个摘要,指示正确预测了多少个事例,以及有多少个预测错误。
要求
若要创建分类矩阵,必须有权访问支持准确性度量的现有挖掘模型。 无法使用此工具测量预测模型和关联模型。
要测量的模型需要预测离散或已离散化的值。
如果您没有选择保存测试集和模型设置,则需要获取一个输入数据集,该数据集的列数量和数据类型必须与模型中使用的那些相匹配。
用于测试的数据挖掘模型和新数据必须至少包含一个可预测的列,并且列必须包含相同类型的数据。
已知问题
在 SQL Server 2012 和 SQL Server 2014 中,将内部测试数据集映射到模型的能力在 分类矩阵 工具中不起作用。 但是,可以指定外部数据集,然后选择训练集作为输入来确定原始数据集上的错误。
另请参阅
验证模型和使用用于预测的模型(适用于 Excel 的数据挖掘加载项)
浏览数据(SQL Server 数据挖掘加载项)
检测类别 (Excel 表分析工具)