Netzwerken – chatgpz.de – KI-Tools & Praxiswissen http://chatgpz.de Unabhängige Tests, Anleitungen und Hintergründe zu KI-Tools. Sat, 30 Aug 2025 07:16:35 +0000 de-DE hourly 1 https://wordpress.org/?v=6.4.2 234900186 Auf dem Weg zum digitalen Wohlbefinden: Verwenden von generativen KI zur Erkennung und Minderung von Verzerrungen in sozialen Netzwerken http://chatgpz.de/machine-learning/auf-dem-weg-zum-digitalen-wohlbefinden-verwenden-von-generativen-ki-zur-erkennung-und-minderung-von-verzerrungen-in-sozialen-netzwerken/ http://chatgpz.de/machine-learning/auf-dem-weg-zum-digitalen-wohlbefinden-verwenden-von-generativen-ki-zur-erkennung-und-minderung-von-verzerrungen-in-sozialen-netzwerken/#respond Sat, 30 Aug 2025 07:16:35 +0000 http://chatgpz.de/machine-learning/auf-dem-weg-zum-digitalen-wohlbefinden-verwenden-von-generativen-ki-zur-erkennung-und-minderung-von-verzerrungen-in-sozialen-netzwerken/ [ad_1]

Die künstliche Intelligenz (KI) dominiert die heutigen Schlagzeilen – eines Tages als Durchbruch und wartete als Bedrohung am nächsten. Ein Großteil dieser Debatte findet jedoch in einer Blase statt, die sich eher auf abstrakte Hoffnungen und Ängste als auf konkrete Lösungen konzentriert. In der Zwischenzeit ist eine dringende Herausforderung, die oft übersehen wird, der Aufstieg der psychischen Gesundheitsprobleme in On-line -Gemeinschaften, in denen voreingenommener oder feindlicher Austausch das Vertrauen und die psychische Sicherheit untergraben.

In diesem Artikel wird eine praktische Anwendung von KI eingeführt, die auf dieses Drawback abzielt: eine Pipeline für maschinelles Lernen, die zur Erkennung und Minderung der Verzerrungen im benutzergenerierten Inhalt erfasst und gemindert wird. Das System kombiniert Deep-Studying-Modelle für die Klassifizierung mit generativen Großsprachemodellen (LLMs) zum Erstellen von kontextsensitiven Antworten. Ausgebildet für mehr als zwei Millionen Reddit- und Twitter -Kommentare, erreichte es eine hohe Genauigkeit (F1 = 0,99) und erzeugte maßgeschneiderte Moderationsnachrichten über eine virtuelle Moderator -Particular person.

Im Gegensatz zu einem Großteil des Hype um KI zeigt diese Arbeit ein materielles, einsetzbares Software, das das digitale Wohlbefinden unterstützt. Es zeigt, wie KI nicht nur Geschäftseffizienz oder Gewinn, sondern auch die Schaffung von faireren, integrativeren Räumen, in denen sich Menschen on-line verbinden, dienen kann. Im Folgenden skizziere ich die Pipeline, ihre Leistung und ihre breiteren Auswirkungen auf On-line-Communities und digitales Wohlergehen. Für Leser, die an der Untersuchung der Forschungsergebnisse ausführlicher interessiert sind, einschließlich eines Poster-Präsentationsvideos, das die Codebereiche und den Forschungsbericht in voller Länge erläutert, sind Ressourcen auf GitHub verfügbar. (1)

Eine Pipeline für maschinelles Lernen, die generative künstliche Intelligenz einsetzt, um die Verzerrungen in sozialen Netzwerken anzugehen, hat den Wert für das geistige Wohlbefinden der Gesellschaft. Die menschliche Interaktion mit Computern vertraut immer mehr Antworten, die große Sprachmodelle im Argumentationsdialog bieten.

Verfahren

Das System wurde als dreiphasige Pipeline entwickelt: Sammeln, Erkennung und Minderung. Jede Part kombinierte die NLP -Techniken (natürliche Sprachverarbeitung) mit modernen Transformatormodellen, um sowohl die Skala als auch die Subtilität der voreingenommenen Sprache on-line zu erfassen.

Schritt 1. Datenerfassung und -vorbereitung

Ich habe 1 Million Twitter -Beiträge aus dem Sentiment140 -Datensatz (2) und 1 Million Reddit -Kommentaren eines kuratierten Pushshift -Corpus (2007–2014) (3) zusammengestellt. Die Kommentare wurden gereinigt, anonymisiert und engagiert. Die Vorverarbeitung umfasste Tokenisierung, Lemmatisierung, Stopword -Entfernung und Phrase -Matching unter Verwendung von NLTK und Spacy.

Um die Modelle effektiv zu trainieren, habe ich Metadatenfunktionen wie BIAS_TERMS, HAS_BIAS und BIAS_TYPE konstruiert, die die Schichtung über voreingenommene und neutrale Teilmengen über die Schichtung hinweg ermöglichten. Tabelle 1 fasst diese Merkmale zusammen, während Abbildung 1 die Häufigkeit von Vorspannungsbegriffen über die Datensätze hinweg zeigt.

Tabelle 1. Spalten, die für die Verzerrungsanalyse verwendet werden.

Das Ansprechen von Datenleckagen und Modellüberfütungsproblemen ist in frühen Datenvorbereitungsstadien wichtig.

Abbildung 1. BIAS -Begriffe Vorkommen (gesamter Datensatz v. Schichtlich Datensatz gegen Trainingsdatensatz).

Beaufsichtige Lerntechniken werden verwendet, um Vorspannungsbegriffe zu kennzeichnen und sie als implizite oder explizite Formen zu klassifizieren.

Schritt 2. Voreingenommener Annotation und Kennzeichnung

Die Verzerrung wurde an zwei Achsen kommentiert: Vorhandensein (vorgespannter vs. nicht voreingenommen) und Type (implizit, explizit oder keine). Die implizite Verzerrung wurde als subtile oder codierte Sprache (z. B. Stereotypen) definiert, während explizite Verzerrungen offenkundig waren oder Bedrohungen waren. Zum Beispiel wurde „Opa Biden die Treppe hinaufgefallen“ als AGEST codiert, während „Biden ein Opa ist, der seine Familie liebt“, warfare es nicht. Diese kontextbezogene Codierung reduzierte falsch constructive Ergebnisse.

Schritt 3. Stimmung und Klassifizierungsmodelle

Zwei Transformatormodelle haben die Erkennungsstufe betrieben:

-Roberta (4) warfare für die Klassifizierung der Stimmung intestine abgestimmt. Seine Ausgänge (positiv, impartial, negativ) haben dazu beigetragen, den Ton von voreingenommenen Kommentaren zu schließen.

– Distilbert (5) wurde auf dem angereicherten Datensatz mit impliziten/expliziten Etiketten geschult, wodurch eine präzise Klassifizierung subtiler Hinweise ermöglicht wurde.

Mit dem Erkennungsmodell, das mit der höchsten Genauigkeit geschult ist, werden Kommentare durch ein großes Sprachmodell bewertet und eine Antwort erzeugt.

Schritt 4. Minderungsstrategie

Nach der Erkennung der Vorspannung folgte Echtzeit-Minderung. Sobald ein voreingenommener Kommentar identifiziert wurde, erzeugte das System eine Antwort, die auf den Verzerrungstyp zugeschnitten warfare:

– Explizite Voreingenommenheit: direkte, durchsetzungsfähige Korrekturen.
– Implizite Voreingenommenheit: weichere Rephrasierungen oder Bildungsvorschläge.

Die Antworten wurden von ChatGPT (6) generiert und für seine Flexibilität und Kontextempfindlichkeit ausgewählt. Alle Antworten wurden durch eine fiktive Moderator-Particular person, Jenai-Moderator ™, gerahmt, die eine konsistente Stimme und einen konsistenten Ton beibehielt (Abbildung 3).

Abb. 3.. Minderungsreaktionen auf Kommentare sozialer Netzwerke

Schritt 5. Systemarchitektur

Die vollständige Pipeline ist in Abbildung 4 dargestellt. Sie integriert Vorverarbeitung, Verzerrungserkennung und generative Minderung. Daten- und Modellausgaben wurden in einem postgresql-relationalen Schema gespeichert, wobei Protokollierung, Auditing und zukünftige Integration in Systeme in den Schleifen in der Regel ermöglicht wurden.

Abb. 4. Methodikfluss von der Verzerrungserkennung zur Minderung

Ergebnisse

Das System wurde auf einem Datensatz von über zwei Millionen Reddit- und Twitter-Kommentaren bewertet, wobei sich die Genauigkeit, Nuance und reale Anwendbarkeit konzentriert.

Function -Extraktion

Wie in Abbildung 1 gezeigt, schienen Begriffe im Zusammenhang mit Rasse, Geschlecht und Alter in den Benutzern Kommentaren unverhältnismäßig zu sein. Bei der ersten Datenuntersuchung wurden die gesamten Datensätze untersucht, und in den Kommentaren wurde eine Vorspannung von 4 Prozent aufgetaucht. Die Schichtung wurde verwendet, um das Ungleichgewicht der Nicht-Vorurteile von Vorspannungen zu beheben. Vorurteile wie Model und Mobbing schienen selten zu sein, während sich politische Vorurteile so distinguished wie andere voreingenommene Vorurteile auftraten.

Modellleistung

– Roberta erreichte durch die zweite Epoche eine Validierungsgenauigkeit von 98,6%. Seine Verlustkurven (Abbildung 5) konvergierten schnell, wobei eine Verwirrungsmatrix (Abbildung 6) eine starke Klassentrennung zeigte.

– Distilbert, ausgebildet auf impliziten/expliziten Etiketten, erreichte einen 99% igen F1 -Rating (Abbildung 7). Im Gegensatz zur Rohgenauigkeit spiegelt F1 besser das Gleichgewicht von Präzision und Rückruf in unausgeglichenen Datensätzen (7).

Abbildung 5. Roberta Fashions | Coaching gegen Validierungsverlust, Modellleistung über Epochen
Abbildung 6. Roberta Mannequin Confusion Matrix
Abbildung 7. Distilbert -Modelle | Coaching gegen Validierungsverlust, Modellleistung über Epochen

Vorspannungstypverteilung

Abbildung 8 zeigt Boxplots von Verzerrungstypen, die über vorhergesagte Stimmungsaufzeichnungen verteilt sind. Die Länge der Field -Diagramme für detrimental Kommentare, in denen etwa 20.000 Datensätze der geschichteten Datenbank, die sehr detrimental und detrimental Kommentare enthielten, kombiniert wurden. Für constructive Kommentare, das heißt, Kommentare, die eine liebevolle oder nicht-Bias-Stimmung widerspiegeln, umfassen die Field-Diagramme etwa 10.000 Aufzeichnungen. Neutrale Kommentare waren in etwa 10.000 Aufzeichnungen. Die Verzerrung und die vorhergesagte Sentiment-Aufschlüsselung bestätigen die klassifizierte Klassifizierungslogik.

