5. 重み付き平均・列平均
概要
このシリーズではデータ分析等で現れる平均について, 数学的観点から定義・解説する.
よく知られた平均である算術平均, 幾何平均, 調和平均と, これらを一般化した平均, またそれ以外の平均の例を紹介して, それぞれが持つ性質について述べる.
今回は最終回として, 既存の平均を使って新たに平均を構成する重み付き平均, 列平均を取り上げる.
- 平均の一般的な定義・性質,
- 算術平均・幾何平均・調和平均,
- ヘルダー平均・一般化 f 平均,
- 期待値・中央値・最頻値,
- (ココ) 重み付き平均・列平均,
重み付き平均 (weighted mean)
重み付き平均は, $X = [x_0, x_1, \dots, x_{n-1}] \in \mathbb{R}^n$ に対して重み $\Lambda = [\lambda_0, \lambda_1, \dots, \lambda_{n-1}] \in \mathbb{R}^n$ を考えて, $\lambda_i$ に応じて $x_i$ を重視して平均を取る手法である.
重み付き算術平均, 一般化 f 平均
重み付き算術平均は,
$$ \begin{gather}
\mathrm{AM}^\Lambda(X) := \frac{\sum_{i=0}^{n-1}\lambda_ix_i}{\sum_{i=0}^{n-1}\lambda_i}, \\
\text{for} \ X = [x_0, x_1, \dots, x_{n-1}] \in \mathbb{R}^n, \ \Lambda = [\lambda_0, \lambda_1, \dots, \lambda_{n-1}] \in \mathbb{R}^n_{\gt 0}, \\
\end{gather} $$
で与えられる ($\mathbb{R}_{\gt 0}$ は正の実数の集合).
$\sum_{i=0}^{n-1}\lambda_i = 1$ に制限して $\mathrm{AM}^\Lambda(X) := \sum_{i=0}^{n-1}\lambda_ix_i$ と定義するパターンも多い.
全て同じ重みを与えて $\lambda_0 = \lambda_1 = \dots = \lambda_{n-1}$ とすると通常の算術平均になる.
重み付き一般化 $f$ 平均は重み付き算術平均を使った一般化 f 平均で,
$$ \begin{gather}
M_f^\Lambda(X) := M_{f; \mathrm{AM}^\Lambda}(X) = f^{-1}(\mathrm{AM}^\Lambda(f(X))), \\
\text{for} \ X \in \mathcal{D}_f^n, \
\end{gather} $$
と書ける.
重み付き算術平均は内部性を持つため, 一般化 $f$ 平均での同様の議論で, $x_i$ を $f$ の定義域 $\mathcal{D}_f$ 上から取れば $M_f^\Lambda(X)$ が定義できることが分かる.
パラメータ $p \neq \pm\infty$ の重み付きヘルダー平均も重み付き一般化 $f$ 平均から,
$$ \begin{gather}
\mathcal{H}_p^\Lambda(X) = \begin{cases}
M_{x^p}^\Lambda(X) & p \neq 0, \pm\infty, \\
M_{\log{x}}^\Lambda(X) & p = 0, \\
\end{cases} \\
\text{for} \ X \in \mathbb{R}_{\gt 0}^n, \\
\end{gather} $$
で得られる.
$p = \pm\infty$ の場合は極限操作で,
$$ \lim_{p \rightarrow \pm\infty}\mathcal{H}_p^\Lambda(X) = \mathcal{H}_{\pm\infty}(X), $$
と重みなしのヘルダー平均 (最大・最小値) に一致することが分かる.
重み付き確率論的平均
重みなしのそれぞれの平均の定義は前回記事を参照.
期待値, 中央値, 最頻値の場合, 仮定した確率密度関数 $p(x; X)$ に対して重み関数 $l: \mathcal{D}_p \rightarrow \mathbb{R}$ を考えて,
$$ p^l(x; X) := \begin{cases}
\frac{l(x)p(x)}{\int_{\mathcal{D}_p}l(x)dx} & \text{連続分布を仮定}, \\
\frac{l(x)p(x)}{\sum_{x \in \mathcal{D}_p}l(x)} & \text{離散分布を仮定}, \\
\end{cases} $$
を使ってそれぞれを算出することで定義される.
重み付きの標準的な中央値は, $X$ をソートして隣り合う $x^\sigma_i, x^\sigma_{i+1}$ の間隔を $\Delta = [\delta_0, \delta_1, \dots, \delta_{m-2}]$ で重み付けて,
$$ \begin{gather}
i_l^\Delta := \max{\left\{i \ \middle| \ \sum_{j=0}^{i-1}\delta_j \leq \frac{1}{2}\sum_{j=0}^{n-2}\delta_j\right\}}, \\
i_u^\Delta := \min{\left\{i \ \middle| \ \sum_{j=0}^{i-1}\delta_j \geq \frac{1}{2}\sum_{j=0}^{n-2}\delta_j\right\}} \\
\end{gather} $$
を使って $x^\sigma_{i_l^\Lambda}, x^\sigma_{i_u^\Lambda}$ の平均を取ることで得られ, $\delta_j = 1$ と取れば $\sum_{j=0}^{k-1}\delta_j = k$ であり, 標準的な中央値に一致することが確認できる.
点の間隔でなく各点 $x^\sigma_i$ に対して重みを付けたいなら, 重み $\lambda_i$ から $\delta_i := \lambda_i+\lambda_{i+1}$ とすればいい.
例えば下側 (第1) 四分位数は,
$$ \delta_j := \begin{cases}
3 & j \lt \frac{n-1}{4}, \\
1 & j \geq \frac{n-1}{4}, \\
\end{cases} $$
で重み付けた標準的な中央値と見なせる1.
重み付きの標準的な最頻値の場合は,
$$ v_j^\Lambda := \sum_{i \in [\alpha_j, \alpha_{j+1})}\lambda_i, $$
が最大になる $j$ を最頻区間として最頻値を計算すればいい.
列平均 (sequential mean)
2数 $a_0, b_0$ から始めて, 算術平均 $\mathrm{AM}$, 幾何平均 $\mathrm{GM}$ によって,
$$ \begin{cases}
a_{i+1} := \mathrm{AM}([a_i, b_i]), \
b_{i+1} := \mathrm{GM}([a_i, b_i]), \
\end{cases} $$
で生成される2つの数列 ${a_n}, {b_n}$ は同じ値に収束することが知られており, その極限値は算術幾何平均と呼ばれる.
一般の2つの平均 $\mu_a, \mu_b$ によって同様に数列を生成して同じ値に収束する時, その極限値を取ると新たな平均を構成することができ, 次の文献等では sequential mean と呼ばれている (和訳は見つからなかったのでこのシリーズでは列平均と訳す).
cf. THEORY OF MEANS AND THEIR INEQUALITIES / J. Sándor (PDF:http://www.math.ubbcluj.ro/~jsandor/lapok/Sandor-Jozsef-Theory%20of%20Means%20and%20Their%20Inequalities.pdf)
$$ \begin{gather}
\mu_a\boxtimes\mu_b([a_0, b_0]) := \lim_{n \rightarrow \infty}a_n = \lim_{n \rightarrow \infty}b_n, \\
a_{i+1} = \mu_a([a_i, b_i]), \quad b_{i+1} = \mu_b([a_i, b_i]), \\
\end{gather}$$
列平均は任意の $\mu_a, \mu_b$ に対して構成できるわけではない.
例えばパラメータ $\pm\infty$ のヘルダー平均を適用すると, 常に $a_n = \max{{a_0, b_0}}, b_n = \min{{a_0, b_0}}$ であり, $a_0 \neq b_0$ であれば同じ値には収束しない.
ここで, 2つの平均 $\mu_0, \mu_1$ について, 任意の $x_0, x_1$ に対して常に $\mu_0([x_0, x_1]) \leq \mu_1([x_0, x_1])$ となることを $\mu_0 \ll \mu_1$ と書くと,
(1) $\mu_a, \mu_b$ がいずれも内部性を持つ,
(2) $\mu_a \ll \mu_b$ または $\mu_a \gg \mu_b$,
が共に成り立てば,
$$ a_0 \leq a_1 \leq \dots \leq a_n \leq b_n \leq \dots \leq b_0, $$
($\mu_a \gg \mu_b$ ならば逆の不等号) から $a_n, b_n$ が収束することが言えて,
(3) $\mu_a, \mu_b$ のいずれかが連続かつ狭義内部性を持つ,
であれば, 例えば $\mu_a$ について連続かつ狭義内部性が成り立つ時, 連続性から,
$$ \begin{gather}
a^* := \lim_{n \rightarrow \infty}a_n, \ b^* := \lim_{n \rightarrow \infty}b_n, \\
a^* = \lim_{n \rightarrow \infty}\mu_a([a_n, b_n]) = \mu_a([a^*, b^*]), \\
\end{gather} $$
で, 狭義内部性から $a^* = b^* = \mu_a([a^*, b^*])$ となることが分かる.
2つのパラメータのヘルダー平均は (1), (2) を満たし, パラメータが $\pm\infty$ でなければ (3) も成り立つので列平均が定義できる.
一般化 $f$ 平均は常に連続かつ狭義連続性を満たすため, $M_f, M_g$ が (2) を満たすのであれば列平均が存在する.
第3回の一般化 f 平均の性質で述べたように, $g\circ f^{-1}$ が凸関数なら (2) が成り立つことが分かっている.
性質
重み付き平均, 列平均の性質は, 元になった平均の性質に大きく依存する.
元の平均の性質を引き継ぐ ($\mu$ で成り立つなら派生した平均 $\mu'$ でも成り立つ) ことが多い.
一般性質
(1) 重み付き平均
重み付き一般化 $f$ 平均は, 一般的な性質のうち狭義内部性, 連続性, 狭義単調増加性を満たす.
対称性, 双対称性については重みの置換, 入れ替えも含めると成り立つ.
つまり,
$$ \begin{gather}
M_f^{\Lambda^\sigma}(X^\sigma) = M_f^\Lambda(X), \\
M_f^\Lambda([M_f^{\Lambda'}([x_{ij}]_{j=0, 1, \dots, m-1})]_{i=0, 1, \dots, n-1}) = M_f^{\Lambda'}([M_f^{\Lambda}([x_{ij}]_{i=0, 1, \dots, n-1})]_{j=0, 1, \dots, m-1}). \
\end{gather} $$
置換性についても, $\Lambda_{:k} = [\lambda_0, \lambda_1, \dots, \lambda_{k-1}]$ によって,
$$ M_f^\Lambda(X) = M_f^\Lambda([M_f^{\Lambda_{:k}}([x_0, x_1, \dots, x_{k-1}]), \dots, M_f^{\Lambda_{:k}}([x_0, x_1, \dots, x_{k-1}]), x_k, \dots, x_{n-1}]), $$
という形で成り立つ.
重み付きの標準的な中央値, 最頻値はやはり付随する平均の性質に依存し, 重みなしで成り立つ性質を引き継ぐ.
(2) 列平均
2つの平均 $\mu_a, \mu_b$ による列平均 $\mu_a\boxtimes\mu_b$ は, $\mu_a, \mu_b$ が共にそれぞれ内部性, 対称性, 斉次性, 単調増加性を持つなら, 列平均も同じ性質を持つ.
双対称性, 連続性については極限の交換が発生するため, $\mu_a, \mu_b$ で成り立っても $\mu_a\boxtimes\mu_b$ でも成り立つとは限らない.
-
中央値と同様に, 四分位数においてちょうど 25% に当たる点を取れない時の処理もいくつか方法がある. NumPy の
np.quartile
,np.percentile
では $x^\sigma_{i_l^\Lambda}, x^\sigma_{i_u^\Lambda}$ に対して $[(n-1)%1, 1-(n-1)%1]$ で重み付けた算術平均を取っている ($a%b$ は $a$ を $b$ で割った余り, ここでは小数部分). ↩