首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有人能给出一个很好的数学/统计解释的参数var_smoothing为GaussianNB做了什么在科学知识?

有人能给出一个很好的数学/统计解释的参数var_smoothing为GaussianNB做了什么在科学知识?
EN

Stack Overflow用户
提问于 2019-09-22 04:50:56
回答 2查看 4.9K关注 0票数 3

我知道这个参数var_smoothing以及如何调优它,但是我想从数学/统计方面解释一下它到底做了什么--我还没有在网上找到任何好的调优。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-05-30 05:00:34

高斯曲线可以作为“低通”滤波器,只允许接近其平均值的样本“通过”。在朴素贝叶斯的背景下,假设高斯分布本质上是给样本赋予更多的权值,使样本更接近分布均值。这可能合适,也可能不合适,这取决于您要预测的内容是否遵循正态分布。

变量var_smoothing人为地将用户定义的值添加到分布的方差(其默认值来自培训数据集)。这基本上是扩大(或“平滑”)曲线,并说明更多的样本是更远离分布的平均值。

票数 13
EN

Stack Overflow用户

发布于 2019-09-22 05:36:15

我查看了Scikit-学习存储库,发现了以下代码和语句:

代码语言:javascript
复制
# If the ratio of data variance between dimensions is too small, it
# will cause numerical errors. To address this, we artificially
# boost the variance by epsilon, a small fraction of the standard
# deviation of the largest dimension.


self.epsilon_ = self.var_smoothing * np.var(X, axis=0).max()

Stats中,高斯等概率分布函数依赖于σ^2(方差),且两个特征之间的方差越大,相关性越小,估计效果越好,因为模型所使用的朴素贝叶斯是一个iid (基本上假定特征是独立的)。

然而,在机器学习中,高值或低值向量或浮点操作会带来一些错误,如"ValueError:数学域错误“,这在机器学习中是非常普遍的。如果出现某种类型的数值错误,这个额外的变量可以作为一个可调整的限制。

现在,这将是有趣的探索,如果我们可以使用这个值,以进一步控制,如避免过度拟合,因为这个新的自我感应器是添加到方差(西格玛^2)或标准差(西格玛)。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58046129

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档