Abb. 8. Vorspannungstyp durch vorherige Stimmungsverteilung

Minderungswirksamkeit

Erzeugte Antworten von Jenai-Moderator, die in Abbildung 3 dargestellt wurden, wurden von menschlichen Rezensenten bewertet. Die Antworten wurden sprachlich genau und kontextuell angemessen beurteilt, insbesondere für implizite Verzerrungen. Tabelle 2 enthält Beispiele für Systemvorhersagen mit ursprünglichen Kommentaren, die die Empfindlichkeit gegenüber subtilen Fällen zeigen.

Tabelle 2. Modelltest mit Beispiel -Kommentaren (ausgewählt).

Diskussion

Die Moderation wird häufig als technisches Filterproblem eingerahmt: Erkennen eines verbotenen Wortes, löschen Sie den Kommentar und fahren Sie fort. Moderation ist aber auch eine Interaktion zwischen Benutzern und Systemen. In der HCI -Forschung ist Equity nicht nur technisch, sondern experimentell (8). Dieses System umfasst diese Perspektive und fordert die Minderung als Dialog durch einen personenorientierten Moderator: Jenai-Moderator.

Mäßigung als Interaktion

Eine explizite Verzerrung erfordert häufig eine feste Korrektur, während implizite Verzerrungen von konstruktivem Suggestions profitieren. Durch das Auffrischen und nicht das Löschen fördert das System die Reflexion und das Lernen (9).

Equity, Ton und Design

Ton ist wichtig. Übermäßig harte Korrekturen riskieren Risiko, Benutzer zu entfremden; Übermäßig höfliche Warnungen riskieren, ignoriert zu werden. Dieses System variiert den Ton: Durchsetzungsfähig für explizite Verzerrungen, Bildung für implizite Verzerrungen (Abbildung 4, Tabelle 2). Dies entspricht der Forschung, die Equity zeigt, abhängig vom Kontext (10).

Skalierbarkeit und Integration

Das modulare Design unterstützt die API-basierte Integration mit Plattformen. Die integrierte Protokollierung ermöglicht Transparenz und Überprüfung, während die Optionen für Menschen in der Regel Sicherheitsvorkehrungen vor Überschreitungen gewährleisten.

Ethische und soziotechnische Überlegungen

Die Erkennung von Vorspannungen Risiken falsch positiv oder überpoliert marginalisierte Gruppen. Unser Ansatz mildert dies, indem wir persönliche Informationsdaten entfernen, demografische Etiketten vermeiden und überprüfbare Protokolle gespeichert werden. Dennoch ist die Aufsicht unerlässlich. Wie Mehrabi et al. (7) argumentieren, dass die Verzerrung niemals vollständig beseitigt wird, sondern ständig verwaltet werden muss.

Abschluss

Dieses Projekt zeigt, dass KI konstruktiv in On-line-Communities eingesetzt werden kann-nicht nur um Verzerrungen zu erkennen, sondern es auf eine Weise zu mildern, die die Dignität der Benutzer beibehält und das digitale Wohlbefinden fördert.

Schlüsselbeiträge:
-Architektur Twin-Pipeline (Roberta + Distilbert).
-Toneadaptive Minderungsmotor (CHATGPT).
-Persona-basierte Moderation (Jenai-Moderator).

Die Modelle erreichten nahezu perfekte F1-Werte (0,99). Noch wichtiger ist, dass die Reaktionen der Minderung genau und kontextempfindlich waren, was sie für den Einsatz praktisch machte.

Zukünftige Anweisungen:
– Benutzerstudien zur Bewertung des Empfangs.
– Pilotbereitstellungen zum Testen von Vertrauen und Engagement.
– Stärkung der Robustheit gegen Ausweichen (z. B. codierte Sprache).
– Erweiterung auf mehrsprachige Datensätze für die globale Equity.

In einer Zeit, in der KI oft als Hype oder Gefahr gegossen wird, zeigt dieses Projekt, wie es sozial vorteilhaft sein kann. Durch die Einbettung von Equity und Transparenz fördert es gesündere On-line -Räume, in denen sich die Menschen sicherer und respektiert fühlen.

Bilder, Tabellen und Abbildungen, die in diesem Bericht dargestellt wurden, wurden ausschließlich vom Autor erstellt.

Anerkennung

Dieses Projekt erfüllte die Anforderungen an Meilenstein II und Capstone für das Programm Grasp of Utilized Knowledge Science (MADS) an der College of Michigan Faculty of Data (UMSI). Das Poster des Projekts erhielt einen MADS -Preis bei der UMSI Exposition 2025 Poster Session. Dr. Laura Stagnaro diente als Mentor für Capstone Challenge, und Dr. Jinseok Kim diente als Meilenstein II -Projekt Mentor.

Über den Autor

Celia B. Banks ist ein Sozial- und Datenwissenschaftler, dessen Arbeit menschliche Systeme und angewandte Datenwissenschaft überbrückt. Ihre Doktorarbeit in Menschen- und Organisationssystemen untersuchte, wie sich Organisationen in virtuelle Umgebungen entwickeln und ihr breiteres Interesse an der Schnittstelle von Menschen, Technologie und Strukturen widerspiegeln. Dr. Banks lernt lebenslange Lernende und ihr aktueller Fokus baut auf dieser Stiftung durch angewandte Forschung in Datenwissenschaft und Analyse auf.

Referenzen

(1) C. Banks, Celia Banks Portfolio Repository: College of Michigan Faculty of Data Poster (2025) (on-line). Verfügbar: https://celiabbanks.github.io/ (Zugriff am 10. Mai 2025)

(2) A. Go, Twitter Sentiment Evaluation (2009), Entropie, P. 252

(3) Watchful1, 1 Milliarde Reddit-Kommentare von 2005-2019 (Datensatz) (2019), Drücken Sie durch das Auge. Verfügbar: https://github.com/watchful1/pushShiftdumps (Zugriff am 1. September 2024)

(4) Y. Liu, Roberta: Ein strong optimierter Bert -Vorab -Ansatz (2019), Arxiv Preprint Arxiv, P. 1907.116892

(5) V. Sanh, Distilbert, eine destillierte Model von Bert: kleiner, schneller, billiger und leichter (2019), Arxiv Preprint Arxiv, P. 1910.01108

(6) B. Zhang, mildern unerwünschte Verzerrungen mit kontroversem Lernen (2018), in AAAI/ACM -Konferenz über KI, Ethik und Gesellschaft, S. 335-340

(7) A. Mehrabi, eine Umfrage zu Voreingenommenheit und Equity im maschinellen Lernen (2021), in ACM Computing -Umfragen, vol. 54, nein. 6, S. 1-35

(8) R. Binns, Equity im maschinellen Lernen: Lehren aus der politischen Philosophie (2018), in PMLR -Konferenz über Equity, Rechenschaftspflicht und Transparenz, S. 149-159

. ACM-Transaktionen zur Pc-Human-Interaktion (TOCHI), vol. 26, nein. 5, S. 1-35, 2019

(10) N. Lee, P. Resnick und G. Barton, Algorithmische Verzerrungserkennung und -minderung: Greatest Practices und Richtlinien zur Reduzierung von Verbraucherschaden (2019) in Brookings InstituteWashington, DC

[ad_2]

]]>
http://chatgpz.de/machine-learning/auf-dem-weg-zum-digitalen-wohlbefinden-verwenden-von-generativen-ki-zur-erkennung-und-minderung-von-verzerrungen-in-sozialen-netzwerken/feed/ 0 11996
Forscher brechen das 65-jährige „Tempolimit“ für die Kartierung von Netzwerken http://chatgpz.de/data-science/forscher-brechen-das-65-jaehrige-tempolimit-fuer-die-kartierung-von-netzwerken/ http://chatgpz.de/data-science/forscher-brechen-das-65-jaehrige-tempolimit-fuer-die-kartierung-von-netzwerken/#respond Fri, 15 Aug 2025 04:16:27 +0000 https://chatgpz.de/data-science/forscher-brechen-das-65-jaehrige-tempolimit-fuer-die-kartierung-von-netzwerken/ [ad_1]

Dies ist eine wegweisende Leistung. Informatiker der Tsinghua College haben den bedeutendsten Durchbruch bei der algorithmischen Effizienz angekündigt, um den kürzesten Weg in Netzwerken seit über 40 Jahren zu finden. Das Staff hat erfolgreich einen neuen Algorithmus entwickelt, der das langjährige „Sortierbarriere“ des renommierten Algorithmus von Dijkstra von 1959 überwindet, ein Eckpfeiler des Computer systems, der alles von der GPS-Navigation bis zur Datenrouting des Internets betrieben hat. Diese Entwicklung hat einen transformativen Einfluss auf eine Vielzahl von Branchen, insbesondere in den Bereichen der Lieferkettenmanagement und -herstellung.

Denken Sie an eine riesige Karte von Einwegstraßen (eine gerichtete Grafik). Sie wählen eine Startstadt und möchten es wissen Wie weit Jede andere Stadt stammt von Ihnen entlang der billigsten Route. Diese Aufgabe mit „Single-Supply-kürzesten Pfaden“ versorgt Dinge wie Navigation, Logistik, Netzwerkrouting und Sport AI.

Seit Jahrzehnten ist die Anlaufstelle Lösung Dijkstra -Algorithmus. Es ist wunderbar zuverlässig, aber es verbringt viel Mühe Alle Städte durch steigende Entfernung anstellen wie es geht. Diese „vollständige Aufstellung“ (Sortierung) wird zu einer Zeitspüle in riesigen, spärlichen Netzwerken.

Die neuen Forschungsergebnisse zeigen, dass Sie alle Entfernungen erhalten können ohne die Städte vollständig aufzurichten. Sie brauchen nur genug Bestellung, um weiter voranzukommen – nicht mehr.

Alles erklären

Erklären wir es nun aus technischer Sicht:

Das Drawback mit einem einzelnenkürzesten Pfad (SSSP) beinhaltet einen gerichteten Diagramm g = (v, e) mit N Eckpunkte und M Kanten zusammen mit einem nicht negativen realen Gewicht für jede Kante (Duan et al. 2025, S. 1). Ziel ist es, die Länge des kürzesten Pfades von einem Quellscheitelpunkt zu jedem anderen Scheitelpunkt V im Diagramm zu finden (Duan et al. 2025, S. 3). Der Standardalgorithmus für diese Aufgabe ist der Algorithmus von Dijkstra, der, wenn er mit erweiterten Datenstrukturen wie Fibonacci oder entspannten Haufen implementiert ist, eine Zeitkomplexität von hat O (M + n log n) (Duan et al. 2025, S. 1). Dieser Algorithmus arbeitet im Vergleichs-Addition-Modell, wobei nur Vergleiche und Ergänzungen von Kantengewichten zulässig sind, wobei jeder Betrieb die Einheitszeit übernimmt (Duan et al. 2025, S. 1).

