Lesenswert: Algorithmen ... für Dummies

  • Lesenwert_Cover_GIT1018.jpgLesenwert_Cover_GIT1018.jpg
  • Lesenwert_Cover_GIT1018.jpg
  • John Mueller
  • Luca Massaron

3078 Jahre gibt es sie schon. Algorithmen wurden bereits von den Babyloniern eingesetzt. Und nein, daran ging das antike Reich nicht zugrunde. Obwohl das Thema auch viele moderne Menschen in Untergangsstimmung versetzt, gilt es doch nicht nur als kompliziert, sondern auch als äußerst einschläfernd. Es ist eben höhere Mathematik, was bekanntlich nicht jedermanns Sache ist.  Aber es gibt viele Studenten, die nicht um sie herumkommen. Diese stellen dann auch ganz schnell fest, dass auch die dazugehörigen Fachbücher erklärungsbedürftig und schwer verständlich sind. Die Autoren John Mueller und Luca Massaron sahen das genauso und wollten das Leben der vielen leidenden Studenten erleichtern und ein Buch schreiben, das das Thema verständlich erklärt. Auf das Ergebnis, von dem sie sagen, dass es das Buch ist, das man im bislang im Studium vergeblich gesucht hat, sind beide zu Recht stolz. Und sie versprechen: Dass die Funktionsweise von Algorithmen anhand von Programmiercodes gezeigt wird, die völlig ohne die sonst üblichen Hieroglyphen auskommen.

Über die Autoren

John Mueller ist freier Autor und technischer Redakteur. Er hat das Schreiben im Blut und bisher 110 Bücher sowie mehr als 600 Artikel publiziert. Die Themen reichen von der Vernetzung bis zur Künstlichen Intelligenz und vom Datenbankmanagement bis zu angewandter Programmierung. John war bei verschiedenen Zeitschriften technischer Redakteur, Berater und  hat Zertifizierungsprüfungen geschrieben.

Luca Massaron ist ein Datenwissenschaftler und Forschungsleiter, spezialisiert auf multivariate statistische Analyse, maschinelles Lernen und customer insight. Dabei hat er mehr als ein Jahrzehnt Erfahrung in der Lösung realer Probleme und der Generierung von Mehrwert für Stakeholder in Werbung, Energie und Versicherungswesen durch Anwendung von Argumentation, Statistik, Data Mining und Algorithmen.

Interview

GIT: Was ist Ihr Forschungsschwerpunkt, was ist Ihr wissenschaftliches Hauptinteresse?

JM: Ich bin hauptberuflich Autor von technischen Büchern. Ich mache auch technische Redaktion und schreibe Zertifizierungsprüfungen für eine Vielzahl von Themen.

Meine Beratung beschränkt sich auf kleine oder sehr interessante Projekte, in denen ich neue Dinge lerne, die ich in meinen Büchern anwenden kann. Während meiner Karriere habe ich mich mit allen möglichen technischen Themen beschäftigt - von Home Security und Near Field Communication (NFC) bis hin zu Datenbankmanagement und funktionaler Programmierung.
LM: Als Datenwissenschaftler bin ich generell an der Anwendung von Algorithmen auf reale Probleme interessiert, insbesondere an Algorithmen, die lernen können, Probleme zu lösen, indem sie Regeln aus nicht-experimentellen, unstrukturierten, verrauschten Daten extrahieren. Momentan interessiere ich mich für Algorithmen, die aus Daten lernen können, wenn p >> n (viel mehr Variablen als Beispiele).

GIT: Was war der Grund, das Buch zu schreiben?

JM: Viele Menschen finden Mathe schwer, weil sie nicht auf eine Weise erklärt wird, die sie verstehen können - die Diskussionen sind zu abstrakt. Wir wollten Erklärungen liefern, die in der realen Welt verankert sind, damit die Menschen Algorithmen leichter verstehen können. Darüber hinaus wollten wir die Geschichte hinter den Algorithmen mit einbeziehen, so dass Menschen, die Mathematik nicht als Abstraktion verstehen, sehen können, dass sie tatsächlich von echten Menschen erschaffen wurden, um reale Probleme zu lösen. Natürlich fangen viele Leute, die keine Mathematikprofis sind, an, Algorithmen zu verwenden, um mit den riesigen Datensätzen fertig zu werden, die sie erwerben, also ist es so wichtig, die Dinge so einfach wie möglich zu machen.
LM: Als Praktiker bemerkte ich, dass es eine große Lücke im Angebot von Büchern über Algorithmen gab: auf der einen Seite Bücher, die zu einfach waren, um nützlich zu sein, auf der anderen Seite vollwertige Lehrbücher für eingehende algorithmische Studien. John und ich waren uns einig, dass es an der Zeit war, eine solche Polarisierung zu durchbrechen, indem wir den meisten Büchern über Algorithmen einen vollständigen, aber dennoch zugänglichen Text anboten.

GIT: Was ist die Zielgruppe für das Buch?

