1 核密度推定の概要

1.1 基本概念(確率密度推定

核密度推定(kernel density estimation, KDE)は、有限個の観測値から連続的な確率密度関数を作るための方法である。観測値が少なくても分布の形を滑らかに描ける点が特徴で、ヒストグラムのように区切り幅を明示せずに、データ点の周囲に滑らかな寄与を与えることで密度の形を再構成する。通常、確率密度は「値の起こりやすさ」を表すための量として解釈され、推定結果はデータの相対的な濃淡を示す曲線または曲面となる。

1.2 ノンパラメトリック手法としての位置づけ

KDEは、分布が例えば正規分布指数分布などの特定の形を持つ、といった仮定を置かないノンパラメトリック手法に分類される。従来のパラメトリック推定では少数のパラメータで分布形を規定するが、KDEはデータそのものを局所的な部品にして合成するため、分布の複雑さに追随しやすい。一方で、分布の滑らかさを制御する帯域幅(後述)が重要な役割を持ち、これを誤ると推定結果が過度に細かくなったり、必要な特徴を失ったりする。

1.3 カーネル重み付け和の考え方

KDEでは、各データ点を中心として「カーネル」と呼ばれる局所的な関数を配置し、それらを足し合わせる。データ点がN個あるとき、各点は密度推定に対して同程度に寄与するのが基本である(必要に応じて重みを導入することもある)。このとき全体の推定密度は「各カーネルの重なりの総和」として表され、重なり具合は帯域幅で決まる。帯域幅を小さくすると各局所寄与が尖り、全体として揺らぎが大きくなる。逆に大きくすると寄与が広がり、滑らかだが細部の識別が難しくなる。

2 数式による定義と推定式

2.1 一変量の核密度推定

一変量の観測データを \(x_1,\dots,x_n\) とする。核密度推定は、帯域幅を \(h>0\)、カーネル関数を \(K(\cdot)\) として \[ \hat f_h(x)=\frac{1}{nh}\sum_{i=1}^n K\left(\frac{x-x_i}{h}\right) \] で与えられる。ここで \(K\) は通常、密度として解釈できる形を持ち、積分が1になるように正規化される。\(1/(nh)\) はスケール変換による密度の次元調整を行う因子であり、全体として積分がほぼ1になるよう設計される。

2.2 多変量の核密度推定

2.2.1 同時密度と形状の推定

多変量観測 \(x_i\in \mathbb{R}^d\) に対しては、カーネルを \(d\) 次元に拡張する。代表的な表現では \[ \hat f_h(x)=\frac{1}{n h^d}\sum_{i=1}^n K\left(\frac{x-x_i}{h}\right) \] の形をとる。ただしこの簡略形は等方的な帯域幅を仮定する場合に相当することが多い。より一般には、共分散構造を反映する帯域幅行列 \(H\) を用いて \[

\hat f_H(x)=\frac{1}{nH^{1/2}}\sum_{i=1}^n K\left(H^{-1/2}(x-x_i)\right)

\] のように書かれる。これにより、各方向に対して異なる平滑化強度を与えられるため、データの幾何に合わせた密度推定が可能になる。

2.2.2 回転スケーリングの影響

多変量で帯域幅行列を持たない単純な等方平滑を用いると、特徴量のスケール差や相関の方向性を十分に吸収できず、形状が歪むことがある。回転(特徴の基底変換)に対して頑健な推定を目指すには、帯域幅をデータの散らばりに合わせて調整することが重要になる。特に、特徴の単位が異なる場合は標準化前提となり、そうでないと帯域幅の意味が曖昧になる。結局のところ、カーネルが「どの距離をどれだけ平均化するか」を決めるため、スケーリングの選択は推定結果の形に直結する。

2.3 推定器の性質(正値性・積分)

カーネル関数が非負である、あるいは少なくとも推定器が負値にならない形で設計されていると、KDEの推定密度は正値性を満たしやすい。さらに、カーネルが積分1に正規化されていると、推定密度の全空間における積分は理想的には1となる。実務では有限区間での評価や境界処理により数値誤差や質的な偏りが生じうるが、基本設計としては「確率密度としての整合性」を確保することが狙いである。

3 カーネル関数

3.1 カーネルの要件(中心・対称性など)

カーネルの役割は「局所的にどのような形で平均化するか」を決めることにある。一般に、中心近傍で十分滑らかで、重心がゼロに位置する(対称性を持つ)ことが望ましい。これにより、単峰の周りで不必要な歪みが生じにくくなる。また、分布の尾の扱いにも影響があるため、カーネルの減衰の速さや支持の有限/無限が実装上の性質に結びつく。さらに、密度としての整合性のために積分が1であること、必要ならモーメント条件(平均や分散に関する条件)が仮定される。

3.2 一般的なカーネルの種類

3.2.1 ガウスカーネル

ガウスカーネルは最も広く使われる代表例で、カーネルが指数関数で減衰するため、滑らかな推定曲線になりやすい。支持が無限であるため、どの点からの寄与も残る。これは分布が境界を跨ぐ状況での自然な滑らかさに繋がる一方、有限領域での補正が必要になりやすい場合もある。帯域幅と合わせて選ぶことで、過不足ない平滑化を作りやすい。

3.2.2 エパネチコフ・カーネル

エパネチコフ・カーネルは有限の支持を持ち、ある範囲内で非ゼロになり、その外ではゼロになる形で知られる。有限支持は計算効率や、境界付近での振る舞いに影響することがある。理論的にも特定の損失基準の下で有利な性質が示されることがあり、実装上の定番となっている。

3.2.3 一様カーネル

一様カーネルは帯域幅の範囲内では一定値を与え、外では0とするタイプである。直感的には「近傍領域内のデータ密度を単純に平均する」ことに近い。ただしその不連続さが推定密度の滑らかさを損ねることがあり、他のカーネルに比べて視覚的な階段状の変化が現れることがある。必要に応じて他のカーネルへ切り替える判断がされる。

3.3 境界効果と補正の考え方

推定対象の変数が有限区間に制限される場合、例えば下限がある領域ではカーネルがその外側にも広がる。すると外側領域では確率質量が存在しないのに推定がそこへ漏れてしまい、密度の下方へのバイアス(境界付近の過小評価)が起きる。対策としては、境界補正(推定式の調整)、反射法(データを境界に対して鏡映して寄与を補う)、あるいは境界を考慮したカーネル設計などが用いられる。どの補正が適切かは問題の変数制約とカーネルの選択に依存する。

4 帯域幅(スムージング)の選択

4.1 帯域幅が推定に与える影響(バイアスと分散)

帯域幅 \(h\) は、局所平均の「範囲」を決めるパラメータである。小さすぎると各点の寄与がほぼ尖り、サンプルの偶然変動がそのまま推定曲線に現れて分散が大きくなる。大きすぎると寄与が過度に広がり、複数の山や急な変化といった特徴が平均化されてバイアスが増える。したがって現実の推定では、分散とバイアスのトレードオフのバランスを取ることが不可欠である。

4.2 代表的な帯域幅選択法

4.2.1 ルール・オブ・サムル

ルール・オブ・サムルは、理論的な近似に基づいて帯域幅を直接計算する手法である。データの標準偏差やサンプルサイズを用いて \(h\) の目安を与えるため、実務では導入が容易である。もっとも、その前提が正規性などの条件に依存する場合があり、分布形が大きく異なると適合が悪くなることがある。そのため、厳密さが必要な場面では交差検証など別手段と併用することがある。

4.2.2 交差検証による選択

交差検証では、推定された密度を検証データでどれだけよく説明できるかを指標化し、その指標が最大(または最小)となる帯域幅を選ぶ。典型例として、各候補の \(h\) に対し、推定密度で検証点の尤度を評価する方法がある。利点はデータに即した条件選択が可能な点である。一方で、計算コストが増えやすく、候補の範囲設定や分割戦略により結果が揺れることがある。

4.2.3 対数尤度やMISEに基づく基準

MISE(平均統計誤差の一種)に基づく基準では、真の密度からの平均的なズレを理論的に近似して帯域幅を決める。MISEはバイアスと分散を通じて説明できるため、理論的な意味を持たせやすい。対数尤度ベースの選択は、確率モデルとしての説明力を重視し、観測点が密度の高い領域に位置するほど高評価になる。どちらも目的関数が異なるため、得られる \(h\) に差が出ることがある。

4.3 自動化と実務上の注意

現場では、複数の候補帯域幅を用意して自動で選択するワークフローがよく採用される。ただし自動化には落とし穴がある。例えば、外れ値が多いと散らばりの指標が増大し、帯域幅が過大になって細部が消える場合がある。また、多変量で相関が強いデータでは、単純な等方平滑のまま自動決定すると歪みが残りやすい。さらに、境界が存在する場合は、選択法が境界補正を組み込んでいないと系統誤差が残る。したがって、帯域幅自動選択の前に前処理と評価設計を整えることが重要である。

5 理論的性質

5.1 一致性(大標本での収束)

KDEの推定器は、サンプルサイズが増えると真の密度に近づく性質を持ちうる。ここで「近づき方」は、点ごとの一致(特定の点での収束)や平均的な意味での収束など、評価の仕方で定義される。基本的には、帯域幅が大きすぎても小さすぎても良くないため、\(n\) に応じて \(h\) を適切に減衰させるような条件が必要になる。このとき、カーネルの性質(対称性、モーメント条件、滑らかさ)も収束の成否に関与する。

5.2 漸近的なバイアスと分散

漸近解析では、推定誤差をバイアス成分と分散成分に分解し、それぞれが \(h\) と \(n\) に対してどの程度増減するかを調べる。一般に、バイアスは平滑化の強さに関係し、\(h\) が大きいほど高次の形状情報が失われる方向に働く。一方、分散は \(h\) が小さいほど増大し、標本のばらつきが推定曲線に反映される。これにより、最適な帯域幅の概ねのオーダーが導かれることが多い。

5.3 平均統計誤差(MISE)の考え方

MISEは、推定密度と真の密度との差を全空間で平均し、二乗誤差としてまとめる概念である。バイアスの寄与と分散の寄与が合成される形で表現されるため、推定の性能を単一の数値として比較しやすい。実務ではMISEそのものを厳密に計算できないことも多く、代替としてMISEを近似した基準(例えば理論的に導かれる帯域幅の式)を用いて帯域幅を決めることがある。結果として、理論と実装が橋渡しされる。

5.4 次元の呪いと多変量での課題

多変量では次元 \(d\) が増えるほど、同じ密度精度を得るのに必要なデータ量が急増する。これは「次元の呪い」と呼ばれる現象で、平滑化の体積が大きくなり、局所性が保てなくなるために起きる。KDEはその形からして局所平均の合成なので、次元が高いほど有効サンプル数が減ったような振る舞いになる。さらに、帯域幅を一様に制御するだけでは方向性の違いを表現できず、適切な指標選択や次元削減、あるいは適応型帯域幅の導入が検討される。

6 実装と計算

6.1 計算量の見積もり

素朴な実装では、各評価点ごとに全データ点の寄与を合計するため、評価点数を \(m\) とすると計算量は概ね \(O(nm)\) となる。多変量では距離計算や行列演算のコストが上乗せされる。密度プロットのためにグリッド状の評価点を多く取るほど負荷が増えるため、目的(可視化か、推論のための評価か)に応じて評価点の数を設計することが重要になる。

6.2 高速化のための工夫(近傍探索など)

高速化の基本方針は「寄与が十分小さいカーネルを計算しない」ことである。有限支持のカーネルや急速に減衰するカーネルでは、ある半径外の点を無視して近傍だけを使う戦略が適用できる。近傍探索にはkd-treeやball tree、あるいは距離空間に基づくインデックスが利用されることがある。さらに多評価点ではバッチ化や行列計算による最適化が効く場合がある。

6.3 ソフトウェア実装の考え方(典型的手順)

典型的な手順は、(1)データの整形(次元と型、欠損処理)、(2)特徴量のスケーリング、(3)帯域幅候補の設定と選択、(4)評価点での密度算出、(5)必要に応じて境界補正や重み付けの反映、(6)妥当性確認(例えば極端な値や負値のチェック)である。実装ではカーネル定義と正規化、スケール(\(h\) や \(H\) の扱い)を取り違えると全体が崩れるため、単位系と実装ライブラリの仕様を注意深く合わせる必要がある。

6.4 データ前処理(標準化・欠損・外れ値)

前処理はKDEの結果を大きく左右する。標準化は多変量で特に重要で、特徴の単位差を相殺することで帯域幅の意味を一貫させる。欠損がある場合は、補完(imputation)や対象外の扱いを統一する必要がある。外れ値は密度推定の裾を引き伸ばし、帯域幅選択に影響するため、ロバストな帯域幅方針や外れ値検出との併用が検討される。ただし外れ値を機械的に除外すると重要な分布特徴が失われる可能性もあるため、理由付けと感度分析が望ましい。

7 応用例

7.1 変数の分布可視化(密度プロット)

KDEは、連続量の分布形を滑らかな曲線として可視化する目的でよく用いられる。ヒストグラムと異なり、区切り位置に依存しにくく、分布の山や裾の変化を直感的に観察できる。特に複数条件の比較では、帯域幅を揃えて密度曲線の形状差を見ることで、中心傾向だけでなく分散や歪みの違いを把握しやすい。

7.2 異常検知(低密度領域の扱い)

異常検知では「観測が高密度領域にない」ことを手掛かりにする。KDEで推定した密度が閾値より低いサンプルを異常候補として扱えば、手続きは比較的単純になる。もっとも、異常と低密度は必ずしも一致しないため、評価は別途必要である。例えば正規データにもまれな揺らぎが存在する場合、低密度領域の定義が厳しすぎると誤検知が増える。

7.3 予測・モデリングへの利用(確率的推論)

KDEは確率密度の推定器として扱えるため、予測に確率的な意味を持たせたい場面で利用される。例えば、ある条件下で目的変数の周辺分布をKDEで近似し、確率区間や分位点を算出することができる。さらに、密度推定結果を後段の推論(ベイズ的更新や尤度計算)に組み込む枠組みも考えられる。ただしサンプル数が少ないと密度推定の不確実性が大きくなるため、過信を避ける設計が求められる。

7.4 自由度の調整が必要な場面

KDEでは帯域幅が事実上の自由度として働くため、データ量に応じた調整が必要になる。データが少ないのに帯域幅が小さいと、推定がノイズを学習してしまい、見かけの複雑さだけが増える。逆に、データ量が多いのに帯域幅が大きいと、重要な多峰性などが潰れる。こうした調整は、品質評価(後述)とセットで運用するのが一般的である。

8 評価と実験設計

8.1 推定精度の評価指標

推定精度の評価では、真の密度が利用できる状況では二乗誤差やMISEに基づく指標が用いられる。現実では真の密度が未知なため、擬似的な評価として検証データの対数尤度(密度が高い点をよく当てるか)や、距離尺度に基づく比較が用いられる。可視化による確認も補助的に役立つが、主指標はタスクに合わせて定めることが必要である。

8.2 シミュレーションによる比較

シミュレーションでは、既知の分布からデータを生成し、KDEの推定結果と真の分布を比較できるため、帯域幅やカーネル選択の影響を検証しやすい。分布が単峰か多峰か、裾の重さ、境界の有無などを変えながら系統的に評価できる。さらに、サンプルサイズを変えてどの程度のデータで安定するかも確認できるため、次元の呪いの影響の実感にも繋がる。

8.3 検証データの扱い

検証では、学習に使ったデータと評価に使うデータを分けるのが基本である。交差検証を採用しない場合でも、訓練用と評価用を明確にすると過大評価を抑えられる。密度推定は「見た目が良い」ことと「予測に役立つ」ことが一致しない場合があるため、評価点の設計(どの領域を重視するか)も意識する必要がある。

8.4 再現性(乱数・前処理条件)

再現性を確保するには、乱数シード、データ分割、前処理の手順(標準化の統計量の算出範囲)、外れ値処理の基準などを固定することが重要になる。特に帯域幅選択で交差検証を行うと、分割の違いで結果が動くことがあるため、報告には分割戦略や候補帯域幅の取り方を含めるのが望ましい。計算環境(ライブラリの実装差や浮動小数誤差)も差の要因になりうる。

9 関連手法

9.1 ヒストグラムとの関係

ヒストグラムもまたデータから分布を可視化する方法であり、局所平均化の考え方を持つ。ただし、区切り幅(ビン幅)と区切り位置が推定形に強く影響し、階段状の不連続さが残りやすい。KDEはカーネル関数によって連続な寄与を与えることで、これらの欠点を緩和する方向に設計されていると言える。

9.2 k近傍法との関係

k近傍法は、ある点の周囲に含まれる近傍の個数や半径を基に局所密度を推定する。距離ベースでスムージングを行う点でKDEと哲学が近いが、KDEは固定の帯域幅(あるいは行列)で滑らか化するのが基本である。k近傍はデータ密度に応じて局所半径が変わるため、適応的な振る舞いが期待できる一方で、パラメータ選択や次元の影響の受け方が異なる。

9.3 帯域幅適応型(アダプティブ)手法

適応型KDEでは、帯域幅を空間ごとに変える。密度が高い領域では細かな構造を捉えるために帯域幅を小さくし、疎な領域では過度なノイズを抑えるために帯域幅を大きくするような考え方である。これにより、単一の帯域幅では難しい多峰性や局所的な広がりの違いに対応しやすくなる。設計には推定の安定性と計算負荷のトレードオフが存在する。

9.4 他の密度推定(混合モデル等)との比較

混合モデル(例えばガウス混合)では、分布を有限個の成分で表し、パラメータ(平均や共分散)を推定する。KDEは自由度の調整が帯域幅に集中するのに対し、混合モデルは成分数や共分散の形が自由度になる。混合モデルは解析的な密度評価がしやすい場合がある一方、成分数の選択や局所解の問題がある。KDEは柔軟な形状追随が期待できるが、次元が高いと必要データ量が増えやすい、という違いがある。

10 よくある誤解とトラブルシューティング

10.1 帯域幅の選び方を誤るケース

代表的な失敗は、見た目だけで帯域幅を決めてしまうことである。過度に小さな帯域幅はスパイク状の推定を生み、データの偶然変動を真の構造と誤認しやすい。逆に大きすぎると複数の山が一つに潰れ、重要な特徴を落とす。対策として、評価指標に基づく選択と、帯域幅を変えた感度分析が有効である。

10.2 次元数が多い場合の失敗例

多変量で特徴量を増やした結果、密度曲線が極端に平坦になったり、局所構造が見えなくなることがある。これは有効サンプル数の不足によるもので、次元の呪いの典型的な症状である。対策として、特徴量削減(PCAなど)、帯域幅行列の工夫、適応型手法、あるいは別の密度推定枠組みへの切替が検討される。

10.3 境界付近での解釈の注意

境界補正を行わずに推定密度を解釈すると、境界付近の密度が体系的に低く見えることがある。特に、変数の物理的制約(例えば非負である、範囲が有限である)がある場合には誤解が起きやすい。可視化を行う際は、推定の信頼性が下がる領域を明確に意識し、必要なら補正を適用して解釈する。

10.4 可視化の過信と確認手順

密度プロットは直感的であるが、帯域幅や評価グリッドの影響を受ける。見た目が滑らかであっても、予測性能や平均的誤差が良いとは限らないため、評価指標で裏取りする必要がある。確認手順としては、帯域幅の複数候補で比較し、検証データに対する性能(対数尤度など)を見て意思決定することが望ましい。可視化は仮説生成、指標は検証という役割分担が効果的である。