KNN の背景

KNN アルゴリズムは、多数決投票のメカニズムを使用します。トレーニング・データ・セットからデータを収集し、後で、新しいレコードについて予測するときにそのデータを使用します。

新しいレコードごとに、トレーニング・データ・セットから最も近い k 個のレコードを決定します。それらの最近傍レコードのターゲット属性の値を基に、新規レコードについて予測します。

基本的な最近傍 (NN) アルゴリズムでは、任意のインスタンスについて分類予測または回帰予測を行えます。この目的のために、NN アルゴリズムは任意のインスタンスに最も近いトレーニング・インスタンスを特定します。そして、NN アルゴリズムは、そのトレーニング・インスタンスのクラス・ラベルまたはターゲット関数値を、任意のインスタンスの予測されたクラス・ラベルまたはターゲット関数値として返します。

KNN アルゴリズムでは、インスタンスを 1 つのみ使用するのではなく、指定された数 (k≥1) の最近傍トレーニング・インスタンスを使用することで、このプロセスを拡張できます。一般的には、1 から数十までの範囲の値にします。

出力は、KNN アルゴリズムを分類または回帰のどちらに使用するのかによって異なります。

  • KNN 分類の場合は、最近傍の投票によってクラス・ラベルが予測されます。つまり、選択した k 個のインスタンスの集合の中で過半数を獲得したクラス・ラベルが返されます。
  • KNN 回帰の場合は、最近傍のターゲット関数値の平均値が予測値として返されます。

指定した数 (k≥1) を使用することで、オーバーフィッティング防止と精度の間のトレードオフを制御できます。一般に、ノイズの多いデータには、オーバーフィッティング防止が重要になります。同じようなインスタンスを区別して予測するためには、精度が重要になります。