AI & M 4.0: Hybride Collective Intelligence (CI)-Verarbeitungspipeline: Vom Business Plan über die Ziel-Hierarchie zum Projekt Plan

Die Ziel-Hierarchie ist im Management 4.0 der zentrale Ordnungsparameter der Selbstorganisation: Sie dient sowohl der Ausrichtung des Projektteams als auch der Kommunikation mit den Stakeholdern und deren Ausrichtung an der Projektarbeit.

Unter einer hybriden Collective Intelligence Verarbeitungspipeline (CI-Verarbeitungspipeline) verstehe ich eine Abfolge von Verarbeitungsschritten, die im Idealfall vollautomatisch abläuft und durch die hybride Collective Intelligence von Mensch und Künstlicher Intelligenz erstellt wurde.

Die CI-Verarbeitungspipeline ‚Vom Business Plan über die Ziel-Hierarchie zum Projekt Plan‘ ist ein Beispiel für die Ausgestaltung von Projektarbeit mittels hybrider Collective Intelligence. In dem gerade in Veröffentlichung befindlichen Buchbeitrag ‚Collective Intelligence von KI und Mensch in der Projektarbeit – Ein Rahmenwerk auf der Basis von ICB 4.0 und Management 4.0‘ skizzieren meine Kolleg(inn)en von der GPM Fachgruppe Agile Management und ich die hybride Collective Intelligence für alle Perspektiven der IPMA Individual Competence Baseline 4.0.  

Ich überprüfe in diesem Beitrag, ob es möglich ist, mit Hilfe von chatGPTplus eine Ziel-Hierarchie zu erstellen, die in einen Projekt Plan transformiert werden kann. – Im Idealfall soll die Ziel-Hierarchie aus einem Business Plan abgeleitet werden. – Eine Aufgabe, die ohne AI-Unterstützung recht viel menschliche Kreativität und Handarbeit erfordert.

Ich benutze zur Überprüfung der Machbarkeit wieder das schon in den vorherigen Blog-Beiträgen verwendete Beispiel der Küchenmanufaktur. Die folgende CI-Verarbeitungspipeline beruht auf mehreren vorausgegangenen Tests, in denen ich einzelne Abschnitte der CI-Verarbeitungspipeline ausprobiert habe.  Die bereinigte CI-Vereinigungspipeline startet mit dem folgenden chatGPTplus Prompt:

Ein Unternehmen, das wir KüchenManufaktur nennen, stellt sogenannte Weiße Ware, also u.a. Herde, Kühlschränke und Gefrierschränke her. Bisher hat das Unternehmen KüchenManufaktur diese Weiße Ware ohne große Digitalisierungsfunktionen hergestellt. Jetzt soll die Weiße Ware smart werden und als Life Style Produkt positioniert werden. Der Einsatz von smarter Technologie kann auch den Einsatz von AI oder ML beinhalten. Zum Beispiel könnte eine zukünftige Anforderung für einen Kühlschrank beinhalten, dass ‚er sich von alleine füllt‘. ‚Von alleine füllen‘ bedeutet, dass er über ein intelligentes Füllmanagement verfügt, das u.a. Zugriff auf Lebensmittellieferanten hat.

Es geht also um die Digitale Transformation des Unternehmens KüchenManufaktur. Die Digitale Transformation soll mittels eines Projektes durchgeführt werden. In einem ersten Schritt ist ein Business Plan für die Digitale Transformation zu erstellen.  Kannst Du mir bei der Erstellung eines Business Plans helfen? Welches Werkzeug schlägst Du für die Erstellung des Business Plans vor?

Nach Eingabe dieses Prompts liefert chatGPTplus eine Lehrbuch-Aussage, zu den Kapiteln eines Business Plans. Ich gehe hier nicht weiter auf dieses Ergebnis ein, da sich hieraus keine inhaltlichen Aussagen für die CI-Verarbeitungspipeline ableiten lassen.

Also stupse ich chatGPTplus in die von mir gewünschte Richtung und gebe in einem Prompt Business Model Canvas als Tool vor. – Damit greife ich auf die des Öfteren gemacht Erfahrung zurück, dass die Collective Intelligence aus AI und meiner Person sich nur zeigt, wenn ich als Mensch über hinreichendes Fachwissen verfüge, so dass ich in der Lage bin, der AI eine Such-Richtung mitzugeben.

Auf dieser Basis kann sich das Ergebnis meines Erachtens sehen lassen (chatGPTPlus Aussage):

Natürlich, ich kann Ihnen helfen, ein Business Model Canvas für die digitale Transformation des Unternehmens KüchenManufaktur zu erstellen. Hier sind meine Vorschläge für jedes Segment des Business Model Canvas:

  1. Kundensegmente: Haushalte und Unternehmen, die an modernen, intelligenten Küchengeräten interessiert sind. Dazu gehören umweltbewusste Kunden, Technikaffine und diejenigen, die nach Komfort und Effizienz streben.
  2. Wertangebote: Smarte Küchengeräte, die KI und ML-Technologien nutzen, um das Benutzererlebnis zu verbessern. Funktionen könnten eine automatische Nachbestellung von Lebensmitteln, Energieeffizienz, personalisierte Kochempfehlungen basierend auf den im Kühlschrank vorhandenen Lebensmitteln und Fernsteuerung der Geräte über eine App enthalten.
  3. Kanäle: Direkte Verkaufskanäle wie die firmeneigene Website und der firmeneigene Laden, sowie Drittanbieter-Einzelhändler, Online-Marktplätze und Partnerunternehmen in der Lebensmittel- und Technologieindustrie.
  4. Kundenbeziehungen: Aufbau langfristiger Beziehungen durch erstklassigen Kundenservice, regelmäßige Updates und Verbesserungen der intelligenten Funktionen, Nutzer-Communitys und personalisierte Kommunikation.
  5. Einnahmequellen: Verkauf der smarten Geräte, möglicherweise auch Abonnementdienste für erweiterte Funktionen oder Services. Kooperationen mit Lebensmittellieferanten könnten auch zu Einnahmen führen, z.B. durch die Integration von Lebensmittellieferdiensten in die intelligenten Geräte.
  6. Schlüsselressourcen: Das Forschungs- und Entwicklungsteam, das die smarten Geräte und die dazugehörige Software entwickelt. Die Marke und der Ruf von KüchenManufaktur. Beziehungen zu Lieferanten und Vertriebspartnern.
  7. Schlüsselaktivitäten: Forschung und Entwicklung von smarten Geräten und dazugehöriger Software. Aufbau und Pflege von Beziehungen zu Lieferanten und Vertriebspartnern. Marketing und Verkauf der smarten Geräte.
  8. Schlüsselpartner: Lebensmittellieferanten, Technologiepartner für die Bereitstellung von KI/ML-Funktionen, Einzelhändler und Online-Marktplätze.
  9. Kostenstruktur: Kosten für Forschung und Entwicklung, Produktion der smarten Geräte, Vertrieb, Kundenservice und allgemeine Betriebskosten.

Ich frage nach einer weiteren Ausgestaltung und einer dazugehörigen Strategie. Aufgrund des Umfanges der chatGPTplus Antwort, gebe ich hier nur einen Auszug der Ausgestaltung und der vorgeschlagenen Strategie wieder:

Kundensegmente:

  • Sie könnten untersuchen, welche Altersgruppen am wahrscheinlichsten an Ihren Produkten interessiert sein könnten. Junge Erwachsene könnten eher an technisch ausgereiften Geräten interessiert sein, während ältere Menschen Wert auf Bequemlichkeit legen könnten.
  • In welchen geografischen Märkten sind smarte Küchengeräte besonders gefragt? Dies könnte Ihnen helfen, Ihre Vertriebs- und Marketingstrategie anzupassen.

Die von chatGPTplus abgeleitete Strategie sieht dann so aus (chatGPTplus Ausgabe):

Auf der Grundlage des Kontexts, den Sie zur Verfügung gestellt haben, könnte die folgende Strategie für die digitale Transformation der KüchenManufaktur in Betracht gezogen werden:

  1. Produktentwicklung und Positionierung: Entwickeln Sie Ihre Produktpalette weiter, um smarte Funktionen einzuschließen. Fokussieren Sie sich auf KI/ML-Fähigkeiten, um einzigartige und personalisierte Benutzererfahrungen zu ermöglichen. Positionieren Sie Ihre Produkte als High-End-Lifestyle-Produkte.
  2. Marktausrichtung: Zielmarkt könnten technologieaffine junge Erwachsene und Berufstätige sein, die einen aktiven und modernen Lebensstil pflegen. Betrachten Sie sowohl städtische als auch suburban gelegene Märkte, die eine hohe Konzentration dieser Zielgruppe aufweisen.
  3. Vertriebskanäle: Nutzen Sie sowohl Online- als auch Offline-Kanäle. Online können Sie eine E-Commerce-Plattform entwickeln und auf Plattformen wie Amazon und eBay präsent sein. Offline können Sie Showrooms eröffnen, wo die Kunden die Produkte erleben können. In Betracht kommen auch Partnerschaften mit Bauunternehmen oder Immobilienentwicklern.
  4. Kundenbindung: Entwickeln Sie ein umfassendes Kundenerlebnis. Bieten Sie Installations- und Wartungsdienste an und entwickeln Sie eine digitale Plattform/App, auf der Benutzer Rezepte austauschen, Kochkurse ansehen und sogar Lebensmittel bestellen können, die direkt mit Ihrem smarten Kühlschrank synchronisiert werden.
  5. Partnerschaften: Schließen Sie Partnerschaften mit Lebensmittellieferanten, um ein integriertes Ökosystem zu schaffen. Denken Sie auch an Kooperationen mit Ernährungsberatern und Kochschulen.
  6. Operative Effizienz: Automatisieren Sie, wo es sinnvoll ist, Ihre Produktionsprozesse und nutzen Sie die durch Ihre smarten Geräte generierten Daten, um Ihre Prozesse und Angebote zu optimieren.
  7. Einnahmequellen: Generieren Sie Einnahmen durch den Verkauf von Produkten und zusätzlichen Dienstleistungen, Werbung auf Ihrer Plattform und möglicherweise durch den Wiederverkauf von renovierten Gebrauchtgeräten.