Der Algorithmus von Dijkstra arbeitet, indem er den Scheitelpunkt wiederholt mit dem minimal bekannten Abstand von einer vorrangigen Warteschlange extrahiert und seine ausgehenden Kanten entspannt (Duan et al. 2025, S. 2). Ein Nebenprodukt dieses Prozesses ist, dass es Scheitelpunkte nach ihrem Abstand von der Quelle sortiert (Duan et al. 2025, S. 1). Dieser Sortieraspekt schafft einen Zeitgpass, der oft als „Sortierbarriere“ bezeichnet wird und die angenommen wurde, dass sie eine grundlegende Grenze für SSSP -Algorithmen darstellt, was auf eine untere Grenze von ω (n log n) (Duan et al. 2025, S. 2) hindeutet. Jüngste Arbeiten bestätigten, dass der Algorithmus von Dijkstra, wenn ein Algorithmus die sortierte Reihenfolge der Scheitelpunkte nach Entfernung ausgeben muss, optimum (Duan et al. 2025, S. 1). Die Frage blieb jedoch, ob diese Barriere für gerichtete Graphen unterbrochen werden konnte, wenn nur die Entfernungen selbst erforderlich wären (Duan et al. 2025, S. 1). Die Autoren der neuen Studie präsentieren einen deterministischen Algorithmus, der dies erreicht und in den Läufen läuft O (M log²/³ n) Zeit (Duan et al. 2025, S. 1). Dieses Ergebnis ist das erste, das die an spärlichen Graphen für dieses Drawback gebundenen O (M + n log n) gebrochen hat, und ist auch der erste deterministische Algorithmus, der auch für ungerichtete Graphen tut (Duan et al. 2025, S. 2).

Der neue Algorithmus kombiniert Prinzipien aus dem Algorithmus von Dijkstra und dem Bellman-Ford-Algorithmus (Duan et al. 2025, S. 2). Der Bellman-Ford-Algorithmus entspannt alle Kanten mehrmals und kann kürzeste Wege mit höchsten Kanten in O (MK) finden, ohne Scheitelpunkte sortieren zu müssen (Duan et al. 2025, S. 2). Die Kernidee der Forscher besteht darin, diese beiden Ansätze mithilfe einer rekursiven, divid- und konquerischen Technik zusammenzufassen, die sich auf die Reduzierung der Größe der „Grenze“ konzentriert, die der Satz von Scheitelpunkten ist, die vom Algorithmus aktiv berücksichtigt werden (Duan et al. 2025, S. 2).

Algorithmischer Rahmen und Annahmen

Der Algorithmus arbeitet unter dem Vergleichs-Addition-Modell (Duan et al. 2025, S. 3). Für die Analyse wird angenommen, dass das Diagramm eine konstante In-Grad- und Out-Grad-Deggrade aufweist (Duan et al. 2025, S. 3). Die Autoren stellen fest, dass jeder allgemeine Diagramm durch eine Standardumwandlung in diese Kind konvertiert werden kann, die kürzeste Pfade bewahrt, während ein neues Diagramm mit O (M) -Reitschlägern und Kanten erstellt wird (Duan et al. 2025, S. 3). Der Algorithmus beibehält auch eine Entfernungsschätzung DB (U) für jeden Scheitelpunkt U, der immer größer oder gleich dem wahren kürzesten Abstand D (U) ist (Duan et al. 2025, S. 3). Ein Scheitelpunkt U wird als „vollständig“ angesehen, wenn db (u) = d (u) (Duan et al. 2025, S. 3). Für die Einfachheit der Präsentation geht das Papier davon aus, dass alle Pfade eindeutige Längen aufweisen, aber eine Methode zur Durchsetzung einer Gesamtreihenfolge auf Pfaden unter Verwendung des lexikografischen Vergleichs von Tupel der Pfadlänge, der Scheitelpunktzahl und der umgekehrten Sequenz von Eckpunkten, sodass diese Annahme die Allgemeinheit des Algoriths nicht begrenzt (Duan et al. 2025, S. 4).

Das Bounded Multi-Supply-Verfahren für Kürzeste Pfad (BMSSP)

Die Hauptkomponente des Algorithmus ist ein rekursives Verfahren, der als begrenzter Multi-Supply-kürzester Pfad oder BMSSP bezeichnet wird (Duan et al. 2025, S. 4). Dieses Verfahren ist so konzipiert, dass alle wahren Entfernungen zu Eckpunkten finden, die weniger als eine gegebene Obergrenze sind B und deren kürzeste Wege von einer Reihe von „Grenze“ abhängen S (Duan et al. 2025, S. 4). Der Algorithmus ist als Divide-and-Contrener T: = ⌊log²/³ (n) ⌋ ist ein Parameter (Duan et al. 2025, S. 4). Ein Aufruf an BMSSP (L, B, S) erfordert ein Degree ldie gebundene B und die Grenze setzt S als Eingabe (Duan et al. 2025, S. 4). Es gibt eine neue, möglicherweise kleinere Grenze B ‚≤ B und einen Satz von Scheitelpunkten U zurück, die jetzt vollständig sind (Duan et al. 2025, S. 5). Die Ausführung kann entweder erfolgreich sein, wobei B ‚= B oder partiell, wobei B‘

Wichtige Unterroutinen

Die BMSSP -Prozedur basiert auf zwei Schlüsselkomponenten, um seine Beschleunigung zu erreichen (Duan et al. 2025, S. 5). Das erste ist eine Unterroutine namens Findpivots (Duan et al. 2025, S. 5). Diese Funktion nimmt die Frontier Set S und führt eine Bellman-Ford-ähnliche Entspannung für ok Schritte, wo ok: = ⌊log¹/³ (n) ⌋ (Duan et al. 2025, S. 4). Dieser Prozess berechnet entweder die endgültigen kürzesten Pfade für Eckpunkte, deren Pfade von S kurz sind (weniger als Ok -Scheitelpunkte) oder identifiziert einen kleineren Satz von „Pivots“ -P ⊆ S (Duan et al. 2025, S. 5). Diese Pivots sind Eckpunkte in S, die Wurzeln größerer Kürzester-Pfad-Subträume (mindestens Ok-Scheitelpunkte) sind, und die Anzahl solcher Drehungen wird durch | |/ok begrenzt, wobei UE der Satz von Interesse ist (Duan et al. 2025, S. 6). Dies reduziert effektiv die Größe der Grenze, die in nachfolgenden rekursiven Aufrufen verarbeitet werden muss (Duan et al. 2025, S. 5).

Die zweite Komponente ist eine spezielle Datenstruktur, mit der die Pivots und andere Eckpunkte verwaltet werden, ohne sie vollständig zu sortieren (Duan et al. 2025, S. 6). Diese Struktur unterstützt drei Hauptoperationen (Duan et al. 2025, S. 6-7):

  • Insert: Fügt ein Schlüsselwertpaar in amortisierter O (max {1, log (n/m)}) hinzu, in der n die Anzahl der Elemente und M ein Blockgrößenparameter ist (Duan et al. 2025, S. 6).
  • BatchPrepend: Fügt eine Liste neuer Elemente ein, die alle kleiner sind als alle vorhandenen Elemente, was für die Behandlung von Ergebnissen aus rekursiven Aufrufen effizient ist (Duan et al. 2025, S. 7).
  • Pull: Extrahiert einen Block der kleinsten m -Elemente aus der Struktur, ohne die gesamte Sammlung zu sortieren, die die Eingabe für den nächsten rekursiven Ruf von BMSSP liefert (Duan et al. 2025, S. 7).

Diese Datenstruktur wird unter Verwendung einer blockbasierten verknüpften Liste implementiert, die mit einem selbstausgleichenden binären Suchbaum kombiniert ist, um Blockgrenzen zu verwalten (Duan et al. 2025, S. 7). Durch die Kombination dieser Techniken vermeidet der Algorithmus die Notwendigkeit, eine voll sortierte Prioritätswarteschlange aller N -Scheitelpunkte aufrechtzuerhalten (Duan et al. 2025, S. 2). Stattdessen verteilt es rekursiv das Drawback, verwendet begrenzte Bellman-Ford-Relaxationen, um Pivots zu finden, und verwendet eine teilweise Sortierdatenstruktur, um die viel kleineren Pivots für die nächste Stufe der Reursion effizient zu verwalten (Duan et al. 2025, S. 5). Die Gesamtzeitkomplexität leitet sich aus den Arbeiten, die an jedem der Rekursionsniveaus von O ((log n)/t) durchgeführt wurden, ab, was zum endgültigen O (M log²/³ n) gebunden ist (Duan et al. 2025, S. 14).


Ausgewähltes Bildnachweis

[ad_2]

]]>
http://chatgpz.de/data-science/forscher-brechen-das-65-jaehrige-tempolimit-fuer-die-kartierung-von-netzwerken/feed/ 0 11598
Aufbau von Netzwerken von Information Science Expertise | MIT Nachrichten http://chatgpz.de/artificial-intelligence/aufbau-von-netzwerken-von-information-science-expertise-mit-nachrichten/ http://chatgpz.de/artificial-intelligence/aufbau-von-netzwerken-von-information-science-expertise-mit-nachrichten/#respond Sat, 31 May 2025 11:19:49 +0000 http://chatgpz.de/artificial-intelligence/aufbau-von-netzwerken-von-data-science-talent-mit-nachrichten/ [ad_1]

Der Aufstieg der künstlichen Intelligenz taucht wieder auf eine Frage, die älter ist als der Abakus: Wenn wir ein Werkzeug haben, um dies für uns zu tun, warum dann selbst lernen?

Die Antwort, argumentiert der Professor Devavrat Shah, Professor von MIT Electrical Engineering und Informatik (ECS), hat sich nicht geändert: Grundfähigkeiten in der Mathematik bleiben für die Verwendung von Instruments wesentlich, von dem Wissen, welches Software zur korrekten Interpretation der Ergebnisse verwendet werden soll.

„Wenn Großsprachenmodelle und generative KI neue Anwendungen erfüllen, werden diese hochmodernen Instruments weiterhin die gesamten Branche der Industrie verändern und neue Einblicke in die Herausforderungen in Forschung und Politik bringen“, argumentiert Shah. „Die Welt braucht Menschen, die die zugrunde liegenden Konzepte hinter AI erfassen können, um ihr Potenzial wirklich zu nutzen.“

Shah ist Professor bei MITs Institut für Daten, Systeme und Gesellschaft (IDSS), eine interdisziplinäre Einheit, die dem globalen Bedarf an Datenfähigkeiten mit On-line-Kursangeboten wie dem erfüllt wird Micromasters -Programm in Statistik und Datenwissenschaftwas Shah inszeniert.

