ベイジアンネットワークの例[グラフィック表現あり]

公開: 2021-01-29

目次

序章

統計では、確率モデルを使用して変数間の関係を定義し、各変数の確率を計算するために使用できます。 多くの問題では、多数の変数があります。 このような場合、完全条件付きモデルでは、リアルタイムで計算するのが難しい可能性のある確率関数のすべてのケースをカバーするために、膨大な量のデータが必要になります。 ナイーブベイズなどの条件付き確率の計算を単純化するためのいくつかの試みがありましたが、それでも、いくつかの変数を大幅に削減するため、効率的であるとは証明されていません。

唯一の方法は、確率変数間の条件付き依存関係と他の場合の条件付き独立性を保持できるモデルを開発することです。 これは、ベイジアンネットワークの概念につながります。 これらのベイジアンネットワークは、各ドメインの確率モデルを効果的に視覚化し、ユーザーフレンドリーなグラフの形式で確率変数間の関係を研究するのに役立ちます。

世界のトップ大学からMLコース学びましょう。 マスター、エグゼクティブPGP、または高度な証明書プログラムを取得して、キャリアを迅速に追跡します。

ベイジアンネットワークとは何ですか?

定義上、ベイジアンネットワークは、確率計算にベイズ推定を使用する一種の確率的グラフィカルモデルです。 これは、変数のセットとその条件付き確率を有向非巡回グラフ(DAG)で表します。 これらは主に、発生したイベントを検討し、いくつかの考えられる既知の原因のいずれかが要因である可能性を予測するのに適しています。

ソース

前述のように、ベイジアンネットワークで指定された関係を利用することで、条件付き確率の同時確率分布(JPF)を得ることができます。 グラフの各ノードは確率変数を表し、円弧(または有向矢印)はノード間の関係を表します。 それらは、本質的に連続または離散のいずれかです。

上の図では、A、B、C、およびDは、グラフのネットワークで指定されたノードによって表される4つの確率変数です。 ノードBにとって、Aはその親ノードであり、Cはその子ノードです。 ノードCはノードAから独立しています。

ベイジアンネットワークの実装に入る前に、理解しなければならない確率の基本がいくつかあります。

ローカルマルコフ性

ベイジアンネットワークは、ローカルマルコフプロパティとして知られるプロパティを満たします。 それは、ノードがその親を与えられた場合、その非子孫から条件付きで独立していると述べています。 上記の例では、Dはその非子孫であるBから独立しているため、P(D | A、B)はP(D | A)に等しくなります。このプロパティは、同時分布を単純化するのに役立ちます。 ローカルマルコフプロパティは、マルコフプロパティに従うと言われる変数の周りのランダムフィールドであるマルコフ確率場の概念につながります。

条件付き確率

数学では、イベントAの条件付き確率は、別のイベントBがすでに発生している場合にイベントAが発生する確率です。 簡単に言うと、p(A | B)は、イベントBが発生した場合に、イベントAが発生する確率です。 ただし、AとBの間には2種類のイベントの可能性があります。これらは、依存イベントまたは独立イベントのいずれかです。 それらのタイプに応じて、条件付き確率を計算する2つの異なる方法があります。

  • AとBが依存イベントである場合、条件付き確率はP(A | B)= P(AとB)/ P(B)として計算されます。
  • AとBが独立したイベントである場合、条件付き確率の式は次のように与えられます。P(A | B)= P(A)

同時確率分布

ベイジアンネットワークの例に入る前に、同時確率分布の概念を理解しましょう。 3つの変数a1、a2、a3について考えてみます。 定義上、a1、a2、およびa3のすべての異なる可能な組み合わせの確率は、その同時確率分布と呼ばれます。

P [a1、a2、a3、…..、an]がa1からanまでの次の変数のJPDである場合、次のようなさまざまな項の組み合わせとして同時確率分布を計算するいくつかの方法があります。

P [a1、a2、a3、…..、an] = P [a1 | a2、a3、…..、an] * P [a2、a3、…..、an]

= P [a1 | a2、a3、…..、an] * P [a2 | a3、…..、an]….P [an-1 | an] * P [an]

上記の方程式を一般化すると、同時確率分布は次のように書くことができます。

P(X i | X i-1 、………、X n )= P(X i | Parents(X i ))

ベイジアンネットワークの例

ここで、簡単な例を使用して、ベイジアンネットワークのメカニズムとその利点を理解しましょう。 この例では、学生が与えたばかりの試験の点数( m )をモデル化するタスクが与えられていると想像してみてください。 以下のベイジアンネットワークグラフから、マークが他の2つの変数に依存していることがわかります。 彼らです、

  • 試験レベル( e )–この離散変数は、試験の難易度を示し、2つの値(簡単な場合は0、難しい場合は1)があります。
  • IQレベル( i )–これは、生徒の知能指数レベルを表し、2つの値(低の場合は0、高の場合は1)を持つ離散的な性質もあります。

さらに、学生のIQレベルは、学生の適性スコア( s )である別の変数にもつながります。 今、学生が得点したマークで、彼は特定の大学への入学を確保することができます。 大学に入学する確率分布( a )も以下のとおりです。

上のグラフでは、与えられた5つの変数の確率分布値を表すいくつかの表が表示されています。 これらのテーブルは、条件付き確率テーブルまたはCPTと呼ばれます。 以下に示すCPTのいくつかのプロパティがあります–

  • 特定の変数で考えられるすべてのケースが網羅的であるため(すべての可能性を表す)、各行のCPT値の合計は1に等しくなければなりません。
  • 本質的にブール値である変数にk個のブール値の親がある場合、CPTでは2Kの確率値があります。

