Was ist der K-Nächste-Nachbarn-Algorithmus? Der K-Nächste-Nachbarn-Algorithmus (KNN) ist eine überwachte Methode des maschinellen Lernens (ML), die für Klassifizierung und Regression verwendet wird. Er weist Bezeichnungen basierend auf den „k“ nächstgelegenen Datenpunkten im Trainingsdatensatz zu und ist eine der am häufigsten verwendeten Klassifizierer im maschinellen Lernen. KI-Demo
Wissenswertes über synthetische Daten
Was sind Vektoren und Vektorsuche? Wofür wird der KNN-Algorithmus verwendet? Welche Entfernungsmetriken werden in KNN verwendet? Wie sollte der Wert von „k“ definiert werden? Warum ist der KNN-Algorithmus wichtig? Welche Vorteile bietet er? Welche Nachteile gibt es? Wie funktioniert der KNN-Algorithmus? Welche verschiedenen Möglichkeiten gibt es, KNN durchzuführen? KNN-Algorithmus nutzen

Bei maschinellem Lernen und künstlicher Intelligenz ist die Datenklassifizierung ein wichtiger Prozess. Das Ziel besteht darin, Datenpunkten basierend auf ihren Funktionen Bezeichnungen zuzuweisen. Dazu gehört die Analyse bekannter Daten (Trainingsdaten), bei denen jedes Beispiel mit einer Kategorie oder einem Wert gekennzeichnet ist. Bezeichnungen helfen dabei, Muster und Beziehungen innerhalb der Daten zu finden, sodass das Modell genaue Vorhersagen über neue, bisher unbekannte Datenpunkte treffen kann. Leider bringt die Arbeit mit gekennzeichneten Daten eigene Probleme mit sich: Die manuellen Prozesse zur Kennzeichnung von Daten können zeitaufwändig und schwierig sein, und die erforderlichen Ressourceninvestitionen machen diesen Ansatz für einige Unternehmen unmöglich. 

Der K-Nächste-Nachbarn-Algorithmus (KNN) bietet eine einfache und effiziente Lösung für dieses Problem. Anstatt komplexe Berechnungen im Voraus zu erfordern, speichert KNN alle Daten und stellt dann Vorhersagen für neue Daten an, basierend auf ihrer Ähnlichkeit mit den vorhandenen Daten. Dieser Ansatz ermöglicht es KNN, genaue Vorhersagen zu treffen, ohne umfangreiche Feinabstimmungen zu erfordern. Das ist besonders nützlich, wenn Unternehmen mit kleineren Datensätzen und begrenzter Rechenleistung arbeiten.

Alle erweitern Alle reduzieren Was sind Vektoren und Vektorsuche in KNN?

Vektoren sind ein integraler Bestandteil des K-Nächste-Nachbarn-Algorithmus. Ein Vektor ist eine Sequenz von Zahlen, die einen Punkt in einem mehrdimensionalen Raum darstellt. ML-Modelle müssen in der Lage sein, unstrukturierte Rohdaten in diese numerischen Darstellungen zu verwandeln, die als Einbettungen bezeichnet werden. Einbettungen erfassen das semantische oder strukturelle Wesen der Eingabedaten. Die Beziehungen zwischen Einbettungen werden hierbei durch ihre räumliche Nähe im Vektorraum dargestellt (also wie nah oder weit sie voneinander entfernt sind).

Der KNN-Algorithmus nutzt diese räumliche Anordnung, indem er die „Nachbarn“ eines Abfragepunkts identifiziert – also andere Einbettungen, die sich im mehrdimensionalen Raum eng beieinander befinden. Diese Nachbarn spiegeln Datenpunkte mit gemeinsamen Eigenschaften oder ähnlichen Funktionen wider.

So liegen beispielsweise die Einbettungen zweier Dokumente näher beieinander, wenn sie ähnliche Themen behandeln. Daran kann KNN Ähnlichkeiten und Zusammenhänge erkennen. So kann er anhand dieser Beziehungen neue Daten klassifizieren oder Ergebnisse vorhersagen.

Wir stellen vor: Now Intelligence Erfahren Sie, wie ServiceNow KI und Analytics vom Labor in die reale Welt bringt, um die Arbeitsweise von Unternehmen zu verändern und die digitale Transformation zu beschleunigen. Zum E-Book
Wofür wird der KNN-Algorithmus verwendet? 

