核関数に基づく方法では、領域 の体積
を固定して、データから
を決定するが、K-NN法では、逆に
を固定して、
を決定することによ
り密度分布を推定する。点
を中心とする超球を考え、その超球内に
ちょうど
個のデータ点が含まれるまで超球の半径を大きくして行く。ちょ
うど
個のデータ点が含まれるようになった超球の体積を
と
すると、密度分布は式(28)から、
![]() |
(35) |
K-NN法では、超球に含まれるデータ点の個数 を大きくすると、推定され
る密度分布は次第に滑らかになる。核関数に基づく方法の場合と同様に、滑ら
かさを大きくしすぎると、バイアスが大きくなり良い推定結果が得られなくな
り、滑らかさが不十分な場合には、密度分布が個々の学習データに強く依存す
るようになり、推定結果の分散が大きくなってしまう。ここでも、滑らかさの
パラメータを適切な値に決めることが重要となる。
パターン認識において確率密度分布を推定するのは、識別(classifier)を構成
するためであるが、K-NN法を利用して各クラスの条件付き確率密度分布
を推定すると、以下のような簡単な識別器が構成できる。
今、学習データとして、クラス から
個の特徴ベクトルが得られ
たとする。また、全学習データ数は
とする。点
を中心とする超球を考え、その中にちょうど
個の学習データを
含むまで超球の半径を大きくして行った時の超球の体積を
とす
る。また、その超球内には、クラス
のデータが
個含まれている
とする。この時、クラス
の条件付確率密度関数は、
![]() |
(36) |
![]() |
(37) |
![]() |
(38) |
![]() |
(39) |