ある確率分布の平均・分散・歪度・尖度を、いちいち別々の積分で計算するのは骨が折れます。もし「1本の関数を作っておけば、あとは微分するだけで何次のモーメントでも取り出せる」便利な道具があったらどうでしょう。それがモーメント母関数(積率母関数, Moment Generating Function, MGF)です。
モーメント母関数 $M_X(t) = E[e^{tX}]$ は、確率分布のあらゆる次数のモーメント(平均・分散・歪度・尖度のもとになる量)を「1本の関数」に畳み込んでしまいます。そして必要なときに微分して $t=0$ を代入するだけで、欲しい次数のモーメントが落ちてきます。
この道具が活きる場面を2つ挙げておきます。
- 分布の和を一瞬で求める: 独立な確率変数の和は、確率密度の畳み込み積分という面倒な計算が必要です。ところがMGFを使うと「和のMGFは積」という性質で、正規分布どうしの和がまた正規分布になること(再生性)が掛け算だけで示せます。
- 極限定理の証明: 中心極限定理は「たくさん足すと正規分布に近づく」という主張ですが、その教科書的な証明はMGF(または特性関数)が正規分布のMGFに収束することを示す形で進みます。
本記事の内容
- モーメント(積率)の定義と、平均・分散・歪度・尖度との関係の整理
- モーメント母関数 $M_X(t)=E[e^{tX}]$ の定義と、「なぜ $e^{tX}$ なのか」の徹底解説
- 微分で各次モーメントが取り出せる仕組みの1行ずつの導出
- 正規・指数・ポアソン・二項・一様分布のMGFを丁寧に導出
- 一意性・和は積・線形変換というMGFの3大性質
- キュムラント母関数 $K(t)=\log M(t)$、特性関数 $\varphi(t)=E[e^{itX}]$ との違いと関係
- numpy/scipyによる数値検証(経験的MGFと理論MGFの一致、微分で平均・分散を再現)
前提知識
この記事を読む前に、以下の記事を読んでおくと理解が深まります。