Der K-Nächste-Nachbarn-Algorithmus verwendet Vektoren, um die „k“ nächstgelegenen Datenpunkte (oder Nachbarn) eines neuen Datenpunkts zu identifizieren und basierend auf diesen Nachbarn Vorhersagen zu treffen. Wenn das Ziel beispielsweise darin besteht, E-Mails als Spam oder legitim zu klassifizieren, würde KNN die „k“ ähnlichsten E-Mails betrachten und die neue E-Mail-Nachricht basierend auf der Mehrheitsklassifizierung dieser Nachbarn klassifizieren.

Ein weiteres Beispiel wäre ein Unternehmen, das Daten zu verschiedenen Kunden hat, mit Merkmalen wie Alter, Interessen und bisherigen Käufen. Der KNN-Algorithmus kann diese Kunden in Kategorien wie regelmäßige Käufer, Gelegenheitskäufer oder bloße Besucher einteilen, indem er ihre Merkmale vergleicht. Wenn ein neuer Kunde die Website besucht, kann KNN sein Einkaufsverhalten vorhersagen, indem er auswertet, welcher Gruppe der Kunde am stärksten ähnelt. 

Die Anpassungsfähigkeit des Algorithmus steigt sogar noch weiter, wenn er mit multimodalen Datensätzen verwendet wird. Dabei werden Informationen aus mehreren Quellen gleichzeitig kombiniert, z. B. Text, Bilder oder Audioinhalte. KNN kann diese Einbettungen in einem gemeinsamen Vektorbereich analysieren und Ähnlichkeiten zwischen verschiedenen Modalitäten identifizieren. Durch die Anwendung von KNN auf multimodale Daten können unabhängig von Datentypen die ähnlichsten Nachbarn gefunden werden. Das macht KNN zu einem vielseitigen Algorithmus für immer komplexere und vielfältigere Datenszenarien.

  • Mustererkennung

KNN wird häufig für die Mustererkennung verwendet, beispielsweise Bild- oder Handschrifterkennung. Durch den Vergleich neuer Bilder oder Muster mit einem gekennzeichneten Datensatz kann KNN Objekte, Zeichen oder Gesichter genau klassifizieren, basierend auf der Ähnlichkeit zu bekannten Mustern. 

  • Datenverarbeitung 

KNN ist effektiv bei der Vorverarbeitung von Daten, z. B. bei der Imputation fehlender Werte oder der Erkennung von Ausreißern. Durch die Analyse der nächsten Nachbarn kann KNN fehlende Werte basierend auf den ähnlichsten Datenpunkten schätzen und so die Datenqualität und -beständigkeit verbessern. 

  • Empfehlungsmodule 

KNN hilft beim Aufbau von Empfehlungssystemen, indem Anwenderverhalten und -präferenzen analysiert werden. Durch die Suche nach Anwendern mit ähnlichen Interessen kann KNN Produkte, Filme oder Inhalte vorschlagen, die anderen Personen mit ähnlichen Profilen gefallen haben. Das verbessert die Anwender-Experience und -Interaktion. 

  • Bild-zu-Text-Umwandlung 

KNN wird zunehmend für Aufgaben der Bild-zu-Text-Umwandlung in multimodalen Systemen verwendet. Durch den Vergleich von Bildeinbettungen mit Textbeschreibungen können KI-Systeme mit KNN komplexe Aufgaben durchführen, wie z. B. automatisierte Beschriftung. Hierbei nutzt KNN die engsten Übereinstimmungen, um kontextbezogenen Text für ein bestimmtes Bild zu liefern. 

Welche Entfernungsmetriken werden in KNN verwendet?

Bei jedem oben aufgeführten Ansatz hängt die Genauigkeit der KNN-Vorhersagen stark von den Entfernungsmetriken ab, die zum Messen der Datenähnlichkeit verwendet werden. Entfernungsmetriken in KNN messen die Ähnlichkeit zwischen Datenpunkten, was für genaue Vorhersagen entscheidend ist. Diese Metriken bestimmen, wie der Algorithmus die „Nähe“ von Datenpunkten berechnet, um neue Datenpunkte effektiv zu klassifizieren oder vorherzusagen.

Euklidischer Abstand 

Der euklidische Abstand ist die am häufigsten in KNN verwendete Metrik, die den linearen Abstand zwischen zwei Punkten im euklidischen Raum berechnet. Stellen Sie sich vor, Sie verwenden eine Karte und ein Lineal, um den kürzesten Pfad zwischen zwei Standorten zu messen. Je kürzer die Entfernung ist, desto ähnlicher sind die Punkte. Beim Vergleich der Größe und des Gewichts verschiedener Personen lässt sich beispielsweise mit der euklidischen Distanz bestimmen, welche Personen aufgrund dieser beiden Merkmale durch die kürzeste euklidische Distanz getrennt und damit am ähnlichsten sind. 

 