„Mit mehr als tausend Inhabern weltweit und Zehntausenden, die seit seiner Gründung beteiligt sind, hat sich das Micromasters-Programm in Statistik und Datenwissenschaft als strenge, aber versatile Möglichkeit für qualifizierte Lernende erwiesen, eine MIT-Ebene der Grundlagen auf MIT-Ebene zu entwickeln“, sagt Shah.

Die Micromasters bilden auch das Rückgrat von IDSS -Bildungspartnerschaften, in denen ein eingebettetes MIT -Crew mit Organisationen zusammenarbeitet, um Gruppen von Lernenden durch den Micromasters -Curriculum zu unterstützen.

„IDSS bietet zusammen mit unserem ersten strategischen Bildungspartner durch das Brescia Institute of Know-how (Breit) in Peru eine Datenwissenschaftsbildung auf Hochschulabsolventen“, erklärt Fotini Christia, der Ford Worldwide Professor für Sozialwissenschaften am MIT und Direktor von IDSS. „Durch diese Partnerschaft schult IDSS Datenwissenschaftler, die die Entscheidungsfindung in der peruanischen Industrie, Gesellschaft und Politik informieren.“

Coaching der nächsten Technology

Das erweiterte Programm von Breit in Datenwissenschaft und globale Fähigkeiten, die in Zusammenarbeit mit IDSS entwickelt wurden, bietet Schulungen sowohl in den technischen als auch in nichttechnischen Fähigkeiten, die erforderlich sind, um die Erkenntnisse zu nutzen, die Daten bieten können. Die Mitglieder vervollständigen die Mikromaster in Statistik und Datenwissenschaft (SDS) und lernen die Grundlagen von Statistik, Wahrscheinlichkeit, Datenanalyse und maschinellem Lernen. In der Zwischenzeit sind diese Lernenden mit Karrierefähigkeiten von Kommunikation und kritischem Denken über Teambuilding und Ethik ausgestattet.

„Ich wusste, dass künstliche Intelligenz, maschinelles Lernen und Datenwissenschaft die Zukunft waren, und ich wollte in dieser Welle sein“, erklärt der Breit -Lernende Renato Castro über seine Entscheidung, sich dem Programm anzuschließen. Castro, ein Anmeldeinhaber, hat jetzt Datenprojekte für Gruppen in Peru, Panama und Guatemala entwickelt. „Das Programm lehrt mehr als die Mathematik. Es ist eine systematische Denkweise, mit der Sie sich auf reale Probleme auswirken und nicht nur für ein Unternehmen, sondern auch für den Wohlstand für die Menschen Wohlstand schaffen.“

„Das Ziel ist es, Problemlöser und Führungskräfte in einem Bereich zu entwickeln, der für Organisationen auf der ganzen Welt wächst und relevanter wird“, sagt Lucia Haro, Managerin von Breit. „Wir schulen die nächste Technology, um zur wirtschaftlichen Entwicklung unseres Landes beizutragen und optimistic soziale Auswirkungen auf Peru zu haben.“

Um dies zu erreichen, bietet IDSS Breit Learners maßgeschneiderte Unterstützung. Die Lehrassistenten der MIT-Studentin führen regelmäßige Sitzungen an, um praktische Praxis mit Klassenkonzepten zu bieten, die Lernfragen zu beantworten und Themen für die Entwicklung zusätzlicher Ressourcen zu identifizieren.

„Diese Sitzungen waren sehr nützlich, da Sie die Anwendung des theoretischen Teils aus den Vorlesungen sehen“, sagt Jesús Figueroa, der das Programm abgeschlossen hat und jetzt als lokaler Lehrassistent fungiert. Lernende wie Figueroa müssen über ein tiefes Verständnis des Kursmaterials hinausgehen, um zukünftige Lernende zu unterstützen.

„Vielleicht versteht man die Grundlagen bereits, den theoretischen Teil“, erklärt Figueroa, „aber Sie müssen lernen, wie man sie kommuniziert.“

Acht Kohorten haben das Programm abgeschlossen, drei weitere in Arbeit, insgesamt quick 100 Inhaber der Micromasters -Anmeldeinformationen – und 90 weitere in der Pipeline. Da Breit ihren Betrieb vergrößert hat, arbeitete das IDSS -Crew daran, neue Bedürfnisse zu erfüllen, als sie auftraten, z. B. bei der Entwicklung einer technischen Bewertung zur Unterstützung der Rekrutierung der Lernenden.

„Das Bewertungsinstrument misst die Vertrautheit der Bewerber mit Voraussetzungen wie Kalkül, elementare lineare Algebra und grundlegende Programmierung in Python“, sagt Karene Chu, stellvertretender Direktor für Bildungsdirektor für die SDS -Micromasters. „Mit einiger Randomisierung der Fragen und der automatischen Einstufung erleichterte dieses Quiz die Bestimmung des Potenzials für das fortschrittliche Programm für Datenwissenschaft und globale Fähigkeiten für Breit und hilft den Bewerbern, zu erkennen, wo sie möglicherweise ihre Fähigkeiten auffrischen müssen.“

Seit der Implementierung der Bewertung hat sich das Programm weiterhin auf vielfältige Weise entwickelt, beispielsweise das systematische Suggestions von MIT -Lehrassistenten in Datenprojekte. Diese in mehrere Projektphasen verwandelte Anleitung gewährleistet die besten Ergebnisse für Lernende und Projektsponsoren gleichermaßen. Das IDSS -Micromasters -Crew hat neue Coding -Demos entwickelt, um die Lernenden mit unterschiedlichen Anwendungen vertraut zu machen und das Verständnis der dahinter steckenden Prinzipien zu vertiefen. In der Zwischenzeit hat das Micromasters -Programm selbst erweitert, um auf die Nachfrage der Branche zu reagieren. Er fügt einen Kurs in der Zeitreihenanalyse hinzu und erstellt spezielle Programm -Tracks für die Lernenden, um ihre Erfahrungen anzupassen.

„Partnereingabe hilft uns, die Landschaft zu verstehen, daher kennen wir die Anforderungen und wie wir sie erfüllen können“, sagt Susana Kevorkova, Programmmanagerin der IDSS -Micromasters. „Mit Breit bieten wir nun eine vorausgegebene ‚Bootcamp‘ an, um den Lernenden mit unterschiedlichem Hintergrund zu helfen, ihr Wissen zu aktualisieren oder Lücken zu decken. Wir suchen immer nach Möglichkeiten, für unsere Accomplice einen Mehrwert zu schaffen.“

Bessere Entscheidungen, größere Auswirkungen

Um die Entwicklung von Datenfähigkeiten zu beschleunigen, bietet das Programm von Breit praktische Möglichkeiten, diese Fähigkeiten auf Datenprojekte anzuwenden. Diese Projekte werden in Zusammenarbeit mit lokalen Nichtregierungsorganisationen (NGOs) entwickelt, die an einer Vielzahl von Projekten für soziale Auswirkungen arbeiten, die zur Verbesserung der Lebensqualität der peruanischen Bürger verbessert werden.

„Ich habe mit einer NGO zusammengearbeitet, um zu verstehen, warum die Schüler das Studium nicht abschließen“, sagt Diego Trujillo Chappa, eine Inhaber des Breit -Lernenden und Micromasters. „Wir haben ein verbessertes Modell für sie entwickelt, wenn man bedenkt, dass Schülermerkmale wie ihre Leseebenen und ihr Einkommen in Betracht gezogen werden, und versuchten, eine Verzerrung darüber zu entfernen, woher sie kommen.“

„Unsere Methodik hat der NGO geholfen, mehr mögliche Bewerber zu identifizieren“, fügt Trujillo hinzu. „Und es ist ein guter Schritt für die NGO, die eine bessere Datenanalyse vorantreibt.“

Trujillo hat diese Datenfähigkeiten nun in seine Arbeitserlebnisse im Bereich der Arbeitserfahrung im Telekommunikationssektor gebracht. „Wir haben einige Funktionen, die wir im 5G -Netzwerk in meinem Land verbessern möchten“, erklärt er. „Diese Methodik hat mir geholfen, die Variable der Particular person in der Gleichung der Erfahrung korrekt zu verstehen.“

Das Social Impression Venture von Yajaira Huerta befasste sich mit einem besonders schwerwiegenden Downside und zu einer schwierigen Zeit. „Ich habe mit einer Organisation zusammengearbeitet, die Häuser für obdachlose Menschen baut“, erklärt sie. „Dies warfare, als sich Covid-19 ausbreitete, was für viele Menschen in Peru eine schwierige Scenario warfare.“

Eine Herausforderung, mit der ihre Projektorganisation konfrontiert warfare, bestand darin, zu erkennen, wo die Bedürfnisse am höchsten waren, um die Verteilung der Ressourcen zu strategieren – ein Downside, bei dem Datenwerkzeuge einen großen Einfluss haben können. „Wir haben ein Clustering -Modell für die Erfassung von Indikatoren erstellt, die in den Daten verfügbar sind, und um uns auch mit Geolokalisierung zu zeigen, wo die Bedürfnisse der Bedürfnisse waren“, sagt Huerta. „Dies hat dem Crew geholfen, bessere Entscheidungen zu treffen.“

Globale Netzwerke und Pipelines

Als Teil der wachsenden, globalen IDSS -Neighborhood haben Anmeldeinhaber des Micromasters -Programms in Statistik und Datenwissenschaft Zugriff auf IDSS -Workshops und -Konferenzen. Durch die Zusammenarbeit von Breit mit IDSS haben die Lernenden mehr Möglichkeiten, mit der MIT -Fakultät über aufgezeichnete Vorträge hinaus zu interagieren. Einige Breitlerner sind sogar zum MIT gereist, wo sie MIT -Studenten und Fakultäten kennengelernt und über die laufende Forschung erfahren haben.

„Ich fühle mich so verliebt in diese Geschichte, die Sie haben, und auch, was Sie mit KI und Nanotechnologie bauen. Ich bin so inspiriert.“ sagt Huerta über ihre Zeit auf dem Campus.

Bei ihrem jüngsten Besuch im Februar erhielten Breit Learners vollendeten Zertifikate, tourte auf dem MIT -Campus, schloss sich mit Studenten und Fakultäten mit interaktiven Gesprächen ein und erhielt eine Vorschau auf eine neue Entwicklung von Mikromastern: a Sportanalyse Kurs entworfen von der Maschinenbauprofessorin Anette „Peko“ Hosoi.

„Die Ausrichtung von Breit und ihren außergewöhnlich talentierten Lernenden bringt alle unsere Partnerbemühungen den Kreis, zumal Micromasters-Inhaber von Micromasters ein Pool potenzieller Rekruten für unsere Absolventenprogramme auf dem Campus sind“, sagt Christia. „Diese Partnerschaft ist ein Modell, auf dem wir aufbauen und iterieren können, damit wir in jedem Teil der Welt ähnliche Netzwerke und Pipelines von Datenwissenschafttalenten entwickeln.“