Nachdem ich chatGPTplus darum bitte, die Vision nicht in die Ziel-Hierarchie beginnend mit Nummer 1. einzubauen, erhalte ich die unten gelistete Ziel-Hierarchie. – Der nicht erwünschte Einbau der Vision als Nummer 1. in die Ziel-Hierarchie führt im Projektplan zu einer ungünstigen Struktur. Um dies zu erkennen und zu beheben, musste ich mehrere Kommunikationsrunden mit chatGPTplus durchlaufen. Außerdem habe ich für den späteren Projekt Plan Projektmitarbeiter eingeführt, die chatGPTplus nach eigener Einschätzung auf die Sub-Ziele verteilen soll. – Hier ist auch ein Hinweis notwendig, dass übergeordneten Zielen keine Ressourcen zugeordnet werden, da die Zuordnung lediglich auf Sub-Ziel-Ebene erfolgt. – Man kann an diesen notwendigen Hinweisen erkennen, dass chatGPTplus derzeit über kein wirkliches PM-Know how verfügt. Das Ergebnis ist mit diesen (kleinen) Einschränkung wieder beeindruckend (zuerst mein Prompt):

Bitte baue die einzelnen Elemente der Business Model Canvas und die dazugehörige Strategie noch etwas besser ein und liste in Klammern vielleicht hinter jedem Ziel bzw. Sub-Ziel mögliche oben schon genannte Ressourcen. Bitte nimm ‚Digitale Transformation der KüchenManufaktur‘ aus der Nummerierung raus, es ist ja der Name des Projektes und ergänze den Namen des Projektes um eine Vision, die das Projekt als Vision gut beschreibt, so dass das zukünftige Projektteam an diesem Namen und der Vision mental ausgerichtet wird.

Abbildung 1: Ein Ziel-Hierarchie Ergebnis von chatGPTplus bei vorgeschaltetem Business Model Canvas (Um zu vergrößeren: Bild mit rechter Maustaste in neuem Browser-Fenster öffnen.)

Anschließend bitte ich chatGPTplus, um die Erzeugung eines Python-Codes, der die Ziel-Hierarchie als gerichteten Graphen visualisiert. Das Ergebnis ist wieder erstaunlich gut, zumal ich weiß, dass vor einigen Wochen die Python-Code-Generierung hierzu noch keine gut lesbaren Ergebnisse lieferte. Der Python Code verwendet die folgenden Bibliotheken: NetworkX-Graph, Matplotlib und Pandas.

Abbildung 2: Visualisierung einer Ziel-Hierarchie ohne vorgeschaltetes Business Model Canvas (Um zu vergrößeren: Bild mit rechter Maustaste in neuem Browser-Fenster öffnen.)

chatGPTplus hat die Namen der fünf Teammitglieder Peter (P), Claudia (C), … selbständig als Knoten in den Hierarchie-Baum eingebaut, so dass man auch hier schon erkennen kann, welche Teammitglieder in welchem Sub-Ziel tätig sind. – Ein Wehrmutstropfen besteht noch: Leider ist es uns (AI und mir) nicht gelungen fehlerfreien Code zu erzeugen, der die vollständigen Namen enthält – jeder Namens-Buchstabe wird als Knoten interpretiert, aus diesem Grunde habe ich nur den Anfangsbuchstaben händisch in den Code eingesetzt. Man kann auch feststellen, dass die Darstellung der Nummerierung der Ziel-Hierarchie nicht stabil ist: Die Art der Nummerierung in der Abbildung 2 und 1 ist unterschiedlich.

Ein Wiederholen der Code-Generierung liefert also nicht immer das gleiche Ergebnisse: Es wurde auch eine Visualisierungen erzeugt, in der die Namen der Teammitglieder in die Ziel-Hierarchie-Knoten mitaufgenommen wurden. Weiter unten begegnet uns dieses schon aus anderen Blog-Beiträgen bekannte chatGPTplus „Vergessen“ wieder.

Die Ergebnisse bis hierhin sind trotzdem beeindruckend. Diese Einschätzung erfolgt auch auf der Erfahrung, dass Teams in meinen Management 4.0 Trainings sich mit Ziel-Hierarchien sehr schwer tun und die Collective Intelligence der Teams keine vergleichbar guten Ergebnisse lieferte.

Auf der Basis der Ziel-Hierarchie habe ich chatGPTplus gebeten eine CSV-Datei für MS-Project zu erstellen.

Hier waren wir leider nicht erfolgreich. – Selbst nach vielen versuchten Verbesserungsdurchläufen konnte chatGPTplus keinen befriedigenden Code erzeugen, der gleichzeitig alle Anforderungen für einen groben Projektplan in einer CSV-Datei ablegt: Also z.B. eine CSV-Datei mit den Spalten ‚Vorgang‘, ‚Ressource‘, ‚Vorgänger‘ und ‚Dauer‘ erzeugt.

chatGPTplus verfügt offensichtlich über keinerlei Projektplan-Muster, auf die das System zurückgreifen kann. Was allerdings schwerer wiegt, ist das schon bekannte Fehlverhalten des „Vergessens“. Wurde zum Beispiel eine Anforderung korrekt in den Code umgesetzt, führte eine weitere Anforderung oder eine Fehlerbehebung zum „Vergessen“ der bisherigen korrekten Ergebnisse. – Dies ist umso erstaunlicher als chatGPTplus die Anforderung korrekt verbal wiederholt, jedoch im Code nicht korrekt oder überhaupt nicht umsetzt. Der Code konvergierte einfach nicht zum richtigen Ergebnis.

Dies bestätigt die schon in anderen Blog-Beiträgen gemachte Erfahrung, dass chatGPTplus oft nicht in der Lage ist, mehrere Anforderungen gleichzeitig umzusetzen. Bei der Erstellung des Collective Mind Agent Based Model’s habe ich die Strategie verwendet, die Anforderungen einzeln in Code zu transformieren um anschließend durch mich die Integration vorzunehmen. Hierauf habe ich hier verzichtet. – Diese Strategie entspricht nicht der Idee der CI-Verarbeitungspipeline.   

Der MS-Project Import der nicht vollständigen CSV-Datei, also nur mit den Vorgängen, funktioniert im Prinzip, zeigt jedoch auch Fehler: U.a. werden die deutschen Umlaute nicht richtig dargestellt und was schwerer wiegt, es tauchen Zeichen in den Zellen der Spalten auf, die selbst im notepad++ nicht angezeigt werden. – Auch der Microsoft Support war hier keine Hilfe.

Die Collective Intelligence (CI)-Verarbeitungspipeline mit chatGPTplus ‚Vom Business Plan über die Ziel-Hierarchie zum Projekt Plan‘ zeigt bis zum Schritt Projekt Plan Erstellung beeindruckende Ergebnisse: Die Ergebnisse sind sehr Kontext abhängig. Mit Business Model Canvas oder ohne Business Model Canvas liefert unterschiedliche Ergebnisse. Aber auch der Zeitpunkt der Erstellung spielt eine große Rolle. Der Übergang von der Ziel-Hierarchie zum Projektplan funktioniert zur Zeit (noch) nicht: chatGPTplus ist, wie schon im Rahmen der anderen Blog-Beiträge festgestellt, nicht in der Lage gleichzeitig mehrere Anforderungen, für die wahrscheinlich keine erlernten Muster existieren, ohne „Vergessen“ erfolgreich umzusetzen.

AI & M 4.0: (Collective Intelligence)**2 – Ergänzungen erstellt mit dem Code Interpreter von GPT-4/chatGPTplus!

Dieser Blog-Beitrag ergänzt den vorherigen Beitrag zum Collective Mind Agent Based Model (CM ABM). Ich benutze den vor ein paar Tagen in der beta Version veröffentlichten Code Interpreter von chatGPTplus. Der Code Interpreter ist ein Plugin von chatGPTplus. Er lässt sich in den chatGPTplus Einstellungen vom Anwender aktivieren.

Ich möchte zwei Fragen beantworten:

Kann der Code Interpreter den von mir, mit Hilfe von chatGPTplus, erstellten CM ABM Python Code ausführen?

Welche statistischen oder ML-Auswertungen kann ich mittels des Code Interpreters vornehmen?

Zur ersten Frage:

Leider kann man den Code nicht ausführen lassen. chatGPTplus liefert auch gleich die Antwort, warum dies nicht möglich ist: Diverse verwendete ML-Bibliotheken und MESA Python in dem CM ABM Code sind (noch) nicht in dem Code Interpreter integriert.

Zur zweiten Frage:

Mittels chatGPTplus habe ich den bisherigen Code um einen csv-Export der relevanten MES-Python Daten erweitert. Der CM ABM Code mit 7 Teammitgliedern und ohne Stakeholder wurde für 100 Zeitschritte ausgeführt. – Die so erstellte csv-Datei  lässt sich problemlos im Code Interpreter importieren. Auf Wunsch zeigt chatGTPplus den hinterlegten Python-Code, den man natürlich auch wieder kopieren kann.

Der Inhalt der csv-Datei wird automatisch als Tabelle und als Graphiken angezeigt. Die Graphiken lassen sich problemlos per rechtem Mausklick kopieren:

 

Abbildung 1: CM ABM Ergebnisse nach 100 Zeitschritten, dargestellt vom chatGPTplus Code Interpreter.

ChatGPTplus liefert auch direkt Erläuterungen mit:

  1. Collective Mind Similarity over Time: This plot represents the similarity metric of the collective mind of the team members over time. It appears that the similarity increases over time, which may indicate that the team members are becoming more aligned in their goals.
  2. Team Performance over Time: This plot represents the performance of the team over time. Similar to the similarity metric, the performance also seems to increase over time, possibly indicating that the team’s performance improves as the members become more aligned.

ChatGPTplus verfällt zwischendurch immer mal wieder ins Englische, obwohl ich in Deutsch mit dem System kommuniziere. Diese Beschreibung kann einem den Eindruck von ‚Verständnis‘ aufdrängen: In jedem Fall ist nicht zu leugnen, dass chatGPTPlus meine bisherige Kommunikation zur CM ABM Erstellung kennt. – Ob ein Deep Learning vorliegt kann ich natürlich nicht beantworten.

Ich habe nach einfachen statistischen Auswertungen gefragt: Dem Glätten der Kurven, der Standardabweichung und dem entsprechenden Zeichnen von Graphen:

 

Abbildung 2: Geglättete CM ABM Ergebnisse nach 100 Zeitschritten mit Standardabweichung, berechnet und dargestellt vom chatGPTplus Code Interpreter.

Auf die Frage nach weiteren statistischen Auswertungen wurde mir die Korrelationsanalyse (zwischen Collective Mind Similarity und Collective Mind Teamperformance), die Analyse der Volatilität und die Anomalieerkennung angeboten. Die Korrelationsanalyse liefert wie erwartet eine Korrelation von 0,995, da die Teamperformance direkt aus der Similarity berechnet wurde. Die Analyse der Volatilität ergab eine zusätzliche graphische Darstellung der Volatilität über den Zeitschritten und die Anomalieerkennung mittels Z-Score ergab keine Anomalien. – Immer begleitet von Erläuterungen und der Möglichkeit den verwendeten Code zu kopieren.