Manhattan-Distanz 

Manhattan-Distanz misst die absoluten Unterschiede zwischen Punkten in jeder Dimension, z. B. beim Navigieren in einem Straßennetz. Stellen Sie sich ein Stadtraster vor, in dem Bewegungen nur auf der Straße (anstatt diagonal durch Gebäude) voranschreiten können. Diese Metrik ist nützlich, wenn Datenpunkte in einem rasterartigen Muster strukturiert sind, z. B. beim Vergleich von Lieferrouten oder Stadtplanungsszenarien.

Minkowski-Distanz  

Die Minkowski-Distanz (p-Norm) ist eine Verallgemeinerung der euklidischen und Manhattan-Distanzen. Durch Anpassen eines Parameters „p“ kann sie sich wie jede der beiden Metriken verhalten. Stellen Sie sich die Minkowski-Distanz als eine flexible Methode vor, die sich je nach den spezifischen Anforderungen der Datenanalyse an verschiedene Szenarien anpassen lässt. Wenn jemand beispielsweise Eigenschaften mit verschiedenen Dimensionen (z. B. Preis, Fläche und Raumanzahl) vergleichen möchte, trägt das Anpassen des Werts „p“ dazu bei, bestimmte Dimensionen gegenüber anderen hervorzuheben. Das macht die Minkowski-Distanz zu einer vielseitigen Metrik für verschiedene Arten von Datenvergleichen. 

Wie sollte der Wert von „k“ definiert werden? 

Ohne den richtigen Wert für „k“ zu definieren, funktioniert der KNN-Algorithmus nicht wie vorgesehen. Wenn Sie einen zu kleinen Wert für „k“ wählen, können Vorhersagen überempfindlich gegenüber Datenrauschen sein. Und das führt zu einer hohen Varianz und weniger stabilen Vorhersagen. Auf der anderen Seite kann ein zu großer Wert die Vorhersagen verbessern, jedoch kann das Modell hierdurch zu allgemein werden, sodass es bestimmte Muster nicht mehr berücksichtigt.

Um den optimalen Wert für „k“ zu finden, verwenden Experten in der Regel eine Kreuzvalidierung (eine Technik, bei der der Datensatz in Trainings- und Validierungssätze unterteilt wird, um verschiedene „k“-Werte zu testen). Das hilft dabei, ein „k“ zu identifizieren, das Vorhersagefehler minimiert und gleichzeitig die Verallgemeinerungsfähigkeit des Algorithmus aufrechterhält.

Diesen Prozess zu optimieren, kann einige Versuche erfordern. Wenn Sie das richtige „k“ finden wollen, müssen Sie verschiedene Werte testen, um sicherzustellen, dass das Modell sowohl bei bekannten als auch bei unbekannten Daten gut abschneidet. So entsteht am Ende ein optimales Gleichgewicht zwischen Stabilität und Genauigkeit.

Warum ist der KNN-Algorithmus wichtig? 
Der KNN-Algorithmus ist ein wertvolles Tool in verschiedenen Szenarien, in denen die Beziehungen zwischen Datenpunkten nicht sofort offensichtlich sind. Er nutzt die Ähnlichkeit zwischen Datenpunkten, um ohne umfangreiches Modelltraining genaue Vorhersagen zu treffen. Das ist besonders nützlich in Bereichen wie Bilderkennung, wo visuelle Ähnlichkeiten entscheidend sind, um Objekte zu identifizieren, oder bei der Kundensegmentierung, wo Anwender anhand von Verhaltensmustern in sinnvolle Gruppen kategorisiert werden. 
Welche Vorteile bietet der KNN-Algorithmus? 

Das Finden von Verbindungen, Ähnlichkeiten und Beziehungen zwischen Datenpunkten ist der allgemeine Zweck des K-Nächste-Nachbarn-Algorithmus. Der Grund, warum dieses Modell so beliebt bei Unternehmen ist, sind seine zusätzlichen Vorteile. Zu diesen Vorteilen gehören:

Einfache Implementierung 

KNN ist einfach zu implementieren und zu verstehen, selbst für Anfänger im Bereich maschinelles Lernen. Es ist keine komplexe Trainingsphase erforderlich. Stattdessen merkt sich der Algorithmus den Trainingsdatensatz und verwendet ihn direkt für Vorhersagen.

