Inhaltsverzeichnis
Konvexe Menge
Projektion konvexer Mengen (POCS)
1. Alternierender POC
2. Parallele POCS
Auf POCs basierender Clustering-Algorithmus.
Experimentelle Ergebnisse
Beispielcode
总结
Heim Backend-Entwicklung Python-Tutorial Clustering-Algorithmus basierend auf der Projektion auf konvexe Mengen (POCS)

Clustering-Algorithmus basierend auf der Projektion auf konvexe Mengen (POCS)

Apr 30, 2023 pm 12:22 PM
集合 算法 凸集

POCS: Projektionen auf konvexe Mengen. In der Mathematik ist eine konvexe Menge eine Menge, in der jedes Liniensegment zwischen zwei beliebigen Punkten innerhalb der Menge liegt. Unter Projektion versteht man die Abbildung eines Punktes auf einen Unterraum in einem anderen Raum. Bei einer gegebenen konvexen Menge und einem Punkt können Sie die Projektion des Punktes auf die konvexe Menge ermitteln. Die Projektion ist der Punkt in der konvexen Menge, der dem Punkt am nächsten liegt, und kann berechnet werden, indem der Abstand zwischen diesem Punkt und jedem anderen Punkt in der konvexen Menge minimiert wird. Da es sich um eine Projektion handelt, können wir die Merkmale einer konvexen Menge in einem anderen Raum zuordnen, sodass Operationen wie Clustering oder Dimensionsreduzierung durchgeführt werden können.

In diesem Artikel wird ein Clustering-Algorithmus beschrieben, der auf der konvexen Mengenprojektionsmethode basiert, dh ein Clustering-Algorithmus, der auf POCS basiert. Das Originalpapier wurde auf der IWIS2022 veröffentlicht.

Konvexe Menge

Eine konvexe Menge ist als eine Menge von Datenpunkten definiert, in der das Liniensegment, das zwei beliebige Punkte x1 und x2 in der Menge verbindet, vollständig in dieser Menge enthalten ist. Gemäß der Definition einer konvexen Menge werden die leere Menge ∅, die einheitliche Menge, das Liniensegment, die Hyperebene und die euklidische Kugel alle als konvexe Mengen betrachtet. Ein Datenpunkt wird auch als konvexe Menge betrachtet, da es sich um eine Singleton-Menge (eine Menge mit nur einem Element) handelt. Dies eröffnet einen neuen Weg für die Anwendung des POCS-Konzepts auf geclusterte Datenpunkte.

Projektion konvexer Mengen (POCS)

POCS-Methoden können grob in zwei Typen unterteilt werden: alternierend und parallel.

1. Alternierender POC

Ausgehend von einem beliebigen Punkt im Datenraum konvergiert die alternierende Projektion von diesem Punkt auf zwei (oder mehr) sich schneidende konvexe Mengen zu einem Punkt innerhalb des Mengenschnittpunkts, wie in der folgenden Abbildung:

Clustering-Algorithmus basierend auf der Projektion auf konvexe Mengen (POCS)

Wenn die konvexen Mengen disjunkt sind, konvergieren alternierende Projektionen zu gierigen Grenzzyklen, die von der Projektionsreihenfolge abhängen.

Clustering-Algorithmus basierend auf der Projektion auf konvexe Mengen (POCS)

2. Parallele POCS

Im Gegensatz zur alternierenden Form projizieren parallele POCS von Datenpunkten gleichzeitig auf alle konvexen Mengen, und jede Projektion hat ein Wichtigkeitsgewicht. Bei zwei nicht leeren, sich schneidenden konvexen Mengen konvergiert die Parallelprojektion ähnlich wie bei der alternierenden Version zu einem Punkt am Schnittpunkt der Mengen.

Clustering-Algorithmus basierend auf der Projektion auf konvexe Mengen (POCS)

Wenn sich die konvexen Mengen nicht schneiden, konvergiert die Projektion zu einer Minimallösung. Die Hauptidee des POC-basierten Clustering-Algorithmus ergibt sich aus dieser Funktion.

Clustering-Algorithmus basierend auf der Projektion auf konvexe Mengen (POCS)

Weitere Informationen zu POCS finden Sie im Originalpapier.

Auf POCs basierender Clustering-Algorithmus.

