13 朴素贝叶斯预测器使用以下公式进行预测: P(Y=y|X=x)=αP(Y=y)∏iP(Xi=xi|Y=y)P(Y=y|X=x)=αP(Y=y)∏iP(Xi=xi|Y=y) 其中是归一化因子。这需要从数据中估计参数。如果我们使用平滑进行此操作,则可以得到估计值ααP(Xi=xi|Y=y)P(Xi=xi|Y=y)kk P^(Xi=xi|Y=y)=#{Xi=xi,Y=y}+k#{Y=y}+nikP^(Xi=xi|Y=y)=#{Xi=xi,Y=y}+k#{Y=y}+nik 可能有值。我对此很好。但是,以前,我们有niniXiXi P^(Y=y)=#{Y=y}NP^(Y=y)=#{Y=y}N 数据集中有示例。为什么我们也不能简化先验?或者说,做我们顺利前?如果是这样,我们选择什么平滑参数?也选择似乎有点愚蠢,因为我们正在做不同的计算。有共识吗?还是没有太大关系?NNkk machine-learning probability-theory statistics — 克里斯·泰勒 source
5 首先进行平滑的典型原因是要处理。如果不这样做,只要是这种情况,我们总是会得到。#{Xi=xi|Y=y}=0#{Xi=xi|Y=y}=0P(Y=y|X=x)=0P(Y=y|X=x)=0 例如,在对文本文档进行分类时,如果您遇到的单词不在训练数据中,或者只是没有出现在某个特定班级中,就会发生这种情况。 另一方面,在类别先验概率情况下,这种情况不应发生。如果这样做,则意味着您正在尝试将对象分配给甚至没有出现在训练数据中的类。P(Y=y)P(Y=y) 另外,我从未遇到过术语平滑。拉普拉斯(Laplace)或加性平滑(Additive smoothing)更为常见。kk — 中音 source 1 通常,进行平滑处理的原因是避免过度拟合数据。某个类的计数为零的情况只是过拟合的一种特殊情况(碰巧特别糟糕)。观察每个班级时,您仍然可能希望简化概率。我想我对明显的不对称感到困扰-拉普拉斯平滑对应于假设您的数据集中存在额外的观察结果。为什么在拟合先验条件时会忽略这些观察? — 克里斯·泰勒 我可能会争辩说,平滑类的先验意义不大,因为的MLE 可能比的估计要好得多。如果我有理由相信我的课堂估计有偏见,我将搁置一个验证集,并自己对课堂进行调整。以我的经验,过度拟合往往对朴素的贝叶斯问题不大(相对于判别法,逻辑回归)。也许您会更喜欢贝叶斯治疗?P(Y=y)P(Y=y)P(Xi=xi|Y=y)P(Xi=xi|Y=y) — 中音 “这种情况不应该发生。如果这样做,则意味着您试图将对象分配给甚至没有出现在训练数据中的类”。呃...分类器如何将对象分配给以前从未见过的类(即,不在训练数据中)? — Jemenake @Jemenake通常被称为零次学习中的问题,例如见零射门学习与语义输出码 — 中音 当我们使用训练数据集训练模型时,我们可以使用训练数据集中出现的单词来构建词汇,那么在对测试集进行预测时,为什么不仅仅删除词汇中没有的新单词呢? — 鳄梨