サイコロを1回振ったとき、いくらの賞金がもらえると「期待」できるでしょうか。出目そのものは1から6までバラつき、1回ごとには予測できません。けれど何千回も振って平均をとると、その値は不思議なほど安定して $3.5$ に近づきます。この「ならすと落ち着く先」を一つの数で表したものが、確率変数の期待値です。
期待値は、機械学習や統計学を学ぶうえで避けて通れない最重要概念の一つです。たとえば、回帰モデルの誤差を測る平均二乗誤差は「誤差の二乗の期待値」ですし、強化学習のエージェントが最大化しようとする「収益(リターン)」も将来報酬の期待値です。さらに、確率変数のモーメント(平均・分散・歪度)はすべて期待値の言葉で定義されます。期待値を正しく理解しておくことは、後で出会うあらゆる確率的な議論の土台になります。
また、確率変数 $X$ そのものの期待値だけでなく、勉強を進めると $X^2$ の期待値や $X + Y$ の期待値、さらには $g(X)$ という関数の期待値も登場します。これらは「結局なにを計算しているのか」と頭を悩ませがちなポイントです。本記事では、こうした拡張も含めて、期待値という概念を直感から実装まで一気通貫で解説していきます。
本記事の内容
- 確率変数 $X$ の期待値 $\mathbb{E}[X]$ の定義と「重心」という直感
- 離散・連続それぞれの期待値の定義と計算
- 期待値の線形性 $\mathbb{E}[aX+bY] = a\mathbb{E}[X] + b\mathbb{E}[Y]$ の導出
- 関数の期待値を簡単に計算する LOTUS(無意識な統計学者の法則)
- 独立なときの積の期待値、条件付き期待値、大数の法則との関係
- Pythonでの実装と、期待値の実用的な応用例
前提知識
この記事を読む前に、以下の概念を押さえておくと理解が深まります。
- 確率分布(確率質量関数 $p(x)$、確率密度関数 $p(x)$)の基礎
- 総和記号 $\sum$ と積分 $\int$ の基本的な扱い
期待値を理解したら、次のステップとして分散(確率変数の分散)に進むのが自然な流れです。
期待値とは — 「平均的に期待される値」の直感
確率変数の期待値とは、確率分布の性質を表す代表値の一つです。よく確率変数が取るであろうと期待される値や、確率変数の平均値などと表現されます。
もっと直感的に言えば、期待値とはその確率変数から無限にサンプルを取ったときの、サンプル平均が落ち着く先の値です。冒頭のサイコロの例で言えば、何度も振って出目を平均していくと $3.5$ に近づく、その $3.5$ が期待値です。
ここで「平均値」という言葉に注意が必要です。私たちが日常で計算する平均(算術平均)は、すでに手元にある有限個のデータを足して個数で割ったものです。一方、期待値は確率分布そのものが持つ理論的な平均であり、データを取る前から分布の形だけで決まっています。期待値は「真の平均」、サンプル平均は「その推定値」だと考えると、両者の関係がすっきりします(この関係こそ、後で扱う大数の法則の中身です)。
期待値は「分布の重心」
期待値をもっとも鮮明にイメージできるのは、重心(バランス点) というアナロジーです。確率分布の各値 $x$ の位置に、確率 $p(x)$ に比例した重さのおもりを置いたとします。このおもりたちを軽い板の上に並べたとき、板がちょうど水平に釣り合う支点の位置 — それが期待値です。

