SQL SERVER 数据挖掘中的几个问题(二):理解列的用法(Predict和PredictOnly)

最近与一个客户的开发团队探讨和学习SQL Server的数据挖掘及其应用。有几个比较有意思的问题,整理出来

关于数据挖掘的基本知识和学习资料,可以参考http://msdn.microsoft.com/zh-cn/library/bb510517.aspx

上一篇: SQL SERVER 数据挖掘中的几个问题(一):理解内容类型

 

这是一个小的细节问题,我们在定义挖掘模型的时候,会指定不同的列的用法,基本上有如下几种

  • Ignore(忽略)
  • Input(输入)
  • Predict(预测)
  • PredictOnly(仅预测)

image

前面两个很容易理解,“忽略”就是说这个列不在当前算法中使用,例如某些列在某些算法里面不受支持。而“输入”则是最常见的一种用法,就是说这个列作为算法作为预测分析的输入数据。

关键在于如何理解“预测”与“仅预测”

  • 预测:这种列的意思是,该列既作为输入列(输入的数据),也作为输出列(预测的结果)
  • 仅预测:该列只作为输出列,不能作为输入列。也就是说它不会作为对其他因素做分析或者预测的因素。

这里面有两个主要层面的意思

  • 如果是选择“预测”这种用法,那么这种列可以作为“输入”的性质,对其他列(尤其是其他预测列)产生影响。而“仅预测”这种则是说自己只是仅仅作为预测的目的存在,它本身不能作为预测其他列的前提。
    • 所以,如果有多个预测列(这在有的时候也是可能的),那么对于某些列,设置为“预测”而不是“仅预测”应该是很有必要的;而对于在模型中只有唯一的预测目标列时,可以设置为“仅预测”来提高模型的准确性和效率。
  • 在对新数据做预测的时候,我们也可以看到这样的意思

image

在这种情况下,Bike Buyer这个列,也可以作为输入进行映射

image

posted @   陈希章  阅读(1984)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
历史上的今天:
2009-07-24 .NET : 如何将16进制颜色代码转换为十进制
点击右上角即可分享
微信分享提示