JM: Dieses Buch ist für Leute gedacht, die High-End-Mathe in der Schule nicht mögen, aber plötzlich feststellen, dass sie es brauchen, um ihren Job zu behalten. Die Zielgruppe umfasst Datenanalysten und -manager (aus Vertrieb, Marketing, IT und anderen Geschäftsbereichen), die mit dem Übergang zu einem daten- und algorithmusgesteuerten Unternehmen konfrontiert sind. Das Publikum könnte jedoch alle möglichen anderen Leute umfassen - von Studenten bis hin zu Regierungsangestellten. Anstatt sich selbst zu verurteilen, die Abstraktionen zu verstehen, die normalerweise in anderen Büchern präsentiert werden, können sie dieses Buch verwenden, um zu verstehen, wie man Algorithmen einsetzt, um bestimmte Ziele der realen Welt zu erreichen. Indem dieses Buch die Algorithmen zu einer realen Welt macht, überwindet es eines der größten Probleme, die Menschen in Mathe hassen und die Algorithmen konkretisieren.
LM: Nicht nur die Anzahl der Menschen, die Algorithmen in ihrer täglichen Arbeit verwenden müssen, ist in den letzten Jahren gewachsen, sondern auch die Anzahl der Personen, die Algorithmen verstehen müssen. Wir dachten an ein großes Publikum, von Wissenschaftlern, Managern, bis hin zu Praktikern, die aus verschiedenen Gründen nicht in die mathematische Demonstration von Algorithmen eintauchen mussten, sondern einfach das Was, Wann und Wie einer guten Bandbreite verstehen mussten von Algorithmen, um sie richtig zu erkennen und zu benutzen.

GIT: Welches Wissen ist Voraussetzung für das Buch?

JM: Der Leser wird einige Grundlagen in Mathe benötigen - das Buch lehrt keine absoluten Grundlagen, die für ein einzelnes Buch unmöglich wären. Wir gehen auch davon aus, dass der Leser seinen Computer gut beherrscht - er weiß, wie er Aufgaben wie die Installation von Software und die Arbeit mit Anwendungen ausführt. Außerdem hilft es, wenn der Leser einige rudimentäre Programmiererfahrung hat. Sie müssen eine bestimmte Sprache nicht wirklich gut kennen, aber eine kleine Aufmerksamkeit lässt die Dinge schneller laufen.
LM: Das Buch erfordert einige Grundlagen in Mathematik (meist High-School-Mathe) und Computer-Programmierung. Da Learning by Doing ein Schlüsselmerkmal des Buches ist, ist das Programmieren in Python (oder die Lernbereitschaft, da es eine sehr zugängliche Programmiersprache ist) nützlich, um die im Buch vorgestellten Algorithmen vollständig zu verstehen: es erlaubt dem Benutzer, ihre eigenen zu erstellen Versionen der Algorithmen und testen sie auf einem Computer.

GIT: Wie ist die Struktur des Buches?

JM: Das Buch beginnt damit, dem Leser zu zeigen, was ein Algorithmus ist - wie er sich von anderen Arten von mathematischen Konstruktionen unterscheidet, die Nicht-Mathematiker oft verwirrend finden. Es hilft dem Leser auch, eine Testumgebung einzurichten, die wichtig ist, weil die meisten Menschen, die konkret denken, auch in einer praktischen Umgebung besser lernen. Das Buch untersucht dann einige sehr grundlegende Algorithmen, wie sie zum Suchen und Sortieren verwendet werden. Wir helfen dem Leser, die Verwendung von Grafiken zu erforschen. Auch hier erleichtert die Visualisierung der Daten das Lernen. Daher ist es für den ultimativen Lernerfolg unerlässlich, dass der Leser früh mit Graphiktechniken beginnt, dass Algorithmen nicht komplex sein müssen und dass sie wirklich nützlich sind. Wir entfernen uns jedoch nicht von komplexeren Themen, weil der Leser sie irgendwann wissen muss, um etwas Nützliches zu tun. Folglich untersucht das Buch Themen wie die Verwendung linearer Programmierung und Heuristiken (zumindest aus einer Übersichtsperspektive).
LM: Das Buch beginnt mit den Grundlagen dessen, was ein Algorithmus ist und wie man ihn benutzt und reale Probleme löst. Gleichzeitig stellen wir vor, wie Python als Umgebung zum Erstellen und Testen von Algorithmen verwendet werden kann. Nach den ersten einleitenden Kapiteln, die die Grundlagen von Algorithmen verdeutlichen und zugänglich machen, entwickeln wir Sortieralgorithmen, Graphalgorithmen, Algorithmen, die in der Big-Data-Analyse und Parallelverarbeitung verwendet werden. Das Buch schließt die schwierigsten, aber auch interessantesten Probleme der Algorithmen: dynamische Programmierung, randomisierte Algorithmen, lokale Suche und Heuristik, lineare Programmierung.

GIT: Welcher wissenschaftliche Bereich kann am meisten von der Verwendung von Algorithmen profitieren?

