这个 arg max 符号在朴素贝叶斯的 scikit-learn 文档中意味着什么?

Ste*_*hen 0 math machine-learning probability scikit-learn naivebayes

我指的是有关朴素贝叶斯的以下页面:

http://scikit-learn.org/stable/modules/naive_bayes.html

特别是以 y-hat 开头的方程。我想我通常理解之前的方程,但我不理解该行上的“arg max y”符号。这是什么意思?

Imr*_*ran 5

函数的max是输出的最大值,而argmax函数的 是输入的值,即“参数”的最大值。

最大与argmax

在你的例子的等式中:

在此输入图像描述

y_hat是 的值y,即最大化右侧表达式的类标签。

这里P(y)通常是训练集中类别的比例y,也称为“先验”,并且是如果真实类别确实为 时P(x_i | y)观察到特征值的概率,也称为“可能性”。x_iy

为了更好地理解该产品P(x_i | y),请考虑一个示例,其中您尝试将一系列抛硬币分类为来自训练示例A中正面朝上的硬币50%,还是来自训练示例中B正面朝上的硬币。66.7%这里每个个体都是硬币(其中是或)落地(其中是正面或反面)P(x_i | y_j)的概率。y_jjabx_ix_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%,那么我们自然会预测 硬币BHHT因为这个序列显然具有给定硬币 的最高可能性B