Im Zusammenhang mit der Anomalieerkennung habe ich nach weiteren Analysemöglichkeiten gefragt. chatGPTplus verweist auf die ML-Algorithmen Isolation Forest, One-class SVM, local Outlier Factor und Autoencoder.

Ich bitte um die Durchführung von One-class SVM. chatGPTplus ‚bedauert‘, dass diese Analyse nicht möglich ist, da diese ML-Algorithmen wegen fehlender ML-Bibliotheken nicht ausführbar sind. – Liefert aber den notwendigen Python Code, den man wieder kopieren kann, um ihn z.B. in Colab ablaufen zu lassen.

Alles in allem eine beeindruckende Leistung, wobei mich die Beratung zu den verschiedenen Algorithmen noch fast mehr beeindruckt, als die Ausführung und die graphische Repräsentation der Ergebnisse diverser statistischer Algorithmen.   

AI & M 4.0: (Collective Intelligence)**2 – Collective Mind Agent Based Model mit GPT-4/chatGPTplus erstellt!

In diesem Blog-Beitrag beschreibe ich meine weiteren Erfahrungen zur Modellierung und Programmierung eines Collective Mind Agent Based Models (CM ABM). 

Anders als beim Blog-Beitrag vom Februar 2023 benutze ich als ‚Erweiterung‘ meiner kognitiven Fähigkeiten chatGPTplus, also die Bezahlversion von chatGPT auf der Basis von GPT-4. Außerdem soll dieses Mal ein dynamisches ABM entwickelt werden, das auf MESA Python beruht und die zeitliche Entwicklung eines Team Collective Mind‘s modelliert.

Der Titel (Collective Intelligence)**2, also Collective Intelligence zum Quadrat, weist  daraufhin, dass es in diesem Beitrag in mehrfacher Hinsicht um Collective Intelligence geht: Ich benutze zum einen unserer aller Collective Intelligence, die in GPT-4 trainiert vorliegt und zum anderen die hybride Collective Intelligence von GPT-4 und mir. Außerdem ist ein CM ABM ein Team Collective Intelligence Modell.

Vor zwei Wochen habe ich mit der Entwicklung des CM ABM begonnen, indem ich chatGPTplus eine Aufgabenstellung als Prompt eingab. Diese anspruchsvolle Aufgabenstellung ist weiter unten im Anhang dieses Beitrages zu finden. Meine Erwartung war nicht, dass chatGPTplus diese Aufgabenstellung sofort ohne Kommunikation mit mir umsetzen kann. Jedoch ist meine Erfahrung zur ‚Erweiterung‘ meiner kognitiven Fähigkeiten durch chatGPTplus derart positiv, dass diese Collective Intelligence Erfahrung, bestehend aus AI und Mensch, mehr als nur einmal bei mir Gänsehaut erzeugte. – Der Zuwachs an Geschwindigkeit sowie wissenschaftlicher Kreativität und Python Kompetenz liegt deutlich näher am Faktor 100 als am Faktor 2!

Ich fasse meine Collective Intelligence Erfahrungen mit chatGPTplus zusammen:

  • ChatGPTplus hat die unten stehende Aufgabenstellung mit ersten Ideen zur Ziel-Hierarchie und deren Ähnlichkeitsvermessung umgesetzt. Es fehlten lediglich vollständig die Projekttypisierung und die Stakeholder. – Eine Einbettung von chatGPTplus in die Agentenlogik habe ich nachträglich gestrichen, da dies zu kompliziert für mich wurde.
  • Zur Verfeinerung und Verbesserung der Aufgabenstellung war es notwendig, im Dialog mit chatGPTplus das Python-Programm weiter zu entwickeln. Die Kommunikation mit chatGPTplus entspricht hierbei der Kommunikation mit einem hochintelligenten Experten: Die chatGPTplus Expertise in den Bereichen Python, Mathematik und spezifischer Modellierungskompetenz übersteigt meine bei weitem. Hierbei habe ich die Erfahrung gemacht, dass die Verwendung von Ratgebern à la ‚Wie gestalte ich die chatGPT Prompteingabe optimal?‘ für mich keinen Sinn macht. – Meines Erachtens genügt es, die Prompts so zu erstellen, dass ein menschlicher Experte:inn sie nachvollziehen kann. – Dies genügt, um eine gelungene Kommunikation mit super Ergebnissen zu erhalten!
  • Auf der Basis der Kommunikation habe ich von chatGPTplus Pythoncode erstellen lassen. Dieser Code wurde in einer Colab-Umgebung laufen gelassen. Manchmal enthielt dieser Code einen Fehler, manchmal habe ich einen Fehler eingebaut, da ich noch Veränderungen am Code vorgenommen habe. Die Rückmeldung des vollständigen Fehlers als Prompt hat immer zum direkten Auffinden des Fehlers durch chatGPTplus geführt.
  • Die Analyse der Ergebnis-Daten zeigte den ein oder anderen Mangel in der Modellierungslogik auf. Eine textuelle Beschreibung der Ergebnis-Daten als Prompt führte immer innerhalb weniger Schritte zur Behebung dieses Mangels.
  • Es gibt eine Unzulänglichkeit in der Zusammenarbeit mit chatGPTPlus, die ich nicht beheben konnte und durch einen Workaround umgehen musste: In den ersten Tagen der Bearbeitung der Aufgabenstellung stellte ich mit fortschreitender Zeit immer häufiger fest, dass chatGPTplus vorherige gute Ergebnisse vergessen hatte. Dies führte dazu, dass an Stellen, die ich als abgeschlossen und korrekt betrachtet habe, plötzlich anderer Code und nicht selten zur Aufgabenstellung nicht passender Code auftauchte. So geschah es zum Beispiel, dass die Ziel-Hierarchie Berechnung verändert wurde oder dass das 7-köpfige Team wie Stakeholder behandelt wurde, also die MBTI Typ-Zuordnung zufällig erfolgte und nicht nach dem gewünschten Schema der Aufgabenstellung. Dieses ‚Fehlverhalten‘ tauchte umso häufiger auf, je länger die Modellierung der Aufgabenstellung dauerte. Das ‚Fehlverhalten‘ wurde noch verstärkt, wenn ich chatGPTPlus darauf hinwies, dass der Code an einer bestimmten Stelle falsch ist. Dann versuchte das System ein völlig anderes Modellverhalten zu erstellen. Am vierten Tag nach insgesamt ca. 4-5 Std. chatGPTplus Interaktion, habe ich mich zu folgendem Workaround entschlossen: Ich habe das gesamte Programm selbst immer wieder integriert und alle Änderungen selbst in das gesamte Programm eingegeben. Um erwünschte neue Modellierungs-Änderungen zu erhalten, habe ich chatGPTplus lediglich eine konkrete überschaubare aber durchaus schwierige Teilaufgabe gegeben. Wenn Änderungen größere Auswirkungen im Code hatten oder mehr als ca. 1 Std. Interaktion verstrichen war, habe ich den gesamten Code wieder als Prompt eingegeben. chatGPTplus hat sich hierfür meistens bedankt 😉: Es sei hilfreich, den gesamten Code zur Verfügung zu haben. Zusammenfassend interpretiere ich dieses Verhalten von chatGPTplus dahingehend, dass chatGPTplus über kein Kurzzeitgedächtnis verfügt.

Und nun zu den Ergebnissen. – Auf Nachfrage stelle ich gerne den CM ABM Code als Colab-Jupyter Notebook zur Verfügung. Ich beschreibe hier das Modell und diskutiere einige Ergebnisse:

Das Modell basiert auf der ABM Bibliothek MESA-Python [1]. Die Teammitglieder eines Teams und die Stakeholder werden als Agenten unterschiedlichen Typs behandelt. Die Agenten werden über eine MBTI Typologie mit Persönlichkeits-Polwahrscheinlichkeit charakterisiert (siehe Anhang). Alternativ könnte auch das Standardmodell der Psychologie, das Big Five Persönlichkeitsmodell (NEO-PI-R), verwendet werden. Das Persönlichkeitsmodell lässt sich auch um Werte/Motive oder Glaubenssätze erweitern.

Entsprechend der Aufgabenstellung haben die Teammitglieder fest vorgegebene Persönlichkeiten. Die Stakeholder erhalten ihre Persönlichkeit gemäß der globalen statistischen Verteilung der MBTI Persönlichkeiten.

Jeder Agent verfügt über eine eigene dreiteilige Ziel-Hierarchie. Die dreiteilige Ziel-Hierarchie entspricht dem einfachsten Collective Mind Schema, das wahlweise als Teil eine Dilts Pyramide angesehen werden kann oder als persönliche Story Map oder als OKR [2, 3]. Die Agenten verändern ihre Ziel-Hierarchie in Abhängigkeit ihrer individuellen MBTI Präferenzen, also der individuellen Persönlichkeits-Polwahrscheinlichkeiten. Zum Beispiel ändert ein extrovertierter NT-Typ durch Kommunikation vornehmlich die oberste Ebene der Ziel-Hierarchie – ein introvertierter NT-Typ tut dies auch, jedoch nicht so oft.

Die dreiteilige Ziel-Hierarchie besteht aus alphanumerischen Zeichenketten einer bestimmten Länge. Diese Zeichenketten werden am Anfang, wenn die Simulation beginnt, per Zufall ermittelt. Der Inhalt der Ziel-Hierarchie sollte keine entscheidende Rolle für das Auftauchen prinzipiell emergenter Systemeigenschaften haben. Dies trägt der langjährigen Erfahrung aus anderen ABM Modellen und deren Systemeigenschaften Rechnung [4]. – Die Mathematik ist vielleicht doch viel entscheidender als der Inhalt!

Die Änderung der Ziel-Hierarchien erfolgt zufällig und paarweise zwischen zufällig ausgewählten Agenten. Das Ändern der Ziel-Hierarchien durch Kommunikation ist eine Form von Lernen und wird über einen Lernparameter alphaT für Teammitglieder und alphaS für Stakeholder eingestellt. Typischerweise ist alphaS kleiner gleich alphaT, da die Interaktion im Team zu einem besseren Lernen führt.

Zusätzlich erhalten die Stakeholder weniger Möglichkeiten ihre Ziel-Hierarchie zu ändern. Dies erfolgt über eine gesondert einzustellende Zeit-Steprate: Die Stakeholder erhalten zum Beispiel eine um den Faktor 200 reduziert Möglichkeit ihre Ziel-Hierarchie zu ändern. Dies trägt der Annahme Rechnung, dass die Stakeholder untereinander weniger oft kommunizieren und auch weniger oft mit den Teammitgliedern.