Der Autor des Papiers nutzte die Konvergenz der parallelen POCS-Methode und schlug einen sehr einfachen, aber effektiven Clustering-Algorithmus vor bis zu einem gewissen Grad Klassenalgorithmus. Der Algorithmus funktioniert ähnlich wie der klassische K-Means-Algorithmus, es gibt jedoch Unterschiede in der Art und Weise, wie jeder Datenpunkt verarbeitet wird: Der K-Means-Algorithmus gewichtet die Wichtigkeit jedes Datenpunkts gleich, der POCs-basierte Clustering-Algorithmus hingegen jeden Datenpunkt wird unterschiedlich gewichtet, was proportional zur Entfernung des Datenpunkts vom Cluster-Prototyp ist.

Der Pseudocode des Algorithmus lautet wie folgt:

Clustering-Algorithmus basierend auf der Projektion auf konvexe Mengen (POCS)

Experimentelle Ergebnisse

Der Autor testete die Leistung des POCs-basierten Clustering-Algorithmus anhand einiger öffentlicher Benchmark-Datensätze. Die folgende Tabelle fasst die Beschreibungen dieser Datensätze zusammen.

Clustering-Algorithmus basierend auf der Projektion auf konvexe Mengen (POCS)

Der Autor verglich die Leistung des POCs-basierten Clustering-Algorithmus mit anderen herkömmlichen Clustering-Methoden, einschließlich K-Means- und Fuzzy-C-Means-Algorithmen. Die folgende Tabelle fasst die Bewertung hinsichtlich Ausführungszeit und Clusterfehler zusammen.

Clustering-Algorithmus basierend auf der Projektion auf konvexe Mengen (POCS)

Clustering-Algorithmus basierend auf der Projektion auf konvexe Mengen (POCS)

Die Clustering-Ergebnisse werden unten angezeigt:

Clustering-Algorithmus basierend auf der Projektion auf konvexe Mengen (POCS)

Beispielcode

Wir verwenden diesen Algorithmus für einen sehr einfachen Datensatz. Der Autor hat ein Paket zur direkten Verwendung veröffentlicht, das wir direkt für Anwendungen verwenden können:

pip install pocs-based-clustering
Nach dem Login kopieren

Erstellen Sie einen einfachen Datensatz von 5000 Datenpunkten, zentriert auf 10 Clustern:

# Import packages
 import time
 import matplotlib.pyplot as plt
 
 from sklearn.datasets import make_blobs
 from pocs_based_clustering.tools import clustering
 
 
 # Generate a simple dataset
 num_clusters = 10
 X, y = make_blobs(n_samples=5000, centers=num_clusters, 
 cluster_std=0.5, random_state=0)
 
 plt.figure(figsize=(8,8))
 plt.scatter(X[:, 0], X[:, 1], s=50)
 plt.show()
Nach dem Login kopieren

Clustering-Algorithmus basierend auf der Projektion auf konvexe Mengen (POCS)

Führen Sie Clustering durch und zeigen Sie die Ergebnisse an:

# POSC-based Clustering Algorithm
 centroids, labels = clustering(X, num_clusters, 100)
 
 # Display results
 plt.figure(figsize=(8,8))
 plt.scatter(X[:, 0], X[:, 1], c=labels, s=50, cmap='viridis')
 plt.scatter(centroids[:, 0], centroids[:, 1], s=100, c='red')
 plt.show()
Nach dem Login kopieren

Clustering-Algorithmus basierend auf der Projektion auf konvexe Mengen (POCS)

总结

我们简要回顾了一种简单而有效的基于投影到凸集(POCS)方法的聚类技术,称为基于POCS的聚类算法。该算法利用POCS的收敛特性应用于聚类任务,并在一定程度上实现了可行的改进。在一些基准数据集上验证了该算法的有效性。

论文的地址如下:https://arxiv.org/abs/2208.08888

作者发布的源代码在这里:https://github.com/tranleanh/pocs-based-clustering

Das obige ist der detaillierte Inhalt vonClustering-Algorithmus basierend auf der Projektion auf konvexe Mengen (POCS). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

CLIP-BEVFormer: Überwacht explizit die BEVFormer-Struktur, um die Leistung der Long-Tail-Erkennung zu verbessern CLIP-BEVFormer: Überwacht explizit die BEVFormer-Struktur, um die Leistung der Long-Tail-Erkennung zu verbessern Mar 26, 2024 pm 12:41 PM

Oben geschrieben und das persönliche Verständnis des Autors: Derzeit spielt das Wahrnehmungsmodul im gesamten autonomen Fahrsystem eine entscheidende Rolle Das Steuermodul im autonomen Fahrsystem trifft zeitnahe und korrekte Urteile und Verhaltensentscheidungen. Derzeit sind Autos mit autonomen Fahrfunktionen in der Regel mit einer Vielzahl von Dateninformationssensoren ausgestattet, darunter Rundumsichtkamerasensoren, Lidar-Sensoren und Millimeterwellenradarsensoren, um Informationen in verschiedenen Modalitäten zu sammeln und so genaue Wahrnehmungsaufgaben zu erfüllen. Der auf reinem Sehen basierende BEV-Wahrnehmungsalgorithmus wird von der Industrie aufgrund seiner geringen Hardwarekosten und einfachen Bereitstellung bevorzugt, und seine Ausgabeergebnisse können problemlos auf verschiedene nachgelagerte Aufgaben angewendet werden.