上の図は、$x = 1, \dots, 6$ にそれぞれ確率の重さを置いたシーソーです。確率の大きい $3$ や $4$ のあたりに重みが集まっているため、釣り合いの点(赤い三角の支点)は中央よりやや右の $3.8$ になっています。この支点こそが期待値 $\mathbb{E}[X]$ です。この図から、「期待値は最頻値(いちばん高い棒)とは限らない」「左右の重みのバランスで決まる」という二つの大事な性質が読み取れます。
この重心の見方には、もう一つ大事な含意があります。期待値は外れ値(極端に大きい・小さい値)に敏感だということです。重心は、遠くにある重りほどテコの原理で大きく板を傾けます。同じように、確率は小さくても値が極端に大きい項は、期待値を大きく引っ張ります。たとえば宝くじの当選金のように「めったに出ないが当たれば巨額」という分布では、期待値が「ありふれた結果」からかけ離れることがあります。期待値は「典型的な値」とは限らない、という点はいつも意識しておく価値があります。
重心の直感を頭に入れておくと、後で出てくる定義式 $\sum p(x) x$ や $\int x\, p(x)\, dx$ が、まさに「位置 × 重さ」を足し合わせて重心を求める物理の計算そのものだとわかります。では、その定義式を離散の場合から見ていきましょう。
離散的な確率変数の期待値
まず、サイコロのように飛び飛びの値をとる離散的な確率変数を考えます。ある離散的な確率変数 $X$ があるとき、その期待値 $\mathbb{E}[X]$ は次のように定義されます。
$$ \begin{equation} \mathbb{E}[X] = \sum_{n=1}^{N} p(x_n)\, x_n \end{equation} $$
ここで、$X$ が取りうる $N$ 個の値のうち $n$ 番目を $x_n$、その値を取る確率を $p(x_n)$ としました。式の意味はシンプルで、「とりうる値 $x_n$ に、その確率 $p(x_n)$ という重みを掛けて、すべて足し合わせる」 という加重平均です。重みである確率は合計が $\sum_n p(x_n) = 1$ になっているので、ちょうど重心を求める計算になっています。

上の図は、左に確率分布 $p(x_n)$ そのものを、右に各値の寄与 $p(x_n)\, x_n$ を並べたものです。右の棒の高さを全部足したものが期待値です。$x_n = 0$ の項は値が $0$ なので寄与しない一方、$x_n = 2$ や $x_n = 3$ のように「値も確率もそこそこ大きい」項が期待値を押し上げていることが見て取れます。期待値は単なる確率の大きさではなく、値の大きさと確率の積で決まることがこの図の要点です。
サイコロの例で計算する
具体例として、$1$ から $6$ の出目がすべて等確率 $\frac{1}{6}$ で出る公平なサイコロを考えます。
| X = 1 | X = 2 | X = 3 | X = 4 | X = 5 | X = 6 |
| $\frac{1}{6}$ | $\frac{1}{6}$ | $\frac{1}{6}$ | $\frac{1}{6}$ | $\frac{1}{6}$ | $\frac{1}{6}$ |
定義式 (1) にあてはめると、各項の確率はすべて $\frac{1}{6}$ で共通なので、まず確率を前にくくり出せます。
$$ \begin{split} \mathbb{E}[X] &= \frac{1}{6} \cdot 1 + \frac{1}{6} \cdot 2 + \frac{1}{6} \cdot 3 + \frac{1}{6} \cdot 4 + \frac{1}{6} \cdot 5 + \frac{1}{6} \cdot 6 \\ &= \frac{1}{6}\,(1 + 2 + 3 + 4 + 5 + 6) \\ &= \frac{1}{6} \cdot 21 \\ &= \frac{7}{2} \end{split} $$
途中で和の中身 $1 + 2 + \dots + 6 = 21$ を計算し、最後に $\frac{1}{6}$ を掛けて約分しました。結果は $\frac{7}{2} = 3.5$ です。

