ナイーブ・ベイズ分類器とは

ナイーブ・ベイズ分類器とは

ナイーブ・ベイズ分類器は、テキスト分類などの分類タスクに使用される教師あり機械学習アルゴリズムです。これらは、確率の原則を使用して分類タスクを実行します。

ナイーブ・ベイズは生成学習アルゴリズムのファミリーの一部であり、特定のクラスまたはカテゴリの入力の分布をモデル化することを意味します。ロジスティック回帰などの判別分類器とは異なり、クラス間を区別するためにどの特徴が最も重要であるかを学習しません。

トラック上を転がるボールの3Dデザイン

最新のAIニュース + インサイト 


AIやクラウドなどについて、専門家が厳選したインサイトやニュースを、Thinkニュースレターで毎週お届けします。

ベイズ統計の簡単な説明

ナイーブ・ベイズはベイズの定理に基づいているため、確率的分類器としても知られています。ベイズ統計の基本を説明せずにこのアルゴリズムを説明することは困難です。ベイズの法則としても知られるこの定理により、条件付き確率を「反転」することができます。条件付き確率は、他のイベントが発生した場合のイベントの確率を表し、次の式で表されます。

ベイズの定理は、後から取得される追加情報が初期確率に影響を与える一連のイベントの使用によって区別されます。これらの確率は、事前確率と事後確率として表されます。事前確率は、特定の条件下で文脈化される前のイベントの初期確率、または限界確率です。事後確率は、データの一部を観察した後の事象の確率です。

この概念を示す 統計学と機械学習の文献 (ibm.com外部へのリンク)でよく使われる例は、医療検査です。例えば、糖尿病かどうかを確認するために検査を受けるJaneさんという人がいると想像してください。糖尿病になる全体的な確率は5%だとしましょう。これが事前確率になります。ただし、検査で彼女に陽性の結果が出た場合、この追加情報を考慮して事前確率が更新され、それが事後確率になります。この例は、ベイズの定理を使って、以下の方程式で表現できます。

しかし、食事、年齢、家族歴などの他の変数を考慮すると、事前確率の知識は正確ではない可能性が高いため、通常はランダムサンプルからの確率分布を活用し、方程式をP(Y|X) = P(X|Y)P(Y) / P(X)と簡略化します。

ナイーブ・ベイズへの回帰

ナイーブ・ベイズ分類器は、いくつかの重要な仮定の下で動作するという点で異なる動作をするため「ナイーブ(単純)」という名前が付けられています。ナイーブ・ベイズモデルの予測子は条件付きで独立している、つまりモデル内の他の特徴とは無関係であると仮定します。また、すべての特徴が結果に等しく寄与すると仮定します。 これらの前提は、現実のシナリオでは成り立たないことがよくあります(たとえば、電子メール内の後続の単語はその前にある単語に依存します)が、計算処理が容易になることで分類問題を単純化します。つまり、各変数に必要な確率は1つだけになるため、モデルの計算が容易になります。この非現実的な独立性の仮定に反し、特にサンプルサイズが小さい場合、分類アルゴリズムは良好なパフォーマンスを発揮します。

この仮定を念頭に置いて、ナイーブ・ベイズ分類器の要素をより詳細に再分析できます。ベイズの定理と同様に、条件付き確率と事前確率を使用し、次の式を使用して事後確率を計算します。

ここで、ナイーブ・ベイズのアルゴリズムがどのように機能するかを説明するために、テキスト分類のユースケースを想像してみましょう。スパムフィルターの改善を検討しているEメールプロバイダーを想像してください。トレーニングデータは「スパム」または「非スパム」に分類されたEメールの単語で構成されます。そこから、クラスの条件付き確率と事前確率が計算され、事後確率が得られます。ナイーブ・ベイズ分類器は、特定のEメールに対するクラス群(例:「スパム」または「非スパム」)のうち最大の事後確率を持つクラスを返すことによって動作します。この計算は次の式で表されます。

各クラスは同じテキスト部分を参照しているため、実際にはこの式から分母を削除して、次のように単純化できます。

次に、トレーニングデータセットに基づく学習アルゴリズムの精度が、テストデータセットのパフォーマンスに基づいて評価されます。

クラス条件付き確率

これをもう少し詳しく理解するために、この式を構成する個々の部分をさらに深く見ていきます。クラス条件付き確率は、Eメール内の各単語における個別の可能性です。これらは、「スパム」または「非スパムではない」などのカテゴリーごとに各単語の頻度を決定することによって計算され、最尤推定法(MLE)とも呼ばれます。 この例では、「拝啓」というフレーズがあるかどうかを調べる場合、すべてのスパムEメールと非スパムEメール内でこれらの単語がどのくらいの頻度で出現するかを計算するだけです。これは、yが「拝啓」、xが「スパム」である場合、次の式で表すことができます。

事前確率

事前確率は、先ほどベイズの定理で説明したものとまったく同じです。トレーニングセットに基づいて、Eメールが「スパム」または「非スパム」かという全体的な確率を計算できます。クラスラベル「スパム」の事前確率は、次の式で表されます。

事前確率は、2つの値を乗算するときにクラス条件付き確率に対する「重み」として機能し、個々の事後確率が得られます。そこから、最大事後推定(MAP)が計算され、スパムか非スパムかのクラスラベルが割り当てられます。クラスラベル「スパム」の事前確率は、次の式で表されます。

あるいは、ナイーブ・ベイズは一般的に次の形式で使われるため、対数空間で表すこともできます。

ナイーブ・ベイズ分類器の評価

分類器を評価する方法の1つは、混同行列をプロットすることです。これにより、行列内に実際の値と予測値がプロットされます。通常、行は実際の値を表し、列は予測値を表します。多くのガイドでは、この図を次のような2x2プロットとして説明します。