[ad_2]

]]>
http://chatgpz.de/artificial-intelligence/aufbau-von-netzwerken-von-information-science-expertise-mit-nachrichten/feed/ 0 9589
Navigieren in Netzwerken mit NetworkX: Eine kurze Anleitung zu Diagrammen in Python | von Diego Penilla | November 2024 http://chatgpz.de/artificial-intelligence/navigieren-in-netzwerken-mit-networkx-eine-kurze-anleitung-zu-diagrammen-in-python-von-diego-penilla-november-2024/ http://chatgpz.de/artificial-intelligence/navigieren-in-netzwerken-mit-networkx-eine-kurze-anleitung-zu-diagrammen-in-python-von-diego-penilla-november-2024/#respond Mon, 18 Nov 2024 20:55:07 +0000 https://chatgpz.de/artificial-intelligence/navigieren-in-netzwerken-mit-networkx-eine-kurze-anleitung-zu-diagrammen-in-python-von-diego-penilla-november-2024/ [ad_1]

Foto von Alina Grubnyak An Unsplash

Entdecken Sie NetworkX zum Erstellen, Analysieren und Visualisieren von Diagrammen in Python. Erkenntnisse in vernetzten Daten entdecken.

In In einer Welt voller Verbindungen – von Social-Media-Freundschaften bis hin zu komplexen Verkehrsnetzen – ist das Verständnis von Beziehungen und Mustern der Schlüssel zum Verständnis der Systeme um uns herum. Stellen Sie sich ein soziales Netzwerk vor, in dem jede Particular person ein Punkt (ein „Knoten“) ist, der durch Linien (oder „Kanten“) mit Freunden verbunden ist. Oder stellen Sie sich eine Kartierung des U-Bahn-Programs einer Stadt vor, in der jede Station ein Knotenpunkt und jede Route eine sie verbindende Kante darstellt.

Hier ist NetzwerkX glänzt und bietet eine leistungsstarke Möglichkeit, diese komplexen Beziehungsnetze aufzubauen, zu analysieren und zu visualisieren.

Mit NetworkX können wir Daten auf eine Weise darstellen, die mit herkömmlichen Tabellen umständlich oder sogar unpraktisch wäre, in einem Diagrammformat jedoch einfach und natürlich wird. Beziehungen, für deren Definition in einer Tabelle viele Zeilen und Spalten erforderlich wären, können auf intuitive, visuelle Weise erfasst werden, was uns hilft, komplexe Daten zu verstehen und zu interpretieren.

Foto von Terry Vlisidis An Unsplash

Mit der Bibliothek können wir eine breite Palette von Methoden und Algorithmen auf diese Diagramme anwenden und jedes Mal neue Erkenntnisse liefern, wenn wir unsere Daten mit einem neuen Ansatz neu gestalten.

Beginnen wir mit der Aufschlüsselung dessen, was ein Diagramm ist. Bei der Netzwerkanalyse besteht ein Diagramm aus Knoten (oder Eckpunkte) und Kanten (oder Hyperlinks).

  • Stellen Sie sich Knoten als die Haupteinheiten vor, wie Menschen oder Webseiten, und Kanten als die Verbindungen zwischen ihnen – wie Freundschaften in einem sozialen Netzwerk oder Hyperlinks zwischen Web sites.
  • Einige Kanten tragen sogar Gewichte, die die Stärke, Entfernung oder Kosten der Verbindung zwischen zwei Knoten darstellen. Mithilfe dieser zusätzlichen Informationsebene können wir nicht nur analysieren, ob zwei Knoten miteinander verbunden sind, sondern auch, wie stark oder eng sie sind.

Diese Diagramme können zur Modellierung einer Vielzahl von Systemen verwendet werden, von sozialen Netzwerken bis hin zu Molekülen und Transportnetzen.

Sehen wir uns zunächst an, wie man mit ein Diagramm erstellt networkx. Wenn Sie es nicht installiert haben, führen Sie zunächst Folgendes aus:

$ pip set up networkx

Erstellen eines Diagramms

Um ein Netzwerk aufzubauen, werden wir:

  1. Initialisieren Sie das Netzwerk: indem Sie ein Diagramm erstellen mit G = nx.Graph()
  2. Knoten mit Attributen hinzufügen: Verwenden Sie G.add_node(), um Knoten hinzuzufügen, von denen jeder benutzerdefinierte Attribute wie Beschriftungen oder Alter speichern kann.
  3. Kanten hinzufügen: Knoten mit G verbinden.add_edge()wobei jede Kante ein Gewichtsattribut enthalten kann, um die Stärke oder Kosten der Verbindung darzustellen.
  4. Visualisieren Sie das Diagramm: Verwenden Sie Matplotlib-Funktionen wie nx.draw() Und nx.draw_networkx_edge_labels() um das Diagramm anzuzeigen und Knotenbeschriftungen und Kantengewichtungen zur einfachen Interpretation anzuzeigen.

Dies ist der Code, um dies zu erreichen:

import networkx as nx
import matplotlib.pyplot as plt

# Create a easy graph
G = nx.Graph()

# Add nodes with attributes (e.g., 'label' and 'age')
G.add_node(1, label="A", age=25)
G.add_node(2, label="B", age=30)
G.add_node(3, label="C", age=22)
G.add_node(4, label="D", age=28)

# Add weighted edges (node1, node2, weight)
G.add_edge(1, 2, weight=4)
G.add_edge(1, 3, weight=3)
G.add_edge(2, 4, weight=5)

# Retrieve and print node attributes
node_attributes = nx.get_node_attributes(G, 'age') # Get 'age' attribute for all nodes
print("Node Attributes (Age):", node_attributes)

# Retrieve and print edge attributes
edge_weights = nx.get_edge_attributes(G, 'weight') # Get 'weight' attribute for all edges
print("Edge Attributes (Weight):", edge_weights)

# Draw the graph with node and edge attributes
pos = nx.spring_layout(G) # Format for node positions
node_labels = nx.get_node_attributes(G, 'label') # Get node labels for visualization
edge_labels = nx.get_edge_attributes(G, 'weight') # Get edge weights for visualization

plt.determine(figsize=(6, 6))
nx.draw(G, pos, with_labels=True, node_color='skyblue', font_size=15, font_weight='daring', node_size=500)

# Draw the sting weights and node labels
nx.draw_networkx_edge_labels(G, pos, edge_labels=edge_labels)

plt.title("NetworkX Graph with Node and Edge Attributes")
plt.present()

Abbildung 1: Ein gewichteter Graph mit den Knoten 1 bis 4. Bild vom Autor.

In diesem Beispiel initialisieren wir das Diagramm und erstellen dann:

  • 4 Knoten (1, 2, 3, 4) durch Aufruf G.add_node(node, label, attr)
  • 3 beschwerte Kanten die diese Knoten verbinden: (1, 2), (1, 3) und (2, 4) durch Aufruf G.add_edge(node1, node2, attr)

Sowohl Knoten als auch Kanten in NetworkX können zusätzliche Attribute enthalten, wodurch das Diagramm mit Informationen reicher wird.

  • Knotenattribute (Zugriff über nx.get_node_attributes(G, ‘attribute’)) Erlauben Sie jedem Knoten, Daten zu speichern, beispielsweise den Beruf einer Particular person in einem sozialen Netzwerk.
  • Kantenattribute (Zugriff über nx.get_edge_attributes(G, ‘attribute’)) Speichern Sie Informationen zu jeder Verbindung, beispielsweise die Entfernung oder die Fahrzeit in einem Verkehrsnetz. Diese Attribute fügen Kontext und Tiefe hinzu und ermöglichen eine detailliertere Analyse des Netzwerks.

Wir verwenden dann das Spring-Format von NetworkX pos = nx.spring_layout(G) um die Knoten für die Visualisierung zu positionieren und sicherzustellen, dass sie im Diagramm natürlich verteilt sind. Endlich, nx.draw() Und nx.draw_networkx_edge_labels() Zeigen Sie das Diagramm mit Knotenbeschriftungen und Kantengewichtungen an und schaffen Sie so eine klare Sicht auf die Struktur und Verbindungen des Netzwerks.

Obwohl dies ein recht einfaches Netzwerk conflict, veranschaulicht es die Grundlagen der Arbeit mit Netzwerken: Um Diagramme zu manipulieren, müssen wir die Knoten und ihre Verbindungen entlang aller Attribute, die sie möglicherweise haben, verwalten.

Karate-Membership-Netzwerk

Eines der bekanntesten Beispiele in der Netzwerkwissenschaft ist das Zacharys Karate Membership, Wird häufig zur Veranschaulichung der Analyse sozialer Netzwerke und der Group-Erkennung verwendet. Der Datensatz ist gemeinfrei und standardmäßig in networkx enthalten. Sie können wie unten gezeigt darauf zugreifen:

# Load the  Karate Membership
G = nx.karate_club_graph()

# Draw the graph
plt.determine(figsize=(8, 8))
pos = nx.spring_layout(G) # Format for nodes -> treats nodes as repelling objects
nx.draw(G, pos, with_labels=True, node_color='skyblue', font_size=12, font_weight='daring', node_size=500)
plt.title("Zachary's Karate Membership Community")
plt.present()

Abbildung 2: Zacharys Karate Membership-Netzwerk. Bild vom Autor.

Dieses Netzwerk repräsentiert die Freundschaften zwischen 34 Mitgliedern eines Karate-Golf equipment und ist berühmt für die Spaltung zwischen zwei Fraktionen, die sich jeweils um eine zentrale Figur drehen – Mr. Hello und Officer.

Werfen wir einen Blick auf die in den Knotendaten enthaltenen Attribute:

