[NLP] Rasa

avatar Tobias Wochinger
avatar Nico Kreiling

Die dritte Folge zu NLP wird noch angewandter: Zu Gast ist Tobias Wochinger von Rasa, mit dem wir gemeinsam einen Chat-Bot entwickeln möchten. Moderne Chat-Bots finden bereits vielfältig Verwendung, sowohl für die Beantwortung von Support Anfragen oder auch für das Buchen von Reisen müssen Sie aber den Kontext der Unterhaltung verstehen und Querverbindungen zwischen Informationen ziehen. Ein Chat-Bot vereinigt so zahlreiche NLP Herausforderungen wie Named-Entity-Recognition, Dependency Parsing und Intent Classification. Ganz praktisch erklärt mir Tobias, wie ich mit Rasa Stories und Actions anlege, um einen Techtiefen Chatbot zu bauen, der etwa Folgen zu einem Thema heraussuchen und abspielen kann. Ansonsten vermittelt die Folge einiges an generellem Wissen zu Chat-Bots und dem Design natürlicher Konversationen.

Links:

[NLP] SpaCy

avatar Ines Montani
avatar Nico Kreiling

In der zweiten Podcastfolge der Reihe zu natürlicher Sprachverarbeitung ist Ines Montani zu Gast, Entwicklerin von SpaCy und Mitgründerin von Prodigy. Zunächst sprechen wir generell über den Umgang mit Sprache, warum dieser so komplex ist und wie die open source Bibliothek spaCy hier hilft. Dabei geht es um typische Aufgaben wie Part of Speech Tagging, Lemmatization und  Named Entity Recognition genauso wie um geeignete Einsatz-Szenarien in der Industrie. Des Weiteren gibt Ines Einblicke in ihre tägliche Arbeit am open source Tool und erklärt,  warum NLP Modelle auch ohne GPU trainierbar sein müssen und Prodigy kein Interesse an den Daten seiner Kunden hat. Letztlich geben wir einen Überblick über das wachsende spaCy Ökosystem, einen Rückblick auf die spaCy in Real Life Konferenz und Ines gewährt einen Ausblick in zukünftige Entwicklungen bei spaCy und Prodigy.

Links:

[NLP] Moderne Sprachverarbeitung

avatar Malte Pietsch
avatar Timo Möller
avatar Nico Kreiling

Malte Pietsch und Timo Möller sind zwei der drei Gründer des NLP Startups DeepSet. In Folge 19 besprechen wir gemeinsam die wesentlichen Grundlagen moderner Sprachverarbeitung. Bevor wir aber auf tiefe Neuronale Netzwerke und Bert eingehen, diskutieren wir einige der typischen Aufgaben wie Named-Entity-Recognition oder Text-Classification. Wir besprechen die Entwicklungen der letzten Jahre, die etwa Word-Embeddings, Attention basierte Algorithmen und Transformer hervorgebracht haben. Die beiden Gründer berichten aber auch von den Herausforderungen die sie bewältigt haben, als sie eine deutsche Variante des derzeit beliebten Bert-Netzwerks trainiert haben.

Links

#18 Fernerkundung mit multispektralen Satellitenbildern

avatar Jens Leitloff
avatar Felix M. Riese
avatar Nico Kreiling

Jens Leitloff und Felix Riese berichten in Folge 18 von ihrer Forschung am “Institut für Photogrammetrie und Fernerkundung” des Karlsruher Instituts für Technologie. Mit der Bestrebung Nachhaltigkeit zu stärken erforschen die beiden etwa Verfahren, um Wasserqualität anhand von Satellitenaufnahmen zu bewerten oder die Nutzung landwirtschaftlicher Flächen zu kartografieren. Hierfür kommen unterschiedlichste Verfahren zum Einsatz wie Radaraufnahmen oder multispektrale Bilddaten, die mehr als die drei von Menschen wahrnehmbaren Farbkanäle erfassen. Außerdem geht es um Drohnen, Satelliten und zahlreiche ML-Verfahren wie Transfer- und Aktive Learning. Persönliche Erfahrungen von Jens und Felix im Umgang mit unterschiedlichen Datenmengen runden eine thematisch Breite und anschauliche Folge ab.

Links:

#17 Distributed Tracing

avatar Christian Rohmann
avatar Nico Kreiling

