Genau wie der erste Präsentationstag der useR! 2015, hatte auch der zweite Tag mit Präsentationen interessante Sessions mit Neuerungen für die R-Nutzer zu bieten.
Keynote: A Survey of Two Decades of Efforts to Build Interactive Graphics Capacity in R (Di Cook)
“R has been eighty-seven steps forward for data analysis but twelve steps backwards for interactive graphics“
Früh in ihrer Keynote ließ Di Cook diesen Satz fallen. Hintergrund sind ihre über 20 Jahre Erfahrung und das Wissen, dass mit dem Programm xLispStat welches in den 90er Jahren Verwendung fand, eine explorative Datenanalyse durch dynamische/interaktive Grafiken möglich war, die seit dem Wechsel der statistischen Community hin zu S und später R bilang nicht mehr erreicht wurde.
Im Folgenden gab Cook einen Rückblick auf die vergangenen Jahre und skizierte die Meilensteine die R gemacht hat, um in puncto interaktiver Grafiken das Niveau zu erreichen, welches heute vorhanden ist.
Wichtige Schritte waren hierbei die Pakete rgobi und cranvas. Interessanterweise wurden beide schon unter Beteiligung von Hadley Wickham entwickelt, welcher später mit ggplot eines der bekanntesten R Pakete entwickelt hat und derzeit unter anderem an ggvis arbeitet, mit Sicherheit eines der derzeit spannendsten Projekte hinsichtlich interaktiver Grafiken in R.
Neben ggvis, erwähnte Di Cook noch gridsvg und plotly als interessante aktuelle Pakete.
Zum Abschluss ihres Talks offenbarte Sie noch Ihre Wünsche an die aktuelle Entwicklergemeinde: Mehr Interaktivität in den Plots selber, Verlinkungen zwischen unterschiedlichen Grafiken und einen starken Bezug auf statistisches Model Fitting.
Während des Publikumsgesprächs kam noch die Frage auf, wie es denn um die Reproduzierbarkeit steht (ein auf dieser Konferenz prominentes Thema), wenn man mittels interaktiver Grafiken seine Modelle verfeinert. Laut Cook müssen hierfür die getätigten Schritte in einer interaktiven Umgebung aufgezeichnet und abgelegt werden können.
Session – Interactive Graphics
Hatte Di Cook noch in Ihrer Keynote die historische Entwicklung von interaktiven Grafiken in R erläutert, war es jetzt an der Zeit sich den aktuellen Stand zu vergegenwärtigen.
Das Paket gridSVG, in Cooks Vortag schon erwähnt, wurde in Michael Sachs‘ Vortrag „Interactive Graphics with ggplot2 and gridSVG“ im Hinblick auf die praktische Verwendung hin gezeigt. Mit gridSVG lassen sich ggplot Grafiken in ein SVG Objekt umwandeln. Mit D3 der beliebten Javascript Bibliothek zur Erstellung interaktiver Grafiken lassen sich im Folgenden die einzelnen Elemente der ggplot Grafik ansprechen und manipulieren. Diese Vorgehensweise ist unter anderem dadurch besonders ansprechend, da man sich bei der Erstellung von Grafiken nicht schon im Vorfeld entscheiden muss, ob man eine statische oder eine Interaktive Grafik erstellt. Man erstellt einfach in R eine statische ggplot Grafik und bearbeitet diese anschließend einfach noch mit Javascript um eine Interaktive Grafik zu erhalten.
In den Talks “Interactive Data Visualization using the Loon package” von Adrian Waddell und “New interactive visualization tools for exploring high dimensional data in R” von Wayne Oldford wurde schließlich Loon vorgestellt. Loon ist ein Framework, dass mit einem speziellen Paket von R angesteuert werden kann. Das Tool ist auf explorative Datenanalyse ausgerichtet. Der Name Loon stammt von einer Vogelart, die im deutschen Seetaucher genannt wird. Ein besonders passender Name, da die Entwickler Loon auch als ein Tool zum „Data diving“ bezeichnen.
Session – Kaleidoscope 4
Unter Predictive Analytics versteht man verschiedene statistische Techniken zur Prognose zukünftiger Entwicklungen oder Ereignisse, wie zum Beispiel Kundenentscheidungen, Maschinenausfälle oder Umsatzentwicklungen. In der Praxis stellt die Entwicklung eines leistungsfähigen Prognosemodells jedoch nur die halbe Miete dar. Selbst das beste Modell nutzt wenig, wenn es nicht schnell und kostengünstig in eine produktive Entwicklung eingebunden werden kann. Doch genau hier liegt häufig ein zentraler Knackpunkt: Technologien sind miteinander nicht kompatibel und müssen erst aufwendig harmonisiert werden, bevor ein Prognosemodell im Unternehmensalltag eingesetzt werden kann. Amitai Golub, Data Miner bei der Hamburger Onlinespieleschmiede InnoGames GmbH, hat in seinem Beitrag gezeigt, wie der Produktionszyklus von Big-Data-Analysen optimiert werden kann. Deutlich wurde dabei: Die Wahl der richtigen Technologien und Werkzeuge stellt die absolute Grundvoraussetzung für eine effiziente Implementierung von Predictive Analytics im Unternehmensalltag dar. R bietet hierfür beste Voraussetzungen, denn in Verbindung mit den Paketen rmr2, Rhdfs, plyrms und RHive können in R entwickelte Analysemodelle ohne weiteres in Hadoop-Architekturen implementiert werden.
Liegen große Datenmengen vor, kann das Sortieren der Daten mitunterunter sehr viel Zeit in Anspruch nehmen. Matt Dowle hat in seinem Vortrag die Vorteile des Radix-Algorithmus diskutiert. Mit diesem lassen sich viele Sortierungsoperationen, wie diverse Benchmarks zeigen, um ein vielfaches verkürzen. Derzeit ist Radix nur über Zusatzpakete wie data.table verfügbar, weswegen Dowle sich dafür ausspricht, den Algorithmus in base-R aufzunehmen.
Während es in Matt Dowles Vortrag nur am Rande um data.table ging, hat Arunkumar Srinivasan seinen Vortrag dazu genutzt die zentralen Vorteile des Pakets zu erläutern. Interessant ist data.table vor allem dann, wenn große Datenmengen aufbereitet, zusammengefasst oder zusammengeführt werden sollen. Aber auch bei kleinen Datenmengen stellt die simple und zugleich hochflexible Syntax eine interessante Alternative zu anderen Datenmangement-Paketen wie zum Beispiel dplyr dar.
Andrie de Vries von Revolution Analytics, inzwischen Teil von Microsoft, hat die Abhängigkeiten zwischen R-Paketen analysiert und damit ein interessantes Beispiel für die Potentiale der Netzwerkanalyse vorgestellt. Mit Hilfe von Werkzeugen wie dem Page-Rank-Algorithmus konnte de Vries zum Beispiel besonders wichtige Pakete innerhalb des CRAN-Universums identifizieren. Über verschiedene Clustering-Algorithmen konnte das Netzwerk aus weit über 6500 R-Paketen in mehrere Teilnetzwerke segmentiert werden.
A. Jonathan R. Godfrey hat sich einer Frage gewidmet, über die sich bisher leider wahrscheinlich nur die wenigsten R-User Gedanken gemacht haben: Wie kann der Output von R, seien es Statistiken oder Grafiken, auch blinden Nutzern zugänglich gemacht werden? Godfrey hat in seinem Vortrag verschiedene Ansätze vorgestellt, wobei es im Wesentlichen darum geht, den erhaltenen Output so zu verbalisieren, dass er einem blinden Nutzer zum Beispiel über eine Sprachausgabe-Software auditiv wiedergegeben werden kann.
Session – Kaleidoscope 6
Vestas ist der weltweit größte Hersteller von Windkraftanlagen. Sven Jesper Knudsen hat in seinem Vortrag gezeigt, wie das Unternehmen schon früh den Nutzen von Big Data, Condition Monitoring und Predictive Maintenance erkannt hat und erfolgreich dazu nutzt, Ausfälle zu prognostizieren und Kosteneinsparungen zu erzielen. So konnte zum Beispiel der Loss Production Factor von insgesamt 5% auf 1,5% gesenkt werden. Big Data spielt aber nicht nur bei der Wartung eine Rolle: Bereits bevor eine neue Windkraftanlage aufgestellt wird, können Klimamodelle dazu genutzt werden, den optimalen Standort finden.
Betrachtet man die Anzahl der R-Pakete, kann man schon seit mehreren Jahren ein exponentielles Wachstum beobachten. Waren es vor wenigen Jahren nur wenige hundert Einträge auf CRAN, nähern wir uns inzwischen der 7000 an. Um die Orientierung im CRAN-Universum zu erleichtern, wurde das Projekt METACRAN ins Leben gerufen. Gabor Csardi hat in seinem Vortrag die wichtigsten Ziele und Funktionen des Projekts erläutert. Hierzu zählen unter anderem eine Suchfunktion und eine API.
Der zweite Teil der Highlights vom dritten Konferenztag folgt.