In der Sprache der Theorie der Selbstorganisation ergeben sich damit folgende Parameter:

Rahmenparameter: Anzahl und Persönlichkeit der Teammitglieder, Anzahl und Persönlichkeit der Stakeholder, reduzierte Steprate für die Stakeholder

Kontrollparameter: alphaT, alphaS

Ordnungsparameter: dreiteilige Ziel-Hierarchie, am Anfang gefüllt mit zufällig ermittelten Zeichenfolgen der Länge k. Die Ziel-Hierarchien werden gemäß MBTI-Profil geändert. Die Ähnlichkeiten der Ziel-Hierarchien wird über die Ratcliff-Obershelp Funktion bestimmt [5].

Die nachfolgenden Abbildungen zeigen jeweils links das resultierende emergente Systemverhalten, gemessen über die mittlere Ähnlichkeit aller Ziel-Hierarchien getrennt nach den Teammitgliedern und den Stakeholdern.

Jeweils rechts ist die Performance des Teams bzw. der Stakeholder zu sehen. Die Performance ist keine emergente Eigenschaft sondern wird über folgende Formel aus der Ähnlichkeit ermittelt: Performance=(Anzahl der Agenten eines Typs* mittlere Ähnlichkeit der Ziel-Hierarchien des Agententyps)**2. Diese Formel basiert auf folgender Betrachtung: Es werden alle bilateralen Verbindungen innerhalb einer Gruppe (Teammitglieder, Stakeholder) aufsummiert – gewichtet mit der mittleren Ähnlichkeit der Ziel-Hierarchien innerhalb der Gruppe. Wie man weiter untern sehen kann, folgt die Performance der Ähnlichkeit, natürlich erhöht um einen Faktor, der die Anzahl der Gruppenmitglieder berücksichtigt. 

Abbildung 1:
Rahmenparameter: 7 Teammitglieder mit definierter MBTI-Persönlichkeit, keine Stakeholder
Kontrollparameter: Lernparameter Teammitglieder alphaT = 0.1
Ordnungsparameter: Ziel-Hierarchie-Ähnlichkeit mit der Ratcliff-Obershelp Funktion berechnet, ermittelt aus den dreiteiligen Ziel-Hierarchien mit jeweils am Anfang zufällig generierter Zeichenfolge von k = 100 Zeichen pro Ebene

Wie man aus Abbildung 1 sehen kann, steigt die Ähnlichkeit recht schnell auf Werte von über 0,7 und die Teamperformance damit auf Werte von 21 und mehr, bei 7 Teammitgliedern. – Der Synergieeffekt beträgt also 3 und mehr!

Selbstverständlich genügt diese Aussage, wie auch die nachfolgend abgeleiteten Aussagen, keinen wissenschaftlichen Ansprüchen. Um wissenschaftlichen Ansprüchen zu genügen, müsste ich u.a. ggf. 10.000 und mehr Durchläufe errechnen lassen, um dann auf dieser Basis eine statistische Auswertung aller errechneten Werte zu erhalten. Hierauf verzichte ich, da dies meine (derzeitigen) Möglichkeiten übersteigt. Abbildung 2 zeigt den Einfluss der Stakeholder auf das Team. Die Anzahl der Stakeholder entspricht der Anzahl der Teammitglieder, ist also 7. Die Fähigkeit der Stakeholder ein Collective Mind auszubilden, bestimmt auch die Fähigkeit des Teams ein Collective Mind auszubilden: Die Stakeholder ziehen die Leistungsfähigkeit des Teams runter, obwohl die Lernrate der Stakeholder genau so groß ist wie diejenige der Teammitglieder. – Die Interaktionsrate der Stakeholder ist jedoch um den Faktor 200 geringer als die Interaktionsrate der Teammitglieder. 

Abbildung 2:
Rahmenparameter: 7 Teammitglieder mit definierter MBTI-Persönlichkeit, 7 Stakeholder mit zufälliger MBTI-Persönlichkeit, Abschottung des Teams und zwischen den Stakeholdern durch 200-fach geringere Steprate als im Team selbst.
Kontrollparameter: Lernparameter Teammitglieder alphaT= 0.1, Lernparameter Stakeholder alphaS= 0.1
Ordnungsparameter: Ziel-Hierarchie-Ähnlichkeit mit der Ratcliff-Obershelp Funktion berechnet, ermittelt aus den dreiteiligen Ziel-Hierarchien mit jeweils am Anfang zufällig generierter Zeichenfolge von k = 100 Zeichen pro Ebene

Abbildung 3 zeigt eine Simulation mit 21 Stakeholdern und einer zehnmal geringeren Lernrate der Stakeholder (diese Simulation benötigt in der Colab Umgebung ohne spezielle Hardware ca. 3-4 Stunden elapsed time). Die Ziel-Hierarchie-Ähnlichkeit der Stakeholder sinkt weiter ab und zieht das Collective Mind des Teams mit sich weiter runter. Die Stakeholder wie das Team zeigen jetzt eine Performance die weiter unterhalb der Anzahl der Teammitglieder bzw. der Stakeholder liegt.

Abbildung 3:
Rahmenparameter: 7 Teammitglieder mit definierter MBTI-Persönlichkeit, 21 Stakeholder mit zufälliger MBTI-Persönlichkeit, Abschottung des Teams und zwischen den Stakeholdern durch 200-fach geringere Steprate als im Team selbst.
Kontrollparameter: Lernparameter Teammitglieder alphaT= 0.1, Lernparameter Stakeholder alphaS = 0.01
Ordnungsparameter: Ziel-Hierarchie-Ähnlichkeit mit der Ratcliff-Obershelp Funktion berechnet, ermittelt aus den dreiteiligen Ziel-Hierarchien mit jeweils am Anfang zufällig generierter Zeichenfolge von k = 100 Zeichen pro Ebene

Was sagt uns dies?

Es sieht so aus, als wenn die hybride Collective Intelligence von chatGPTplus und mir, ein Modell gefunden hätte, das emergentes Collective Mind Verhalten eines Teams in Interaktion mit Stakeholdern recht gut abbildet. – Dies ist ein weiterer Schritt in Richtung von Management 5.0, der Synergie von AI und Management 4.0.

Anhang: Erst-Aufgabenstellung für GPT4/ChatGPTplus

Die Aufgabenstellung zur Digitalen Transformation des Unternehmens KüchenManufaktur verwende ich in meinen Management 4.0 Trainings, um eine Scrum Simulation durchzuführen und eine Ziel-Hierarchie zu erstellen. Die zugrundeliegende Theorie hierzu ist in [2], [3] zu finden.

Erzeuge ein Agent Based Model (ABM) in der Programmiersprache Python, z. B. mittels MESA Python, für ein Team von 7 Teammitgliedern und 100 Stakeholdern. Die 7 Teammitglieder und die 100 Stakeholder sind Agenten im ABM. Die Teammitglieder und die 100 Stakeholder gehören zu dem Unternehmen KüchenManufaktur, das sogenannte Weiße Ware, also u.a. Herde, Kühlschränke und Gefrierschränke herstellt. Bisher hat das Unternehmen KüchenManufaktur diese Weiße Ware ohne große Digitalisierungsfunktionen hergestellt. Jetzt soll die Weiße Ware smart werden und als Life Style Produkt positioniert werden. Der Einsatz von smarter Technologie kann auch den Einsatz von AI oder ML beinhalten. Zum Beispiel könnte eine zukünftige Anforderung für einen Kühlschrank beinhalten, dass ‚er sich von alleine füllt‘. ‚Von alleine füllen‘ bedeutet, dass er über ein intelligentes Füllmanagement verfügt, das u.a. Zugriff auf Lebensmittellieferanten hat.

Es geht also um die Digitale Transformation des Unternehmens KüchenManufaktur. Die Digitale Transformation soll mittels eine Projektes durchgeführt werden. In einem ersten Schritt ist ein Konzept für die Digitale Transformation zu erstellen. Für diesen ersten Schritt ist das ABM mittels Python zu erstellen.

Die Aufgabe der Konzepterstellung typisieren wir als Projekt mittels des Diamantmodells: Das Projekt ist für KüchenManufaktur ein Projekt mit hohem Innovationsgrad. Nicht alle Stakeholder sind vom Sinn der Digitalen Transformation überzeugt und deshalb zeigen auch recht viele Stakeholder innere Widerstände gegen das Projekt. Deshalb sprechen wir von einem hohen Missionsgrad.- Das Team hat also viel Überzeugungsarbeit zu leisten. Der Kompliziertheitsgrad der neuen smarten Weißen Ware ist eher gering bis mittelgroß. Der Managementgrad ist mittel, da KüchenManufaktur innerhalb eines Jahres mit ersten smarten Produkten auf den Markt kommen möchte.

Die Persönlichkeiten der 7 Teammitglieder beschreiben wir mittels des MBTI, wobei die dominante Persönlichkeitsdimension des jeweiligen Teammitgliedes als Wahrscheinlichkeit angegeben wird. Wir nennen vereinfacht die jeweiligen Teammitglieder entsprechend ihrer MBTI Typologie und einer MBTI-Polwahrscheinlichkeit, also:

Teammitglied 1: ENTJ heißt: Extraversion = E = 0.8, Intuition = N = 0.8, Thinking = T = 0.6, Judging = J = 0.6

Teammitglied 2: INTJ heißt: Introversion = I = 0.8, Intuition = N = 0.7, Thinking = T = 0.7, Judging = J = 0.6

Teammitglied 3: ISFP heißt: Introversion = I = 0.6, Sensing = S = 0.7, Feeling = F = 0.7, Perceiving = P = 0.6

Teammitglied 4: ISTJ heißt: Introversion = I = 0.8, Sensing = S = 0.7, Thinking = T = 0.7, Judging = J = 0.9

Teammitglied 5: ESTJ heißt: Extraversion = E = 0.8, Sensing = S = 0.9, Thinking = T = 0.7, Judging = J = 0.6

Teammitglied 6: ISTP heißt: Introversion = I = 0.9, Sensing = S = 0.9, Thinking = T = 0.6, Perceiving = P = 0.6

Teammitglied 7: ISTJ heißt: Introversion = I = 0.7, Sensing = S = 0.6, Thinking = T = 0.6, Judging = J = 0.6

Die Stakeholder erhalten per Zufall eine Persönlichkeit gemäß MBTI.

