<金融アトラス/a>

金融アトラス

個人の勉強も兼ねて、少しずつまとめます。

K近傍法とは何か

 

本ページでは、K近傍法とは何かについてまとめたい。K近傍法(KNNとも呼ばれる)とは、機械学習アルゴリズムの一つであり、「教師あり学習」に分類される。

 

総務省の定義によると、K近傍法とは「分類に使われる手法の一つで、与えられた学習データと入力データとの距離を計算し、距離の近い順に探し出した K 個の学習データと、入力データとの多数決で得られた結果を、分類結果とする」アルゴリズムである。

 

例えば、ランダムに選ばれた人が関西出身か関東出身かを予測することを考える。手がかりとするのは「お好み焼きの年間消費額」と「もんじゃの年間消費額」である。まず、学習データとして100人のサンプルを集め、お好み焼きの年間消費額ともんじゃの年間消費額、そして出身(関西か関東か)のデータを集める。そして例えば、お好み焼きの消費額を横軸、もんじゃの消費額を縦軸とした散布図を作成し、その平面上に100のサンプルをプロットすることができる。そして、関西出身のプロットを赤色、関東出身のプロットを青色にラベリングすれば、出身とこれら2つの食べ物の消費量との関係がどのような傾向にあるかを見ることができる。

 

そして、この学習データを用いて、ランダムに選ばれた人(Aさんとする)が関西出身か関東出身かを予測する。まず、Aさんにお好み焼きともんじゃそれぞれの消費額を聞く。そうすると、Aさんに関するデータも散布図の中にプロットすることができる。

 

ここで、K近傍法を用いる。いったんここではK=1とすると、Aさんのプロットに最も距離が近いサンプルデータを求め(距離の計算にはユークリッド距離を用いることが多い)、そのサンプルが関東出身であればAさんは関東出身であり、サンプルが関西出身であればAさんは関西出身であると予測する。

 

K=3であれば、最も距離が近い3つのサンプルをもとに分類を決定することになる。加重平均を用いて、より距離が近いサンプルを重視して分類を決定することもできる。

Kを増やし過ぎると、モデルの精度が下がるので注意が必要である。

 

 

(出典):

総務省高等学校における「情報II」のためのデータサイエンス・データ解析入門