上の図のように、確率が全部 $\frac{1}{6}$ で均一なので、重心はちょうど値の真ん中 $3.5$ に来ます。注目すべきは、$3.5$ という値はサイコロの出目としては絶対に出ない点です。期待値は「もっとも起こりやすい値」でも「実際に取りうる値」でもなく、あくまで「無限回振ったときの平均」だということが、この例からはっきりわかります。
離散のサイコロでは和 $\sum$ で期待値を計算しました。では、身長や測定誤差のように連続的に値が分布する場合はどうなるでしょうか。次に連続の場合を見ていきます。
連続的な確率変数の期待値
身長、温度、測定誤差などは、飛び飛びではなく連続的な値を取ります。こうした連続的な確率変数の期待値は、和 $\sum$ を積分 $\int$ に置き換えるだけで、ほとんど同じ形になります。
$$ \begin{equation} \mathbb{E}[X] = \int_{-\infty}^{\infty} x\, p(x)\, dx \end{equation} $$
ここで $p(x)$ は確率密度関数です。離散の $\sum_n p(x_n)\, x_n$ と見比べると、「確率 $p(x_n)$」が「確率密度 × 微小幅 $p(x)\, dx$」に、「総和 $\sum$」が「積分 $\int$」に対応しているだけだとわかります。やっていることは離散と完全に同じ、「値 × 重み」を全範囲で足し集める計算です。

上の図は、平均 $2$ の正規分布について、左に密度 $p(x)$ を、右に被積分関数 $x\, p(x)$ を描いたものです。右の曲線が囲む符号付きの面積(負の部分は引き算される)が期待値になります。左の密度は左右対称なので、重心は対称軸の $x = 2$ にぴったり一致し、これが期待値 $\mathbb{E}[X] = 2$ です。連続でも「密度の重心」という直感がそのまま通用することが確認できます。
ここまでで、離散・連続を問わず「確率変数 $X$ そのもの」の期待値を計算できるようになりました。しかし実用では、$X^2$ や $\log X$ のような$X$ の関数の期待値が欲しい場面が多くあります。次は、その一般化に進みましょう。
確率変数の関数の期待値とLOTUS
これまで $X$ そのものの期待値を考えてきましたが、実際には $X^2$(分散の計算に必要)や $g(X)$ といった関数の期待値を扱う場面が頻繁にあります。たとえば「賭けの賞金が出目の二乗 $X^2$ だったら、平均でいくらもらえるか」を知りたいときです。
ここで素朴に考えると、まず $Y = g(X)$ という新しい確率変数の分布 $p_Y(y)$ を求め、それから $\mathbb{E}[Y] = \sum_y y\, p_Y(y)$ を計算する、という二段構えになりそうです。ところが、これは多くの場合とても面倒です。
そこで役立つのが LOTUS(Law of the Unconscious Statistician、無意識な統計学者の法則) です。LOTUS は「$g(X)$ の期待値は、$g(X)$ の分布をわざわざ求め直さなくても、元の分布 $p(x)$ のまま 重みづけ和をとればよい」と主張します。
$$ \begin{equation} \mathbb{E}[g(X)] = \sum_x g(x)\, p(x) \quad (\text{離散}), \qquad \mathbb{E}[g(X)] = \int g(x)\, p(x)\, dx \quad (\text{連続}) \end{equation} $$

