K = 1の場合のKNN分類器のトレーニングエラー


8

クイズでこの質問を受けました。K= 1の場合、KNN分類器のトレーニングエラーはどうなるのかと尋ねられました。KNN分類器にとってトレーニングは何を意味しますか?KNN分類器についての私の理解は、データセット全体を考慮し、新しい観測値に最も近いK近傍の大部分の値を割り当てることでした。トレーニングはどこにありますか?また、このために提供された正解は、データセットに関係なくトレーニングエラーがゼロになることでした。これはどのようにして可能ですか?

回答:


13

ここでのトレーニングエラーは、トレーニングセットをテストセットとしてKNNに入力したときに発生するエラーです。K = 1の場合、テストサンプルに最も近いトレーニングサンプルを選択します。テストサンプルはトレーニングデータセットにあるため、最も近いものとして選択され、間違いを犯しません。このため、K = 1の場合、データセットに関係なく、トレーニングエラーはゼロになります。ちなみに、ここでは論理的な仮定が1つあります。つまり、トレーニングセットには、異なるクラスに属する同じトレーニングサンプル(つまり、矛盾する情報)は含まれません。ただし、実際のデータセットの中には、このプロパティを持つものもあります。


3

視覚的に理解するには、KNNのトレーニングを、領域に色を付け、トレーニングデータの周囲に境界を描くプロセスと考えることができます。

まず、すべてのポイントのペアの垂直二等分線の交点を持つトレーニングセットの各ポイントの周囲に境界を描画できます。(垂直二等分線のアニメーションを以下に示します)

垂直二等分線アニメーション

gifソース

K=1xxx0x=x

xK=1

すべての境界でk = 1

青い領域に赤い点がなく、その逆もあることに注意してください。これは、トレーニングエラーが0であることを示しています。

決定境界は通常、異なるカテゴリ間でのみ描画されることに注意してください(すべての青、青、赤、赤の境界を破棄します)。したがって、決定の境界は次のようになります。

ここに画像の説明を入力してください

KK=20

K=20

ここに画像の説明を入力してください

画像ソース

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.