0Pricing
Learn AI with Python · レッスン

確率とベイズの定理

同時確率、条件付き確率、独立性、実際の AI 例を用いたベイズの定理を学びます。

「確率とベイズの定理」はCoddyKit上の無料Learn AI with Pythonレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはLearn AI with Python学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Learn AI with Pythonコースには全4レッスンが含まれています。

確率の基礎

確率は、ある事象がどの程度起こりやすいかを表す0から1までの数値です。条件付き確率P(A|B)は、Bが起こった場合にAが起こる確率です。

条件付き確率

P(A|B) = P(A and B) / P(B)です。条件付けを行うと、Bが真となるケースに標本空間を絞り込めます。

p_a_and_b = 0.12
p_b = 0.30
print(p_a_and_b / p_b)   # P(A | B) = 0.4

ベイズの定理

ベイズの定理は条件付き確率を逆向きにします。P(A|B) = P(B|A) * P(A) / P(B)です。証拠Bを観測した後、事前の信念P(A)を事後の信念に更新します。

各要素の名称

事前確率 P(A):証拠を得る前の信念です。尤度 P(B|A):Aが証拠をどの程度うまく説明するかです。事後確率 P(A|B):更新後の信念です。エビデンス P(B):正規化に使う合計値です。

全確率の法則

分母P(B)は、すべてのケースについて合計して求めます。P(B) = P(B|A)*P(A) + P(B|not A)*P(not A)です。これにより、証拠を既知の要素に分解できます。

p_a = 0.01            # prior
p_b_given_a = 0.99   # likelihood
p_b_given_not_a = 0.05
p_not_a = 1 - p_a
p_b = p_b_given_a * p_a + p_b_given_not_a * p_not_a
print(p_b)

医療検査の例

ある病気は人口の1パーセントに影響します。ある検査の感度は99パーセントですが、偽陽性率は5パーセントです。検査結果が陽性だった場合、病気にかかっている確率はいくらでしょうか。

posterior = (p_b_given_a * p_a) / p_b
print(round(posterior, 3))   # about 0.167

意外な結果

検査の正確度が99パーセントであっても、陽性結果が出たときに病気である確率はわずか17パーセントです。まれな事象のベースレート(1パーセントの事前確率)が大きく影響する、典型的なベースレートの誤謬です。

独立性

2つの事象が独立しているとは、P(A|B) = P(A)が成り立つ場合です。このとき、Bを観測してもAについて何も分かりません。また、P(A and B) = P(A) * P(B)が成り立ちます。

p_a, p_b = 0.5, 0.5
print(p_a * p_b)   # 0.25 if independent (e.g. two fair coins)

モンティ・ホール問題

3つのドアのうち1つの後ろに車があります。1つを選ぶと、司会者は別のドアを開けてヤギを見せ、選択を変えるか尋ねます。直感に反して、選択を変えると2/3の確率で勝てます。

モンティ・ホールのシミュレーション

シミュレーションでこの数学的な結果を確認できます。最初の選択が間違っていた場合は必ず選択変更が勝利し、それは3回に2回起こります。

import random
def trial(switch):
    car = random.randint(0, 2)
    pick = random.randint(0, 2)
    if switch:
        return pick != car   # switching wins if first pick was wrong
    return pick == car

wins = sum(trial(True) for _ in range(100000))
print(wins / 100000)   # about 0.667

選択を変えると勝てる理由

最初の選択が正しい確率は1/3です。司会者がドアを開けることで、残りの2/3の確率が、開けられていない1つのドアに集約されます。そのため、選択を変えるとその2/3の確率を得られます。

理解度チェック

確率に関する推論を確認しましょう。

まとめ

確率の要点:

  • 条件付き確率:P(A|B) = P(A and B)/P(B)
  • ベイズの定理:P(A|B) = P(B|A)P(A)/P(B)で事前確率を事後確率に更新します
  • 全確率の法則でP(B)を分解します
  • ベースレートの誤謬:正確な検査でも、まれな条件では事後確率が低くなります
  • モンティ・ホール問題:選択を変えると2/3の確率で勝てます

よくある質問

「確率とベイズの定理」レッスンは無料ですか?

はい。「確率とベイズの定理」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Learn AI with Pythonコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Learn AI with Pythonコースには全4レッスンが含まれています。

「確率とベイズの定理」で何を学びますか?

同時確率、条件付き確率、独立性、実際の AI 例を用いたベイズの定理を学びます。 ブラウザで直接実行するハンズオンコードでLearn AI with Pythonを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Learn AI with Pythonを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのLearn AI with Pythonは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。

「確率とベイズの定理」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このLearn AI with Pythonレッスンでコードを書いて実行できますか?

はい。すべてのLearn AI with Pythonレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. 記述統計と分布
  2. 確率とベイズの定理
  3. 仮説検定
  4. 相関と共分散
← Learn AI with Pythonに戻る