Die Aufgabe der Konzepterstellung ist erledigt, wenn die 7 Teammitglieder, die das Konzept erstellen, eine gemeinsame Ziel-Hierarchie erstellt haben. Eine Ziel-Hierarchie besteht aus Informationseinheiten, die abstrakt oder detailliert sind. Eine Vision oder ein übergeordnetes Ziel bilden die oberste Ebene, es folgen darunter größere Informationseinheiten, die in weitere Informationseinheiten runtergebrochen werden. Im Agilen Management beginnt die Ziel-Hierarchie zum Beispiel mit einer Vision, gefolgt von Epics, die in Features zerlegt werden, die Features werden in User Stories zerlegt und diese wieder in Tasks und Tasks in Subtasks usw.

Für die Generierung der Informationseinheiten kann pro Teammitglied auf chatGPT zurückgegriffen werden

Um die Ziel-Hierarchie zu erstellen, tauschen die 7 Teammitglieder gemäß ihrer Persönlichkeitspräferenzen Informationseinheiten aus. Diese Informationseinheiten werden gemäß ihrer Präferenzen und der damit verbundenen Wahrscheinlichkeiten in die persönliche Ziel-Hierarchie aufgenommen.

Im ABM Model wird der Informationsaustausch in Zeitschritten durchgeführt. Wir definieren die Performance des Teams über die Ähnlichkeit der persönlichen Ziel-Hierarchien. Wenn alle persönlichen Ziel-Hierarchien identisch sind, sprechen wir von einem Collective Mind. Der Collective Mind kann durch die Kommunikation mit den Stakeholdern stabilisiert oder destabilisiert werden. Die Ähnlichkeit der Ziel-Hierarchien aller Stakeholder und der 7 Teammitglieder ist ein Maß für den Collective Mind im Team bzw. im Stakeholderkreis bzgl. der Digitalen Transformation.

Zeichne den Verlauf des Colletive Mind im Team und den Verlauf des Collective Mind für den Stakeholderkreis über die Zeit.

[1] Complexity Explorer (2023) MESA-Python Lecture, https://www.complexityexplorer.org/courses/172-agent-based-models-with-python-an-introduction-to-mesa/segments/17326, Santa Fe Institute, zugegriffen am 30.04.2023

[2] Oswald A, Köhler J, Schmitt R (2017) Projektmanagement am Rande des Chaos. 2. Auflage, Springer, Heidelberg, auch in englischer Sprache unter ‚Project Management at the Edge of Chaos‘ verfügbar.

[3] Köhler J, Oswald A. (2009) Die Collective Mind Methode, Projekterfolg durch Soft Skills, Springer Verlag

[4] Epstein J M, Axtell R (1996) Growing Artificial Societies – Social Science from the Bottom Up, The Brookings Institution, Washington D.C.

[5] Wikipedia (2023) Ratcliff-Obershelp Funktion, https://de.wikipedia.org/wiki/Gestalt_Pattern_Matching#:~:text=Gestalt%20Pattern%20Matching%2C%20auch%20Ratcliff,im%20Juli%201988%20im%20Dr.

AI & M 4.0: Sein als Netzwerk – Den Collective Mind als Netzwerk sichtbar machen

Über Jahrhunderte hinweg haben die berühmtesten Philosophen versucht das „Ding an sich“ auszuleuchten und zu finden. Es ist ihnen nicht gelungen, da es meines Erachtens das „Ding an sich“ nicht gibt.

Es gibt Dinge oder Objekte, aber diese werden ganz entscheidend durch ihre Wechselwirkung mit ihrer Umgebung bestimmt. – Andere Umgebungen und schon sind Objekte oft ganz anders. – Die Relationen, also die Beziehungen, zwischen den Objekten bestimmen ganz entscheidend das Sein. – Deswegen habe ich diesem Blog-Beitrag den Titel „Sein als Netzwerk“ gegeben.

Das Studium von Netzwerken in Natur, Sozialem oder Technik mittels mathematischer Methoden ist schon mehrere hundert Jahre alt und ist eng mit dem Namen des französischen Mathematiker’s Pierre-Simon Laplace verbunden [1]. – Im zwanzigsten Jahrhundert wurde die Netzwerkanalyse zu einer vollständigen Disziplin, u.a. in den Sozialwissenschaften, ausgebaut [2], [3].

Die erfolgreiche Netzwerkanalyse ist einer der Grundpfeiler für den Erfolg von google: Der PageRank Algorithmus misst die Bedeutung von Internetknoten (homepages) im Netzwerk Internet [4]. – Weiter unten werde ich diesen Algorithmus für das Vermessen der Bedeutung von Begriffen in einem Text benutzten. – Denn ich nehmen an, dass bedeutende Begriffe und deren Relationen die mentale Ausrichtung eines Teams beschreiben.  

Die Netzwerkanalyse, oft auch Graphentheorie genannt, hat in den letzten Jahren im Bereich AI/ML eine enorme Bedeutung erhalten: Graphentheorie und Neuronale Netzwerke sind eine Relation 😉 eingegangen. Es entstand die AI/ML Disziplin Graph Neural Networks (GNN) [5]. – Im letzten Blog-Beitrag war Word-embedding der Schwerpunkt. GNN basieren auf dem Embedding von Netzwerken in höher-dimensionale abstrakte Räume. – Einige der aktuellen spektakulären AI/ML Erfolge, wie zum Beispiel in der Medikamentenerforschung, gehen auf diese Relation von Graphentheorie und AI/ML zurück.

GNN sind high-end AI/ML Systeme, die aktuell sehr viel Know-How erfordern. In vielen Fällen dürfte es jedoch genügen, Netzwerke lediglich sichtbar zu machen und erste Analysen, wie den mathematisch recht einfachen PageRank Algorithmus, anzuwenden. Genau dies will ich in diesem Artikel an einem Beispiel demonstrieren. – Hierbei steht, wie schon im letzten Beitrag, die grundlegende Idee im Vordergrund und nicht die Erzeugung oder Vermarktung eines vollständigen Produktes.

In meinem Blog-Beitrag vom Dezember 2021 habe ich erstmals für die IPMA PM Kompetenzbereiche Beispiele zu Graphen Anwendungen genannt. Hier nochmals einige Beispiele:

Führung und Stakeholder: Soziale Netzwerke können mittels Graphen oder GNN analysiert werden. Dies kann auf Teamebene und auf der Ebene aller Stakeholder erfolgen. Hierzu wird u.a. der eMail-Austausch einer Organisation analysiert und in einem Graphen sichtbar gemacht. Relative einfache Werkzeuge, wie der PageRank Algorithmus zeigen die relative Bedeutung von Knoten (d.h. hier Personen) im Netzwerk an.

Führung, Kommunikation, Teamarbeit: Die verbale Kommunikation wird mittels Graphen analysiert und die Analyse wird als Feedback in das Team gegeben. Oder die AI/ML Analyse unterstützt die Führungskraft bei ihrer Selbstreflexion und abgeleiteten Team-Interventionen. Aus der Analyse der Kommunikation lassen sich auch Collective Mind Target Hierarchien erzeugen. Das Beispiel, das ich weiter unten skizziere, gehört in diese Kategorie.

Planung und Steuerung: Aus Texten werden Graphen abgeleitet, aus denen wiederum Projektpläne erzeugt werden. Auf der Basis der Graphen und mittels GNN werden u.a. Risiken ermittelt und Aufwände abgeleitet. Diese Informationen können im Projektzeitverlauf auch für das Projektmonitoring verwendet werden.

Die letzte Kategorie ist eine deutlich anspruchsvollere Aufgabe als die beiden vorherigen Anwendungskategorien. Die beiden ersten Anwendungskategorien lassen sich in der ersten Ausbaustufe mit den in diesem Blog skizzierten Techniken bewältigen.

Im letzten Blogbeitrag habe ich die Ähnlichkeit von (gesprochenen) Texten, d.h. die Similarity, dazu benutzt, ein Maß für die Stärke des Collective Mind abzuleiten. In diesem Fall wurden Wort-Relationen über deren Einbettung in einen hochdimensionalen abstrakten Raum benutzt, um die Similarity zu berechnen.

In diesem Blogbeitrag will ich die Graphentheorie und AI/ML dazu benutzten, Texte auf enthaltene Relationen zu analysieren und diese Relationen in einem Graphen sichtbar zu machen. – Es steht also die Visualisierung von Kommunikation im Vordergrund: Die Visualisierung mittels Graphen macht in einer Kommunikation sehr schnell Zusammenhänge sichtbar. Die These ist, dass über visualisiertes Feedback in ein Team, der Prozess der Collective Mind Ausbildung deutlich beschleunigt wird.      

Ich benutze den Code von Thomas Bratanic [6], der auf towardsdatascience.com zu finden ist. Towardsdatascience.com ist eine hervorragende Fundgruppe für alle möglichen Fragestellungen rund um das Thema AI/ML.

Bratanic demonstriert die Graphenanalyse am Beispiel der Analyse von Wikipedia-Seiten zu drei Wissenschaftlerinnen. Hierzu werden die Wikipedia-Seiten in page.summaries mit einfachen Sätzen zusammengefasst. – Wir werden später sehen, dass diese einfachen Sätze (derzeit noch) notwendig sind, um die NLP-Verarbeitung gut durchzuführen. Abbildung 1 zeigt einen Auszug aus diesem Ergebnis:

Abbildung 1: Auszug einer Analyse von Wikipedia Daten zu drei Wissenschaftlerinnen gemäß Thomas Bratanic [6].

Die Grundidee ist einfach: Es werden Sätze in Texten oder Gesprochenem in „Subjekt-Relation->Objekt“ Strukturen (S-R->O Strukturen) zerlegt. Zum Beispiel ergibt der Satz „Alfred wohnt in Stolberg.“ die Struktur „Alfred – wohnt in -> Stolberg“. Die gefundenen S-R->O Strukturen werden in eine Graphen-Datenbank transferiert. Hier können verschiedene Netzwerkanalysen durchgeführt werden.

Die AI/ML Technik hierzu ist schon nicht mehr so einfach: Wie im letzten Blog-Beitrag kommt die NLP-Bibliothek spaCy [7] zum Einsatz. Hinzukommen diverse raffinierte NLP-Python-Skripte, die high-end Transformator Pipeline aus der tensorflow-Technologie [8] und zum Schluss die Graphendatenbank Neo4j [9]. Das Ganze ist nach diversen Anpassungen und einige Zeit später als Jupyter-Notebook [10] in der Colab-Umgebung [11] lauffähig.