Anpassungsfähigkeit 

Unabhängig davon, ob KNN für Klassifizierungs- oder Regressionsaufgaben verwendet wird, können damit die verschiedenen Datenstrukturen und -beziehungen verwaltet werden, die zum Gruppieren von Datenpunkten erforderlich sind. Diese Flexibilität ermöglicht es, den Algorithmus in verschiedenen Bereichen anzuwenden, darunter Finanzen, Gesundheitswesen, E-Commerce und viele mehr.

Geringere Komplexität

KNN erfordert nur wenige Hyperparameter, hauptsächlich den Wert von „k“ und die Distanzmetrik. Das reduziert die Komplexität der Modelloptimierung im Vergleich zu anderen Algorithmen, die möglicherweise eine umfassende Parameteroptimierung erfordern. So wird der gesamte Modellentwicklungsprozess vereinfacht, und es lässt sich leichter mit minimalen Anpassungen eine hervorragende Leistung erzielen.

Welche Nachteile bringt der KNN-Algorithmus mit sich? 

Der KNN-Algorithmus bietet zwar mehrere Vorteile, weist jedoch auch einige erwähnenswerte Schwachstellen auf. Zu den Nachteilen zählen: 

Probleme mit hoher Dimensionalität 

„Hohe Dimensionalität“ bezieht sich auf die exponentielle Zunahme der Daten, die erforderlich sind, um das Leistungsniveau beizubehalten, während die Anzahl der Merkmale (oder Dimensionen) zunimmt. In hochdimensionalen Räumen wird der Abstand zwischen Datenpunkten weniger aussagekräftig, was es für KNN schwierig macht, wirklich „nächstgelegene“ Nachbarn zu identifizieren. Dieses Problem kann die Genauigkeit und Effektivität des Algorithmus in Datensätzen mit vielen Merkmalen erheblich reduzieren. 

Anfälligkeit für Überanpassung 

KNN kann durch Rauschen und Ausreißer im Datensatz negativ beeinflusst werden, insbesondere wenn der Wert von „k“ klein ist. Diese Empfindlichkeit kann zu Überanpassungen führen, bei denen der Algorithmus Rauschen und Anomalien erfasst, als wären sie echte Muster. Eine Überanpassung führt zu einer schlechten Verallgemeinerung neuer, unbekannter Daten und einer geringeren Vorhersageleistung des Modells. 

Schwierige Skalierung 

Mit der Größe des Datensatzes wächst auch die Komplexität der Berechnungen, was KNN für übermäßig große Datensätze ineffizient macht. Jede Vorhersage erfordert die Berechnung der Entfernung zwischen dem neuen Datenpunkt und allen vorhandenen Punkten im Trainingsdatensatz, was zu einer hohen Speicherauslastung und langen Berechnungszeiten führt. Dieser Mangel an Skalierbarkeit schränkt die Anwendbarkeit von KNN in Szenarien mit großen Datenmengen ein. 

Wie funktioniert der KNN-Algorithmus? 

Wie bereits erwähnt, klassifiziert der KNN-Algorithmus Datenpunkte basierend auf ihrer Nähe zu anderen Datenpunkten im Datensatz. Dazu muss der Algorithmus eine bestimmte Reihe von Schritten befolgen:

1. Anzahl der Nachbarn auswählen (k) 

Definieren Sie den Wert von „k“, der bei der Klassifizierung oder Regression berücksichtigt werden soll. Dieser Wert beeinflusst, wie der Algorithmus die Ähnlichkeit zwischen Datenpunkten auswertet.

2. Entfernung berechnen 

Berechnen Sie für jeden Datenpunkt im Trainingssatz den Abstand zwischen ihm und dem neuen Datenpunkt anhand einer der Standard-Distanzmetriken (Euklidisch, Manhattan oder Minkowski). Diese Distanzmessung hilft dabei, zu ermitteln, welche Kandidaten als die nächsten Nachbarn zum neuen Datenpunkt betrachtet werden sollten.

3. Nächstgelegene Nachbarn identifizieren 

Sortieren Sie die in Schritt 2 berechneten Entfernungen, und bestimmen Sie die „k“ nächstgelegenen Nachbarn. Diese Nachbarn sind die Datenpunkte, die dem neuen Datenpunkt am nächsten liegen, basierend auf der ausgewählten Entfernungsmetrik. 

4. Vorhersage treffen 