上の図のように、LOTUS は「$Y=g(X)$ の分布を経由する遠回り(中央)」をスキップして、「元の $p(x)$ で $g(x)$ を重みづける近道(右)」を許してくれます。名前が示すとおり、多くの人が分布の変換を意識せず無意識にこの計算をしてしまうほど自然な定理です。
たとえば、先ほどのサイコロで賞金が $g(X) = X^2$ だったとすると、LOTUS によって新しい分布を求めずに次のように計算できます。
$$ \begin{split} \mathbb{E}[X^2] &= \sum_{n=1}^{6} x_n^2\, p(x_n) \\ &= \frac{1}{6}\,(1^2 + 2^2 + 3^2 + 4^2 + 5^2 + 6^2) \\ &= \frac{1}{6}\,(1 + 4 + 9 + 16 + 25 + 36) \\ &= \frac{91}{6} \approx 15.17 \end{split} $$
ここで重要なのは、$\mathbb{E}[X^2] = 15.17$ は $(\mathbb{E}[X])^2 = 3.5^2 = 12.25$ とは一致しないことです。一般に $\mathbb{E}[g(X)] \neq g(\mathbb{E}[X])$ であり、このズレこそが分散 $\mathbb{E}[X^2] – (\mathbb{E}[X])^2$ の正体になります。
なぜ「分布を求め直さなくてよい」のか、簡単に納得しておきましょう。素朴な方法では、まず $y = g(x)$ という値を取る確率をすべて $p_Y(y)$ にまとめ直し、$\sum_y y\, p_Y(y)$ を計算します。しかしこの「まとめ直し」は、結局「$g(x) = y$ となるすべての $x$ の確率を集める」作業に過ぎません。集める前にバラバラのまま $g(x)\, p(x)$ を足しても、集めてから足しても、合計は変わりません。だから分布変換をスキップしてよいのです。なお $g$ が一対一でない(複数の $x$ が同じ $g(x)$ を与える)場合でも、この理屈はそのまま通用します。LOTUS は「とにかく元の世界で重みづけ和を取れば正しい」という、計算上きわめてありがたい保証なのです。
関数の期待値が計算できるようになったので、次は期待値が持つ最も強力で便利な性質 — 線形性 — を見ていきます。
期待値の線形性
期待値のもっとも頻繁に使う性質が線形性です。二つの確率変数 $X, Y$ と定数 $a, b$ について、次が常に成り立ちます。
$$ \begin{equation} \mathbb{E}[aX + bY] = a\,\mathbb{E}[X] + b\,\mathbb{E}[Y] \end{equation} $$
この式の威力は、$X$ と $Y$ が独立でなくても、どんな相関があっても成り立つことにあります。たとえば「2つのサイコロの出目の和の期待値」は、和の分布を求めるまでもなく $\mathbb{E}[X] + \mathbb{E}[Y] = 3.5 + 3.5 = 7$ と即座にわかります。
線形性の導出
連続の場合で導出してみましょう。ゴールは式 (4) を期待値の定義から導くことです。まず、$Z = aX + bY$ の期待値を LOTUS(多変数版)で書き下します。
$$ \mathbb{E}[aX + bY] = \iint (a x + b y)\, p(x, y)\, dx\, dy $$
ここで $p(x, y)$ は $X, Y$ の同時確率密度です。次に、被積分関数の和を二つの積分に分けます(積分は線形なので和を分配できます)。
$$ \mathbb{E}[aX + bY] = a \iint x\, p(x, y)\, dx\, dy + b \iint y\, p(x, y)\, dx\, dy $$
第1項に注目すると、$y$ について先に積分すれば $\int p(x, y)\, dy = p(x)$($X$ の周辺分布)になります。これを使うと第1項は $a \int x\, p(x)\, dx = a\,\mathbb{E}[X]$ になります。第2項も同様に $y$ を残して $x$ で積分すれば $b\,\mathbb{E}[Y]$ です。したがって、
$$ \mathbb{E}[aX + bY] = a\,\mathbb{E}[X] + b\,\mathbb{E}[Y] $$
が得られます。導出の鍵は「積分の線形性」と「同時分布を周辺分布に潰す」操作だけで、独立性をどこにも使っていない点です。だからこそ線形性は無条件で成り立ちます。
線形性は2変数だけでなく、いくつ足し合わせても同じように成り立ちます。$n$ 個の確率変数 $X_1, \dots, X_n$ と定数 $a_1, \dots, a_n$ について、
$$ \mathbb{E}\!\left[\sum_{i=1}^{n} a_i X_i\right] = \sum_{i=1}^{n} a_i\, \mathbb{E}[X_i] $$
が成り立ちます。これは2変数の結果を繰り返し適用すれば直ちに得られます。この一般形は、たとえば「$n$ 個のサイコロの合計の期待値」や「$n$ 個の観測値の平均の期待値」を一瞬で求めるのに使えます。実際、標本平均 $\bar{X}_n = \frac{1}{n}\sum_i X_i$ の期待値は、線形性によって
$$ \mathbb{E}[\bar{X}_n] = \frac{1}{n}\sum_{i=1}^{n} \mathbb{E}[X_i] = \frac{1}{n} \cdot n\,\mathbb{E}[X] = \mathbb{E}[X] $$
となり、「標本平均の期待値は元の期待値に等しい」ことがわかります。これは標本平均が期待値の不偏推定量であることの根拠であり、後で述べる大数の法則の伏線にもなっています。
線形性のもう一つの便利な使い方が、複雑な確率変数を「単純な部品の和」に分解する指示変数(インジケータ)の技法です。たとえば「$n$ 回のコイン投げで表が出る回数 $X$」の期待値を求めたいとき、$i$ 回目に表なら $1$、裏なら $0$ をとる指示変数 $I_i$ を使えば $X = \sum_i I_i$ と書けます。$\mathbb{E}[I_i] = p$(表の確率)なので、線形性から $\mathbb{E}[X] = \sum_i \mathbb{E}[I_i] = np$ と、二項分布の分布形を一切使わずに平均が求まります。和の期待値を分解できる線形性は、こうした「難しい量を簡単な量の和に書き換える」発想と相性が抜群です。

