Tableau für die Datenwissenschaft

Tableau für die Datenwissenschaft

April 13, 2021

Martin Anderson

Unabhängiger KI-Experte

In den zehn Jahren seit der Einführung des maschinellen Lernens mit GPU-Beschleunigung sind Sprachen auf niedrigerem Niveau wie Python und R in den Vordergrund der Analyseszene gerückt und haben einen früheren Trend in der Business-Intelligence-Implementierung in Richtung Vereinfachung, "flache" Datenbanken, einheitliche Austauschformate und "benutzerfreundliche" Plattformen zur Datenexploration umgekehrt.

Der neue Aufstieg von Python und R wurde jedoch nicht durch Verbesserungen bei den populärsten Bibliotheken von Drittanbietern für Visualisierung, Mapping und Datenexploration, wie Matplotlib, ggplot2 und Seaborn, aufgefangen, deren handwerklicher Output eher den internen Bedürfnissen der akademischen und kommerziellen Forschungsgemeinschaft als den Anforderungen der Vorstandsetage oder den Erwartungen der lizenzierten Kunden von Analyse-Dashboards entspricht.

Jedoch ist es jetzt möglich, direkt mit neuronalen Netzen und Modellen des maschinellen Lernens in der Tableau-Suite für die Visualisierung von Geschäftsdaten zu interagieren und eine übergeordnete Stilebene anzuwenden, während Live-Daten mit einem hohen Maß an Interaktivität und Reaktionsfähigkeit untersucht werden.

In diesem Artikel werfen wir einen Blick auf einige der beliebtesten Möglichkeiten, wie Datenwissenschaft durch Tableau-Entwicklung erklärbar, erforschbar und ansprechend gemacht werden kann.

Vorteile der Verwendung von Tableau für die Datenwissenschaft

  • Bessere Visualisierung mit weniger Code
    Die Kernaufgabe von Tableau ist die Exploration und Visualisierung von Daten. Dies sind wichtige, aber sekundäre Ziele in umfassenderen Data-Science-Programmiersprachen wie R und Python, wo die Qualität von Tools von Drittanbietern zur Graphenerstellung nicht immer die beste ist.
  • Überlegene explorative Datenanalyse
    Die Möglichkeit, anfängliche Datenmengen vor der Modellierung darzustellen, ist sehr nützlich, um den zu verfolgenden Ansatz zu evaluieren, und lässt sich in den nativen SDKs und APIs der gängigen Sprachen der Datenwissenschaft nur schwer nachbilden.
  • Natives Clustering
    Die Clusteranalyse ist eine native Funktion in Tableau und eine Ein-Klick-Anwendung in einem Dashboard, unabhängig davon, ob die Daten aus flachen Dateien importiert werden oder live über einen Dienst eintreffen (siehe unten).

Nutzung von Python mit TabPy

Die derzeitige Vormachtstellung von Python in den Bereichen Datenwissenschaft und maschinelles Lernen macht es zu einer unverzichtbaren Plattform für die Unternehmensentwicklung. Es gibt zwar viele Tools und Frameworks für die Gig-data-Visualisierung in der Python-Eco-Struktur, aber nur wenige von ihnen sind in der Lage, so überzeugende visuelle Ergebnisse zu liefern wie Tableau.

Tableau bietet einen dedizierten Python-Server namens TabPy, über den Benutzer Python-Code ad hoc aus der Ferne ausführen und die Ergebnisse als Tableau-Visualisierungen bereitstellen können.

A Tableau dashboard powered by Python

TabPy arbeitet als Dienst, ähnlich wie viele der Standard-Datenimportrouten in Tableau, wie z. B. SQL-basierte Quellen und Cloud-gehostete Daten. Der TabPy-Dienst wird normalerweise unter Windows über PIP in einer geklonten Repository-Instanz auf Anaconda installiert, kann aber auch über GitHub installiert werden.

Standard-Statistikfunktionen von TabPy

Eine Standardinstallation enthält mehrere vorgefertigte statistische Funktionen, darunter Density-based spatial clustering of applications with noise (DBSCAN), das Cluster auf der Grundlage der vom Benutzer definierten maximal zulässigen Differenz zwischen zwei Punkten berechnet, die sich einen Cluster teilen:

A Tableau graph created with TabPy
A Tableau graph created with TabPy

Im obigen Beispiel werden die Python-Daten lokal gespeichert. TabPy kann jedoch auch Python-Code aus der Ferne über den JupyTab-Server ausführen, der die Datenexploration über Jupyter-Notebooks ermöglicht. Dies bietet eine Desktop-Installation von Tableau mit Passthrough-Zugang zu einer leistungsstarken webbasierten Infrastruktur für maschinelles Lernen, einschließlich der beeindruckenden Rechenressourcen von AWS und Google.