Wie schon im letzten Blogbeitrag, habe ich der Einfachheit wegen den Text der Definition von Agile Management 4.0 benutzt. Der erste Lauf mit diesem Text zeigt jedoch, dass kaum Relationen extrahiert wurden. – Der Text ist zu verschachtelt geschrieben. Dementsprechend habe ich ihn in einfache Sätze umgeschrieben. – Ich hätte auch einen entsprechenden AI/ML pre-processing Schritt vorwegschalten können, der Text in einfachen Text mit S-R->O Strukturen transformiert. Dies hätte den Aufwand jedoch deutlich erhöht. – Mit entsprechenden AI/ML Techniken stellt dies jedoch kein prinzipielles Problem dar. – Ich habe den Text auch teilweise belassen wie er ist, um die Auswirkungen zu sehen.

 
Hier der verwendete Text:

“Agile Management is a leadership and management practice. Agile Management is able to act in an agile and proactive way. Agile Management is for acting in a complex environment. The complex environment is characterized by uncertainty. Agile Management is described as an Agile Mindset. The Agile Mindset is focused on leadership. The basis of leadership is self-leadership. Leadership is based on respect for basic human needs. Leadership demands an understanding of complex systems. Leadership regulates complexity. Regulation of complexity is done by iterative procedures. Leadership is based on people who use self-organization in teams. Agile Management creates fluid organizations.  Fluid organizations promote adaptable and fast delivery of useful results and create innovative customer solutions through proactive dealing with changes.”

Dieser Text wird von dem AI/ML-System in S-R->O Strukturen transferiert, die in der Graphendatenbank Neo4j folgende Visualisierung erhalten:

 

Abbildung 2: Screenshot der Neo4j Visualisierung der NLP extrahierten S-R->O Strukturen.

Agile Management und leadership werden als zentrale Knoten erkannt. Die Sätze

„Regulation of complexity is done by iterative procedures.”

und

Fluid organizations promote adaptable and fast delivery of useful results and create innovative customer solutions through proactive dealing with changes.”

sind in zwei getrennten Netzwerkclustern enthalten.  Der zweiten Satz ist auch nicht vollständig abgebildet. Dies ist meinem unzureichenden manuellen Pre-Processing geschuldet. Bei diesem Satz kann man auch schön erkennen, dass „Fluid organization“ und „fluid organization“ nicht als gleiche Nomen erkannt werden.

Für den ganzen Text gilt, dass die Verben des Textes in allgemeinere Relationsbezeichnungen abgebildet werden. Diese haben ihren Ursprung in einem entsprechenden vorgegebenen NLP Training von spaCy.

Auch mit diesen Einschränkungen stellt die Visualisierung des Textes einen erheblichen Mehrwert dar: Denn man möge sich nur vorstellen, dass ein entsprechendes AI/ML System online und ad hoc Teamkommunikation auf solche Weise visualisiert als Feedback an das Team zurückgibt. – Dies würde meines Erachtens den Kommunikationsprozess erheblich beschleunigen und die Visualisierung wäre auch gleichzeitig eine Visualisierung des gerade vorhandenen Collective Mind’s. Im Falle einer komplexen Kommunikation wäre die Visualisierung um so hilfreicher: Dies umso mehr, wenn die Visualisierung mehrere oder viele Netzwerkcluster zu Tage fördern würde. Dies entspräche mehreren Gesprächsthemen oder -lagern, die ggf. für mehrere (konkurrierende) Collective Mind’s stünden.

Neben der Visualisierung können diverse Werkzeuge der Netzwerktheorie verwendet werden, um Netzwerke zu analysieren [12]. – Dies ist umso notwendiger, je komplexer die Netzwerke aus Personen, Worten, homepages, Molekülen usw. sind.  Neo4j stellt mehr als hundert solcher Werkzeuge zu Verfügung, u.a. auch den PageRank Algorithmus. Abbildung 3 zeigt die PageRank-Auswertung für den Graphen aus Abbildung 2.

Abbildung 3: PageRanking für den Graphen aus Abbildung 3

Das PageRanking ist für diesen einfachen Graphen sicherlich keine große Überraschungen: Agile Management und leadership sind die beiden Begriffe, die im Netzwerk gemäß diesem Algorithmus am wichtigsten sind. Für größere Graphen erwarte ich jedoch erhebliche Überraschungseffekte in den Teams oder Organisation, deren Kommunikation auf diese Weise analysiert wird.

Agile Management und leadership sind zwei Begriffs-Attraktoren, die die Ausrichtung der gedachten Teamkommunikation, anzeigen: Das Begriffs-Netzwerk visualisiert den Collective Mind oder den fehlenden Collective Mind einer Kommunikation, je nachdem wie viele konkurrierende Netzwerkcluster (Communities) mit ähnlichem PageRanking es gibt.

Dieses kleine Beispiel illustriert, dass man mit den Mittel von AI/ML erhebliche Informationen über Teams oder Organisationen gewinnen kann. Diese Informationen können im Guten wie im Bösen eingesetzt werden. Berücksichtigt man, dass das Know-how von google und Co. Lichtjahre weiter ist als mein Eigenes, so ist die Einbettung in eine AI Ethik um so wichtiger. Deshalb beabsichtige ich, mich im nächsten Blog mit dem EU AI Act zu beschäftigen [13].

 

[1] Laplace Matrix (2022) https://en.wikipedia.org/wiki/Laplacian_matrix, Wikipedia, zugegriffen am 19.06.2022

[2] Jansen D (1999) Einführung in die Netzwerkanalyse, VS Verlag für Sozialwissenschaften

[3] Wasserman S, Faust K (1994) Social Network Analysis, Cambridge University Press

[4] PageRank (2022) https://en.wikipedia.org/wiki/PageRank, Wikipedia, zugegriffen am 19.06.2022

[5] Hamilton W L (2020) Graph Representation Learning, Morgan&Claypool Publishers

[6] Bratanic T (2022) Extract knowledge from text: End-to-end information extraction pipeline with spaCy and Neo4j, published May 6, 2022, https://towardsdatascience.com/extract-knowledge-from-text-end-to-end-information-extraction-pipeline-with-spacy-and-neo4j-502b2b1e0754, towardsdatascience.com, zugegriffen am 10.05.2022

[7] spaCy (2022) https://spacy.io/models/de, zugegriffen am 20.04.2022

[8] Transformers (2022) https://huggingface.co/docs/transformers/main_classes/pipelines, huggingface.co, zugegriffen am 20.04.2022

[9] Neo4j (2022) neo4j.com, zugegriffen am 23.06.2022

[10] Jupyter Notebooks (2021) https://jupyter.org/, zugegriffen am 02.12.2022

[11] Colab (2021) https://colab.research.google.com/

[12] Scifo E (2020) Hands-on Graph Analytics with Neo4J, Packt Publishing, Birmingham, kindle edition

[13] EU AI Act (2022) https://artificialintelligenceact.eu/, Europe Administration

AI & M 4.0: Collective Mind, Proxies und word embedding

Eine Warnung vorweg: Ich benutzte im Blog Mathematik und AI Techniken, da ich versuche, den Begriff Collective Mind damit besser auszuleuchten. Vielleicht motiviert dies den ein oder anderen Leser, den Blog-Beitrag genau aus diesem Grunde zu lesen.

Der Begriff Collective Mind wurde erstmals 2007 von Jens Köhler und mir, im Zusammenhang mit der Erstellung unseres Buches „Die Collective Mind Methode“, geprägt [1]. Später ist der Collective Mind, als einer der zentralen Begriffe, in Management 4.0 eingegangen.

Wir verstehen unter Collective Mind (CM) einerseits einen kollektiven Flow-Zustand, der für Team oder organisationale Hochleistung steht und andererseits steht er auch für einen Operator, also Modelle und Theorien, der diesen Zustand beschreibt und herbeiführt.

Wir benutzen in der Collective Mind Theorie zwar verschiedene Modelle (Persönlichkeitkeitsmodelle, Wertemodelle, Team-Heterogenitätsmodelle, Kommunikationsmodelle usw.) mit denen wir den Collective Mind herbeiführen; und das funktioniert sehr gut, wie wir in mehr als 15 Jahren Praxis zeigen konnten, jedoch ist es uns bisher nicht gelungen den Flow-Zustand selbst, den Collective Mind, durch ein Modell oder eine Theorie zu beschreiben. Wir arbeiten stattdessen mit Metaphern oder wir verwenden Stellvertretermodelle, kurz Proxies, um ihn zu beschreiben. Diese Proxies sind:

  • Mitwirkungs- und Redezeit: Der CM ist dann besonders stark, wenn alle Teammitglieder nahezu gleichstark mitwirken, also sie zum Beispiel in nahezu allen Teammeetings anwesend sind und ihre Redezeit nahezu gleich verteilt ist.
  • Ähnlichkeit in der Wort- und Bild-Wahl: Der CM ist dann besonders stark, wenn alle Teammitglieder ähnliche Worte und/oder Bilder benutzen, um einen Projektsachverhalt zu beschreiben. – Es findet ein Spiegeln im gesprochenen Wort und im Bild statt.
  • Zufriedenheit: Der CM ist besonders stark, wenn alle Teammitglieder der Arbeit im Team eine sehr hohe Zufriedenheit attestieren und sie das Gefühl haben einen sinnvollen Beitrag zu leisten.
  • Spiegeln der Körpersprache: Der CM ist besonders stark, wenn alle Teammitglieder in ihrer Körpersprache die Köpersprache der anderen spiegeln.

Im Idealfall treffen für ein CM Hochleistungsteam alle diese Proxies gleichzeitig zu.

Diese Stellvertretermodelle können sich auch über die Zeit entwickeln: Zum Beispiel benutzen die Teammitglieder am Anfang völlig unterschiedliche Beschreibungen (Sätze, Bilder), um ein Projektziel oder einzelne Anforderungen zu konkretisieren. Steigt der Collective Mind, werden die Unterschiede geringer. Jedoch kann im Team etwas passieren, das den Collective Mind zerstört oder wieder ins Wanken bringt. Die Unterschiede in den Proxies werden entsprechend wieder größer. Beispiele für solche Ereignisse, die den CM wieder verändern, sind neue Teammitglieder oder wechselhafte Anwesenheiten von Teammitgliedern oder neue Erkenntnisse, die nicht von allen im gleichen Maße gesehen und geteilt werden.

Die Leser dieses Blogs dürften diese empirischen Aussagen bei geneigter Bobachtung in ihren Teams sehr schnell bestätigen. Ich verweise diesbezüglich auch auf das Whitepaper von Armatowski et. al., das anlässlich der IPMA Research Conference zum Thema Selbstorganisation erstellt wurde [2]. – Das Whitepaper skizziert für das Autorenteam den Prozess der Selbstorganisation, also der Ausbildung eines CM’s, während der IPMA Research Hackdays 2020.