上の図は、$X$ を正規分布、$Y$ を指数分布(互いに独立でない設定でも成立します)からサンプリングし、$\mathbb{E}[X]$、$\mathbb{E}[Y]$、理論値 $a\mathbb{E}[X]+b\mathbb{E}[Y]$、標本での $\mathbb{E}[aX+bY]$ を棒グラフで比較したものです。右の2本(理論値と標本値)がほぼ一致していることから、線形性が実際に成り立っていることが数値的に確認できます。
線形性は「和」については独立性を要りませんでした。では「積」についてはどうでしょうか。実は積の期待値には独立性が決定的に効いてきます。
独立なときの積の期待値
$X$ と $Y$ が独立であるとき、積の期待値は期待値の積に分解できます。
$$ \begin{equation} \mathbb{E}[XY] = \mathbb{E}[X]\,\mathbb{E}[Y] \end{equation} $$
これは独立性の定義 $p(x, y) = p(x)\, p(y)$ から直ちに導けます。同時分布が積に分かれるので、二重積分も二つの独立な積分の積になります。
$$ \begin{split} \mathbb{E}[XY] &= \iint x y\, p(x, y)\, dx\, dy \\ &= \iint x y\, p(x)\, p(y)\, dx\, dy \quad (\because X, Y \text{は独立}) \\ &= \left( \int x\, p(x)\, dx \right) \left( \int y\, p(y)\, dy \right) \\ &= \mathbb{E}[X]\,\mathbb{E}[Y] \end{split} $$
2行目で独立性 $p(x, y) = p(x)\, p(y)$ を代入し、3行目で $x$ にだけ依存する部分と $y$ にだけ依存する部分を別々の積分にくくり出しました。線形性とは違い、ここでは独立性が本質的に必要だった点に注意してください。
![独立なら E[XY]=E[X]E[Y]、従属だとずれる](https://disassemble-channel.com/wp-content/uploads/2026/06/figs06-38.png)
上の図は、左に独立な $X, Y$、右に $Y$ が $X$ に依存する従属なケースの散布図を描き、それぞれ $\mathbb{E}[XY]$ と $\mathbb{E}[X]\mathbb{E}[Y]$ を比較したものです。左(独立)では2つの値がほぼ一致しますが、右(従属)では明確にずれます。このズレ $\mathbb{E}[XY] – \mathbb{E}[X]\mathbb{E}[Y]$ こそが共分散であり、$X$ と $Y$ の連動の強さを測る量になります。
積の期待値は2変数の関係を考える入り口でした。次は、「$Y$ の値がわかったときの $X$ の期待値」という、より細かい条件つきの期待値に進みます。
条件付き期待値への接続
ここまでは確率変数の「全体の」期待値を扱ってきました。しかし現実には、「ある条件が成り立つとわかったうえで」期待値を知りたいことが多々あります。たとえば「今日が雨だとわかったとき、傘の売上の期待値はいくらか」のように、追加情報を条件にした平均です。
具体的なイメージを持つために、たとえばコンビニの1日の傘の売上を考えます。天気を区別せずに「平均何本売れるか」を聞かれれば、それは普通の期待値 $\mathbb{E}[X]$ です。しかし「今日は雨だとわかっている」という追加情報があれば、その情報で世界を絞り込んだうえでの平均を考えたくなります。雨の日だけを集めて平均すれば、当然ふだんより大きな値になるでしょう。このように、ある条件のもとで重みづけを取り直した期待値が条件付き期待値です。
これを条件付き期待値と呼び、$Y = y$ という条件のもとでの $X$ の期待値を次で定義します。
$$ \begin{equation} \mathbb{E}[X \mid Y = y] = \sum_x x\, p(x \mid y), \qquad \mathbb{E}[X \mid Y = y] = \int x\, p(x \mid y)\, dx \end{equation} $$
通常の期待値との違いは、重みに使う確率が条件付き確率 $p(x \mid y)$ になっている点だけです。「$Y = y$ という情報で絞り込んだ世界での重心」を求めていると考えると、これまでの直感がそのまま使えます。
条件付き期待値で特に重要なのが全期待値の法則(tower property) です。
$$ \mathbb{E}[X] = \mathbb{E}_Y\big[\, \mathbb{E}[X \mid Y]\, \big] $$
これは「条件付き期待値を、条件 $Y$ についてさらに平均すると、元の期待値に戻る」という関係です。複雑な期待値を「いったん条件をつけて計算し、後でその条件について平均する」という二段階に分解できるため、計算が一気に楽になることがよくあります。条件付き期待値は、ベイズ推定や回帰分析(回帰関数とは $\mathbb{E}[Y \mid X = x]$ そのものです)の核心であり、専用記事で詳しく扱います。
条件付き期待値は「情報を絞ったときの平均」でした。最後に、期待値と実際のサンプル平均をつなぐ、もっとも重要な橋 — 大数の法則 — を見ていきます。
大数の法則との関係
記事の冒頭で「期待値は無限にサンプルを取ったときの平均が落ち着く先」と述べました。この直感を厳密に保証するのが大数の法則(Law of Large Numbers) です。
同じ分布から独立に取った $n$ 個のサンプル $X_1, X_2, \dots, X_n$ の標本平均を $\bar{X}_n = \frac{1}{n}\sum_{i=1}^{n} X_i$ とすると、$n \to \infty$ で次が成り立ちます。
$$ \begin{equation} \bar{X}_n \xrightarrow{\;n \to \infty\;} \mathbb{E}[X] \end{equation} $$
つまり、サンプルを増やすほど、手元で計算した平均は理論上の期待値にいくらでも近づきます。これは「期待値」という抽象的な量と、「実際に測れる平均」という具体的な量を結ぶ、確率論でもっとも基本的な定理の一つです。
なぜ標本平均が期待値に近づくのか、直感を補っておきましょう。前節の線形性で見たように、標本平均の期待値はそもそも $\mathbb{E}[\bar{X}_n] = \mathbb{E}[X]$ です。つまり標本平均は「平均的には」最初から正しい位置にあります。問題はそのばらつき(分散)で、独立なサンプルなら標本平均の分散は $\frac{\sigma^2}{n}$ となり、$n$ が増えるほど $0$ に近づきます。「中心は期待値のまま、ばらつきだけが消えていく」ため、標本平均は期待値の一点に集中していくのです。これが大数の法則の中身であり、収束の速さ($\frac{1}{\sqrt{n}}$ のオーダー)を精密に述べたものが中心極限定理です。

上の図は、サイコロを繰り返し振りながら標本平均 $\bar{X}_n$ の推移を4本の試行で描いたものです。最初のうちは試行ごとに大きく上下しますが、試行回数(横軸は対数)が増えるにつれてすべての線が期待値 $3.5$(赤い破線)に吸い寄せられていきます。この収束こそが、期待値を「平均的に期待される値」と呼んでよい根拠です。
大数の法則のおかげで、私たちは「期待値を解析的に計算できないときは、たくさんサンプリングして平均をとればよい」という戦略が使えます。これがモンテカルロ法の原理です。では、ここまでの内容をPythonで確かめてみましょう。
Pythonでの実装
理論を実装で裏付けます。まず、離散・連続の期待値を定義どおりに計算し、解析値と一致するかを確認します。
import numpy as np
# --- 離散: サイコロの期待値 ---
x = np.arange(1, 7) # 出目 1..6
p = np.full(6, 1 / 6) # 各確率 1/6
EX = np.sum(p * x) # 定義どおり sum(p(x) * x)
EX2 = np.sum(p * x**2) # LOTUS: g(x)=x^2 をそのまま重みづけ
print(f"E[X] = {EX:.4f} (理論 3.5)")
print(f"E[X^2] = {EX2:.4f} (理論 91/6 = {91/6:.4f})")
print(f"E[X^2] != E[X]^2 を確認: {EX2:.4f} vs {EX**2:.4f}")
このコードは離散期待値の定義式 $\sum p(x) x$ をそのまま np.sum(p * x) で表現しています。出力は E[X] = 3.5000、E[X^2] = 15.1667 となり、手計算した $\frac{7}{2}$ と $\frac{91}{6}$ に一致します。また $\mathbb{E}[X^2] = 15.17$ が $(\mathbb{E}[X])^2 = 12.25$ と異なることもはっきり確認でき、LOTUS の節で述べた「$\mathbb{E}[g(X)] \neq g(\mathbb{E}[X])$」が実際に成り立っています。
次に、連続分布(正規分布)の期待値を数値積分で求めます。
from scipy import stats
mu, sigma = 2.0, 1.0
dist = stats.norm(mu, sigma)
xs = np.linspace(-6, 10, 20000)
# E[X] = ∫ x p(x) dx を数値積分(台形則)で近似
EX_cont = np.trapezoid(xs * dist.pdf(xs), xs)
print(f"E[X] (数値積分) = {EX_cont:.4f} (理論 mu = {mu})")
連続の期待値 $\int x\, p(x)\, dx$ を台形則で数値積分しています。出力 E[X] (数値積分) = 2.0000 は理論値 $\mu = 2$ に一致し、連続でも定義式どおりに重心が求まることが確かめられました。
最後に、大数の法則を可視化します。サイコロを繰り返し振り、標本平均が期待値に収束する様子を描きます。
import matplotlib.pyplot as plt
rng = np.random.default_rng(3)
N = 5000
true_mu = 3.5
plt.figure(figsize=(9, 5))
for trial in range(4):
rolls = rng.integers(1, 7, N) # 1..6 を N 回
running = np.cumsum(rolls) / np.arange(1, N + 1) # 逐次の標本平均
plt.plot(np.arange(1, N + 1), running, lw=1.2, alpha=0.9,
label=f"試行 {trial + 1}")
plt.axhline(true_mu, color="red", ls="--", lw=1.8,
label=f"期待値 E[X] = {true_mu}")
plt.xscale("log")
plt.xlabel("試行回数 n(対数軸)")
plt.ylabel("標本平均")
plt.title("大数の法則: 標本平均は期待値に収束する")
plt.legend()
plt.grid(alpha=0.3)
plt.show()
このコードでは np.cumsum で各時点までの累積和を取り、試行回数で割ることで「逐次の標本平均」を計算しています。実行すると、4本の線がいずれも最初は大きく振れながら、試行を重ねるごとに $3.5$ の破線へ収束していく様子が描かれます。前節の図とまったく同じ振る舞いが再現でき、大数の法則が確かに働いていることをコードで確認できました。
実装で期待値の性質を一通り確かめられたので、最後にこれらが実務でどう使われるかを見ておきましょう。
応用: 期待値計算の実例
期待値は理論上の概念にとどまらず、意思決定や評価指標の根幹で使われます。代表的な例を3つ挙げます。
1. 賭け・保険の期待値(意思決定) あるくじが、確率 $0.01$ で $5000$ 円当たり、確率 $0.99$ で外れ($0$ 円)だとします。チケット代が $100$ 円なら、損益 $X$ の期待値は
$$ \mathbb{E}[X] = 0.01 \times (5000 – 100) + 0.99 \times (0 – 100) = 49 – 99 = -50 $$
となり、1回あたり平均 $50$ 円の損です。期待値の符号が「長期的に得か損か」をそのまま教えてくれます。大数の法則により、このくじを何度も買えば1回あたりの損益は確実に $-50$ 円へ収束していくので、「続けるほど損が確定する」と言い換えられます。保険会社の保険料設計も、本質的にはこの期待値計算で、加入者全体の支払い期待値より少しだけ高い保険料を設定することで成り立っています。
2. 平均二乗誤差(機械学習の損失関数) 回帰モデルの良さを測る平均二乗誤差(MSE)は、予測 $\hat{f}(X)$ と真の値 $Y$ の差の二乗の期待値 $\mathbb{E}[(Y – \hat{f}(X))^2]$ です。これは LOTUS で $g(X, Y) = (Y – \hat{f}(X))^2$ の期待値を取ったものに他なりません。学習とは、この期待値を最小化するパラメータを探すことです。
3. 強化学習のリターン(収益) 強化学習では、エージェントが受け取る将来報酬の割引和 $G = \sum_t \gamma^t R_t$ の期待値 $\mathbb{E}[G]$ を最大化します。価値関数 $V(s) = \mathbb{E}[G \mid S = s]$ は、まさに条件付き期待値そのものです。

上の図は、正規・指数・ガンマ・一様という代表的な4つの分布について、それぞれの期待値(赤い破線)を示したものです。分布の形は大きく異なりますが、期待値はいずれも「密度の重心」というただ一つの直感で説明できることがわかります。指数分布のように左右非対称な分布では、重心が裾の長い右側に引っ張られている点にも注目してください。

最後の図は、期待値の幾何的な意味をまとめたものです。期待値 $\mathbb{E}[X]$ を境にした左右の質量を色分けしています。期待値とは、偏差 $(x – \mathbb{E}[X])$ に密度を掛けた「符号付きモーメント」が左右でちょうど相殺する点です。これは $\mathbb{E}[X – \mathbb{E}[X]] = 0$ という式と同じことを言っており、重心の定義そのものです。記事の冒頭で見たシーソーの支点が、ここで数式と完全に結びつきました。
まとめ
本記事では、確率変数の期待値について、直感から実装・応用まで解説しました。
- 期待値 $\mathbb{E}[X]$ は「確率を重みとした加重平均」であり、直感的には確率分布の重心(バランス点) である
- 離散では $\sum_n p(x_n) x_n$、連続では $\int x\, p(x)\, dx$ と、和が積分に変わるだけで本質は同じ
- LOTUS により、関数 $g(X)$ の期待値は元の分布のまま $\sum g(x) p(x)$ で計算できる
- 線形性 $\mathbb{E}[aX+bY] = a\mathbb{E}[X] + b\mathbb{E}[Y]$ は独立性なしで常に成り立つ。一方、積 $\mathbb{E}[XY] = \mathbb{E}[X]\mathbb{E}[Y]$ は独立なときに限る
- 条件付き期待値は「情報を絞ったときの重心」であり、大数の法則が期待値とサンプル平均を結びつける
期待値を理解すると、次は「期待値からのばらつき」を測る分散へと自然につながります。また、期待値の応用先である条件付き期待値や大数の法則は、ベイズ統計やモンテカルロ法の土台になります。
次のステップとして、以下の記事も参考にしてください。