Funktionales Deep Learning in Haskell - Teaser

Bei der Active Group entwickeln wir für Siemens eine App, die mithilfe Neuronaler Netze Anomalien in Produktionsprozessen erkennen soll. Während Python unbestritten die alles dominierende Sprache in Sachen Deep Learning ist, haben wir natürlich nach einer funktionaleren Lösung gesucht und sind dabei in Conal Elliots GHC-Plugin ConCat fündig geworden. Im ersten Teil dieser Reihe schauen wir uns an, warum ConCat eine attraktive Alternative zu gängigen Bibliotheken wie TensorFlow oder PyTorch ist, und geben einen ersten groben Einblick in die Funktionsweise von Deep Learning mit ConCat.1

Weiterlesen...

Startschuss für die BOB Konferenz 2023!

Am 17. März 2023 findet die BOB, unsere Konferenz über das Beste in der Softwareentwicklung, statt – diesmal (hoffentlich) endlich wieder in Berlin.

Die Keynote hält dieses Mal Yulia Startsev von Mozilla.

Der Call for Contributions läuft. Schicken Sie uns also (bis zum 21. November 2022) Ihren Vorschlag für einen Vortrag oder ein Tutorial - das Programmkomitee freut sich darauf!

Weiterlesen...

Eventverarbeitung mit Riemann

Riemann ist ein Stream-Processing-System, das sich hervorragend zum Sammeln und Verarbeiten von Events und Logs von Servern und Systemen eignet. Wir verwenden Riemann erfolgreich produktiv in sehr großen IT-Systemen als Kernstück für die Log- und Metrikverarbeitung und für das Monitoring.

Dabei nutzen wir Riemann zur Aufbereitung von Events und zum Weiterleiten an Langzeitspeichersysteme wie Elasticsearch, in denen diese Events wiederum durch Benutzeroberflächen wie Kibana komfortabel durchforstet werden können. Außerdem nutzen wir Riemann, um Metriken in Zeitreihendatenbanken wie InfluxDB zu schreiben; diese Zeitreihen können dann durch Benutzeroberflächen wie Grafana visualisiert werden oder können auch benutzt werden, um bei Fehlern und Problemen zu alarmieren.

Wir zeigen heute an einem Anwendungsbeispiel, wie man aus Logs mit Hilfe von Riemann Metriken extrahieren kann.

Weiterlesen...

Scala 3: Typ-Lambdas

Nach 8 Jahren, 28000 Commits und 7400 Pull-Requests war es am 14. Mai 2021 endlich so weit: Scala 3 wurde veröffentlicht. Neben dem neuen Compiler „Dotty“ haben es eine neue Syntax sowie einige Neuerungen an der Sprache in Scala 3 geschafft. In diesem Blogpost der Serie über interessante Neuerungen werden wir über Typ-Lambdas sprechen.

Weiterlesen...

Higher-Kinded Data für Konfigurationen in Haskell

Viele Anwendungen verwenden Konfigurationen, um ihr Verhalten zur Laufzeit zu beeinflussen. Die Parameter in diesen Konfigurationen können z. B. Standardwerte haben, die verwendet werden falls nichts anderes angegeben wird. Andere Werte, wie Passwörter, haben keine Standardwerte und müssen deshalb immer beim Start der Anwendung angegeben werden.

In diesem Artikel werden wir über mehrere Iterationen sehen, wie wir mit Higher-Kinded Data in Haskell, Konfigurationen in unseren Programmen abbilden können.

Weiterlesen...