Share via


Microsoft Naive Bayes アルゴリズム

Microsoft Naive Bayes アルゴリズムは、Microsoft SQL Server Analysis Services で予測モデリング用に提供されている分類アルゴリズムです。Naive Bayes (単純ベイズ) という名前は、このアルゴリズムで Bayes の定理が使用されているものの、存在する可能性のある依存関係が考慮されないため、仮定が単純であると考えられることに由来しています。

このアルゴリズムは、他の Microsoft アルゴリズムよりも計算量が少ないので、入力列と予測可能列のリレーションシップを見つけるためのマイニング モデルを短時間で生成できます。このアルゴリズムを使用してデータの初期調査を行った後、この結果を適用して、計算量が多く精度が高い他のアルゴリズムを使用して追加のマイニング モデルを作成できます。

Adventure Works Cycle 社のマーケティング部門では、継続的な販売促進戦略として、潜在的な顧客を対象にチラシを発送することにしました。コストを削減するために、反応がありそうな顧客だけにチラシを送ります。同社では、人口統計情報と以前に発送したチラシへの反応に関する情報をデータベースに保存しています。このデータを使用して、潜在的な顧客と、特性が似ている顧客や以前に同社から商品を購入したことがある顧客を比較することにより、年齢や場所などの人口統計から、販売促進への反応をどのように予測できるかを調べます。特に、自転車を購入した顧客と購入していない顧客の違いを調べます。

マーケティング部門は、Microsoft Naive Bayes アルゴリズムを使用して、特定の顧客プロファイルの結果を短時間で予測できます。これにより、チラシに反応する可能性が最も高い顧客を特定できます。Business Intelligence Development Studio の Microsoft Naive Bayes ビューアを使用して、特にどの入力列がチラシへの前向きな反応に影響を与えているかを視覚的に調べることもできます。

アルゴリズムの動作

予測可能列で考えられる状態をそれぞれ指定すると、Microsoft Naive Bayes アルゴリズムによって、各入力列のすべての状態の確率が計算されます。次の図のように、Business Intelligence Development Studio の Microsoft Naive Bayes ビューアを使用して、アルゴリズムによる状態の分布状況を視覚的に確認できます。

Naive Bayes 分布で示された状態

予測可能列の各状態を指定すると、Microsoft Naive Bayes ビューアには、データセットの各入力列が一覧表示され、各列の状態の分布状況が表示されます。このビューを使用すると、予測可能列の状態の差異化に重要な役割を果たす入力列を特定できます。たとえば、この図に示されている "Commute Distance" 列で、通勤距離が 1.6 ~ 3.2 km の場合に顧客が自転車を購入する確率は 0.387 ですが、自転車を購入しない確率は 0.287 です。この例のアルゴリズムでは、通勤距離などの顧客特性から導き出した数値情報を使用して、顧客が自転車を購入するかどうかを予測しています。Microsoft Naive Bayes ビューアの使用方法については、「Microsoft Naive Bayes ビューアーを使用したマイニング モデルの表示」を参照してください。

Naive Bayes モデルに必要なデータ

Naive Bayes モデルのトレーニングで使用するデータを用意する際には、必要なデータ量やデータの使用方法など、このアルゴリズムにおける要件を把握しておいてください。

Naive Bayes モデルの要件は次のとおりです。

  • 単一キー列 : それぞれのモデルには、各レコードを一意に識別する数値列またはテキスト列が 1 つ含まれている必要があります。複合キーは使用できません。

  • 入力列 : Naive Bayes モデルでは、すべての列は不連続列または離散化列のいずれかである必要があります。列の分離については、「分離メソッド (データ マイニング)」を参照してください。Naive Bayes モデルでは、入力属性を互いに独立させることが重要です。

  • 少なくとも 1 つの予測可能列 : 予測可能な属性には、不連続値または分離された値を含める必要があります。予測可能列の値は、列間のリレーションシップを検索するための入力として扱うことができ、入力として処理されることがよくあります。

モデルの表示

モデルを参照するには、Microsoft Naive Bayes ビューアを使用します。ビューアには、予測可能な属性に対して入力属性がどのように関係するかが表示されます。ビューアでは、各クラスタの詳細なプロファイル、クラスタどうしを識別する属性の一覧、およびトレーニング データセット全体の特性も提供されます。詳細については、「Microsoft Naive Bayes ビューアーを使用したマイニング モデルの表示」を参照してください。

さらに詳細を知るには、「Microsoft 汎用コンテンツ ツリー ビューア (データ マイニング デザイナ)」でモデルを参照してください。モデルに格納される情報の種類の詳細については、「Naive Bayes モデルのマイニング モデル コンテンツ (Analysis Services - データ マイニング)」を参照してください。

予測の実行

モデルのトレーニング後、結果がパターンのセットとして保存されます。これを参照したり、これを使用して予測を実行したりできます。

クエリを作成して、予測可能な属性に新しいデータがどのように関連するかという予測を返すことも、モデルによって検出された相関関係を記述する統計情報を取得することもできます。

データ マイニング モデルに対するクエリの作成方法については、「データ マイニング モデルのクエリ (Analysis Services - データ マイニング)」を参照してください。Naive Bayes モデルでクエリを使用する方法の例については、「Naive Bayes モデルのクエリ (Analysis Services - データ マイニング)」を参照してください。

解説

  • Predictive Model Markup Language (PMML) を使用したマイニング モデルの作成がサポートされています。

  • ドリルスルーがサポートされています。

  • データ マイニング ディメンションの作成はサポートされていません。

  • OLAP マイニング モデルの使用がサポートされています。