Implementierung von Algorithmen für maschinelles Lernen in C++: Häufige Herausforderungen und Lösungen Implementierung von Algorithmen für maschinelles Lernen in C++: Häufige Herausforderungen und Lösungen Jun 03, 2024 pm 01:25 PM

Zu den häufigsten Herausforderungen, mit denen Algorithmen für maschinelles Lernen in C++ konfrontiert sind, gehören Speicherverwaltung, Multithreading, Leistungsoptimierung und Wartbarkeit. Zu den Lösungen gehören die Verwendung intelligenter Zeiger, moderner Threading-Bibliotheken, SIMD-Anweisungen und Bibliotheken von Drittanbietern sowie die Einhaltung von Codierungsstilrichtlinien und die Verwendung von Automatisierungstools. Praktische Fälle zeigen, wie man die Eigen-Bibliothek nutzt, um lineare Regressionsalgorithmen zu implementieren, den Speicher effektiv zu verwalten und leistungsstarke Matrixoperationen zu nutzen.

Entdecken Sie die zugrunde liegenden Prinzipien und die Algorithmusauswahl der C++-Sortierfunktion Entdecken Sie die zugrunde liegenden Prinzipien und die Algorithmusauswahl der C++-Sortierfunktion Apr 02, 2024 pm 05:36 PM

Die unterste Ebene der C++-Sortierfunktion verwendet die Zusammenführungssortierung, ihre Komplexität beträgt O(nlogn) und bietet verschiedene Auswahlmöglichkeiten für Sortieralgorithmen, einschließlich schneller Sortierung, Heap-Sortierung und stabiler Sortierung.

Kann künstliche Intelligenz Kriminalität vorhersagen? Entdecken Sie die Möglichkeiten von CrimeGPT Kann künstliche Intelligenz Kriminalität vorhersagen? Entdecken Sie die Möglichkeiten von CrimeGPT Mar 22, 2024 pm 10:10 PM

Die Konvergenz von künstlicher Intelligenz (KI) und Strafverfolgung eröffnet neue Möglichkeiten zur Kriminalprävention und -aufdeckung. Die Vorhersagefähigkeiten künstlicher Intelligenz werden häufig in Systemen wie CrimeGPT (Crime Prediction Technology) genutzt, um kriminelle Aktivitäten vorherzusagen. Dieser Artikel untersucht das Potenzial künstlicher Intelligenz bei der Kriminalitätsvorhersage, ihre aktuellen Anwendungen, die Herausforderungen, denen sie gegenübersteht, und die möglichen ethischen Auswirkungen der Technologie. Künstliche Intelligenz und Kriminalitätsvorhersage: Die Grundlagen CrimeGPT verwendet Algorithmen des maschinellen Lernens, um große Datensätze zu analysieren und Muster zu identifizieren, die vorhersagen können, wo und wann Straftaten wahrscheinlich passieren. Zu diesen Datensätzen gehören historische Kriminalstatistiken, demografische Informationen, Wirtschaftsindikatoren, Wettermuster und mehr. Durch die Identifizierung von Trends, die menschliche Analysten möglicherweise übersehen, kann künstliche Intelligenz Strafverfolgungsbehörden stärken

Warum ist es schwierig, sammlungsähnliche Funktionen in der Go-Sprache zu implementieren? Warum ist es schwierig, sammlungsähnliche Funktionen in der Go-Sprache zu implementieren? Mar 24, 2024 am 11:57 AM

Es ist schwierig, sammlungsähnliche Funktionen in der Go-Sprache zu implementieren, was viele Entwickler beschäftigt. Im Vergleich zu anderen Programmiersprachen wie Python oder Java verfügt die Go-Sprache nicht über integrierte Sammlungstypen wie Set, Map usw., was Entwickler bei der Implementierung von Sammlungsfunktionen vor einige Herausforderungen stellt. Schauen wir uns zunächst an, warum es schwierig ist, sammlungsähnliche Funktionen direkt in der Go-Sprache zu implementieren. In der Go-Sprache sind die am häufigsten verwendeten Datenstrukturen Slice und Map. Sie können jedoch sammlungsähnliche Funktionen ausführen