# looping over nodes
for node in G.nodes():
print(f"Node: {node}, Node Attributes: {G.nodes(node)}")
Node: 0, Node Attributes: {'membership': 'Mr. Hello'}
Node: 1, Node Attributes: {'membership': 'Mr. Hello'}
Node: 2, Node Attributes: {'membership': 'Mr. Hello'}
Node: 3, Node Attributes: {'membership': 'Mr. Hello'}
Node: 4, Node Attributes: {'membership': 'Mr. Hello'}
Node: 5, Node Attributes: {'membership': 'Mr. Hello'}
Node: 6, Node Attributes: {'membership': 'Mr. Hello'}
Node: 7, Node Attributes: {'membership': 'Mr. Hello'}
Node: 8, Node Attributes: {'membership': 'Mr. Hello'}
Node: 9, Node Attributes: {'membership': 'Officer'}
Node: 10, Node Attributes: {'membership': 'Mr. Hello'}
Node: 11, Node Attributes: {'membership': 'Mr. Hello'}
Node: 12, Node Attributes: {'membership': 'Mr. Hello'}
Node: 13, Node Attributes: {'membership': 'Mr. Hello'}
Node: 14, Node Attributes: {'membership': 'Officer'}
Node: 15, Node Attributes: {'membership': 'Officer'}
Node: 16, Node Attributes: {'membership': 'Mr. Hello'}
Node: 17, Node Attributes: {'membership': 'Mr. Hello'}
Node: 18, Node Attributes: {'membership': 'Officer'}
Node: 19, Node Attributes: {'membership': 'Mr. Hello'}
Node: 20, Node Attributes: {'membership': 'Officer'}
Node: 21, Node Attributes: {'membership': 'Mr. Hello'}
Node: 22, Node Attributes: {'membership': 'Officer'}
Node: 23, Node Attributes: {'membership': 'Officer'}
Node: 24, Node Attributes: {'membership': 'Officer'}
Node: 25, Node Attributes: {'membership': 'Officer'}
Node: 26, Node Attributes: {'membership': 'Officer'}
Node: 27, Node Attributes: {'membership': 'Officer'}
Node: 28, Node Attributes: {'membership': 'Officer'}
Node: 29, Node Attributes: {'membership': 'Officer'}
Node: 30, Node Attributes: {'membership': 'Officer'}
Node: 31, Node Attributes: {'membership': 'Officer'}
Node: 32, Node Attributes: {'membership': 'Officer'}
Node: 33, Node Attributes: {'membership': 'Officer'}

Das Knotenattribut membership bezieht sich auf die Gemeinschaft "Officer" oder "Mr. Hello" zu dem jeder Knoten gehört. Lassen Sie uns sie verwenden, um die Knoten im Diagramm farbig zu gestalten.

Dazu weisen wir den Knoten mit die blaue Farbe zu membership Etikett "Mr Hello" und rot diejenigen mit Etikett "Officer" in einer Liste color_map mit dem wir das Netzwerk visualisieren können nx.draw.

# Load the Karate Membership 
G: nx.Graph = nx.karate_club_graph()

# Get the node labels
labels = nx.get_node_attributes(G, 'membership')

# Map neighborhood labels to colours
color_map = ()
for node in G.nodes():
if labels(node) == 'Mr. Hello':
# Assign blue coloration for 'Mr. Hello'
color_map.append('blue')
else:
# Assign pink coloration for 'Officer'
color_map.append('pink')

# Visualize the graph
plt.determine(figsize=(8, 8))
pos = nx.spring_layout(G)

nx.draw(G, pos, with_labels=True, node_color=color_map, font_size=12, font_weight='daring', node_size=500, cmap=plt.cm.rainbow)
plt.title("Zachary's Karate Membership Community with Floor Reality Communities")
plt.present()

Abbildung 3: Communities „Mr Hello“ und „Officer“ im Karate Membership Community. Bild vom Autor.

Der Legende nach kam es zu einem Konflikt zwischen dem Ausbilder des Golf equipment, „Mr. Hallo“, und der Clubverwalter „Offizier“. Diese Spaltung führte schließlich dazu, dass sich der Verein in zwei verschiedene Gruppen aufspaltete, die sich jeweils um einen dieser Anführer drehten.

Indem wir diese Beziehungen als Netzwerk darstellen, können wir diese Aufteilung visuell erfassen und Muster und Cluster innerhalb der Daten aufdecken – Erkenntnisse, die bei Daten in herkömmlichen Tabellenformaten möglicherweise schwer zu erkennen sind.

Zentralität

Um die Struktur und Dynamik eines Netzwerks zu verstehen, ist es wichtig, die einflussreichsten oder strategisch positionierten Knoten zu identifizieren. Hier ist Zentralität Maßnahmen kommen ins Spiel, ein Schlüsselkonzept in der Netzwerkwissenschaft.

Es misst die Place von Knoten anhand ihrer Verbindungstypen und identifiziert Schlüsselknoten anhand bestimmter Kriterien. Zu den gängigen Maßnahmen gehören:

Diese Maßnahmen tragen dazu bei, wichtige Akteure oder Engpässe im Netzwerk aufzudecken und Einblicke in dessen Struktur/Dynamik zu geben.

import networkx as nx
import matplotlib.pyplot as plt

# Load the Karate Membership
G = nx.karate_club_graph()

# Compute centrality measures
degree_centrality = nx.degree_centrality(G)
betweenness_centrality = nx.betweenness_centrality(G)
closeness_centrality = nx.closeness_centrality(G)

# high 5 nodes by centrality for every measure
top_degree_nodes = sorted(degree_centrality, key=degree_centrality.get, reverse=True)(:5)
top_betweenness_nodes = sorted(betweenness_centrality, key=betweenness_centrality.get, reverse=True)(:5)
top_closeness_nodes = sorted(closeness_centrality, key=closeness_centrality.get, reverse=True)(:5)

# high 5 nodes for every centrality measure
print("High 5 nodes by Diploma Centrality:", top_degree_nodes)
print("High 5 nodes by Betweenness Centrality:", top_betweenness_nodes)
print("High 5 nodes by Closeness Centrality:", top_closeness_nodes)

# high 5 nodes for Diploma Centrality
plt.determine(figsize=(8, 8))
pos = nx.spring_layout(G) # Positioning of nodes
node_color = ('pink' if node in top_degree_nodes else 'skyblue' for node in G.nodes())

# draw high 5 nodes by diploma centrality
nx.draw(G, pos, with_labels=True, node_color=node_color, font_size=15, font_weight='daring', node_size=500)
plt.title("Karate Membership Community with High 5 Diploma Central Nodes")
plt.present()

High 5 nodes by Diploma Centrality: (33, 0, 32, 2, 1)
High 5 nodes by Betweenness Centrality: (0, 33, 32, 2, 31)
High 5 nodes by Closeness Centrality: (0, 2, 33, 31, 8)
Abbildung 4: Knoten mit der höchsten Zentralität im Karate Membership Community. Bild vom Autor.

Für Knoten 0 Und 3 Wir sehen, dass diese Knoten die zentralsten im Netzwerk sind, mit hoher Grad-, Zwischen- und Nähe-Zentralität.

Ihre zentrale Rolle lässt darauf schließen, dass es sich um intestine vernetzte Knotenpunkte handelt, die häufig als Brücken zwischen anderen Mitgliedern fungieren und in der Lage sind, andere im Netzwerk schnell zu erreichen. Diese Positionierung hebt sie als Schlüsselakteure hervor, die für den Ablauf und die Struktur des Netzwerks von Bedeutung sind.

Eine Group C ist eine Gruppe von Knoten (z. B. Einzelpersonen in einem sozialen Netzwerk, über Hyperlinks verbundene Webseiten usw.), die untereinander stärkere Verbindungen aufweisen als mit dem Relaxation des Netzwerks.

Im Hinblick auf eine visuelle Darstellung der Zentralität wenden wir den Girvan-Newman-Algorithmus auf dieses Diagramm an.

  • Der Algorithmus generiert eine Reihe von Group-Splits, während er nach und nach Kanten mit der höchsten Betweenness-Zentralität entfernt.
  • Wenn der Algorithmus zum ersten Mal ausgeführt wird, identifiziert er die bedeutendste Group-Abteilung.
from networkx.algorithms.neighborhood import girvan_newman

# Load the Karate Membership graph
G = nx.karate_club_graph()

# Apply Girvan-Newman neighborhood detection
comp = girvan_newman(G)
first_level_communities = subsequent(comp)

# Visualize the primary stage of communities
pos = nx.spring_layout(G)
plt.determine(figsize=(8, 8))

# Colour nodes by their neighborhood
node_colors = ('skyblue' if node in first_level_communities(0) else 'orange' for node in G.nodes())
nx.draw(G, pos, with_labels=True, node_color=node_colors, font_size=12, node_size=500)

plt.title("Karate Membership Community with Girvan-Newman Communities")
plt.present()

print("Detected Communities:", first_level_communities)

Abbildung 5: Erste Aufteilung im Karate-Membership-Netzwerk durch den Girvan-Newman-Algorithmus. Bild vom Autor.
  • Seit girvan_newman(G) gibt einen Iterator als zurück compruft subsequent(comp) ermöglicht es Ihnen, die erste Aufteilung, additionally die erste Aufteilung des Netzwerks in zwei Communities, abzurufen.

Vergleichen wir die erkannten Communities mit der tatsächlichen Knotenbezeichnung membership


print("Detected Communities:", first_level_communities)
# Print the precise communities (floor reality)
print("nActual Communities (Floor Reality):")
mr_hi_nodes = (node for node, label in labels.objects() if label == 'Mr. Hello')
officer_nodes = (node for node, label in labels.objects() if label == 'Officer')

print(f"Mr. Hello's Group: {mr_hi_nodes}")
print(f"Officer's Group: {officer_nodes}")

Detected Communities: (
{0, 1, 3, 4, 5, 6, 7, 10, 11, 12, 13, 16, 17, 19, 21},
{2, 8, 9, 14, 15, 18, 20, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33}
)

Precise Communities (Floor Reality):
Mr. Hello's Group: (0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 16, 17, 19, 21)
Officer's Group: (9, 14, 15, 18, 20, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33)

Die vom Girvan-Newman-Algorithmus erkannten Communities ähneln den tatsächlichen Mr. Hello- und Officer-Communitys, stimmen jedoch nicht genau überein. Dies liegt daran, dass der Girvan-Newman-Algorithmus das Netzwerk ausschließlich auf der Grundlage der Edge Betweenness-Zentralität unterteilt, ohne sich auf vordefinierte Group-Labels zu verlassen.

Dieser Ansatz ist besonders nützlich in unstrukturierten Datensätzen, in denen keine Beschriftungen vorhanden sind, da er sinnvolle Gruppierungen basierend auf den Struktureigenschaften des Netzwerks aufdeckt. Dies unterstreicht einen wichtigen Aspekt bei der Group-Erkennung: Es gibt keine strenge Definition dessen, was eine Group ausmacht.

Daher gibt es keinen einzigen „richtigen“ Weg, ein Netzwerk zu partitionieren. Verschiedene Methoden, die auf unterschiedlichen Metriken basieren, können zu unterschiedlichen Ergebnissen führen, die je nach Kontext wertvolle Erkenntnisse liefern.

Quelle

Cliquen

Ein nützliches Konzept in Netzwerken ist die Clique. In der Netzwerkwissenschaft bezieht sich eine Clique auf eine Teilmenge von Knoten in einem Diagramm, bei der jeder Knoten mit jedem anderen Knoten in dieser Teilmenge verbunden ist. Das bedeutet, dass alle Mitglieder einer Clique direkte Beziehungen zueinander haben und eine eng verbundene Gruppe bilden. Cliquen können besonders nützlich sein, wenn man die Struktur komplexer Netzwerke untersucht, da sie häufig stark verbundene oder zusammenhängende Gruppen innerhalb eines größeren Programs darstellen.

