Inhalt
Aktueller Ordner:
ARS_ExplainableAIARSXAI8.md
ARSXAI8 - Algorithmic Recursive Sequence Analysis with Explainable AI
📖 Inhaltsverzeichnis
1. Einführung und Zielsetzung
2. Hauptmerkmale
3. Installation
4. Integrierte Modelle
5. XAI-Komponenten
6. Dateiformate
7. Benutzeroberfläche
8. Bedienungsanleitung
9. Beispiele
10. Exportformate
11. Fehlerbehebung
12. Mitwirken
13. Lizenz
---
🎯 Einführung und Zielsetzung
ARSXAI8 ist eine universelle Analyseplattform für sequenzielle Daten mit Fokus auf Explainable AI (XAI). Das Programm integriert sechs verschiedene Modellierungsansätze, um aus beliebigen Terminalzeichenketten (z.B. Dialogtranskripte, Prozessabläufe, Verhaltenssequenzen) automatisch strukturelle Regeln abzuleiten und diese für den Menschen nachvollziehbar zu erklären.
Kernziele
- Universalität: Analyse beliebiger Sequenzen, nicht nur vordefinierter Domänen
- Multi-Modell-Ansatz: Sechs verschiedene Modelle für unterschiedliche Perspektiven
- Erklärbarkeit: Transparente Darstellung der Ableitungsprozesse und Entscheidungen
- Vergleichbarkeit: Konsens- und Diskrepanzanalyse zwischen Modellen
- Generierung: Synthetische Erzeugung neuer Sequenzen aus gelernten Strukturen
Hauptanwendungsgebiete
| Bereich | Anwendung |
|---------|-----------|
| Dialoganalyse | Verkaufsgespräche, Beratungen, Therapiegespräche |
| Prozessanalyse | Workflow-Muster, Produktionsabläufe, Geschäftsprozesse |
| Verhaltensanalyse | Aktionssequenzen, Interaktionsmuster, Nutzerverhalten |
| Code-Analyse | Programmabläufe, API-Aufrufsequenzen, Log-Analyse |
| Wissenschaft | Sequenzmuster in beliebigen Domänen, Modellvergleiche |
---
🌟 Hauptmerkmale
📊 Multi-Modell-Architektur
- 6 integrierte Modelle mit einheitlichem XAI-Interface
- Gleichzeitiges Training aller Modelle
- Modellvergleich mit Konsensanalyse
🔍 Mehrere Ableitungsstrategien
- Positionsbasierte Kodierung
- Musterbasierte Kodierung
- Statistisch basierte Kodierung
- Konsensbildung über Mehrheitsentscheidung
💡 XAI-Komponenten
- Interaktiver Erklärer ("Warum?")
- Modellvergleich für beliebige Symbole
- Konfidenzmetriken für alle Ableitungen
- Was-wäre-wenn Simulationen
🎨 Umfangreiche Visualisierungen
- Kodierungsvergleich als Heatmap
- Modell-Konfidenzen im Vergleich
- Automaten-Graph (mit Graphviz)
- Textuelle Alternativen bei fehlender Grafik
📤 Multi-Format Export
- JSON (maschinenlesbar)
- CSV (Tabellenkalkulation)
- HTML (interaktiver Bericht)
- LaTeX (wissenschaftliche Publikationen)
---
💻 Installation
Systemvoraussetzungen
- Python: 3.8 oder höher
- RAM: 4 GB (empfohlen)
- Festplatte: 500 MB für Abhängigkeiten
- OS: Windows, macOS, Linux
Automatische Installation
`bashRepository klonen
git clone https://github.com/yourusername/ARSXAI8.git
cd ARSXAI8
Programm starten (Pakete werden automatisch installiert)
python ARSXAI8.py
`Manuelle Installation
`bashAlle Abhängigkeiten installieren
pip install numpy scipy matplotlib hmmlearn sklearn-crfsuite sentence-transformers networkx torch seaborn tabulate graphviz
`Graphviz (für Automaten-Visualisierung)
Windows:
`bashMit Chocolatey (als Administrator)
choco install graphviz
Oder manuell: https://graphviz.org/download/
Installationspfad muss im SYSTEM-PATH sein
`Linux:
`bashsudo apt-get install graphviz # Ubuntu/Debian
`macOS:
`bashbrew install graphviz
`---
🧠 Integrierte Modelle
| Modell | Klasse | Beschreibung | XAI-Fokus |
|--------|--------|--------------|-----------|
| ARS 2.0 |
ARS20 | Einfache Bigramm-Übergangswahrscheinlichkeiten | Transparente Wahrscheinlichkeiten || ARS 3.0 |
GrammarInducer | Hierarchische Grammatik mit Nonterminalen | Mustererkennung und Kompression || HMM |
ARSHiddenMarkovModel | Bayessche Netze für latente Phasen | Verborgene Zustände || CRF |
ARSCRFModel | Conditional Random Fields | Feature-Wichtigkeit || Petri-Netz |
ARSPetriNet | Ressourcen-basierte Prozessmodellierung | Token und Aktivierung || Generator |
ChainGenerator | Synthetische Ketten aus Modellen | Generierungserklärung |Modell-Vergleich
`pythonJedes Modell liefert einheitliche Erklärungen
modell.explain(symbol) -> {
'model': "ARS 2.0",
'confidence': 0.85,
'content': ["Erklärung Zeile 1", "Erklärung Zeile 2"]
}
`---
🔬 XAI-Komponenten
1. Interaktiver Erklärer (InteractiveExplainer)
`pythonWarum wurde Symbol so kodiert?
explainer.why_symbol("KBBd")
>>> 🔍 Erklärung für Symbol 'KBBd':
============================================================
Konsens-Kodierung: 00100
Übereinstimmung: 67%
Positionsbasiert: Kunde | Phase: Bedarf (Pos.3.2) | Basis
Musterbasiert: Kunde | Phase: Bedarf (Nachbarn: VBBd) | Basis
Statistisch: Kunde | Phase: Bedarf (Häufigkeit: 22%) | Basis
`2. Modellvergleich (XAIModelManager)
`pythonAlle aktiven Modelle vergleichen
manager.compare_models("KBBd")
>>> ARS 2.0: Übergang KBBd→VBBd mit 85%
ARS 3.0: KBBd ist Teil von NT_BEDARF
HMM: KBBd in Phase 1 mit 78%
`3. Konfidenzmetriken
Jede Ableitung wird mit einer Konfidenz versehen:
| Konfidenz | Bedeutung | Darstellung |
|-----------|-----------|-------------|
| > 0.7 | Hohe Konfidenz | ★★★★☆ (grün) |
| 0.4 - 0.7 | Mittlere Konfidenz | ★★★☆☆ (orange) |
| < 0.4 | Niedrige Konfidenz | ★★☆☆☆ (rot) |
4. Was-wäre-wenn Simulation
Simulation alternativer Kodierungen und deren Auswirkungen auf die Modelle.
---
📁 Dateiformate
Eingabeformat (Transkriptdatei)
`txtKommentare beginnen mit #
Trennzeichen: Komma, Semikolon oder Leerzeichen
Transkript 1: Standard
KBG, VBG, KBBd, VBBd, KBA, VBA, VAA, KAA, VAV, KAV
Transkript 2: Mit Wiederholung
KBG, VBG, KBBd, VBBd, KBBd, VBBd, KBA, VBA, VAA, KAA, VAV, KAV
Leerzeilen werden ignoriert
`Formatregeln:
- Eine Kette pro Zeile
- Kommentare mit
# am Zeilenanfang- Symbole durch Trennzeichen getrennt
- Leere Zeilen werden ignoriert
Beispiel: Verkaufsgespräche
Die Beispieltranskripte verwenden folgende Symbole:
| Symbol | Bedeutung |
|--------|-----------|
| KBG | Kunden-Begrüßung |
| VBG | Verkäufer-Begrüßung |
| KBBd | Kunden-Bedarf (konkret) |
| VBBd | Verkäufer-Nachfrage |
| KBA | Kunden-Antwort |
| VBA | Verkäufer-Reaktion |
| KAE | Kunden-Erkundigung |
| VAE | Verkäufer-Auskunft |
| KAA | Kunden-Abschluss |
| VAA | Verkäufer-Abschluss |
| KAV | Kunden-Verabschiedung |
| VAV | Verkäufer-Verabschiedung |
---
🖥️ Benutzeroberfläche
Hauptfenster
`┌─────────────────────────────────────────────────────────────────┐
│ ARSXAI8 - Algorithmic Recursive Sequence Analysis with Explainable AI │
├──────────────────────┬──────────────────────────────────────────┤
│ EINGABE │ AUSGABE (Notebook-Tabs) │
│ │ │
│ Trennzeichen: │ ┌─────────────────────────────────────┐ │
│ ○ Komma ○ Semikolon │ │ Kodierung | Modelle | Automat | XAI | │
│ ○ Leerzeichen ○ | │ └─────────────────────────────────────┘ │
│ │ │
│ Transkripte: │ Kodierungsergebnisse: │
│ ┌──────────────────┐ │ ╔═════════════════════════════════════╗ │
│ │ KBG, VBG, KBBd, │ │ ║ POSITIONSBASIERTE KODIERUNG ║ │
│ │ KBBd, VBBd, KBA, │ │ ║ Konfidenz: 78% ║ │
│ │ VAA, KAA, VAV │ │ ║ KBG: 00000 ║ │
│ └──────────────────┘ │ ║ VBG: 10000 ║ │
│ │ ║ KBBd: 00100 ║ │
│ [Datei laden] [Parsen]│ ╚═════════════════════════════════════╝ │
│ │ │
│ ✓ 15 Ketten geladen │ │
├──────────────────────┴──────────────────────────────────────────┤
│ Status: Alle Modelle trainiert [=====▶ ] │
└─────────────────────────────────────────────────────────────────┘
`Tabs im Überblick
| Tab | Funktion | Inhalt |
|-----|----------|--------|
| Kodierung | Ableitungsstrategien | Ergebnisse von Position, Muster, Statistik |
| Modelle | Modellverwaltung | Checkboxen, Trainingsstatus, Konfidenzen |
| Automat | Automaten-Lernen | Gelernte Regeln, Validierung |
| XAI | Erklärungen | Interaktive Fragen, Modellvergleich |
| Generierung | Synthese | Neue Ketten aus Modellen |
| Statistiken | Kennzahlen | Verteilungen, Häufigkeiten |
Menüstruktur
`Datei
├── Transkripte laden
├── Beispiel laden
├── Exportieren
│ ├── JSON
│ ├── CSV
│ ├── HTML (Bericht)
│ └── LaTeX
└── Beenden
Analyse
├── Alle Strategien anwenden
├── Alle Modelle trainieren
├── Automaten lernen
└── Validierung durchführen
XAI
├── Erklärung für Symbol
├── Modellvergleich
├── Konfidenzen vergleichen
└── Was-wäre-wenn
Generierung
├── Mit ARS 2.0 generieren
├── Mit ARS 3.0 generieren
└── Mit HMM generieren
Visualisierung
├── Kodierungsvergleich
├── Modell-Konfidenzen
└── Automaten-Graph
Hilfe
├── Modulstatus
└── Über
`---
📘 Bedienungsanleitung
Schritt-für-Schritt
#### 1. Daten laden
Option A - Datei:
- Klicken Sie auf "Datei laden"
- Wählen Sie eine Textdatei mit Transkripten
- Das Programm parst automatisch
Option B - Beispiel:
- Klicken Sie auf "Beispiel"
- Lädt vordefinierte Verkaufsgespräche
Option C - Direkteingabe:
- Geben Sie Ketten direkt ins Textfeld ein
- Eine Kette pro Zeile
- Kommentare mit
# möglich#### 2. Trennzeichen wählen
Wählen Sie das in Ihrer Datei verwendete Trennzeichen:
- Komma (,):
KBG, VBG, KBBd- Semikolon (;):
KBG; VBG; KBBd- Leerzeichen:
KBG VBG KBBd- Benutzerdefiniert: z.B.
|#### 3. Analyse starten
Nach dem Laden startet die Analyse automatisch:
1. Validierung - Prüft Datenqualität
2. Kodierungsstrategien - Drei Strategien werden angewandt
3. Modell-Training - Alle sechs Modelle werden trainiert
4. Konsensbildung - Mehrheitsentscheidung über Kodierung
#### 4. Modelle erkunden
Modelle-Tab:
- Sehen Sie alle registrierten Modelle
- Aktivieren/deaktivieren Sie Modelle per Checkbox
- Trainingsstatus und Konfidenzen werden angezeigt
Kodierung-Tab:
- Vergleichen Sie die drei Ableitungsstrategien
- Sehen Sie den Konsens mit Übereinstimmungswerten
- ⚠️ markiert unsichere Kodierungen
#### 5. XAI-Fragen stellen
XAI-Tab:
- Geben Sie ein Symbol ein (z.B. "KBBd")
- Klicken Sie "Warum?" für detaillierte Erklärung
- Klicken Sie "Modelle vergleichen" für Multi-Perspektive
Was-wäre-wenn:
1. Klicken Sie "Was-wäre-wenn"
2. Wählen Sie Symbol, alternativen Code und Modell
3. Sehen Sie simulierte Auswirkungen
#### 6. Generierung
Generierung-Tab:
- Wählen Sie ein Quellmodell (ARS 2.0, ARS 3.0, HMM)
- Stellen Sie die Anzahl ein
- Klicken Sie "Generieren"
- Neue Ketten werden basierend auf gelernten Strukturen erzeugt
#### 7. Visualisierungen
Kodierungsvergleich:
- Menü: Visualisierung → Kodierungsvergleich
- Zeigt Heatmap der 5-Bit-Codes aller Strategien
Modell-Konfidenzen:
- Menü: Visualisierung → Modell-Konfidenzen
- Balkendiagramm aller Modell-Konfidenzen
Automaten-Graph:
- Menü: Visualisierung → Automaten-Graph
- Zeigt Zustände und Übergänge (mit Graphviz)
#### 8. Exportieren
1. Menü: Datei → Exportieren
2. Wählen Sie Format:
- JSON: Für Weiterverarbeitung
- CSV: Für Tabellenkalkulation
- HTML: Interaktiver Bericht
- LaTeX: Für wissenschaftliche Publikationen
---
💡 Beispiele
Beispiel 1: Einfache Analyse
Eingabe:
`Einfaches Gespräch
KBG, VBG, KBBd, VBBd, KBA, VBA, VAA, KAA, VAV, KAV
`Erwartete Ausgabe:
- Alle Modelle werden trainiert
- Hohe Konfidenz (>85%) für alle Ableitungen
- Konsens-Kodierung wird gebildet
Beispiel 2: Modellvergleich
Frage: "Warum ist KBBd = 00100?"
ARS 2.0: "KBBd geht zu 85% in VBBd über"
ARS 3.0: "KBBd ist Teil des Musters KBBd→VBBd→KBA"
HMM: "KBBd ist mit 92% in Phase 1 (Bedarf)"
CRF: "Feature 'prefix_K' (+2.3) unterstützt diese Zuordnung"
Beispiel 3: Generierung
Mit ARS 2.0 generiert:
`1. KBG → VBG → KBBd → VBBd → KBA → VBA → VAA → KAA → VAV → KAV
2. KBG → VBG → KBBd → VBBd → KBBd → VBBd → KBA → VAA → KAA → VAV → KAV
3. KBG → VBG → KBBd → VBBd → KBA → VBA → KAE → VAE → VAA → KAA → VAV → KAV
`---
📊 Exportformate
JSON (maschinenlesbar)
`json{
"coding": {
"KBG": {
"code": "00000",
"agreement": 1.0,
"confidence": 0.95
}
},
"model_comparison": {
"ARS20": {
"name": "ARS 2.0",
"confidence": 0.85,
"trained": true
}
}
}
`CSV (Tabellenkalkulation)
`csvSymbol,Code,Konfidenz,Modell
KBG,00000,95%,ARS20
VBG,10000,92%,ARS20
`HTML (Interaktiver Bericht)
- Kodierungstabellen mit farbigen Konfidenzen
- Modell-Infoboxen mit Beschreibungen
- Export-Datum und Statistiken
LaTeX (Wissenschaftlich)
`latex\documentclass{article}
\begin{document}
\section{ARSXAI8 Analyseergebnisse}
\begin{tabular}{lll}
Symbol & Code & Konfidenz \\
KBG & 00000 & 95\% \\
\end{tabular}
\end{document}
`---
🔧 Fehlerbehebung
Häufige Probleme
#### 1. "Keine gültigen Ketten gefunden"
- Ursache: Falsches Trennzeichen oder leere Datei
- Lösung: Trennzeichen überprüfen, Dateiformat kontrollieren
#### 2. Warnung: "Ähnliche Symbole"
- Ursache: Mögliche Tippfehler (z.B. "KBG" und "KBG ")
- Lösung: Symbole auf Konsistenz prüfen
#### 3. Graphviz-Fehler
`failed to execute WindowsPath('dot')
`- Ursache: Graphviz Systembibliothek fehlt
- Lösung: Graphviz installieren und PATH setzen
#### 4. Niedrige Konfidenz bei Modellen
- Ursache: Zu wenige Daten oder inkonsistente Muster
- Lösung: Mehr Daten sammeln oder Modelle deaktivieren
Modul-Fehler
| Fehler | Lösung |
|--------|--------|
| "hmmlearn nicht installiert" |
pip install hmmlearn || "sklearn-crfsuite nicht installiert" |
pip install sklearn-crfsuite || "sentence-transformers fehlt" |
pip install sentence-transformers |---
🤝 Mitwirken
Beiträge sind willkommen!
Entwicklungsumgebung
`bashRepository forken
git clone https://github.com/yourusername/ARSXAI8.git
cd ARSXAI8
Virtuelle Umgebung
python -m venv venv
source venv/bin/activate # Linux/Mac
venv\Scripts\activate # Windows
Entwicklungspakete
pip install -r requirements-dev.txt
`Code-Stil
- PEP 8 für Python-Code
- Docstrings für alle öffentlichen Methoden
- Typannotationen wo sinnvoll
- Kommentare auf Deutsch oder Englisch
Issue-Template
`markdownBeschreibung:
Kurze Beschreibung des Problems
Schritte zu reproduzieren:
1. ...
2. ...
Erwartetes Verhalten:
...
Tatsächliches Verhalten:
...
Umgebung:
- OS: ...
- Python: ...
- ARSXAI8 Version: ...
`---
📄 Lizenz
ARSXAI8 ist unter der MIT-Lizenz veröffentlicht.
`MIT License
Copyright (c) 2024 Explainable AI Research
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files...
`---
📚 Zitation
Wenn Sie ARSXAI8 in wissenschaftlichen Arbeiten verwenden, bitte wie folgt zitieren:
`bibtex@software{ARSXAI8,
author = {Koop, Paul},
title = {ARSXAI8: Algorithmic Recursive Sequence Analysis with Explainable AI},
year = {2024},
url = {https://github.com/yourusername/ARSXAI8}
}
`---
🙏 Danksagung
- hmmlearn - Für die HMM-Implementierung
- sklearn-crfsuite - Für die CRF-Implementierung
- Graphviz - Für Automaten-Visualisierung
- Sentence-Transformers - Für semantische Analysen
---
Entwickelt mit ❤️ für erklärbare Künstliche Intelligenz