Im Bereich der Wissenschaften, insbesondere derjenigen, die Sachverhalte auch mathematisch beschreiben, hat man sich inzwischen weitgehend daran gewöhnt die Realität mit den Proxies für die Realität gleichzusetzen: Zum Beispiel werden elektrische Erscheinungen einem elektrischen Feld E zugeschrieben (Fett gedruckte Buchstaben bezeichnen hier eine sogenannte Vektorgröße, die durch einen Betrag und eine Richtung beschrieben wird). – Wahrscheinlich käme kaum jemand auf die Idee, E als Proxy zu betrachten. – Falls es doch mal durch einen genialen Wissenschaftler geschieht, bringt dieser die Erkenntnis einen Schritt weiter, in dem er die dem Proxy hinterlegten Annahmen radikal hinterfragt.

Alle anderen dürften über Jahrzehnte oder sogar Jahrhunderte hinweg das elektrische Feld E mit der „wahren“ elektrischen Realität gleichsetzen. – Lediglich im Bereich der Quantenmechanik ist diese breite Sicherheit nie so wirklich wahrgeworden. – Die Unterschiede zwischen alltäglicher Erfahrung und quantenmechanischer Beobachtung und den assoziierten Proxies ist nach wie vor zu groß.

Proxies sind also nur Stellvertreter, also Modelle oder Theorien, die unsere Beobachtungen zusammenfassen bzw. abstrahieren. So gesehen ist es sicherlich legitim die obigen Collective Mind Proxies für den „wahren“ Collective Mind zu verwenden. Verwendet man zusätzlich die Mathematik zur Beschreibung, so ergibt sich ein deutlich besseres und erweitertes Verständnis der Zusammenhängen, nicht selten werden Zusammenhänge erst sichtbar. – Eine Aussage, die nach meiner Erfahrung immer gültig ist, vorausgesetzt man berücksichtigt wie auch bei anderen (mentalen) Modellen, dass Proxies nicht zwangsläufig die Realität sind.

Setzt man die mathematische Beschreibung in Technologie, in unserem Fall in Artificial Intelligence Technologie, um, so lässt sich der CM viel besser fassen. Wie wir gleich sehen werden, lassen sich die Collective Mind Proxies in der Praxis gut operationalisieren und gut überprüfen.

Wir führen das mathematische Gebilde „Tensorfeld Collective Mind CM(x,t)“ ein, das vom Ort x und der Zeit t abhängt.

Was verstehe ich darunter?

Im Kontext von Management oder Projekt Management kann man sich sehr gut vergegenwärtigen, dass der Collective Mind wie ein abgeschossener Pfeil eine Richtung haben muss, denn Projektziele oder die Ziele einzelner Personen oder Organisationen werden u.a. durch eine Richtung beschrieben. Er hat auch einen Betrag, nämlich die Energie, die im Team, in der Person oder der Organisation zu diesem Ziel vorhanden ist. Dass der CM sich zeitlich ändern kann, habe ich schon oben erläutert. – Er kann natürlich auch vom Ort abhängen. – Der Collective Mind innerhalb eines (größeren) Teams oder einer Organisation kann durchaus von Ort zu Ort unterschiedlich sein: Verschiedene Sub-Teams eines Teams haben unterschiedliche Collective Minds, verschiedene Sub-Organisationen (Abteilungen) einer Organisation haben wahrscheinlich auch unterschiedliche Collective Minds.

Mit diesen Annahmen setze ich die obigen verbalen Proxies in Mathematik um: Die Aussage „in etwa gleiche Mitwirkungs- und Redezeit“ kann man in Differenzen umsetzen, indem wir die Redezeiten jeder Person mit jeder anderen Person vergleichen. Es entsteht eine Matrix, oder allgemeiner ein Tensor oder Tensorfeld. – Die bekannteste google AI/ML Plattform auf der Basis neuronaler Netzwerk heißt tensorflow, weil Tensoren durch das Netzwerk aus künstlichen Neuronen fließen [3].

Auch die Ähnlichkeit in der Wortwahl kann man durch Differenzen darstellen. Die Differenzen in der Wortwahl bilden ebenfalls ein Orts- und Zeit-abhängiges Tensorfeld.

Auf der Basis der obigen verbalen Proxies führen wir eine mathematische Form für den Operator des Collective Minds, CMO(x,t) (das hochgestellte O steht für Operator), ein:  

CMO(x, t) ~ proxyCMO(x, t) = SO(x, t)*MO(x,t)

Diese Gleichung drückt aus, dass wir annehmen, dass das „unbekannte Wesen“ CMO(x, t) näherungsweise durch einen proxyCMO(x,t) beschrieben werden kann; und dass zwei Faktoren – nach jetziger Erkenntnis – diesen proxyCMO(x,t) bestimmen. Ich habe Faktoren gewählt, um auszudrücken, dass im Idealfall alle zwei Faktoren, SO und MO, vorhanden und groß sein müssen, um einen großen CMO(x,t) zu erhalten.

SO(x,t) = Similarity: Dieser Faktor “misst” Mitwirkungs- und Redezeit sowie Wortähnlichkeit (Ähnlichkeiten in Bildern berücksichtigen wir der Einfachheit wegen hier nicht). Wir können diese beiden Proxies gut in einer Größe zusammenfassen: Wählen wir SO(x,t) geeignet, so kann SO(x,t) nur dann eine hohe Similiarity ausweisen, wenn man gleich große Text – oder Redeblöcke miteinander vergleicht und dies kann nur dann der Fall sein, wenn die Teammitglieder in etwa gleich lange anwesend sind und gleichlange sprechen.

MO(x,t) = Mood: Dieser Faktor misst die Stimmung, die Zufriedenheit im Team oder in der Organisation. Dieser Faktor schließt auch die Häufigkeit und Intensität des körperlichen Spiegelns ein.

Ob man mehrere Faktoren benötigt, ist mir zurzeit noch nicht klar, denn SO kann nur dann hoch sein, wenn MO hoch ist. – Nur zufriedene Teammitglieder reden in etwa gleich viel mit einer ähnlichen (spiegelnden) Kommunikation in Sprache und Körper. – Jedoch könnte man Unterschiede zwischen Körpersprache und gesprochenem Wort benutzen, um Dysfunktionalitäten aufzudecken. Hierzu wäre eine entsprechende visuelle AI notwendig und dies geht in jedem Fall weit über diesen Blog hinaus.

Ich tue jetzt mal so, als wenn einige Jahrzehnte verstrichen seien und wir uns wie beim elektrischen Feld E daran gewöhnt hätten, Proxy und Realität gleichzusetzen:  Wir setzen also in der obigen Gleichung CMO und proxyCMO gleich und wir nehmen der Einfachheit wegen an, dass die Similarity genügt, um den CMO zu beschreiben:

CMO(x, t) = SO(x, t)

SO(x, t) ist eine symmetrische Matrix deren Elemente Sij(x,t) Differenzen von zwei Vektoren sind, nämlich die Differenz zwischen dem Wortanteil und der Wortwahl des Teammitgliedes i und derjenigen des Teammitgliedes j. Wortanteil und Wortwahl jedes Teammitgliedes werden durch einen Vektor in einem verbalen Raum ausgedrückt.

Jetzt müssen wir „nur noch“ einen geeigneten Operator SO(x,t) finden, der in einem verbalen Raum Vektoren aufspannt. – Ohne die Fortschritte in AI/ML wäre hier das Ende meiner Ausführungen erreicht. – Die enormen Fortschritte in der Verarbeitung der natürlichen Sprache mittels AI/ML, also dem AI/ML-Teilgebiet NLP (Natural Language Processing), machen es mir möglich, weiterzukommen.

Im Jahre 2013 wurde die fundamentale Idee veröffentlicht, Text bzw. Worte in Vektoren zu transferieren: Es werden Worte in einen Vektorraum eingebettet. Deshalb nennt man diese Technik auch word embedding. Word embedding wird auch mit dem Namen der wahrscheinlich bekanntesten AI/ML NLP Bibliothek „word2vec“ von google gleichgesetzt. [4, 5]. Jedem Wort wird hierzu ein token, eine Zahl, zugeordnet und dieses token wird in einen hochdimensionalen Raum, typischer Weise mit 300 Dimensionen! eingebettet [6, 7, 8]. Die hohe Dimension des (Wort-) Raumes erlaubt es, Worte nach 300 Dimensionen zu differenzieren. Das Verblüffende ist, dass Neuronale Netzwerke, die mittels Texten trainiert werden, die Worte eines Textes nicht beliebig in diesem Raum verteilen, sondern gemäß Sinn, wie wir ihn auch wahrnehmen. Man kann dann sogar mit diesen Wortvektoren „rechnen“, z.B. König-Mann+Frau = Königin. Dieses Rechen hat auch dazu geführt, dass man Vorurteile und Diskriminierungen in Datensätzen aufgedeckt hat, also z.B. Arzt-Mann+Frau = Krankenschwester. – Wohlgemerkt, Datensätze die unsere diskriminierende Realität beschreiben.
Wer sich von der hinterlegten Technik beeindrucken lassen möchte, den verweise ich auf die word embedding Illustration von tensorflow [9]. 

Dies word embedding ist für mich eine mehr als nur erstaunliche Erfahrung. – Sie  stützt einen meiner wichtigsten Glaubenssätze: „Das Sein unterscheidet nicht zwischen belebt und unbelebt, oder zwischen bewusst und unbewusst, wir treffen überall auf die gleichen fundamentalen Prinzipien, auch wenn deren Erscheinungen  auf den ersten Blick sehr unterschiedlich sein mögen.“

Eine der bekanntesten NLP Bibilotheken, die word2vec Funktionalität integriert, ist spaCy [10]. Ich benutze spaCy, um SO(x, t) an einem einfachen Beispiel zu berechnen. Ich lehne mich an Beispiele aus [11] an und zeige im Folgenden den Code wie er in einem Jupyter Notebook [12] in der google Colab-Umgebung [13] lauffähig ist. Zunächst eine kleine Illustration von word embedding:

pip install spacy

!python -m spacy download en_core_web_md

import en_core_web_md

nlp = en_core_web_md.load()

vocab =nlp(‚cat dog tiger elephant bird monkey lion cheetah burger pizza food cheese wine salad noodles macaroni fruit vegetable‘)

words = [word.text for word in vocab]

vecs = np.vstack([word.vector for word in vocab if word.has_vector])

pca = PCA(n_components=2)

vecs_transformed = pca.fit_transform(vecs)