In Folge 17 erklärt Christian Rohmann, warum distributed tracing das Debugging von komplexen Anwendungen vereinfacht. Erst entwickeln wir ein Verständnis für Spans und Traces, um dann am Beispiel einer Web-Applikation ins Detail von distributed Tracing zu gehen. Außerdem werfen wir einen Blick auf Bekannte Implementierungen wie Zipkin und Jaeger, sowie auf die beiden Standardisierungsinitiativen OpenTracing und OpenCensus.

#16 Kotlin

avatar Daniel Bälz
avatar Nico Kreiling

Folge 16 behandelt mit Kotlin mal wieder eine Programmiersprache. Daniel Bälz erklärt die Vorzüge der JVM-Sprache die mit Java kombiniert werden kann und first-class citizen für Android ist. Wir besprechen spannende Neuerungen wie Null-Safety und wie mit Kotlin nativer Betriebssystem-Code geschrieben werden kann. Außerdem erklären zahlreiche Sprach-Features die weit verbreitet sind, aber in Java bislang noch fehlten und jetzt mit Kotlin ermöglicht werden, etwa Default- und Named Arguments und Top-Level Functions.

Kotlin Doku

#15 Praktisches Machine Learning mit Python

avatar Dominik Geldmacher
avatar Jochen Wersdörfer
avatar Nico Kreiling

In Folge 15 sind Jochen und Dominik vom Python Podcast zu Gast um uns dem maschinellen Lernen zu widmen. Gemeinsam besprechen wir ganz konkret die notwendigen Schritte, um Nachrichtentexte automatisch Tags zuzuordnen. Einerseits diskutieren wir über das richtige Tooling im Python-Umfeld, etwa Jupyter Notebooks, PyData Tools wie numpy und pandas sowie unsere bevorzugten Plotting Bibliotheken. Nach einer ersten Datenanalyse besprechen wir den Umgang mit Null-Werten und wie man mit TF-IDF oder Word-Embeddings den Text vektorisiert. Wir diskutieren verschiedene Algorithmen aus der Scikit-Learn Bibliothek und erklären Pipelines und Hyper-Parameter Tuning. Abschließend überprüfen wir die Güte unserer Modelle anhand eines Klassifikations-Reports und streifen Themen Skalierung, Deep Learning und vieles mehr.

Links

#14 Linux

avatar Stefan Lengfeld
avatar Nico Kreiling

In Folge 14 geht es das erste Mal primär um Linux. Stefan Lengfeld erklärt die unterschiedlichen Bestandteile eines Linux Systems, vom Kernel bis zum Paketmanager. Wir klären etwa, welche Distribution sich für welches System eignet, welche Paket-Manager dazu gehören und warum es unterschiedliche Desktops gibt (KDE, GNOME). Im Detail besprechen wir den Boot Vorgang, etwa wo das BIOS endet, was der Kernel als erstes macht und worum sich der Streit zwischen den verschiedenen Init Systemen (initD, systemD, upstart) dreht. Wie in jeder Folge gehen wir aber auch auf praktische Entdeckungsreise, etwa durchsuchen wir mit htop die laufenden System Prozesse, erklären das Speichermanagement und diskutieren die Linux Dateistruktur.

Links:

#13 Data Engineering für Echtzeitdaten

avatar Dominik Benz
avatar Nico Kreiling

In Folge 13 dreht sich alles um große Datenmengen und ihre Verarbeitung. Dominik Benz erklärt wie Data Engineers Datenstrecken entwickeln und welchen Einfluss aktuelle Entwicklungen wie das Bestreben nach Echtzeitdaten, die DSGVO und Big Data haben. Wir erklären fachliche Grundlagen, wie den Unterschied zwischen System- und Processing Time sowie die Problematik und den Umgang mit den daraus resultierenden “Late Arrivals”. Außerdem widmen wir uns natürlich den wichtigsten Technologien des Big Data Kosmos wie etwa Apache Hadoop, ETL Tools wie Spark- und Nifi sowie dem Message Broker Apache Kafka.

Links: Roaring Elephants Podcast

#12 Security für Web Applikationen

avatar Clemens Hübner
avatar Nico Kreiling

Die erste Folge zum Themenkomplex Security fokussiert sich das Web: Clemens Hübner berichtet aus seinem Alltag als Security Engineer und gemeinsam besprechen wir die OWASP Top 10. Diese Bestenliste wird vom Open Web Application Security Projekt erstellt und bewertet Angriffsvektoren auf Web-Applikationen nach ihrer Gefahr: Von Injections über falsche Konfigurationen bis zu nicht ausreichenden Logging und Monitoring. Wir gehen auf alle Punkte ein, diskutieren in welchem Kontext sie auftreten und wie man sich am besten dagegen schützen kann.