Weisen Sie für Klassifizierungsaufgaben den neuen Datenpunkt der Klasse zu, die unter den „k“ nächstgelegenen Nachbarn am häufigsten zu finden ist. Berechnen Sie für Regressionsaufgaben den durchschnittlichen oder mittleren Wert der „k“ nächstgelegenen Nachbarn, und verwenden Sie diesen Wert zur Vorhersage für den neuen Datenpunkt.

5. Modell bewerten

Bewerten Sie die Genauigkeit und Leistung des KNN-Modells mithilfe von Kreuzvalidierungstechniken. Passen Sie den Wert von „k“ und die Entfernungsmetrik nach Bedarf an, um die Vorhersagen des Modells zu optimieren. 

Welche verschiedenen Möglichkeiten gibt es, KNN durchzuführen? 

Es gibt mehrere Methoden zum Ausführen des K-Nächste-Nachbarn-Algorithmus (KNN), die jeweils andere Vorteile bieten und für andere Anwendungen geeignet sind. Die folgenden Methoden helfen dabei, den Prozess der Suche nach den nächstgelegenen Nachbarn zu optimieren, sodass KNN eine effiziente Option für verschiedene Arten von Datensätzen darstellt.  

  • Brute Force 

Die Brute-Force-Methode berechnet die Entfernung zwischen dem Abfragepunkt und allen anderen Punkten im Datensatz. Sie ist einfach, aber rechenintensiv, und eignet sich daher am besten für kleine Datensätze. 

  • K-dimensionaler Baum (k-d-Baum)

Ein k-d-Baum organisiert Punkte in einem k-dimensionalen Raum, indem der Raum rekursiv in Hyperrechtecke unterteilt wird. Dieser Ansatz reduziert Entfernungsberechnungen und beschleunigt die KNN-Suche nach mäßig hochdimensionalen Daten. 

  • Kugelbaum

Ein Kugelbaum teilt den Raum in verschachtelte Hypersphären auf, sodass eine effiziente Nachbarsuche möglich ist, indem irrelevante Teile des Datensatzes eliminiert werden. Sie ist besonders effektiv für hochdimensionale Daten und übertrifft in diesen Szenarien oft die k-d-Bäume. 

Preise von ServiceNow ServiceNow bietet wettbewerbsfähige Produktpakete, die mit Ihrem Unternehmen wachsen und sich Ihren Anforderungen anpassen. Preise anzeigen
K-Nächste-Nachbarn-Algorithmus mit ServiceNow 

Der K-Nächste-Nachbarn-Algorithmus ist aufgrund seiner Fähigkeit, Datenpunkte zu klassifizieren und Beziehungen für KI-Systeme zu quantifizieren, von unschätzbarem Wert. ServiceNow, ein führender Anbieter von IT-Lösungen für Unternehmen, integriert fortschrittliche KI und KNN und bietet leistungsstarke Tools für die digitale Transformation. Die preisgekrönte Now Platform® von ServiceNow nutzt KI und maschinelles Lernen, um Workflows für alle Geschäftsfunktionen zu automatisieren, zu optimieren und zu modernisieren. So können Sie unternehmensweit intelligente Optimierungen durchführen. 

Durch die Integration von KNN und anderen fortschrittlichen Algorithmen können Unternehmen mit ServiceNow KI einsetzen, um die Entscheidungsfindung zu verbessern, Bearbeitungszeiten zu verkürzen und einen effizienteren Geschäftsansatz aufzubauen. Erleben Sie die transformative Kraft von KI und der Now Platform: Planen Sie noch heute eine ServiceNow-Demo! 

Alt
KI-Workflows entdecken Entdecken Sie, wie die Now Platform den praktischen Nutzen der KI in jeden Aspekt Ihres Geschäfts einbringt. GenAI erkunden Kontakt
Ressourcen Artikel Was ist KI? Was ist generative KI? Analystenberichte IDC InfoBrief: KI-Wert mit einer digitalen Plattform maximieren Generative KI im IT-Betrieb Implementierung generativer KI in der Telekommunikationsbranche Datenblätter KI-Suche Mit ServiceNow® Prädiktive AIOps Ausfälle prognostizieren und verhindern Ressourcenmanagement E-Books IT-Services und -Betrieb mit KI modernisieren Gen AI: Ist es wirklich so eine große Sache? Produktivität mit Gen AI unternehmensweit steigern Whitepaper KI-Reifeindex für Unternehmen Gen AI für die Telekommunikation