Ste*_*hen 0 math machine-learning probability scikit-learn naivebayes
我指的是有关朴素贝叶斯的以下页面:
http://scikit-learn.org/stable/modules/naive_bayes.html
特别是以 y-hat 开头的方程。我想我通常理解之前的方程,但我不理解该行上的“arg max y”符号。这是什么意思?
函数的max
是输出的最大值,而argmax
函数的 是输入的值,即“参数”的最大值。
在你的例子的等式中:
y_hat
是 的值y
,即最大化右侧表达式的类标签。
这里P(y)
通常是训练集中类别的比例y
,也称为“先验”,并且是如果真实类别确实为 时P(x_i | y)
观察到特征值的概率,也称为“可能性”。x_i
y
为了更好地理解该产品P(x_i | y)
,请考虑一个示例,其中您尝试将一系列抛硬币分类为来自训练示例A
中正面朝上的硬币50%
,还是来自训练示例中B
正面朝上的硬币。66.7%
这里每个个体都是硬币(其中是或)落地(其中是正面或反面)P(x_i | y_j)
的概率。y_j
j
a
b
x_i
x_i
Training set:
THH A
HTT A
HTH A
TTH A
HHH B
HTH B
TTH B
Test set:
HHT ?
Run Code Online (Sandbox Code Playgroud)
因此,该序列HHT
具有0.667*0.667*0.333 = 0.148
给定 coin 的可能性B
,但只有0.5*0.5*0.5 = 0.125
给定 coin 的可能性A
。然而,我们估计了57%
coin 的先验A
,因为A
出现在4/7
训练示例中,所以我们最终会预测该序列来自 coin A
,since 0.57*0.125 > 0.43*0.148
。这是因为我们更有可能从 coin 开始A
,因此 coinA
有更多机会产生一些不太可能的序列。
如果 硬币A
和 的先验B
都是50%
,那么我们自然会预测 硬币B
,HHT
因为这个序列显然具有给定硬币 的最高可能性B
。