上の図がこの記事の全体像です。左の確率分布から $E[e^{tX}]$ という期待値を計算すると、真ん中のモーメント母関数 $M_X(t)$ という1本の関数が得られます。あとはこれを $t$ で1回微分して $t=0$ を入れれば平均、2回なら $E[X^2]$、というように、微分の回数を増やすだけで好きな次数のモーメントが取り出せます。なぜこんな魔法のようなことが起きるのか、これから順に解き明かしていきます。
モーメント(積率)とは
モーメント母関数の話に入る前に、その「材料」であるモーメントを押さえておきましょう。
モーメントという言葉は力学にも出てきます。物体の慣性モーメントは、質量が回転軸からどれだけ離れて分布しているかを $\sum m_i r_i^2$ のように「距離の2乗 × 重み」で測る量でした。確率のモーメントもまったく同じ発想で、確率という「重み」が原点からどれだけ離れて分布しているかを「位置の $r$ 乗 × 確率」で測ります。次数 $r$ を上げるほど、外れ値(原点から遠い値)の寄与が強調されていきます。
この直感をもとに、確率変数 $X$ の $r$ 次の原点まわりモーメントを次のように定義します。
$$ \begin{equation} \mu_r’ = E[X^r] \end{equation} $$
$r=1$ なら $E[X]$、つまり平均そのものです。$r=2$ なら $E[X^2]$ で、分布の「広がり具合」に関わります。
一方、分布の形(広がりや非対称性)を見たいときは、原点ではなく平均 $\mu$ を中心にして測るほうが自然です。そこで定義されるのが $r$ 次の中心モーメント(平均まわりのモーメント)です。
$$ \begin{equation} \mu_r = E[(X – \mu)^r], \qquad \mu = E[X] \end{equation} $$
平均をいったん差し引いてから $r$ 乗するので、「平均からのズレ」がどう分布しているかを測ることになります。原点まわりと中心まわりの2種類がある、という点をここで押さえておきましょう。
ここまでで「モーメント」という材料がそろいました。次に、この材料が平均・分散・歪度・尖度という見慣れた統計量とどうつながっているのかを整理します。
モーメントと平均・分散・歪度・尖度の関係
統計学の参考書がわざわざモーメントを導入するのは、平均・分散・歪度・尖度という分布の特徴量が、すべてモーメントの言葉で書けてしまうからです。1つずつ確認しましょう。
平均(期待値) は1次の原点まわりモーメントそのものです。
$$ \begin{equation} \mu = E[X] = \mu_1′ \end{equation} $$
分散は2次の中心モーメントです。平均からのズレの2乗の期待値なので、分布の広がりを表します。
$$ \begin{equation} \mathrm{Var}[X] = E[(X – \mu)^2] = \mu_2 \end{equation} $$
歪度(skewness) は3次の中心モーメントを標準偏差の3乗で割ったものです。3乗するとズレの符号が残る(正のズレは正、負のズレは負)ので、分布が左右どちらに尾を引いているかを表します。標準偏差の3乗で割るのは、単位(スケール)に依存しない無次元量にするためです。
$$ \begin{equation} \mathrm{Skew}[X] = \frac{E[(X – \mu)^3]}{\sigma^3} = \frac{\mu_3}{\sigma^3} \end{equation} $$
尖度(kurtosis) は4次の中心モーメントを標準偏差の4乗で割ったものです。4乗するので外れ値の寄与が極端に強調され、分布の裾の重さ(とがり具合)を表します。
$$ \begin{equation} \mathrm{Kurt}[X] = \frac{E[(X – \mu)^4]}{\sigma^4} = \frac{\mu_4}{\sigma^4} \end{equation} $$
このように、分布を特徴づける主要な量はすべて「何次のモーメントか」で整理できます。1次=平均、2次=分散、3次=歪度、4次=尖度、という対応です。
裏を返せば、モーメントさえ計算できれば、分布の特徴量はすべて手に入るということです。では、そのモーメントを効率よく計算する手段はないのでしょうか。ここで満を持して登場するのがモーメント母関数です。
モーメント母関数の定義
いよいよ本題のモーメント母関数です。定義そのものはとてもシンプルで、確率変数 $X$ と任意の実数 $t$ に対して、$e^{tX}$ の期待値を取るだけです。
$$ \begin{equation} M_X(t) = E[e^{tX}] \end{equation} $$
「いきなり $e^{tX}$ の期待値と言われても、なぜこんな形なのか分からない」と感じるのが自然です。記号 $t$ は確率変数ではなく、私たちが自由に動かせるダイヤル(パラメータ)だと思ってください。このダイヤルを回すと $M_X(t)$ という1本の曲線が描かれ、その曲線の「原点付近の形」のなかに分布のあらゆるモーメントが折りたたまれている、というのがこの関数の正体です(理由は次節で明らかにします)。
実際に計算するときは、期待値の定義に従って、連続なら積分、離散なら和になります。
連続確率変数の場合(密度関数 $p(x)$):
$$ \begin{equation} M_X(t) = \int_{-\infty}^{\infty} e^{tx}\, p(x)\, dx \end{equation} $$
離散確率変数の場合(確率質量関数 $p(x)$):
$$ \begin{equation} M_X(t) = \sum_{x} e^{tx}\, p(x) \end{equation} $$
なお、MGFは必ずしも存在するとは限りません。$t=0$ では $M_X(0)=E[e^0]=E[1]=1$ なので常に値を持ちますが、$t \neq 0$ で上の積分・和が有限になるには、$t=0$ を含むある区間で収束する必要があります。裾の重い分布ではこれが発散することがあり、その話は後半の特性関数の節で扱います。
定義の形が分かったところで、いちばん大事な疑問に進みましょう。なぜわざわざ $e^{tX}$ という指数関数の期待値を取るのでしょうか。
なぜ $e^{tX}$ なのか — テイラー展開が鍵
モーメント母関数のからくりは、指数関数 $e^{tX}$ のテイラー展開(マクローリン展開)にあります。$e^z = 1 + z + \frac{z^2}{2!} + \frac{z^3}{3!} + \cdots$ という有名な級数で、$z = tX$ と置いてみます。
$$ \begin{equation} e^{tX} = 1 + tX + \frac{(tX)^2}{2!} + \frac{(tX)^3}{3!} + \cdots = 1 + tX + \frac{t^2 X^2}{2!} + \frac{t^3 X^3}{3!} + \cdots \end{equation} $$
ここに注目してください。右辺の各項には $X^0, X^1, X^2, X^3, \dots$ という $X$ のべき乗が並んでいます。モーメントとは $E[X^r]$ のことでしたから、$X$ のべき乗が全部出てくる $e^{tX}$ こそ、全モーメントを一網打尽にできる「容れ物」として最適なのです。これが $e^{tX}$ を選ぶ理由です。
実際に両辺の期待値を取りましょう。期待値は線形なので、和の期待値は期待値の和に分けられ、定数 $t^n/n!$ は外に出せます。
$$ \begin{equation} \begin{split} M_X(t) = E[e^{tX}] &= E\!\left[1 + tX + \frac{t^2 X^2}{2!} + \frac{t^3 X^3}{3!} + \cdots\right] \\ &= E[1] + t\,E[X] + \frac{t^2}{2!}E[X^2] + \frac{t^3}{3!}E[X^3] + \cdots \\ &= 1 + t\,\mu_1′ + \frac{t^2}{2!}\mu_2′ + \frac{t^3}{3!}\mu_3′ + \cdots \end{split} \end{equation} $$
最後の行を見てください。$M_X(t)$ を $t$ のべき級数として展開したとき、$t^n$ の係数がちょうど $\dfrac{\mu_n’}{n!} = \dfrac{E[X^n]}{n!}$ になっているのです。つまりMGFは、全次数のモーメントを $t$ のべき級数の係数として整然と並べた関数だ、ということになります。