Zum Beispiel in:

  • In sozialen Netzwerken: Cliquen können Gruppen von Menschen darstellen, die sich kennen, etwa enge Freundeskreise oder Berufskollegen.
  • In kollaborativen Netzwerken: In einem kollaborativen Netzwerk (z. B. Forschungskooperationen) können Cliquen Forscherteams hervorbringen, die gemeinsam an denselben Themen oder Projekten arbeiten.
  • In biologischen Netzwerken: In biologischen Netzwerken können Cliquen funktionelle Gruppen von Proteinen oder Genen anzeigen, die innerhalb eines biologischen Prozesses eng interagieren.

Finden wir die größte Clique im Karate-Netzwerk. Wir werden die größte Gruppe von Menschen finden, die alle Verbindungen zueinander haben.

import networkx as nx
import matplotlib.pyplot as plt

# Load the Karate Membership graph
G = nx.karate_club_graph()

# Discover all cliques within the Karate Membership community
cliques = listing(nx.find_cliques(G))

# Discover the most important clique (the one with probably the most nodes)
largest_clique = max(cliques, key=len)

# Print the most important clique
print("Largest Clique:", largest_clique)

# Visualize the graph with the most important clique highlighted
plt.determine(figsize=(8, 8))
pos = nx.spring_layout(G) # Format for node positions
nx.draw(G, pos, with_labels=True, node_color='skyblue', font_size=12, node_size=500)

# Spotlight the nodes within the largest clique
nx.draw_networkx_nodes(G, pos, nodelist=largest_clique, node_color='orange', node_size=500)

plt.title("Karate Membership Community with Largest Clique Highlighted")
plt.present()

Abbildung 6: Größte Clique im Karate Membership Community, Knoten 0, 1, 2, 3 und 13 sind miteinander verbunden. Bild vom Autor.

Trotz der Herausforderungen bei der Definition von „Gemeinschaft“ in der Netzwerkwissenschaft bieten Cliquen ein konkretes und klar definiertes Konzept zur Identifizierung vollständig miteinander verbundener Gruppen und bieten aussagekräftige Einblicke in strukturierte und unstrukturierte Netzwerke.

Kürzester Weg

Ein weiteres interessantes Konzept in der Netzwerkwissenschaft ist Shortest Path. Der kürzeste Weg zwischen zwei Knoten in einem Diagramm bezieht sich auf die Kantenfolge, die die Knoten verbindet und gleichzeitig die Gesamtentfernung oder die Kosten minimiert, was je nach Anwendung auf unterschiedliche Weise interpretiert werden kann. Dieses Konzept spielt eine entscheidende Rolle in Bereichen wie Routing-Algorithmen, Netzwerkdesign, Transportplanung und sogar der Analyse sozialer Netzwerke.

NetworkX bietet mehrere Algorithmen zur Berechnung kürzester Pfade, z. B. den Dijkstra-Algorithmus für gewichtete Diagramme und die Breadth-First Search (BFS) für ungewichtete Diagramme.

Foto von Ed 259 An Unsplash

Schauen wir uns ein Beispiel an: Wir erstellen einen synthetischen Datensatz, in dem Knoten Stationen darstellen und die Kanten Verbindungen zwischen den Stationen darstellen.

  • Wir werden auch die gewichtete Kantenzeit hinzufügen, die die Zeit darstellt, die benötigt wird, um von einer Station zur nächsten zu gelangen.
import pandas as pd
import networkx as nx
import matplotlib.pyplot as plt

# Simulate loading a CSV file (actual instance would load an precise CSV file)
# Outline a extra intensive set of stations and journey instances between them
knowledge = {
'station_id': ('A', 'A', 'B', 'B', 'C', 'C', 'D', 'D', 'E', 'E', 'F', 'F', 'G', 'G', 'H'),
'connected_station': ('B', 'C', 'A', 'C', 'A', 'D', 'C', 'E', 'B', 'F', 'D', 'G', 'E', 'H', 'F'),
'time': (10, 20, 10, 15, 20, 10, 5, 15, 10, 25, 10, 5, 15, 10, 30) # Journey instances in minutes
}

# Create a DataFrame
df = pd.DataFrame(knowledge)

# Create a graph from the DataFrame
G = nx.Graph()

# Add edges to the graph (station connections with weights as journey instances)
for index, row in df.iterrows():
G.add_edge(row('station_id'), row('connected_station'), weight=row('time'))

# Draw the graph
plt.determine(figsize=(8, 8))
pos = nx.spring_layout(G) # Format for node positions
nx.draw(G, pos, with_labels=True, node_size=500, node_color='skyblue', font_size=12, font_weight='daring')

# Draw edge weights (journey instances)
edge_labels = nx.get_edge_attributes(G, 'weight')
nx.draw_networkx_edge_labels(G, pos, edge_labels=edge_labels)

plt.title("Expanded Transportation Community with Journey Occasions")
plt.present()

Abbildung 7: Beispiel eines Transportnetzwerks, bei dem Knoten Stationen darstellen und die Kanten Zeit oder Länge darstellen. Bild vom Autor.

In diesem Beispiel verwenden wir den Dijkstra-Algorithmus, um den kürzesten Weg von Station A zu Station H zu berechnen, wobei die Kantengewichte die Reisezeiten darstellen. Der kürzeste Weg und seine Gesamtfahrzeit werden ausgedruckt, und der Weg wird zur Visualisierung im Diagramm rot hervorgehoben, wobei Kantengewichtungen angezeigt werden, um die Fahrzeiten zwischen Stationen anzuzeigen.

# Compute the shortest path utilizing Dijkstra's algorithm (contemplating the journey time as weight)
supply = 'A'
goal = 'H'

shortest_path = nx.shortest_path(G, supply=supply, goal=goal, weight='weight')
path_length = nx.shortest_path_length(G, supply=supply, goal=goal, weight='weight')

# Print the shortest path and its size
print(f"Shortest path from {supply} to {goal}: {shortest_path}")
print(f"Whole journey time from {supply} to {goal}: {path_length} minutes")

# Visualize the shortest path on the graph
plt.determine(figsize=(8, 8))
nx.draw(G, pos, with_labels=True, node_size=500, node_color='skyblue', font_size=12, font_weight='daring')

# Spotlight the shortest path in pink
edges_in_path = ((shortest_path(i), shortest_path(i + 1)) for i in vary(len(shortest_path) - 1))
nx.draw_networkx_edges(G, pos, edgelist=edges_in_path, edge_color='pink', width=2)

# Draw edge weights (journey instances)
nx.draw_networkx_edge_labels(G, pos, edge_labels=edge_labels)

plt.title(f"Shortest Path from {supply} to {goal} with Journey Time {path_length} minutes")
plt.present()

Shortest path from A to H: ('A', 'B', 'E', 'G', 'H')
Whole journey time from A to H: 45 minutes
Abbildung 8: Kürzester Pfad zwischen den Eingabeknoten A und H für das angegebene Diagramm – 45 Minuten. Bild vom Autor.

Der Algorithmus berechnet sowohl die kürzeste Route als auch deren Gesamtfahrzeit und zeigt diese an. Der kürzeste Weg zwischen A und H wird im Diagramm rot hervorgehoben, wobei die Kantengewichtungen die Zeit zwischen den einzelnen verbundenen Stationen anzeigen, was insgesamt 45 ergibt.

Obwohl es sich hierbei um eine einfache Berechnung handelte, haben Algorithmen für kürzeste Wege vielfältige Anwendungsmöglichkeiten. Im Transportwesen optimieren sie Routen und verkürzen die Reisezeit; In der digitalen Kommunikation leiten sie Daten effizient weiter. Sie sind in der Logistik unverzichtbar, um Kosten zu minimieren, in Lieferketten für pünktliche Lieferungen und in sozialen Netzwerken, um die Nähe zwischen Einzelpersonen zu messen. Das Verständnis kürzester Wege ermöglicht datengesteuerte Entscheidungen in allen Bereichen – von der Stadtplanung bis zur Netzwerkinfrastruktur – und ist damit ein wichtiges Werkzeug für die effiziente Navigation komplexer Systeme.

Danke fürs Lesen

Wir haben mit NetworkX mehrere grundlegende Konzepte der Netzwerkwissenschaft untersucht, wie z. B. Algorithmen für kürzeste Wege, Group-Erkennung und die Leistungsfähigkeit der Graphentheorie zur Modellierung und Analyse komplexer Systeme.

Wenn Sie weiter lernen möchten, habe ich unten ein paar Hyperlinks platziert :). Wenn Sie tiefer in die Group-Erkennungsalgorithmen einsteigen möchten, schauen Sie sich die CDLib-Bibliothek an.

  1. Networkx-Tutorial
  2. CDLib, eine Bibliothek zur Group-Erkennung

NOTIZ: Die Berechnung komplexer Metriken und Kennzahlen in Diagrammen kann oft mehrdeutig oder sogar irreführend sein. Da so viele potenzielle Kennzahlen verfügbar sind, ist es leicht, Zahlen zu generieren, die möglicherweise keinen aussagekräftigen Wert haben oder die wahre Struktur des Netzwerks falsch darstellen. Die Auswahl der richtigen Kennzahlen erfordert sorgfältige Überlegungen, da nicht alle Kennzahlen relevante Erkenntnisse für jede Artwork von Netzwerkanalyse liefern. Wenn dies Anklang findet, finden Sie hier weitere Informationen: Statistische Inferenz verknüpft Daten und Theorie in der Netzwerkwissenschaft

Referenzen

[ad_2]

]]>
http://chatgpz.de/artificial-intelligence/navigieren-in-netzwerken-mit-networkx-eine-kurze-anleitung-zu-diagrammen-in-python-von-diego-penilla-november-2024/feed/ 0 5287
Von Textual content zu Netzwerken: Der revolutionäre Einfluss von LLMs auf Wissensgraphen | von Lina Faik | August 2024 http://chatgpz.de/artificial-intelligence/von-textual-content-zu-netzwerken-der-revolutionaere-einfluss-von-llms-auf-wissensgraphen-von-lina-faik-august-2024/ http://chatgpz.de/artificial-intelligence/von-textual-content-zu-netzwerken-der-revolutionaere-einfluss-von-llms-auf-wissensgraphen-von-lina-faik-august-2024/#respond Thu, 29 Aug 2024 23:36:15 +0000 http://chatgpz.de/artificial-intelligence/von-text-zu-netzwerken-der-revolutionaere-einfluss-von-llms-auf-wissensgraphen-von-lina-faik-august-2024/ [ad_1]

Illustration vom Autor

Eine Schritt-für-Schritt-Anleitung zum Erstellen und Nutzen von Wissensgraphen mit LLMs