ただし、0から9までのイメージを予測する場合は、10x10のプロットが作成されます。 分類器が4と9の画像を「混同」した回数を知りたい場合は、4行目と9 列目を確認するだけでよいのです。

ナイーブ・ベイズ分類器の種類

ナイーブ・ベイズ分類器の種類は1種類だけではありません。最も一般的なタイプは、特徴量の分布によって異なります。その中のいくつかを挙げます。

  • ガウシアン・ナイーブ・ベイズ(GaussianNB):ガウス分布で使用されるナイーブ・ベイズ分類器のバリエーションで、正規分布と連続変数を用いて表現します。このモデルは、各クラスの平均と標準偏差を求めることによって適合されます。
  • マルチノミアル・ナイーブ・ベイズ(MultinomialNB):このタイプのナイーブ・ベイズ分類器は、特徴が多項分布からのものであることを前提としています。このバリアントは頻度カウントなどの離散データを使用する場合に便利で、通常はスパム分類などの自然言語処理のユースケースに適用されます。
  • ベルヌーイ・ナイーブ・ベイズ(BernoulliNB):これはナイーブ・ベイズ分類器の別のバリエーションで、ブール変数、つまりTrueとFalse、または1と0などの2つの値を持つ変数を使用します。

これらはすべて、Scikit Learn Pythonライブラリー(別名:sklearn)(ibm.com外部へのリンク)から実装できます。

Mixture of Experts | ポッドキャスト

AIを解読する:1週間のニュースのまとめ

エンジニア、研究者、製品リーダーなど、世界をリードするパネリストがAIに関する最新のニュースとインサイトをお届けします。

ナイーブ・ベイズ分類器のメリットとデメリット

メリット

  • シンプルさ:他の分類器と比較して、ナイーブ・ベイズはパラメーターの推定が容易であるため、より単純な分類器と考えられています。そのため、データサイエンスおよび機械学習のコースで最初に学ぶアルゴリズムの1つです。
  • 大きなデータセットにも対応:ロジスティック回帰と比較すると、ナイーブ・ベイズは、条件付き独立性の仮定が成立する場合、かなり正確で高速かつ効率的な分類器であると考えられています。また、ストレージ要件も低くなります。
  • 高次元データを処理できる:文書分類などのユースケースでは、多数の次元が含まれる可能性があり、他の分類器では管理が困難になる可能性があります。

デメリット:

  • ゼロ頻度の対象:トレーニングセット内にカテゴリカル変数が存在しない場合、ゼロ頻度が発生します。例えば、クラス「スパム」が与えられた場合、単語「拝啓」の最尤推定量を見つけようとしているものの、単語「拝啓」がトレーニングデータに存在しないとします。この場合の確率はゼロになり、この分類子はすべての条件付き確率を乗算するため、事後確率もゼロになることを意味します。この問題を回避するには、ラプラス平滑化を利用するとよいでしょう。
  • 非現実的な核となる仮定:条件付き独立性の仮定は全体的には上手く機能するものの、この仮定は常に成り立つわけではないため、不正確な分類につながります。

ナイーブ・ベイズ分類器の応用

ナイーブ・ベイズは、他の多くのアルゴリズムと同様に、大量のデータを有用な情報に変換するデータ・マイニング・アルゴリズム群に属しています。ナイーブ・ベイズの応用には次のようなものがあります。

  • スパムのフィルタリング:スパムの分類は、論文で引用されているナイーブ・ベイズの最も一般的な応用例の1つです。このユースケースの詳細については、 Oreillyのフィルタリングの章(ibm.com外部へのリンク)を参照してください。
  • ドキュメントの分類:ドキュメントとテキストの分類は密接に関連しています。ナイーブ・ベイズのもう1つの一般的な使用例は、コンテンツ分類です。ニュースメディアウェブサイトのコンテンツカテゴリを想像してください。すべてのコンテンツカテゴリは、サイト上の各記事に基づいたトピック分類に基づいて分類できます。統計学者であるFederick MostellerとDavid Wallaceは、1963年の論文(ibm.com外部へのリンク)でベイズ推論を初めて適用したとされています。
  • センチメント分析:これもテキスト分類の一種ですが、センチメント分析は、特定の製品やブランドに関する意見や態度をよりよく理解し、定量化するために、一般的にマーケティングで活用されています。
  • 精神状態の予測:fMRIデータを用いて、ナイーブ・ベイズは人間のさまざまな認知状態を予測するために活用されています。この研究(ibm.com外部へのリンク)の目的は、特に脳損傷患者の隠れた認知状態をよりよく理解するためでした。
関連ソリューション
IBM watsonx.ai

AI開発者向けの次世代エンタープライズ・スタジオであるIBM watsonx.aiを使用して、生成AI、基盤モデル、機械学習機能をトレーニング、検証、チューニング、導入しましょう。わずかなデータとわずかな時間でAIアプリケーションを構築できます。

watsonx.aiをご覧ください。
人工知能ソリューション

業界をリードするIBMのAI専門知識とソリューション製品群を使用すれば、ビジネスにAIを活用できます。

AIソリューションはこちら
AIコンサルティングとサービス

AIの導入で重要なワークフローと業務を再構築し、エクスペリエンス、リアルタイムの意思決定とビジネス価値を最大化します。

AIサービスはこちら
次のステップ

AI開発ライフサイクル全体にわたる機能にワンストップでアクセスできます。使いやすいインターフェース、ワークフロー、業界標準のAPIやSDKを利用して、強力なAIソリューションを構築できます。

watsonx.aiの詳細はこちら デモを予約