Vorinstallierte Funktionen in einer Basisinstallation von Tableau umfassen Sentiment Analysis, T-Test, ANOVA und Principal Component Analysis (PCA).

Exploring a data map of Pokémon capabilities through Principal Component Analysis

Python-Skripte in Tableau Prep Builder

Mit dem Datenexplorationswerkzeug Tableau Prep Builder können Benutzer skriptbasierte Workflows für die Aufbereitung und Präsentation von Daten erstellen.

Tableau Prep Builder
Tableau Prep Builder

Prep Builder bietet seit 2019 Unterstützung für Python (und auch R). Im Falle von Python führt TabPy Datenoperationen transparent über Pandas-Datenrahmen durch.

Nach dem Hinzufügen eines Skriptschritts in Prep Builder wird der Schritt so konfiguriert, dass eine .py-Datei geöffnet wird, die eine Funktion aufruft. Nachdem die Funktion den Pandas-Datenrahmen erhalten und Aktionen darauf ausgeführt hat, wird ein neuer Datenrahmen zurückgegeben. Wenn der geänderte Frame andere oder zusätzliche Funktionen hat als der ursprünglich übergebene, muss der Skriptablauf eine get_output_schema-Funktion implementieren, um diese neuen Spaltennamen zu definieren, damit ihre Variablen im Workflow verwendet werden können.

Wir entwickeln Business-Intelligence-Systeme für Unternehmen

Kontakt

R-Integration mit Tableau

R ist eine Open-Source-Sprache für statistische Berechnungen, die sich in letzter Zeit von ihren Wurzeln in den 1970er Jahren zu einer der beliebtesten Plattformen für die Datenwissenschaft entwickelt hat. R ist spezialisiert auf Clustering, Zeitreihenanalyse, lineare und nichtlineare Modellierung und statistische Tests.

Auch wenn Python in den letzten zehn Jahren eine Vorreiterrolle in der Datenwissenschaft eingenommen hat, hat der Fokus von R auf die datenwissenschaftliche Analyse - der es unter anderem leichter erlernbar macht - seine Popularität seit dem Ausbruch von COVID-19 gesteigert. Dies wiederum hat dazu geführt, dass sich die Wissenschaft weltweit stärker auf die reine statistische Analyse und Theorie konzentriert.

Tableau bietet native Unterstützung für R in der Desktop- und Serverumgebung über vier Scripting-Funktionen:

  • SCRIPT_REAL
  • SCRIPT_STR
  • SCRIPT_INT
  • SCRIPT_BOOL

Wie Python lässt sich auch R gut mit Jupyter-Notebooks integrieren. Für die Zwecke von Tableau erfolgt die effizienteste Integration jedoch über einen lokalen Dienst, der einfach einzurichten ist. Tableau Desktop und Tableau Server müssen mit einer lokalen Installation des Rserve-Binärservers für R verbunden werden. Nach Abschluss der Integration ist es nun möglich, R-Daten in Tableau zu importieren.

Im folgenden Beispiel wird ein CSV-Datensatz in RStudio importiert und in eine Clustermap parametrisiert. Mit der gleichen CSV-Datei, die auch in Tableau Desktop importiert wurde, und mit der bereits hergestellten RServe-Verbindung wird eine der vier in Tableau nativen R-Kernfunktionen aufgerufen. Als Nächstes erstellt der Benutzer eine Visualisierung mit linearer Regressionsanpassung auf den importierten CSV-Daten über R. Diese beiden Elemente, der native CSV-Import und die mit R berechnete lineare Regressionsanpassung, werden in Tableau gezogen, um die überlegenen analytischen Fähigkeiten von R zu nutzen.

Im direkten Vergleich sehen wir, dass die Basisvisualisierungen der beiden Plattformen gleichwertig sind. Allerdings haben wir jetzt die Möglichkeit, eines der viel breiteren verfügbaren Stile in Tableau auf die von R abgeleiteten Daten anzuwenden. Alle verfügbaren Parameter können in Tableau dynamisch geändert werden. Wenn die Daten beispielsweise Datumsinformationen enthalten, können wir auf ein bestimmtes Jahr oder eine andere Zeiteinheit zoomen. Wir können die Daten auch partitionieren und Ausreißer entfernen.