TDer Aufstieg von Massive Language Fashions (LLMs) hat die Artwork und Weise revolutioniert, wie wir Informationen aus Texten extrahieren und mit ihnen interagieren. Trotz ihrer beeindruckenden Fähigkeiten stehen LLMs jedoch vor mehreren inhärenten Herausforderungen, insbesondere in Bereichen wie Argumentation, Konsistenz und kontextbezogener Genauigkeit von Informationen. Diese Schwierigkeiten ergeben sich aus der probabilistischen Natur von LLMs, die zu Halluzinationen, mangelnder Transparenz und Herausforderungen beim Umgang mit strukturierten Daten führen kann.

Hier kommen Wissensgraphen (KGs) ins Spiel. Durch die Integration von LLMs mit KGs kann KI-generiertes Wissen erheblich verbessert werden. Warum? KGs bieten eine strukturierte und vernetzte Darstellung von Informationen, die die Beziehungen und Entitäten in der realen Welt widerspiegeln. Im Gegensatz zu herkömmlichen Datenbanken können KGs die Komplexität menschlichen Wissens erfassen und darüber nachdenken und so sicherstellen, dass die Ergebnisse von LLMs aus einer strukturierten, überprüfbaren Wissensbasis stammen. Diese Integration führt zu genaueren, konsistenteren und kontextrelevanteren Ergebnissen.

Branchen wie das Gesundheitswesen, der Finanz- und Rechtssektor können aufgrund ihres Bedarfs an präzisen und … enorm von Wissensgraphen profitieren.

[ad_2]

]]>
http://chatgpz.de/artificial-intelligence/von-textual-content-zu-netzwerken-der-revolutionaere-einfluss-von-llms-auf-wissensgraphen-von-lina-faik-august-2024/feed/ 0 3556
Optimieren von Hyperparametern in neuronalen Netzwerken http://chatgpz.de/data-analytics/optimieren-von-hyperparametern-in-neuronalen-netzwerken/ http://chatgpz.de/data-analytics/optimieren-von-hyperparametern-in-neuronalen-netzwerken/#respond Sat, 06 Jul 2024 22:52:04 +0000 http://chatgpz.de/data-analytics/optimieren-von-hyperparametern-in-neuronalen-netzwerken/ [ad_1]

Optimieren von Hyperparametern in neuronalen NetzwerkenOptimieren von Hyperparametern in neuronalen Netzwerken

Hyperparameter bestimmen, wie intestine Ihr neuronales Netzwerk lernt und Informationen verarbeitet. Modellparameter werden während des Trainings gelernt. Im Gegensatz zu diesen Parametern müssen Hyperparameter vor Beginn des Trainings festgelegt werden. In diesem Artikel beschreiben wir die Techniken zur Optimierung der Hyperparameter in den Modellen.

Hyperparameter in neuronalen Netzwerken

Lernrate

Die Lernrate gibt dem Modell an, wie viel es aufgrund seiner Fehler ändern muss. Wenn die Lernrate hoch ist, lernt das Modell schnell, kann aber Fehler machen. Wenn die Lernrate niedrig ist, lernt das Modell langsam, aber sorgfältiger. Dies führt zu weniger Fehlern und höherer Genauigkeit.

Optimieren von Hyperparametern in neuronalen NetzwerkenOptimieren von Hyperparametern in neuronalen NetzwerkenQuelle: https://www.jeremyjordan.me/nn-learning-rate/

Es gibt Möglichkeiten, die Lernrate anzupassen, um die bestmöglichen Ergebnisse zu erzielen. Dazu gehört, die Lernrate während des Trainings in vordefinierten Intervallen anzupassen. Darüber hinaus ermöglichen Optimierer wie Adam eine Selbstanpassung der Lernrate entsprechend der Durchführung des Trainings.

Batchgröße

Die Batchgröße ist die Anzahl der Trainingsbeispiele, die ein Modell zu einem bestimmten Zeitpunkt durchläuft. Eine große Batchgröße bedeutet im Grunde, dass das Modell mehr Beispiele durchläuft, bevor die Parameter aktualisiert werden. Dies kann zu einem stabileren Lernen führen, erfordert jedoch mehr Speicher. Eine kleinere Batchgröße hingegen aktualisiert das Modell häufiger. In diesem Fall kann das Lernen schneller erfolgen, es gibt jedoch mehr Variationen bei jeder Aktualisierung.
Der Wert der Batchgröße wirkt sich auf den Speicher und die Verarbeitungszeit für das Lernen aus.

Anzahl der Epochen

Epochen beziehen sich auf die Häufigkeit, mit der ein Modell während des Trainings den gesamten Datensatz durchläuft. Eine Epoche umfasst mehrere Zyklen, in denen dem Modell alle Datenstapel angezeigt werden, es daraus lernt und seine Parameter optimiert. Mehr Epochen sind besser für das Lernen des Modells, aber wenn sie nicht intestine beobachtet werden, können sie zu Überanpassung führen. Um eine gute Genauigkeit zu erreichen, ist es notwendig, die richtige Anzahl von Epochen festzulegen. Techniken wie das frühzeitige Stoppen werden häufig verwendet, um dieses Gleichgewicht zu finden.

Aktivierungsfunktion

Aktivierungsfunktionen entscheiden, ob ein Neuron aktiviert werden soll oder nicht. Dies führt zu Nichtlinearität im Modell. Diese Nichtlinearität ist insbesondere dann von Vorteil, wenn versucht wird, komplexe Interaktionen in den Daten zu modellieren.

Optimieren von Hyperparametern in neuronalen NetzwerkenOptimieren von Hyperparametern in neuronalen NetzwerkenQuelle: https://www.researchgate.internet/publication/354971308/determine/fig1/AS:1080246367457377@1634562212739/Curves-of-the-Sigmoid-Tanh-and-ReLu-activation-functions.jpg

Zu den gängigen Aktivierungsfunktionen gehören ReLU, Sigmoid und Tanh. ReLU beschleunigt das Coaching neuronaler Netzwerke, da es nur constructive Aktivierungen in Neuronen zulässt. Sigmoid wird zum Zuweisen von Wahrscheinlichkeiten verwendet, da es einen Wert zwischen 0 und 1 ausgibt. Tanh ist insbesondere dann von Vorteil, wenn man nicht die gesamte Skala von 0 bis ± unendlich nutzen möchte. Die Auswahl der richtigen Aktivierungsfunktion muss sorgfältig überlegt werden, da sie bestimmt, ob das Netzwerk eine gute Vorhersage treffen kann oder nicht.

Ausfallen

Dropout ist eine Technik, die verwendet wird, um eine Überanpassung des Modells zu vermeiden. Dabei werden zufällig einige Neuronen deaktiviert oder „ausgeschlossen“, indem ihre Ausgaben während jeder Trainingsiteration auf Null gesetzt werden. Dieser Prozess verhindert, dass Neuronen sich zu stark auf bestimmte Eingaben, Merkmale oder andere Neuronen verlassen. Durch das Verwerfen der Ergebnisse bestimmter Neuronen hilft Dropout dem Netzwerk, sich im Trainingsprozess auf wesentliche Merkmale zu konzentrieren. Dropout wird meist während des Trainings implementiert, während es in der Inferenzphase deaktiviert wird.

Techniken zur Optimierung von Hyperparametern

Manuelle Suche

Bei dieser Methode werden Werte für Parameter ausprobiert, die bestimmen, wie der Lernprozess eines maschinellen Lernmodells abläuft. Diese Einstellungen werden einzeln angepasst, um zu beobachten, wie sie sich auf die Leistung des Modells auswirken. Versuchen wir, die Einstellungen manuell zu ändern, um eine höhere Genauigkeit zu erzielen.

learning_rate = 0.01
batch_size = 64
num_layers = 4

mannequin = Mannequin(learning_rate=learning_rate, batch_size=batch_size, num_layers=num_layers)
mannequin.match(X_train, y_train)

Die manuelle Suche ist einfach, da Sie keine komplizierten Algorithmen benötigen, um Parameter für Checks manuell festzulegen. Im Vergleich zu anderen Methoden hat sie jedoch mehrere Nachteile. Sie kann viel Zeit in Anspruch nehmen und findet möglicherweise nicht die besten Einstellungen effizienter als die automatisierten Methoden.

Rastersuche

Die Grid-Suche testet viele verschiedene Kombinationen von Hyperparametern, um die besten zu finden. Sie trainiert das Modell anhand eines Teils der Daten. Danach prüft sie, wie intestine sie mit einem anderen Teil funktioniert. Lassen Sie uns die Grid-Suche mit GridSearchCV implementieren, um das beste Modell zu finden.

from sklearn.model_selection import GridSearchCV

param_grid = {
    'learning_rate': (0.001, 0.01, 0.1),
    'batch_size': (32, 64, 128),
    'num_layers': (2, 4, 8)
}

grid_search = GridSearchCV(mannequin, param_grid, cv=5)
grid_search.match(X_train, y_train)

Die Rastersuche ist viel schneller als die manuelle Suche. Allerdings ist sie rechenintensiv, da das Überprüfen aller möglichen Kombinationen Zeit in Anspruch nimmt.

Zufallssuche

Diese Technik wählt zufällig Kombinationen von Hyperparametern aus, um das effizienteste Modell zu finden. Für jede zufällige Kombination trainiert sie das Modell und prüft, wie intestine es funktioniert. Auf diese Weise können schnell gute Einstellungen erreicht werden, die zu einer besseren Leistung des Modells führen. Wir können eine zufällige Suche mit RandomizedSearchCV implementieren, um das beste Modell für die Trainingsdaten zu erhalten.

from sklearn.model_selection import RandomizedSearchCV
from scipy.stats import uniform, randint

param_dist = {
    'learning_rate': uniform(0.001, 0.1),
    'batch_size': randint(32, 129),
    'num_layers': randint(2, 9)
}

random_search = RandomizedSearchCV(mannequin, param_distributions=param_dist, n_iter=10, cv=5)
random_search.match(X_train, y_train)

Die Zufallssuche ist normalerweise besser als die Rastersuche, da nur wenige Hyperparameter überprüft werden, um geeignete Hyperparametereinstellungen zu erhalten. Dennoch wird möglicherweise nicht die richtige Kombination von Hyperparametern gesucht, insbesondere wenn der Arbeitsraum für Hyperparameter groß ist.

Einpacken

Wir haben einige der grundlegenden Techniken zur Hyperparameteroptimierung behandelt. Zu den fortgeschrittenen Techniken gehören Bayesianische Optimierung, genetische Algorithmen und Hyperband.

Jayita Gulati ist eine Enthusiastin für maschinelles Lernen und technische Autorin, die von ihrer Leidenschaft für die Erstellung von Modellen für maschinelles Lernen angetrieben wird. Sie hat einen Grasp-Abschluss in Informatik von der Universität Liverpool.

[ad_2]

]]>
http://chatgpz.de/data-analytics/optimieren-von-hyperparametern-in-neuronalen-netzwerken/feed/ 0 2049