JM: Jedes wissenschaftliche Feld hat etwas von der Verwendung von Algorithmen zu gewinnen, weil ich nicht an ein einzelnes Feld denken kann, das vor den Auswirkungen von Big Data geschützt ist. Was passiert, ist, dass die Menschen Algorithmen anwenden müssen, die ihrem jeweiligen Beruf am besten entsprechen. Die Fähigkeit, Daten aus verschiedenen Perspektiven zu betrachten, wird schließlich Türen öffnen, die wir heute nicht einmal sehen können. So hat jedes wissenschaftliche Feld etwas zu gewinnen.
LM: Die Wissenschaft wächst durch Akkumulation, aber während wir Fortschritte machen, erkennen wir, dass wir unglaublich viel Wissen weitergeben müssen. Heutzutage muss ein Wissenschaftler ein Spezialist sein, aber Algorithmen können dazu beitragen, Informationen automatisch zu suchen, Wissen zu destillieren und mit steigenden Mengen experimenteller und nicht-experimenteller Daten umzugehen. Solche Probleme sind in jedem wissenschaftlichen Bereich üblich, und jeder wissenschaftliche Bereich kann von Algorithmen profitieren.

GIT: Ist die Gesellschaft ausreichend informiert über die Algorithmen in unserem täglichen Leben?

JM: Ich denke, dass die Gesellschaft im Allgemeinen bewusst ist, dass so etwas wie Algorithmen existieren, weil sie in den Filmen immer erwähnt werden. Filme wie Her und Ex-machina zeigen aber nur das, was die Filmstudios für Algorithmen halten. Unser Buch macht den Schritt, den Hype zu überwinden und den Leuten zu helfen, zu verstehen, was ein Algorithmus tatsächlich kann. Echte Algorithmen sind sowohl erstaunlicher als auch banaler, als uns die Filme glauben machen wollen. Obwohl die Gesellschaft Algorithmen kennt, glaube ich nicht, dass die Gesellschaft im Allgemeinen ein gutes Verständnis von ihnen hat.
LM: Wir leben in immer komplexeren Gesellschaften, in denen vieles unbewusst unter unseren Augen geschieht. Wir können einfach Vertrauen haben (wie der Soziologe Anthony Giddens erklärt, ist Vertrauen die Grundlage moderner Gesellschaften) und alles einfach so laufen lassen oder versuchen zu verstehen, wie die Dinge wirklich funktionieren und danach streben, sie dann noch besser zu machen (oder sie davor zu bewahren, dysfunktional zu werden). In unserem Buch diskutieren wir Algorithmen auch von einem historischen Standpunkt aus und wir erklären reale Anwendungen. Wir sind der Ansicht, dass die Gesellschaft Algorithmen und die Gründe und Modalitäten, in denen sie verwendet werden, nicht ignorieren sollte. Wenn auch nur ein kleiner Teil der Menschen dank des Buches mehr von Algorithmen versteht, können wir unsere Arbeit als Erfolg betrachten.

GIT: Was ist Ihrer Meinung nach das "nächste große Ding" in Algorithmen?

JM: Die Fähigkeit, immer größere Datenmengen schneller und präziser zu verarbeiten, wird eine ständige Verbesserung sein, aber ich denke, wir stehen kurz davor, sowohl die Präzision als auch die Verarbeitungsgeschwindigkeit deutlich zu verbessern. Der Fokus, den Paradigmen wie die funktionale Programmierung erhalten, gepaart mit der Verbesserung von Geräten wie dem NVidia Titan V (mit 5.120 CUDA-Kernen) wird es ermöglichen, detaillierte Analysen schnell genug durchzuführen, so dass die Ergebnisse von Bedeutung sind. Vieles von dem, was ich gerade lese, dreht sich um das Thema, dass man in kürzerer Zeit mehr tun muss, aber die Verbrauchertechnologien, die Unternehmen verkaufen wollen, um Geld zu verdienen, werden stark von einer deutlichen Verbesserung in diesem Bereich abhängen.
LM: Heutzutage gibt es einen großen Hype um künstliche Intelligenz, weil es eine Möglichkeit ist, viele Algorithmen zu integrieren und auf intelligente Weise viele Aufgaben zu automatisieren. Der Schwerpunkt liegt jedoch hauptsächlich auf Deep Learning, einer Reihe von Technologien (neuronale Netze und paralleles Rechnen), die auf die Mustererkennung spezialisiert sind. Die Fähigkeit, Bilder, Texte und Töne automatisch zu erkennen, ist nur ein Schritt zur intelligenteren künstlichen Intelligenz, denn der Kern des AI-Problems besteht immer noch darin, Konzepte zu abstrahieren und zu verallgemeinern. Ich glaube, das nächste große Ding in Algorithmen (es wird mindestens ein weiteres Jahrzehnt dauern) wird notwendigerweise im Bereich der Abstraktion allgemeiner Konzepte, der sogenannten symbolischen künstlichen Intelligenz, liegen.

Mueller, J. P. / Massaron, L .
Algorithmen für Dummies
2017.
Softcover
ISBN: 978-3-527-71381-3

Auch in elektronischen Formaten verfügbar!

Jetzt registrieren!

Die neusten Informationen direkt per Newsletter.

To prevent automated spam submissions leave this field empty.