問題に戻って、最初に上記の表で発生している可能性のあるすべてのイベントをリストします。

  1. 試験レベル(e)
  2. IQレベル(i)
  3. 適性スコア(s)
  4. マーク(m)
  5. 入場料(a)

これらの5つの変数は、条件付き確率テーブルを使用してベイジアンネットワーク形式の有向非巡回グラフ(DAG)の形式で表されます。 ここで、5つの変数の同時確率分布を計算するために、式は次のように与えられます。

P [a、m、i、e、s] = P(a | m)。 P(m | i、e)。 P(i)。 P(e)。 P(s | i)

上記の式から、

  • P(a | m)は、試験で採点した点数に基づいて、学生が入学する条件付き確率を示します。
  • P(m | i、e)は、IQレベルと試験レベルの難易度を考慮して生徒が採点する点数を表します。
  • P(i)とP(e)は、IQレベルと試験レベルの確率を表します。
  • P(s | i)は、IQレベルが与えられた場合の、学生の適性スコアの条件付き確率です。

以下の確率を計算すると、ベイジアンネットワーク全体の同時確率分布を見つけることができます。

同時確率分布の計算

ここで、2つのケースのJPDを計算してみましょう。

ケース1:試験レベルが難しいにもかかわらず、IQレベルと適性スコアが低い学生が試験に合格し、大学への入学を確保できる確率を計算します。

上記の文章題ステートメントから、同時確率分布は次のように書くことができます。

P [a = 1、m = 1、i = 0、e = 1、s = 0]

上記の条件付き確率テーブルから、指定された条件の値が式に入力され、次のように計算されます。

P [a = 1、m = 1、i = 0、e = 0、s = 0] = P(a = 1 | m = 1)。 P(m = 1 | i = 0、e = 1)。 P(i = 0)。 P(e = 1)。 P(s = 0 | i = 0)

= 0.1 * 0.1 * 0.8 * 0.3 * 0.75

= 0.0018

ケース2:別のケースでは、学生が高いIQレベルと適性スコアを持っている確率を計算します。試験は簡単ですが合格に失敗し、大学への入学を保証しません。

JPDの式は次の式で与えられます。

P [a = 0、m = 0、i = 1、e = 0、s = 1]

したがって、

P [a = 0、m = 0、i = 1、e = 0、s = 1] = P(a = 0 | m = 0)。 P(m = 0 | i = 1、e = 0)。 P(i = 1)。 P(e = 0)。 P(s = 1 | i = 1)

= 0.6 * 0.5 * 0.2 * 0.7 * 0.6

= 0.0252

したがって、このようにして、ベイジアンネットワークと確率テーブルを使用して、発生する可能性のあるさまざまなイベントの確率を計算できます。

また読む:機械学習プロジェクトのアイデアとトピック

結論

スパムフィルタリング、セマンティック検索、情報検索など、ベイジアンネットワークには無数のアプリケーションがあります。 たとえば、特定の症状がある場合、病気の原因となる他のいくつかの要因で病気が発生する確率を予測できます。 したがって、ベイジアンネットワークの概念は、実際の例を使用した実装とともに、この記事で紹介されています。

機械学習とAIを習得したい場合は、IIIT-Bとリバプールジョンムーア大学の機械学習とAIに関する上級コースでキャリアを向上させてください。

ベイジアンネットワークはどのように実装されていますか?

ベイジアンネットワークは、各ノードが確率変数を表すグラフィカルモデルです。 各ノードは、有向アークによって他のノードに接続されています。 各アークは、子が与えられた場合の親の条件付き確率分布を表します。 有向エッジは、親がその子に与える影響を表します。 ノードは通常、いくつかの実世界のオブジェクトを表し、アークはそれらの間の物理的または論理的な関係を表します。 ベイジアンネットワークは、自動音声認識、ドキュメント/画像分類、医療診断、ロボット工学などの多くのアプリケーションで使用されています。

ベイジアンネットワークが重要なのはなぜですか?

ご存知のように、ベイジアンネットワークは機械学習と統計の重要な部分です。 データマイニングや科学的発見に使用されます。 ベイジアンネットワークは、確率変数を表すノードと直接的な影響を表すアークを持つ有向非巡回グラフ(DAG)です。 ベイジアンネットワークは、テキスト分析、不正検出、癌検出、画像認識などのさまざまなアプリケーションで使用されます。この記事では、ベイジアンネットワークでの推論について説明します。 ベイジアンネットワークは、過去を分析し、未来を予測し、意思決定の質を向上させるための重要なツールです。 ベイジアンネットワークは統計に端を発していますが、現在では、リサーチサイエンティスト、オペレーションズリサーチアナリスト、産業エンジニア、マーケティングプロフェッショナル、ビジネスコンサルタント、さらにはマネージャーを含むすべての専門家によって使用されています。

スパースベイジアンネットワークとは何ですか?

スパースベイジアンネットワーク(SBN)は、条件付き確率分布がスパースグラフである特殊な種類のベイジアンネットワークです。 変数の数が多い場合や観測数が少ない場合は、SBNを使用するのが適切な場合があります。 一般に、ベイジアンネットワークは、さまざまな要因を条件として観測またはイベントを説明することに関心がある場合に最も役立ちます。