plt.figure(figsize=(20,15))

plt.scatter(vecs_transformed[:,0], vecs_transformed[:,1])

for word, coord in zip(words, vecs_transformed):

  x,y = coord

  plt.text(x,y, word, size=15)

plt.show()

Unter Anwendung des obigen Codes wird folgendes Bild erzeugt:

Abbildung 1: 300-dimensionales Wortvektor-Modell projiziert auf 2 Dimensionen

Ich gehe nicht auf die Details des Code-Beispiels ein, lediglich einige Hinweise, um das Wesentliche des Blogbeitrags zu erfassen: Ich benutze ein vortrainiertes englisches Vektormodell „en_core_web_md“ und übergebe diesem einige englische Worte ‚cat dog tiger elephant bird monkey lion cheetah burger pizza food cheese wine salad noodles macaroni fruit vegetable‘, die das vortrainierte Modell in einem 300-dimensionalen Vektorraum verortet. Um diese Verortung darstellen zu können, wird die Verortung mit der mathematischen Technik PCA auf zwei Dimensionen in der Abbildung 1 projiziert. – Dadurch kommt es zu visuellen Überlappungen, wie man im Bild sehen kann. Auch erkennt man sehr schön, dass das vortrainierte Modell gemäß der Bedeutung der Worte Bedeutungscluster gebildet hat.

Wenden wir uns jetzt der Similarity zu, indem wir die Similarity von Vektoren berechnen:

Abbildung 2: Zwei übliche Definitionen von Wort Similarity

Abbildung 2 erläutert die beiden gebräuchlichen NLP Similarities. Word2vec verwendet hierbei lediglich die Cosine-Similarity. Werden ganze Sätze oder Texte auf Similarity geprüft „misst“ word2vec die Ähnlichkeit der Texte über Mittelwertbildung der beteiligten Vektoren bzw. Worte.

Die damit verbundenen Ergebnisse sind verblüffend, wie das nachfolgende einfache Beispiel zeigt:

doc1 = nlp(‚I visited England.‘)

doc2 = nlp(‚I went to London‘)

doc1.similarity(doc2)

Die Cosine-Similarity liegt für dieses Beispiel bei sα = 0,84. Die Similarity wird von word2vec auf den Bereich 0 bis 1 normiert (Anm.: Die Similarity könnte auch zwischen -1 und 1 liegen, was für unsere Betrachtung besser geeignet wäre).

Jedoch… die Euclidean-Similarity, berechnet mittels des Codes aus [14], ergibt eine sehr geringe Similarity von sr = 0,08.

D.h. Die Wordvektoren zeigen zwar in die gleiche Richtung liegen aber in völlig unterschiedlichen Raumbereichen des 300-dimensionalen Wortvektorraumes. – Beide Aussagen sind also nicht identisch, haben jedoch eine hohe Bedeutungs-Affinität.

Ein anderes Beispiel: Ich möchte die Similarity von zwei Texten aus unserem Buch Management 4.0 [15] vergleichen: Ich vergleiche eine Kurzfassung der Management 4.0 Definition mit der Langfassung der Definition:

doc1 = nlp(‚With a systemic leadership approach, Management 4.0 provides the guiding competence for viable learning organizations in complex situations and environments. Management 4.0 integrates an Agile Mindset, the universal principle of self-organization as a governance guideline, and relevant work techniques, for sustainable working models of the future.‘)

doc2 = nlp(‚We understand Agile Management as a leadership and management practice, to be able to act in an agile and proactive way in a complex environment characterized by uncertainty.  It is described as an Agile Mindset with a focus on: leadership for which self-leadership is the basis; leadership, which is based on a respect for basic human needs; leadership, which demands an understanding of complex systems and promotes their regulation through iterative procedures; people who self-organize in teams; fluid organizations, which promote adaptable and fast delivery of useful results and create innovative customer solutions through proactive dealing with changes‘)

Das Ergebnis für die Cosine-Similarity, von word2vec, ist wieder verblüffend:

doc1.similarity(doc2)

sα = 0,97

Die Euclidean-Similarity berechnet mit dem Code aus [14] ergibt sr = 0,46. Also verglichen mit der Similarity aus dem vorherigen Beispiel sehr hoch.

Auf der Basis dieser Beispiel-Daten kann ich einen Beispiel Similarity-Operator angeben: Wir nehmen der Einfachheit wegen an, dass die obigen beiden Texte aus dem Management 4.0 Buch von zwei Personen gesprochen wurden. Damit ergibt sich der Collective Mind Operator dieser beiden Personen zu:

SO(x, t) ist eine symmetrische 2*2 Matrix (ich bitte darum, kleine farbliche Unsauberkeiten in der Formeldarstellung zu übersehen, hier bei sα): Die Nicht-Diagonal Elemente sind hier keine einfachen Skalare, sondern bilden jeweils einen Vektor in einem Similarity Raum. Da wir mit überschaubarer Mathematik (d.h. einfacher Matrizenrechnung) weiterkommen wollen, wandeln wir diese Vektoren in Skalare um. Die einfachste Weise, dies zu tun, ist sr(x,t) nicht zu berücksichtigen und die resultierende Größe als Skalar anzusehen. Ich könnte auch die Länge des Similarity-Vektors in die obige Matrix einsetzen. – Der Vektorbetrag wäre dann so etwas wie eine integrierte Similarity. – Das Weglassen von sr(x,t) hat im Rahmen dieser Vereinfachungen keinen wesentlichen Einfluss auf die nachfolgenden Ausführungen.

Damit ergibt sich:

Man kann diese Matrix auch als sogenannte Heat Matrix darstellen, in dem die Similarities farblich codiert werden: Dies wurde in [16] benutzt, um die Similarity der Reden deutscher Politiker visuell darzustellen.

Wir haben bisher zwar einen Operator für den CM definiert, jedoch den CM selbst nicht ermittelt. Dies tue ich jetzt:

Für den Operator CMO(x, t) können wir sogenannte Eigenwerte und Eigenvektoren berechnen. Eigenvektoren sind diejenigen Vektoren, die unter der Anwendung des Operators lediglich ihren Betrag verändern, jedoch ihre Richtung beibehalten. Die Veränderung des Betrages bei Anwendung des Operators wird Eigenwert genannt. Den größten Eigenwert und dessen zugehörigen Eigenvektor assoziiere ich mit dem Collective Mind Vektor CMvektor dieser beiden kommunizierenden Personen (es gibt noch einen zweiten Eigenwert und Eigenvektor, der aber hier (wahrscheinlich) keinen Sinn machen):

Das Internet stellt auch für solche Berechnungen eine App zur Verfügung [17]. Der Vektor CM bekommt damit folgende mathematische Gestalt:

Der Eigenvektor liegt also auf der „Diagonalen zwischen zwei Personen“ und hat einen Eigenwert der größer als 1 und maximal 2 ist. Die Mathematik spiegelt mein Verständnis eines CM wider. Deshalb sage ich: „Gar nicht schlecht für den Anfang 😉, jedoch werden Synergieeffekte (d.h. Eigenwerte größer 2) und Effekte des gegenseitigen Blockierens (d.h. Eigenwerte kleiner 1) nicht abgebildet. Letzteres hängt auch damit zusammen, dass die word2vec Similarity per Definition nicht kleiner Null ist.

In unserem Beispiel ist der Eigenvektor und der Eigenwert statisch, da die Similarity keine explizite Zeitabhängigkeit enthält. Im Allgemeinen ist die Similarity eine  zeit- und ortsabhängige Größe. Damit werden die Berechnungen viel aufwendiger, unterscheiden sich jedoch nicht von den einfachen Ausführungen hier.

Es ist also möglich Zeitscheiben zu definieren, in denen eine AI synchron in Teammeetings die Gespräche aufnimmt, die Gespräche transkribiert und dann wie hier geschildert (und evtl. mit weiteren AI Techniken) die Similarity berechnet. Die Darstellung der Similarity als Zeitreihen und des zeitlichen Verlaufes des Vektors CM könnte als Feedback-Mechansimus eingesetzt werden, um eine Teamreflexion zu unterstützen. – Die AI übernimmt damit eine „Coaching“ Funktion. – Dieser Blog-Beitrag skizziert also die Ausgestaltung der AI-Anwendung Collective Mind im IPMA Kompetenz Bereich Teamarbeit, aus meinem Dezember 2021 Blog-Beitrag.

[1] Köhler J, Oswald A. (2009) Die Collective Mind Methode, Projekterfolg durch Soft Skills, Springer Verlag

[2] Armatowski S., Herrmann P., Müller M., Schaffitzel N., Wagner R (2021) The importance of Mindset, Culture and Atmosphere for Self-Organisation in Projects, White Paper IPMA, erstellt anläßlich der IPMA Research Conference 2020

[3] tensorflow (2022) tensorflow.org, zugegriffen am 16.04.2022

[4] google (2022) word2vec, https://code.google.com/archive/p/word2vec/, zugegriffen am 16.04.2022

[5] Wikipedia (2022) word2vec, https://en.wikipedia.org/wiki/Word2vec, zugegriffen am 16.04.2022

[6] Karani D (2022) Introduction to Word Embedding and Word2Vec, https://towardsdatascience.com/introduction-to-word-embedding-and-word2vec-652d0c2060fa, zugegriffen am 20.04.2022

[7] Megret P (2021) Gensim word2vec tutorial,  https://www.kaggle.com/pierremegret/gensim-word2vec-tutorial , zugegriffen am 20.04.2022

[8] Delaney J (2021) Visualizing Word Vectors with t-SNE, https://www.kaggle.com/jeffd23/visualizing-word-vectors-with-t-sne/notebook , zugegriffen am 20.04.2022

[9] word embedding playground (2022) http://projector.tensorflow.org/

[10] Spacy (2022) https://spacy.io/models/de, zugegriffen am 20.04.2022

[11] Altinok D (2021) Mastering spaCy, Verlag Packt, kindle edition

[12] Jupyter Notebooks (2021) https://jupyter.org/, zugegriffen am 02.12.2021

[13] Colab (2021) https://colab.research.google.com/

[14]   NewsCatcher Engineering Team (2022) https://newscatcherapi.com/blog/ultimate-guide-to-text-similarity-with-python, zugegriffen am 20.04.2022

[15] Oswald A, Müller W (2019) Management 4.0 – Handbook for Agile Practices, Verlag BoD, kindle edition

[16] Timmermann T (2022) https://blog.codecentric.de/2019/03/natural-language-processing-basics/, zugegriffen am 20.04.2022

[17]   Виктор Мухачев (2022) https://matrixcalc.org/de/, zugegriffen am 20.04.2022