Verbesserter Erkennungsalgorithmus: zur Zielerkennung in hochauflösenden optischen Fernerkundungsbildern Verbesserter Erkennungsalgorithmus: zur Zielerkennung in hochauflösenden optischen Fernerkundungsbildern Jun 06, 2024 pm 12:33 PM

01Ausblicksübersicht Derzeit ist es schwierig, ein angemessenes Gleichgewicht zwischen Detektionseffizienz und Detektionsergebnissen zu erreichen. Wir haben einen verbesserten YOLOv5-Algorithmus zur Zielerkennung in hochauflösenden optischen Fernerkundungsbildern entwickelt, der mehrschichtige Merkmalspyramiden, Multierkennungskopfstrategien und hybride Aufmerksamkeitsmodule verwendet, um die Wirkung des Zielerkennungsnetzwerks in optischen Fernerkundungsbildern zu verbessern. Laut SIMD-Datensatz ist der mAP des neuen Algorithmus 2,2 % besser als YOLOv5 und 8,48 % besser als YOLOX, wodurch ein besseres Gleichgewicht zwischen Erkennungsergebnissen und Geschwindigkeit erreicht wird. 02 Hintergrund und Motivation Mit der rasanten Entwicklung der Fernerkundungstechnologie wurden hochauflösende optische Fernerkundungsbilder verwendet, um viele Objekte auf der Erdoberfläche zu beschreiben, darunter Flugzeuge, Autos, Gebäude usw. Objekterkennung bei der Interpretation von Fernerkundungsbildern

Anwendung von Algorithmen beim Aufbau einer 58-Porträt-Plattform Anwendung von Algorithmen beim Aufbau einer 58-Porträt-Plattform May 09, 2024 am 09:01 AM

1. Hintergrund des Baus der 58-Portrait-Plattform Zunächst möchte ich Ihnen den Hintergrund des Baus der 58-Portrait-Plattform mitteilen. 1. Das traditionelle Denken der traditionellen Profiling-Plattform reicht nicht mehr aus. Der Aufbau einer Benutzer-Profiling-Plattform basiert auf Data-Warehouse-Modellierungsfunktionen, um Daten aus mehreren Geschäftsbereichen zu integrieren, um genaue Benutzerporträts zu erstellen Und schließlich muss es über Datenplattformfunktionen verfügen, um Benutzerprofildaten effizient zu speichern, abzufragen und zu teilen sowie Profildienste bereitzustellen. Der Hauptunterschied zwischen einer selbst erstellten Business-Profiling-Plattform und einer Middle-Office-Profiling-Plattform besteht darin, dass die selbst erstellte Profiling-Plattform einen einzelnen Geschäftsbereich bedient und bei Bedarf angepasst werden kann. Die Mid-Office-Plattform bedient mehrere Geschäftsbereiche und ist komplex Modellierung und bietet allgemeinere Funktionen. 2.58 Benutzerporträts vom Hintergrund der Porträtkonstruktion im Mittelbahnsteig 58

Fügen Sie SOTA in Echtzeit hinzu und explodieren Sie! FastOcc: Schnellere Inferenz und ein einsatzfreundlicher Occ-Algorithmus sind da! Fügen Sie SOTA in Echtzeit hinzu und explodieren Sie! FastOcc: Schnellere Inferenz und ein einsatzfreundlicher Occ-Algorithmus sind da! Mar 14, 2024 pm 11:50 PM

Oben geschrieben & Das persönliche Verständnis des Autors ist, dass im autonomen Fahrsystem die Wahrnehmungsaufgabe eine entscheidende Komponente des gesamten autonomen Fahrsystems ist. Das Hauptziel der Wahrnehmungsaufgabe besteht darin, autonome Fahrzeuge in die Lage zu versetzen, Umgebungselemente wie auf der Straße fahrende Fahrzeuge, Fußgänger am Straßenrand, während der Fahrt angetroffene Hindernisse, Verkehrszeichen auf der Straße usw. zu verstehen und wahrzunehmen und so flussabwärts zu helfen Module Treffen Sie richtige und vernünftige Entscheidungen und Handlungen. Ein Fahrzeug mit autonomen Fahrfähigkeiten ist in der Regel mit verschiedenen Arten von Informationserfassungssensoren ausgestattet, wie z. B. Rundumsichtkamerasensoren, Lidar-Sensoren, Millimeterwellenradarsensoren usw., um sicherzustellen, dass das autonome Fahrzeug die Umgebung genau wahrnehmen und verstehen kann Elemente, die es autonomen Fahrzeugen ermöglichen, beim autonomen Fahren die richtigen Entscheidungen zu treffen. Kopf

See all articles