dkv*_*dkv 8 classification machine-learning naivebayes
我试图理解为什么朴素贝叶斯分类器的特征数量可以线性扩展,与没有天真假设的相同想法相比.我理解分类器是如何工作的以及它是如此"天真"的.我不清楚为什么天真的假设给我们线性缩放,而提升这个假设是指数的.我正在寻找一个示例的演示,该示例在具有线性复杂性的"天真"设置下显示算法,并且没有该假设的相同示例将演示指数复杂性.
lej*_*lot 11
这里的问题在于数量
P(x1, x2, x3, ..., xn | y)
Run Code Online (Sandbox Code Playgroud)
你必须估计.当你假设"天真"(特征独立)时,你会得到
P(x1, x2, x3, ..., xn | y) = P(x1 | y)P(x2 | y) ... P(xn | y)
Run Code Online (Sandbox Code Playgroud)
你可以P(xi | y)独立估计每一个.以自然的方式,这种方法线性扩展,因为如果你添加另一个k特征,你需要估计另一个k概率,每个使用一些非常简单的技术(比如计算具有给定特征的对象).
现在,没有天真,你没有任何分解.因此,您必须跟踪表单的所有概率
P(x1=v1, x2=v2, ..., xn=vn | y)
Run Code Online (Sandbox Code Playgroud)
对于每个可能的值vi.在最简单的情况下,vi只是"真"或"假"(事件发生与否),这已经给你2^n概率估计(每个可能的"真"和"假"赋值给一系列n布尔变量).因此,您的算法复杂度呈指数级增长.然而,这里最大的问题通常不是计算问题 - 而是缺乏数据.由于存在2^n估计概率,因此需要多于2^n数据点来对所有可能事件进行任何估计.在现实生活中,您将不会遇到大小为10,000,000,000,000点的数据集......这是使用这种方法的40个要素的一些必需(唯一!)点.
小智 7
糖果选择
在孟买的郊区,住着一位老奶奶,她对生活的量化观点为她赢得了名字统计奶奶.她独自一人住在一个巨大的宅邸里,在那里她进行了良好的统计分析,避开了大众媒体和所谓权威人士作为常识兜售的无可救药的瑕疵.
每年她的生日,她的整个家庭都会去看望她并留在豪宅.儿子,女儿,他们的配偶,孙子孙女.每年都会大肆宣传,并且大肆吹嘘.但是奶奶最喜欢的是和她的孙子们见面并和他们一起玩.她总共有十个孙子孙女,他们都是10岁左右,她会称之为" 随机变量 ".
每年,奶奶都会给每个孩子送糖果.奶奶有一个装满十种不同糖果的大盒子.她会给每个孩子一个糖果,因为她不想破坏他们的牙齿.但是,由于她非常爱这些孩子,她花了很大力气决定向哪个孩子赠送哪种糖果,以便最大化他们的总体幸福感(最大可能性估计,就像她所说的那样).
但对奶奶来说这不是一件容易的事.她知道每种类型的糖果都有可能让孩子开心.对于不同的糖果类型和不同的孩子,这种可能性是不同的.Rakesh比绿色糖果更喜欢红色糖果,而Sheila更喜欢橙色糖果.
10个孩子中的每一个都对10种糖果中的每一种都有不同的偏好.
此外,他们的偏好在很大程度上取决于对奶奶未知(隐藏变量)的外部因素.
如果Sameer在前往豪宅的路上看到一座蓝色建筑,他想要一块蓝色糖果,而Sandeep总是想要那天与他衬衫颜色相匹配的糖果.但最大的挑战是他们的幸福取决于其他孩子们得到的糖果!如果Rohan得到一个红色糖果,那么Niyati也会想要一个红色的糖果,而其他任何东西都会让她哭到她母亲的怀抱中(有条件的依赖).Sakshi总是想要大多数孩子得到的东西(正相关),而如果没有其他人得到他收到的那种糖果,那么Tanmay会最开心(负相关).奶奶很久以前就断定她的孙子孙女完全相互依赖.
奶奶选择合适的糖果对于奶奶来说,这在计算上是一项艰巨的任务.有太多条件需要考虑,她无法简化计算.每年在她生日之前,她会花几天时间计算糖果的最佳分配,通过为所有孩子一起列举糖果的所有配置(这是一项成倍增长的任务).她变老了,任务变得越来越艰难.她曾经觉得她会在找出最佳的糖果选择之前死去,这会让她的孩子一下子最开心.
但有趣的事情发生了.随着岁月的流逝和孩子们的成长,他们终于从青少年身边走过,变成了独立的成年人.他们的选择变得越来越不依赖于彼此,并且更容易弄清楚每个人最喜欢的糖果是什么(他们都喜欢糖果和奶奶).
奶奶很快意识到这一点,她开心地称他们为" 独立随机变量 ".她更容易找出最佳的糖果选择 - 她只需要一次想到一个孩子,并且对于每个孩子,为这个孩子分配10种糖果类型中的每一种的幸福概率.然后,她会选择那个孩子幸福概率最高的糖果,而不必担心她会分配给其他孩子的东西.这是一项非常简单的任务,奶奶终于能够做到对了.
那一年,孩子们终于最幸福了,奶奶在她的100岁生日派对上度过了愉快的时光.那天过了几个月,奶奶去世了,脸上带着微笑,手里紧紧抓着Sheldon Ross的副本.
摘要:在统计建模中,具有相互依赖的随机变量使得很难找到每个变量的最佳值分配,从而最大化集合的累积概率.
您需要枚举所有可能的配置(变量数量呈指数增长).但是,如果变量是独立的,则很容易选择最大化每个变量概率的单个分配,然后组合各个分配以获得整个集合的配置.
在Naive Bayes中,您假设变量是独立的(即使它们实际上不是).这简化了您的计算,并且事实证明,在许多情况下,它实际上给出的估计值与您从更多(计算上)昂贵的模型中获得的估计值相比较,该模型考虑了变量之间的条件依赖性.
我没有在这个答案中包含任何数学,但希望这使得更容易掌握朴素贝叶斯背后的概念,并自信地接近数学.(维基百科页面是一个好的开始:朴素贝叶斯).
为什么它"天真"?
朴素贝叶斯分类器假设X | YX | Y正态分布,在XX的任何分量之间具有零协方差.由于这对任何真正的问题都是完全不可信的假设,我们称之为天真.
Naive Bayes将做出以下假设:
如果你喜欢酱菜,你喜欢冰淇淋,天真的贝叶将独立,给你一个泡椒冰淇淋,并认为你会喜欢它.
这根本不是真的.
有关数学示例,请参阅:https://www.analyticsvidhya.com/blog/2015/09/naive-bayes-explained/