Wenn die Kombination aus RServe und Tableau langfristig in einer Windows-Umgebung benötigt wird, ist es auch möglich, RServe als nativen Dienst zu installieren.

MATLAB-Integration mit Tableau

Die in den 1960er Jahren entwickelte Programmiersprache MATLAB ist sogar noch ehrwürdiger als R und hat sich seitdem zu einer proprietären Plattform entwickelt, die auf Matrixmanipulationen, Funktionsplot und Algorithmenentwicklung spezialisiert ist. MATLAB ist auch eine starke Umgebung für die Signalverarbeitung, Bildverarbeitung, computergestützte Biologie und Finanzmodellierung, neben anderen Bereichen.

Während MATLAB mit einer Vielzahl anderer Programmiersprachen und Entwicklungsplattformen verbunden werden kann, mangelt es der Dashboard-Ausgabe an Finesse - ein idealer Anwendungsfall für die Integration von Tableau/MATLAB.

MATLAB kann zur Lizenzauthentifizierung lokal auf einem PC mit Internetzugang installiert werden. Der MATLAB-Server ist zwar für eine vernetzte Umgebung konzipiert, kann aber bei Bedarf auch auf einem Offline-Linux- oder Windows-Rechner installiert werden.

Neben einer lokalen Installation des Production Servers für MATLAB sind eine Basisinstallation der MATLAB-Desktop-Umgebung sowie der MATLAB-Compiler und das Compiler-SDK erforderlich.

Für die Erstellung von Finanzberichten und -analysen bietet die MATLAB Financial Toolbox eine breite Palette statistischer Analyse- und mathematischer Modellierungsfunktionen, darunter Funktionen für die Zeitreihenanalyse (Time Series Analysis, TSA) und eine vollständige Palette von Modellen für stochastische Differentialgleichungen (Stochastic Differential Equation, SDE).

Die grafisch ansprechende Portfoliomodellierung ist eine der größten Stärken der Kombination von Tableau und MATLAB und bietet die Möglichkeit, datenreiche und interaktive Dashboards zu entwickeln, die es dem Benutzer erlauben, die Daten auf der Grundlage beliebiger Parameter, z. B. der Zeit, zu analysieren.

Exploring stock market indices in Tableau via MATLAB
Exploring stock market indices in Tableau via MATLAB

Neben besseren Visualisierungen und einer einfacheren Benutzeroberfläche kann die Verwendung von MATLAB über Tableau die Datenexploration beschleunigen. Der native Umgang mit Daten in MATLAB bietet dem Nutzer zwar mehr Flexibilität, erfordert aber auch mehr Code.

Einstein/Tableau CRM in Tableau

Im Oktober 2020, in Erwartung neuer Updates und tieferer Integrationen mit Tableau, wurde Einstein Analytics in 'Tableau CRM' umbenannt. Da Salesforce Einstein weiterhin "die übergreifende KI-Marke für Salesforce" bleibt, beziehen wir uns in diesem Abschnitt weiterhin auf "Einstein".

Die Einstein-Plattform, die 2017 als eigenständiger Service eingeführt wurde, bietet eine Suite von 36 Kategorien KI-fähiger Funktionen, wobei die Verfügbarkeit je nach Abonnementpreis unterschiedlich ist. Die Kernfunktionen des maschinellen Lernens werden im Großen und Ganzen durch Computer Vision, Erkennung natürlicher Sprache und automatische Spracherkennung abgedeckt.

  • Einstein Prediction Builder

Der Prediction Builder ermöglicht es Entwicklern und Administratoren, kundenspezifische Vorhersagemodelle über eine programmatische und vereinfachte Schnittstelle zu erstellen.

  • Einstein-Entdeckung

Discovery wendet verallgemeinerte statistische und analytische maschinelle Lernroutinen auf die CRM-Daten eines Kunden an, wiederum basierend auf benutzerdefinierten Anforderungen. Discovery konzentriert sich jedoch auf die Untersuchung aktueller Daten und nicht auf die Extrapolation von Trends zu Vorhersagen, wie es Prediction Builder tut.

  • Einstein Next Best Action

Next Best Action ist eine etwas flexiblere Version der beiden vorangegangenen assistentengestützten Workflows, mit größerer Kontrolle darüber, welche Kriterien angewandt werden, wo diese Informationen zur Verfügung stehen und mit einem Schwerpunkt auf hochentwickelten Business-Intelligence-Systemen.

Maschinelles Lernen in Einstein

