在将两种不同的算法与特征选择进行比较时,我偶然发现了以下问题:
对于具有离散类变量的给定数据集,我们想要训练一个朴素贝叶斯分类器。我们决定在包装器方法中使用朴素贝叶斯在预处理期间进行特征选择。这种特征选择方法是否考虑了使用的特征子集的大小?

在考虑 NB 如何对给定实例进行分类时,用于分类的特征子集的大小仅影响条件依赖的乘积所具有的部分数量,但不会产生影响,或者是吗?
如果有人能提供一个可靠的解释,那就太好了,因为对我来说,这更像是一种直觉。
在将两种不同的算法与特征选择进行比较时,我偶然发现了以下问题:
对于具有离散类变量的给定数据集,我们想要训练一个朴素贝叶斯分类器。我们决定在包装器方法中使用朴素贝叶斯在预处理期间进行特征选择。这种特征选择方法是否考虑了使用的特征子集的大小?

在考虑 NB 如何对给定实例进行分类时,用于分类的特征子集的大小仅影响条件依赖的乘积所具有的部分数量,但不会产生影响,或者是吗?
如果有人能提供一个可靠的解释,那就太好了,因为对我来说,这更像是一种直觉。
不同之处在于模型的复杂性和训练的难度之间的权衡。您的变量可以采用的状态越多,训练它所需的数据就越多。听起来您正在通过一些前端处理来减少特征空间。
假设您使用 NBC 进行建模,如果您在当天的高温下外出。假设温度以摄氏度为单位的整数形式提供给您,恰好介于 0 到 40 度之间。运行一年多的实验——记录温度以及你是否外出——你将拥有 365 个数据点。
NBC 使用的内部结构将是一个包含 82 个值的矩阵(一个输入变量的 41 个值 * 2,因为您的输出类中有两个状态)。这意味着每个 bin 将具有365/82 = 8.9ish样本的平均值。在实践中,您可能会看到一些样本比这更多的样本和许多样本为 0 的样本。
假设您在 5 C 的温度下看到 8 个箱子(所有箱子都待在里面),而在 3 或 4 C 的温度下什么都没有。如果在构建模型后,您“问它”什么等级的温度为 4 C应该在里面。它不会知道的。直观地说,我们会说“留在里面”,但模型不会。解决此问题的一种方法是将类别 0、1、2、... 分成更大的温度组(即,温度 0-3 的类别 0,温度 4-7 的类别 1,等等)。这种情况的极端情况是“高”和“低”两种温度状态。实际的截止值应该更多地取决于观察到的数据,但一种这样的方案是将温度转换0-20为“低”和21-40“高”。
这种前端处理似乎就是您所说的围绕 NBC 的“包装器”。我们的“高”和“低”分箱方案的结果将导致模型更小(2 个输入状态和 2 个输出类为您提供了2*2 = 4许多类。这将更容易处理,并且可以自信地使用更少的数据以牺牲复杂性为代价进行训练。这种方案的一个缺点是:假设实际模式是你喜欢春天和秋天的天气,只有在不太热或不太冷的时候才出去。所以你的户外冒险是均匀的拆分“低”类的上部和“高”类的下部,给你一个真正无用的模型。如果是这种情况,“高”,“中”的 3 类 bin 方案