Naive Bayesについて

Naive Bayesアルゴリズムは条件付き確率に基づいています。これにはBayesの定理(履歴データの値の組合せと値の頻度を数えて確率を計算する式)が使用されます。

Bayesの定理では、すでに発生している別のイベントの確率を前提として、あるイベントの発生確率を見つけます。Bが従属イベントを、Aが事前イベントを表す場合、Bayesの定理は次のように示すことができます。

ノート:

Prob(B given A) = Prob(A and B)/Prob(A)

Aを前提としたBの確率は、AおよびBが一緒に発生するケースの数を、Aが単独で発生するケースの数で除算して計算されます。

例7-4 Bayesの定理を使用した消費の増加予測

21才未満の顧客が消費を増やす可能性を特定する必要があるものとします。この場合、事前条件(A)が「21未満」となり、従属条件(B)が「消費を増やす」となります。

トレーニング・データ内に100人の顧客が含まれていて、そのうち25人が消費を増やしている21才未満の顧客である場合、次のように計算されます。

Prob(A and B) = 25%

100人の顧客のうち75人が21才未満である場合、次のように計算されます。

Prob(A) = 75%

この場合、Bayesの定理では、21才未満の顧客の33% (25/75)が消費を増やす可能性があると予測されます。

両方の条件が一緒に発生するケースは、組(pairwise)と呼ばれます。例7-4では、すべてのケースの25%が組です。

事前イベントのみが発生するケースは、単一(singleton)と呼ばれます。例7-4では、すべてのケースの75%が単一です。

次の図は、Bayesの定理で使用される条件の関係を視覚的に表しています。

図7-11 Bayesの定理の条件付き確率

図7-11の説明が続きます
「図7-11 Bayesの定理の条件付き確率」の説明

説明のために、例7-4および図7-11では、1つの独立イベントに基づく従属イベントを示しています。実際には、Naive Bayesアルゴリズムでは通常、多数の独立イベントを考慮する必要があります。例7-4では、年齢の他に、収入、教育レベル、性別、店舗の場所などの要素を考慮する場合があります。

Naive Bayesでは、各予測子は他の予測子とは条件的に独立していると想定されます。所定のターゲット値に関して、各予測子の分布は他の予測子とは独立しています。この非依存性という前提によって、(たとえ前提が満たされていない場合でも)モデルの予測精度が極端に低くなることがなくなり、またこの前提が、高速で計算可能なアルゴリズムと扱いにくいアルゴリズムの違いになっています。

特定の予測子の分布が、明らかに、より大きな母集団を代表していない場合があります。たとえば、トレーニング・データ内に21才未満の顧客が少数しか存在しないが、広範な顧客ベースには、この年齢グループの顧客が実際に多数存在する場合などが考えられます。これを補正するには、モデルのトレーニングの際に、事前確率を指定します。