In der Zeitung " Wann ist 'Nächster Nachbar' sinnvoll? " Lesen wir das:
Wir zeigen, dass sich unter bestimmten allgemeinen Bedingungen (in Bezug auf Daten- und Abfrageverteilungen oder Arbeitsbelastung) mit zunehmender Dimensionalität die Entfernung zum nächsten Nachbarn der Entfernung zum entferntesten Nachbarn nähert. Mit anderen Worten, der Kontrast in Abständen zu verschiedenen Datenpunkten wird nicht mehr vorhanden. Die Bedingungen, unter denen dies identifiziert wurde, sind viel breiter als die Annahme unabhängiger und identisch verteilter Dimensionen (IID), die andere Arbeiten annehmen.
Meine Frage ist, wie ich einen Datensatz generieren soll, der diesen Effekt erzeugt.
Ich habe drei Punkte mit jeweils 1000 Dimensionen mit Zufallszahlen zwischen 0 und 255 für jede Dimension erstellt, aber Punkte erzeugen unterschiedliche Abstände und reproduzieren nicht das, was oben erwähnt wurde. Es scheint, dass sich ändernde Dimensionen (z. B. 10 oder 100 oder 1000 Dimensionen) und Bereiche (z. B. [0,1]) nichts ändern. Ich bekomme immer noch unterschiedliche Entfernungen, was beispielsweise für Clustering-Algorithmen kein Problem sein sollte!
Bearbeiten: Ich habe mehr Proben ausprobiert, basierend auf meinen Experimenten konvergieren die Abstände zwischen Punkten nicht zu einer beliebigen Zahl, im Gegenteil, die maximalen und minimalen Abstände zwischen Punkten werden deutlicher. Dies steht auch im Widerspruch zu dem, was im ersten Beitrag von Need more intuition für den Fluch der Dimensionalität und auch für viele andere Orte geschrieben wurde, die dasselbe behaupten wie https://en.wikipedia.org/wiki/Clustering_high-dimensional_data#Problems . Ich würde es immer noch begrüßen, wenn mir jemand mit einem Code oder einem realen Datensatz zeigen könnte, dass ein solcher Effekt in praktischen Szenarien vorliegt.