Einstein Language führt eine Stimmungsanalyse für eine Vielzahl von Dokumenten innerhalb von Salesforce-Implementierungen durch und berechnet aus dem Inhalt, ob Korrespondenten und Kunden zufrieden oder unzufrieden sind, neben anderen prädiktiven Fähigkeiten. In Kombination mit benutzerdefinierten Warnhinweisen kann der Kunde so beginnenden Problemen, die in einer Geschäftsbeziehung auftreten können, zuvorkommen.

Die drei in Einstein Language verfügbaren APIs sind:

  • Einstein Sentiment

Auch für den externen Gebrauch verfügbar, bietet Sentiment Analysemodelle, die aus unstrukturiertem Text eine Bedeutung ableiten und eine 1-10 Bewertung für negative>positive Werte zuweisen können. Diese können als Auslöser für Skripte verwendet werden.

  • Einstein Intent

Einstein Intent ermöglicht es dem Benutzer, Datensätze zu Modellen zu trainieren, die in der Lage sind, die Kundenabsicht zu bewerten. Salesforce bietet eine Schnellstartanleitung anhand eines Beispiels zur Erstellung eines Modells für die Weiterleitung von Supportfällen.

  • Einstein NER (Named Entity Recognition)

NER ermöglicht es dem System, aus dem Strom der Text- und Medienanalyse eine eindeutige Entität zu definieren, wie z. B. "Zahlung", "E-Mail-Adresse" und "Kunde". Ohne Entitätserkennung wäre es nicht möglich, Beziehungen und Mengen für die maschinelle Analyse zu definieren.

Einstein Vision

Einstein Vision nutzt Algorithmen des maschinellen Lernens, um semantische und wörtliche Bedeutungen aus bildbasierten Inhalten zu extrahieren. Dies ermöglicht eine Vielzahl von Möglichkeiten, einschließlich Markenerkennung, visuelle Suche und Produktidentifizierung.

Neben anderen Funktionen erleichtert Einstein Vision die Objekterkennung, die optische Zeichenerkennung (OCR), mit der aus Bildtext durchsuchbarer Text erstellt werden kann, und die Bildklassifizierung, bei der der Benutzer entweder die allgemeinen Fähigkeiten des Systems nutzen oder ein Modell speziell für die Identifizierung einer Objektklasse (z. B. eines Markenzeichens) trainieren kann.

Einstein Vision bietet auch Beta-Unterstützung für PDFs, die eine besondere Herausforderung für die Ableitung von lesbarem Text darstellen, da optimierte PDF-Exporte oft den Zeichenfluss verfälschen und neu interpretieren, obwohl sie für den Benutzer lesbar erscheinen.

Verwendung von Einstein in Tableau

Seit der Veröffentlichung von Tableau 2021.1 im März 2021 ist die Einstein-Integration in der Tableau-Umgebung umfangreicher geworden, und weitere Integrationen und Funktionen sind für das Jahr 2021 versprochen.

Die derzeit verfügbaren Neuerungen umfassen:

  • Die Einstein Discovery Dashboard-Erweiterung, auf die über eine neue produktinterne Erweiterungsgalerie zugegriffen werden kann, die es dem Benutzer ermöglicht, hypothetische Szenarien interaktiv zu erforschen und Live-Vorhersagen in Arbeitsblätter einzubetten, mit Unterstützung für den Import von Massenvorhersagen für bis zu 50.000 Datenzeilen in einem Vorgang.
Configuring a model field mapping with the Einstein extension
  • Prep Builder-Unterstützung für prädiktive Einblicke und Bulk Scoring, wodurch Vorhersagen in einen Prep Builder-Workflow eingefügt werden können und historische Daten in die Berichterstattung über wahrscheinliche Ergebnisse einfließen können.
  • Quick LODs, die es einem Benutzer ermöglichen, eine Kennzahl auf einer Dimension abzulegen und sofort einen Level Of Detail (LOD)-Ausdruck zu berechnen.
  • Einstein-Integration mit der Tableau-Berechnungs-Engine, die eine neue Einstein Discovery-Verbindungsklasse für ein berechnetes Feld bereitstellt, die es ermöglicht, prädiktive Berechnungen per Drag & Drop in Tableau-Visualisierungen zu ziehen.

Zu den kommenden Funktionen für Tableau und Einstein gehören die Möglichkeit für Tableau Prep, direkt in Einstein Analytics zu schreiben; für Einstein, direkt in Tableau zu schreiben; die tiefe Erkundung von nativen Einstein-Daten durch Tableau-Abfragen auf CRM-Daten; und eine eventuelle Verschmelzung der beiden Plattformen zu einer transparenten und einheitlichen Erfahrung für den Endbenutzer.