幾何分布PMF計算機
初めての成功がちょうどk回目に起きる確率が分かります。1回の成功確率が0.25なら、2回続けて失敗した後の3回目で初めて成功する確率は0.140625です。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 電力(W)
- 0.25
- K
- 3
- 確率
- 0.140625
幾何分布PMF計算機は、独立した試行を繰り返したとき、初めての成功がちょうどk回目に起こる確率を求めます。一定の成功確率pと正の試行回数kを入力すると、P(X = k) = (1 - p)^(k - 1) × pを適用します。確率論の学習、再試行の分析、品質検査、同じ成功確率で初成功まで繰り返す工程に役立ちます。計算は決定論的で、シミュレーションは使わず、有効範囲外の確率はエラーとして扱います。
幾何分布のPMFが表す内容を理解します
幾何分布に従う確率変数は、初めて成功するまでに必要な独立試行の回数を表します。各試行の成功確率は同じpであり、失敗確率は1からpを引いた値です。初成功がk回目に起こるには、最初のkマイナス1回がすべて失敗し、その次に成功しなければなりません。
試行が独立しているため、これらの確率を掛け合わせることができ、確率質量関数P(X = k) = (1 - p)^(k - 1) × pが得られます。この計算機では、成功した試行そのものをkに含める方式を採用しているため、有効な試行番号は1から始まります。一方、最初の成功までの失敗回数を数え、0から始める方式を採用する教科書もあります。
参照資料が後者の方式であれば、失敗回数に1を加えた値をkとして入力してください。たとえばpが0.25、kが3の場合は、2回の失敗の後に成功する必要があります。結果は0.75の2乗に0.25を掛けた0.140625です。
これは3回目までに少なくとも1回成功する確率ではなく、ちょうど3回目に初めて成功する確率です。PMFは1つの厳密な結果を表し、累積確率は複数の試行番号をまとめるため、この違いは重要です。
pとkを正しく入力して結果を読み取ります
pには、0より大きく1以下の有限な数値を指定してください。0.2という小数は、各試行で成功する確率が20パーセントであることを示します。成功確率が0の過程では初めての成功が起こらないため、0は認められません。
また、1より大きい値や0より小さい値も確率ではありません。kには正の整数を指定してください。試行は試行1、試行2というように離散的に数えるためです。
小数、0、負の値、無限大、未入力の項目には、誤解を招く結果ではなく入力エラーを返します。応答では正規化したpとkを再掲し、probabilityを数値として返すほか、使用した式も示します。結果が0.140625なら、指定した試行で初成功が起こる確率は14.0625パーセントです。
pが1なら最初の試行で必ず成功するため、kが1のときは1、それより後では0になります。pが小さい場合やkが非常に大きい場合、数学上の確率が極端に小さく、浮動小数点演算では0と表示されることがあります。これは乱数によるものではなく数値のアンダーフローであり、pが0と1の間なら事象は理論上可能です。
関連する分布と混同せずに結果を活用します
試行が独立し、成功確率が一定で、初成功がいつ起こるかを問う場合に幾何分布のPMFを使用してください。品質管理では、検査対象ごとの欠陥確率が一定かつ独立している場合、最初の不良部品が見つかる品目番号をモデル化できます。教育では、硬貨投げ、フリースロー、電話、機械の起動などの問題を確認できます。
試行ごとにpが変化する場合、試行同士が影響する場合、または非復元抽出によって確率が大きく変わる場合には、このPMFを使用しないでください。二項分布との違いにも注意が必要です。二項分布は固定回数の試行に含まれる所定数の成功を数えますが、幾何分布は最初の成功で概念上停止し、その試行番号に確率を割り当てます。
k回目までに成功する確率が必要なら、単一のPMF値ではなく累積分布1 - (1 - p)^kを使用してください。平均待ち時間が必要なら、幾何分布の平均試行回数は1/pです。正確な試行、累積上限、平均という問いを分けることで、もっともらしい数値が別の実務問題や学習問題に答えてしまうことを防げます。
活用例
確率論の演習を確認します
成功までの試行回数という明確な方式と決定論的な式で、幾何分布PMFの演習を検算します。
最初の検出をモデル化します
独立して発生する最初の欠陥が品目kで発見される確率を求めます。
よくある質問
kに0や小数を指定できますか?
できません。 この方式では成功した試行を数えるため、kは1から始まる正の整数である必要があります。
k回目までの成功確率を計算しますか?
いいえ。 ちょうどk回目に初めて成功する確率です。k回目までの成功には累積式1 - (1 - p)^kを使います。
教科書が最初の成功までの失敗回数で数えている場合は?
その失敗回数に1を足してからkに入力してください。この計算機は成功した試行そのものを数えるのでkは1から始まりますが、失敗回数をゼロから数える教科書もあります。
0.140625という結果はどう読みますか?
pが0.25のとき、初めての成功がちょうど3回目に起きる確率が14.0625パーセントという意味です。確率0.75の失敗が2回続き、その後に成功します。
pにはどの範囲の値を入力できますか?
ゼロより大きく1以下の数を入力します。0.2なら毎回20パーセントの成功確率です。ゼロは、成功する見込みがなければ最初の成功が起こりえないため受け付けません。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/stat/geometric-pmf \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"p":0.25,"k":3}'const res = await fetch("https://api.kit.forhosting.com/stat/geometric-pmf", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"p": 0.25,
"k": 3
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/stat/geometric-pmf",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"p": 0.25,
"k": 3
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/stat/geometric-pmf", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"p":0.25,"k":3}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"p":0.25,"k":3}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/stat/geometric-pmf", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"p": 0.25,
"k": 3
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "stat.geometric_pmf",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
pとkを正しく入力して結果を読み取ります
APIリクエストの料金は$0.002で、ブラウザー版も同じ決定論的な関数を実行します。
関連する分布と混同せずに結果を活用します
ソフトウェア開発では、各再試行の成功率がおおむね同じで、以前の失敗が後の挙動を変えないなら、リクエストが初めて完了する正確な再試行回数をモデル化できます。
連携の活用例
特定の再試行を分析します
独立したリクエストが特定の再試行で初めて成功する確率を見積もります。
技術的な質問
どの式を使用しますか。
k = 1, 2, 3, …に対してP(X = k) = (1 - p)^(k - 1) × pを使用します。
pに指定できる範囲は何ですか。
pは0より大きく1以下でなければなりません。0、負の数、1を超える値にはinvalid_inputを返します。
APIリクエストの料金はいくらですか。
成功したAPIリクエスト1回につき$0.002です。ブラウザー計算機は同じ決定論的ロジックを端末内で実行します。