1

Knnには、高次元データを処理するときに「次元の呪い」を知っているという問題があることを理解しています.距離、つまり重要でない機能がノイズとして作用し、結果にバイアスをかけるユークリッド距離を計算する際に、すべての機能が含まれていることが正当化されます.いくつかのことを理解していない

1) この次元の呪いの問題によってコサイン距離メトリックがどのように影響を受けるか、つまり、コサイン距離を cosDistance = 1- cosSimilarity として定義します。ここで、cosSimilarity は高次元データに適しているため、コサイン距離は次元の問題の呪いによってどのように影響を受ける可能性がありますか?

2) weka の機能に任意の重みを割り当てることはできますか、または機能選択を KNN にローカルに適用できますか? knn のローカルは、K-NN の独自のクラスを作成することを意味します。分類では、最初にトレーニング インスタンスを低次元に変換してから、テスト インスタンスの近傍を計算します。

4

1 に答える 1

2

コサインはユークリッド距離と基本的に違いはありません。

実際、ユークリッド長が 1 の正規化されたデータでは、コサイン距離とユークリッド距離同じであることを示すのは簡単です。つまり、コサインは L2 正規化ベクトルのユークリッド距離を計算しています...

したがって、コサインは、ユークリッド距離よりも次元の呪いに対して堅牢ではありません。ただし、コサインは、見かけ上の次元数 (多くの場合数千次元) を持つテキスト データなどでよく使用されますが、本質的な次元数ははるかに低くなければなりません。さらに、主にランキングに使用されます。実際の距離値は無視されます。

于 2014-02-06T10:04:08.300 に答える