この図は、$e^{tX}$ を展開して期待値を取ると、各項に $E[X]$、$E[X^2]$、$E[X^3]$ という各次モーメントがそのまま現れる様子を表しています。$t^n$ の係数が $E[X^n]/n!$ になるので、1本の関数 $M_X(t)$ の中に分布のすべてのモーメントが格納されていることが見て取れます。
係数として埋め込まれているなら、それを取り出す方法も自然に決まります。べき級数の係数を取り出す操作といえば「微分して値を代入する」ことです。次節でこれを実行しましょう。
微分でモーメントが落ちてくる — 1行ずつの導出
べき級数 $M_X(t) = 1 + t\,\mu_1′ + \frac{t^2}{2!}\mu_2′ + \frac{t^3}{3!}\mu_3′ + \cdots$ を、$t$ について項別微分していきます。
まず1回微分します。定数項 $1$ は消え、$t$ の項は係数 $\mu_1’$ が残り、$\frac{t^2}{2!}\mu_2’$ は $\frac{2t}{2!}\mu_2′ = t\,\mu_2’$ になります。
$$ \begin{equation} M_X'(t) = \mu_1′ + t\,\mu_2′ + \frac{t^2}{2!}\mu_3′ + \frac{t^3}{3!}\mu_4′ + \cdots \end{equation} $$
ここで $t=0$ を代入すると、$t$ を含む項はすべて消え、定数項だけが残ります。
$$ \begin{equation} M_X'(0) = \mu_1′ = E[X] \end{equation} $$
1回微分して $t=0$ を入れるだけで平均が出ました。同じことをもう一度やります。式(13)をさらに $t$ で微分すると、
$$ \begin{equation} M_X”(t) = \mu_2′ + t\,\mu_3′ + \frac{t^2}{2!}\mu_4′ + \cdots \end{equation} $$
ここでも $t=0$ を代入すると、
$$ \begin{equation} M_X”(0) = \mu_2′ = E[X^2] \end{equation} $$
となります。一般に、$n$ 回微分して $t=0$ を入れると、$t^n/n!$ の項の $n!$ と微分で出る $n!$ がちょうど打ち消し合い、$E[X^n]$ がきれいに残ります。これが「モーメント母関数を $n$ 階微分して $t=0$ を代入すると $n$ 次の原点まわりモーメントが得られる」という、MGFの名前の由来そのものです(母関数 = generating function = 微分で次々と生み出す関数)。
$$ \begin{equation} M_X^{(n)}(0) = E[X^n] = \mu_n’ \end{equation} $$
これで、平均も分散も歪度も尖度も、原理的にはMGFを微分するだけで手に入ることになります。たとえば分散は $\mathrm{Var}[X] = E[X^2] – (E[X])^2 = M_X”(0) – \big(M_X'(0)\big)^2$ と書けます。
![MGFの原点での接線の傾きが平均E[X]に等しいことを示す図](https://disassemble-channel.com/wp-content/uploads/2026/06/mgf03_derivative_slope.png)
この図は指数分布($\lambda=1$)のMGF $M_X(t)=1/(1-t)$ を例に、原点 $t=0$ での接線の傾きが平均 $E[X]=1$ に一致することを示しています。$M(0)=1$ から出発する曲線の立ち上がりの速さ(1階微分)が平均を表し、曲線の曲がり具合(2階微分)が $E[X^2]$ を表す、という幾何的な見方ができます。微分という操作が、文字どおりモーメントを「生んで」いるわけです。
仕組みが分かったので、いよいよ具体的な分布で実際にMGFを計算してみましょう。手を動かすことで、定義式がどう積分・級数に落ちるかが腹に落ちます。
主要分布のモーメント母関数を導出する
ここからは代表的な分布について、定義 $M_X(t)=E[e^{tX}]$ から実際にMGFを導きます。連続分布は積分、離散分布は級数の計算になります。
正規分布 $N(\mu, \sigma^2)$
正規分布のMGFは、後で和の再生性を示すときにも使う最重要例です。密度 $p(x)=\frac{1}{\sqrt{2\pi}\sigma}\exp\!\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)$ を定義に代入します。
$$ \begin{equation} M_X(t) = \int_{-\infty}^{\infty} e^{tx}\,\frac{1}{\sqrt{2\pi}\,\sigma}\exp\!\left(-\frac{(x-\mu)^2}{2\sigma^2}\right) dx \end{equation} $$
指数関数の肩(指数部分)をひとまとめにします。$tx$ と $-\frac{(x-\mu)^2}{2\sigma^2}$ を足した式を、$x$ について整理するのが狙いです。
$$ \begin{equation} tx – \frac{(x-\mu)^2}{2\sigma^2} = -\frac{1}{2\sigma^2}\left[(x-\mu)^2 – 2\sigma^2 t\,x\right] \end{equation} $$
角括弧の中を、$x$ について平方完成します。$2\sigma^2 t\, x = 2\sigma^2 t (x-\mu) + 2\sigma^2 t \mu$ と分けてから $(x-\mu)$ を1つの変数とみなして平方完成すると、
$$ \begin{equation} tx – \frac{(x-\mu)^2}{2\sigma^2} = -\frac{1}{2\sigma^2}\big(x – (\mu + \sigma^2 t)\big)^2 + \mu t + \frac{\sigma^2 t^2}{2} \end{equation} $$
となります(最後の2項 $\mu t + \frac{\sigma^2 t^2}{2}$ は $x$ を含まない定数です)。これを積分に戻すと、定数部分は外に出せます。
$$ \begin{equation} M_X(t) = e^{\mu t + \frac{\sigma^2 t^2}{2}} \int_{-\infty}^{\infty} \frac{1}{\sqrt{2\pi}\,\sigma}\exp\!\left(-\frac{\big(x-(\mu+\sigma^2 t)\big)^2}{2\sigma^2}\right) dx \end{equation} $$
残った積分は、平均が $\mu+\sigma^2 t$、分散が $\sigma^2$ の正規分布の密度を全区間で積分したものなので、確率の総和として $1$ になります。したがって、
$$ \begin{equation} M_X(t) = \exp\!\left(\mu t + \frac{\sigma^2 t^2}{2}\right) \end{equation} $$
が正規分布のMGFです。検算として $M_X'(0)$ を計算すると $\mu$、$M_X”(0)-\mu^2$ を計算すると $\sigma^2$ になり、平均と分散が正しく出ます。

この図は正規分布のMGF導出の流れを上から順に並べたものです。指数の肩を平方完成すると「$x$ に依存する完全な正規分布の形」と「$x$ に依存しない定数 $\mu t + \sigma^2 t^2/2$」に分離でき、前者の積分は1に正規化されるため、定数部分だけが $M_X(t)$ として残ります。ガウス積分の正規化を使うのが鍵だと分かります。
指数分布 $\mathrm{Exp}(\lambda)$
密度 $p(x)=\lambda e^{-\lambda x}$($x \geq 0$)を代入します。指数の肩がまとまるので積分は容易です。
$$ \begin{equation} M_X(t) = \int_0^{\infty} e^{tx}\,\lambda e^{-\lambda x}\, dx = \lambda \int_0^{\infty} e^{-(\lambda – t)x}\, dx \end{equation} $$
積分が収束するには指数の肩が負、つまり $\lambda – t > 0$(すなわち $t < \lambda$)が必要です。この条件のもとで $\int_0^\infty e^{-(\lambda-t)x}dx = \frac{1}{\lambda - t}$ なので、
$$ \begin{equation} M_X(t) = \frac{\lambda}{\lambda – t} = \frac{1}{1 – t/\lambda}, \qquad t < \lambda \end{equation} $$
となります。$M_X'(0)=1/\lambda$(指数分布の平均)もすぐ確認できます。ここで「$t<\lambda$ でしか定義されない」という形でMGFの存在範囲が現れる点も覚えておきましょう。
ポアソン分布 $\mathrm{Po}(\lambda)$
確率質量 $p(k)=\frac{\lambda^k e^{-\lambda}}{k!}$($k=0,1,2,\dots$)を離散版の定義に代入します。和の形を指数関数の級数に持ち込むのが狙いです。
$$ \begin{equation} M_X(t) = \sum_{k=0}^{\infty} e^{tk}\,\frac{\lambda^k e^{-\lambda}}{k!} = e^{-\lambda}\sum_{k=0}^{\infty} \frac{(\lambda e^t)^k}{k!} \end{equation} $$
ここで $\sum_{k=0}^\infty \frac{z^k}{k!} = e^z$ という指数関数の級数を、$z=\lambda e^t$ として使うと、
$$ \begin{equation} M_X(t) = e^{-\lambda}\, e^{\lambda e^t} = \exp\!\big(\lambda(e^t – 1)\big) \end{equation} $$
が得られます。$M_X'(0)=\lambda$ となり、ポアソン分布の平均が $\lambda$ であることと整合します。
二項分布 $\mathrm{Bin}(n, p)$
確率質量 $p(k)=\binom{n}{k}p^k (1-p)^{n-k}$ を代入します。二項定理 $\sum_k \binom{n}{k}a^k b^{n-k}=(a+b)^n$ に持ち込むのが鍵です。
$$ \begin{equation} M_X(t) = \sum_{k=0}^{n} e^{tk}\binom{n}{k}p^k (1-p)^{n-k} = \sum_{k=0}^{n}\binom{n}{k}(p e^t)^k (1-p)^{n-k} \end{equation} $$
$a = p e^t$、$b = 1-p$ とみなして二項定理を逆向きに使うと、
$$ \begin{equation} M_X(t) = \big(p e^t + (1-p)\big)^n \end{equation} $$
となります。これは「成功確率 $p$ の試行を $n$ 回」という構造が、1回のMGF $(pe^t + 1 – p)$ の $n$ 乗になっていることを意味し、後述の「和は積」の性質を先取りしています。
一様分布 $U(a, b)$
密度 $p(x)=\frac{1}{b-a}$($a \leq x \leq b$)を代入します。単純な指数の積分です。
$$ \begin{equation} M_X(t) = \int_a^b e^{tx}\,\frac{1}{b-a}\, dx = \frac{1}{b-a}\left[\frac{e^{tx}}{t}\right]_a^b = \frac{e^{tb} – e^{ta}}{t(b-a)}, \qquad t \neq 0 \end{equation} $$
$t=0$ では $M_X(0)=1$ と定義します(上式の極限が1になることはロピタルの定理で確認できます)。

この図は代表的な分布のMGF曲線を重ねたものです。すべての曲線が $t=0$ で $M(0)=1$ という共通点を通る一方、立ち上がりの速さや曲がり方は分布ごとに異なります。指数分布のMGFが $t=1$ 付近で急激に発散する(定義域 $t<\lambda=1$ の端)ことも見て取れ、分布の裾の重さがMGFの収束範囲に反映されているのが分かります。
主要分布のMGFが出そろいました。これらをただ計算できるだけでなく、MGFには分布論を一変させる強力な性質が3つあります。次にそれを見ていきます。
モーメント母関数の3つの性質
MGFが「モーメントを生む」以上に重宝されるのは、次の3つの性質があるからです。
性質1: 一意性 — MGFは分布を完全に決める
ある区間($t=0$ を含む)でMGFが存在するなら、MGFは確率分布を一意に決定します。つまり「2つの確率変数のMGFが一致すれば、それらは同じ分布」です。これは数学的には、MGFがモーメント列(分布の全情報)を符号化していることから来ます。
この性質が効くのは、ある確率変数の計算をした結果、MGFが既知の分布のMGFと一致したときです。たとえば何かの和を計算してMGFが $\exp(\mu t + \frac{\sigma^2 t^2}{2})$ の形になったら、それだけで「この変数は $N(\mu,\sigma^2)$ に従う」と結論できます。密度関数を直接求めなくてよいので、証明が劇的に楽になります。
性質2: 独立な和のMGFは積になる
$X$ と $Y$ が独立なら、和 $X+Y$ のMGFは個々のMGFの積になります。証明は独立性($E[f(X)g(Y)]=E[f(X)]E[g(Y)]$)を使うだけです。
$$ \begin{equation} M_{X+Y}(t) = E[e^{t(X+Y)}] = E[e^{tX}e^{tY}] = E[e^{tX}]\,E[e^{tY}] = M_X(t)\,M_Y(t) \end{equation} $$
確率密度のレベルでは、和の分布は畳み込み積分 $\int p_X(u)p_Y(z-u)du$ という面倒な計算になります。それがMGFの世界では単なる掛け算に化けるのです。

この図は、独立な $X$ と $Y$ の和のMGFが $M_X(t)M_Y(t)$ という積になることを表しています。性質1(一意性)と組み合わせると強力です。たとえば $N(\mu_1,\sigma_1^2)$ と $N(\mu_2,\sigma_2^2)$ の和のMGFは、$\exp(\mu_1 t + \frac{\sigma_1^2 t^2}{2})\exp(\mu_2 t + \frac{\sigma_2^2 t^2}{2}) = \exp\!\big((\mu_1+\mu_2)t + \frac{(\sigma_1^2+\sigma_2^2)t^2}{2}\big)$ となり、これは $N(\mu_1+\mu_2, \sigma_1^2+\sigma_2^2)$ のMGFそのものです。つまり正規分布どうしの和がまた正規分布になる(再生性)ことが、掛け算1回で示せてしまいます。
性質3: 線形変換 $aX+b$ のMGF
$Y = aX + b$ という1次変換(スケール変更と平行移動)に対して、MGFは次のように変わります。指数の中を整理するだけです。
$$ \begin{equation} M_{aX+b}(t) = E[e^{t(aX+b)}] = E[e^{(at)X}\,e^{bt}] = e^{bt}\,E[e^{(at)X}] = e^{bt}\,M_X(at) \end{equation} $$
平行移動 $b$ は外側の係数 $e^{bt}$ に、スケール $a$ は引数の中身 $M_X(at)$ に現れます。標準化 $Z=(X-\mu)/\sigma$($a=1/\sigma$, $b=-\mu/\sigma$)を扱うときによく使う公式です。
これら3つの性質が、MGFを「単なるモーメント計算の道具」から「分布論の万能ナイフ」へと押し上げています。ところで、和に対して「積」になるのはやや扱いづらい面もあります。これを「和」に直すと、もっと見通しがよくなります。それがキュムラント母関数です。
キュムラント母関数 — 対数を取ると和が見える
MGFの対数を取った関数をキュムラント母関数(Cumulant Generating Function)と呼びます。
$$ \begin{equation} K_X(t) = \log M_X(t) \end{equation} $$
なぜわざわざ対数を取るのでしょうか。性質2で見たように、独立な和ではMGFが積 $M_X(t)M_Y(t)$ になりました。対数を取ると積は和に変わるので、
$$ \begin{equation} K_{X+Y}(t) = \log\big(M_X(t)M_Y(t)\big) = K_X(t) + K_Y(t) \end{equation} $$
となり、独立な和に対してキュムラント母関数は単純に足し算になる(加法的)という、とても扱いやすい性質が得られます。
さらに $K_X(t)$ を $t$ で展開したときの係数(を $n!$ 倍したもの)をキュムラント $\kappa_n$ と呼び、これらは平均・分散と直接結びつきます。実際、$K_X(t)=\log M_X(t)$ を微分すると、
$$ \begin{equation} K_X'(0) = \mu \;(\text{平均}), \qquad K_X”(0) = \sigma^2 \;(\text{分散}) \end{equation} $$
となります(導出は $K’=M’/M$、$K”=(M”M-(M’)^2)/M^2$ に $t=0$, $M(0)=1$ を代入すれば確認できます)。1次キュムラントが平均、2次キュムラントが分散です。3次・4次のキュムラントは歪度・尖度と結びつきます。
正規分布なら $K_X(t)=\log\exp(\mu t + \frac{\sigma^2 t^2}{2}) = \mu t + \frac{\sigma^2 t^2}{2}$ という2次式ちょうどで終わり、3次以上のキュムラントがすべて0になります。「正規分布は2次までで完全に決まる」という事実が、キュムラントの言葉では一目瞭然です。

この図は正規分布の場合のMGF $M_X(t)$ とキュムラント母関数 $K_X(t)=\log M_X(t)$ を並べたものです。右側の $K_X(t)$ は単純な2次曲線で、原点での傾きが平均 $\mu$、曲率(2階微分)が分散 $\sigma^2$ にそのまま対応します。対数を取ることで平均と分散が「傾き」と「曲がり具合」として直接読めるようになるのが、キュムラント母関数の利点です。
ここまではMGFが存在することを前提にしてきました。しかし冒頭で触れたとおり、MGFはいつでも存在するとは限りません。その弱点を補う「上位互換」が特性関数です。
特性関数 — MGFが存在しないときの切り札
MGF $M_X(t)=E[e^{tX}]$ は、裾の重い分布だと積分が発散して存在しないことがあります。代表例がコーシー分布で、密度 $p(x)=\frac{1}{\pi(1+x^2)}$ は裾が $1/x^2$ のようにゆっくりとしか減衰しません。一方 $e^{tx}$ は $x\to\infty$ で爆発的に増えるので、$t\neq 0$ では積分 $\int e^{tx}p(x)dx$ が発散し、MGFが存在しません。
この弱点を一発で解決するのが、$t$ のところに虚数単位 $i$ を入れた特性関数(Characteristic Function)です。
$$ \begin{equation} \varphi_X(t) = E[e^{itX}] \end{equation} $$
ポイントは $e^{itx}$ の絶対値です。オイラーの公式 $e^{i\theta}=\cos\theta + i\sin\theta$ より $|e^{itx}|=\sqrt{\cos^2(tx)+\sin^2(tx)}=1$ なので、被積分関数の絶対値が常に1に抑えられます。したがって積分 $\int e^{itx}p(x)dx$ はどんな確率分布でも必ず収束し、特性関数は常に存在します。コーシー分布の特性関数は $\varphi_X(t)=e^{-|t|}$ ときれいな形になります。
MGFと特性関数の関係は、形式的には $\varphi_X(t)=M_X(it)$ です。MGFが存在する範囲では、$t$ を $it$ に置き換えるだけで特性関数が得られます。違いを整理すると次のようになります。
- MGF $M_X(t)=E[e^{tX}]$: モーメントが微分で素直に出る($M^{(n)}(0)=E[X^n]$)。ただし裾の重い分布では存在しないことがある。
- 特性関数 $\varphi_X(t)=E[e^{itX}]$: 常に存在する。フーリエ変換と同じ構造を持ち、反転公式で密度を復元できる。中心極限定理の厳密な証明にも使われる。

この図は、正規分布(裾が薄い)とコーシー分布(裾が厚い)の密度を比べたうえで、コーシー分布ではMGFが発散して存在しない一方、特性関数は $|e^{itx}|=1$ のおかげで常に存在することを示しています。虚数 $i$ を入れて被積分関数の大きさを1に抑えるのが、裾の重い分布でも収束させる仕掛けだと分かります。実用上は「MGFが使えるならMGF、ダメなら特性関数」という棲み分けになります。
理論はここまでです。最後に、これまでの主張をPythonで数値的に確かめましょう。「経験的MGFが理論MGFに一致するか」「微分で平均・分散が復元できるか」を実際に計算します。
Pythonでの数値検証
まず、サンプルから計算した経験的MGFが、理論式 $M_X(t)=\exp(\mu t + \frac{\sigma^2 t^2}{2})$ に一致するかを確認します。経験的MGFは、定義 $E[e^{tX}]$ を標本平均 $\frac{1}{N}\sum_i e^{t x_i}$ で近似したものです。
import numpy as np
import matplotlib.pyplot as plt
np.random.seed(42)
# 正規分布 N(mu, sigma^2) からサンプリング
mu, sigma = 1.5, 2.0
N = 200000
samples = np.random.normal(mu, sigma, N)
# 経験的MGF: (1/N) Σ exp(t x_i)
tgrid = np.linspace(-0.6, 0.6, 25)
emp = np.array([np.mean(np.exp(t * samples)) for t in tgrid])
# 理論MGF: exp(mu t + sigma^2 t^2 / 2)
theo = np.exp(mu * tgrid + 0.5 * sigma**2 * tgrid**2)
print("最大相対誤差:", np.max(np.abs(emp - theo) / theo))
plt.figure(figsize=(7.5, 5))
plt.plot(tgrid, theo, label="理論 exp(mu t + sigma^2 t^2/2)")
plt.scatter(tgrid, emp, color="red", label="経験的 平均(exp(t x))")
plt.xlabel("t"); plt.ylabel("M_X(t)")
plt.legend(); plt.show()
このコードを実行すると、最大相対誤差は約 0.0017(0.17%)と非常に小さく、赤い点(サンプルから作った経験的MGF)が青い理論曲線にぴたりと重なります。MGFが「$e^{tX}$ の期待値」という定義どおりの量であり、標本から推定できることが確認できました。$t$ を大きくすると指数の効果で分散が増し誤差がやや膨らむため、ここでは $t$ を $[-0.6, 0.6]$ の範囲に絞っています。
次に、理論MGFを数値微分して、平均 $E[X]$ と分散 $\mathrm{Var}[X]$ が正しく復元できるかを確かめます。$M'(0)=E[X]$、$M”(0)=E[X^2]$、$\mathrm{Var}[X]=M”(0)-M'(0)^2$ を使います。
import numpy as np
mu, sigma = 1.5, 2.0
def M_normal(t):
# 正規分布のMGF
return np.exp(mu * t + 0.5 * sigma**2 * t**2)
h = 1e-4
# 中心差分で M'(0)=E[X]
M1 = (M_normal(h) - M_normal(-h)) / (2 * h)
# 2階差分で M''(0)=E[X^2]
M2 = (M_normal(h) - 2 * M_normal(0) + M_normal(-h)) / h**2
var = M2 - M1**2
print(f"M'(0) = {M1:.4f} (理論 平均 = {mu})")
print(f"M''(0) = {M2:.4f} (理論 E[X^2] = {sigma**2 + mu**2})")
print(f"分散 = {var:.4f} (理論 = {sigma**2})")
実行すると、$M'(0)=1.5000$(平均と一致)、$M”(0)=6.25$($E[X^2]=\sigma^2+\mu^2=4+2.25$ と一致)、分散 $=4.0000$($\sigma^2$ と一致)と表示されます。MGFを微分するだけで、平均も分散も理論値どおりに取り出せることが数値的に確認できました。これこそがモーメント母関数の威力です。

この棒グラフは、理論値(青)とMGFの数値微分から復元した値(オレンジ)を並べたものです。平均・$E[X^2]$・分散のいずれもぴたりと一致しており、「$n$ 階微分して $t=0$ を代入すると $n$ 次モーメントが出る」という理論が数値でも成り立つことが目で見て確認できます。

こちらは1つ目のコードに対応する図で、サンプルから計算した経験的MGF(赤い点)が理論MGF(青い曲線)に重なる様子を示しています。20万サンプルもあれば、定義どおりの量がほぼ誤差なく再現できることが分かります。
まとめ
本記事では、モーメント母関数(積率母関数)を主役に、確率分布の特徴を取り出す道具立てを体系的に解説しました。
- モーメント $E[X^r]$ は分布の特徴量の材料で、1次=平均、2次=分散、3次=歪度、4次=尖度に対応する。
- モーメント母関数 $M_X(t)=E[e^{tX}]$ は、$e^{tX}$ のテイラー展開を通じて全次数のモーメントを1本の関数の係数として格納する。
- $n$ 階微分して $t=0$ を代入すると $M_X^{(n)}(0)=E[X^n]$ となり、微分だけでモーメントが取り出せる。
- 正規・指数・ポアソン・二項・一様の各分布のMGFは、平方完成・指数級数・二項定理を使って導出できる。
- MGFには 一意性(分布を決める)・和は積(再生性の証明が楽)・線形変換 $e^{bt}M_X(at)$ という3大性質がある。
- キュムラント母関数 $K(t)=\log M(t)$ は和に対して加法的で、1次=平均・2次=分散を直接与える。
- 特性関数 $\varphi(t)=E[e^{itX}]$ は虚数 $i$ により常に存在し、MGFが発散するコーシー分布などでも使える上位互換。
モーメント母関数は、分布の和(再生性)や極限定理(中心極限定理)の証明で繰り返し登場する、確率・統計の屋台骨となる道具です。
次のステップとして、以下の記事も参考にしてください。