{"word_count": 1072, "character_count": 7698}
In jüngerer Zeit kam die Berichterstattung über Algorithmen wieder auf die Tagesordnung und man ist fast versucht, als Tenor "Lasst, die ihr eintretet, alle Hoffnung fahren!" zu vernehmen: Die Welt ist beherrscht von einer weithin unbekannten Supermacht, die das Dasein jedes Einzelnen und das Zusammenleben aller durch unsichtbare Fäden aus dem Hintergrund lenkt.Da werden Frauen über ihr Konsumverhalten als schwanger kategorisiert, ehe sie sich dessen selbst bewusst werden. Da bekommen Lebensgemeinschaften keinen Kredit, weil sie am falschen Ende der Straße wohnen. Da plant ein Online-Versand, Kunden die gewünschten Waren zuzusenden, bevor sie überhaupt daran dachten, diese zu bestellen. Und das alles nur, weil da jemand die "richtige mathematische Formel" gefunden hat und in der Lage war, diese "auf einem Computer zu programmieren". Und jetzt sind die so geschaffenen Algorithmen dabei, sich von ihren Schöpfern loszusagen und die gesamte Menschheit bis zum Sankt Nimmerleinstag zu knechten.Der Zaubertrank: Deep LearningIch habe zunächst versucht, den Wahrheitsgehalt dieser Darstellungen in meinem Unwissen zu finden, was mir nicht sonderlich gut gelang. Sollten etwa die anderen doch nicht mit Wasser kochen und das, was ich so über das Thema weiß, überholtes Wissen sein? Ja, natürlich gibt es auf der einen Seite den Deep-Learning-Ansatz, der - salopp gesagt - irgendwie sowas wie die Architektur des menschlichen Gehirns auf einem künstlichen Rechnersystem nachbildet und das Ergebnis mit Beispielen füttert, auf dass es eigenständige Kategorisierungen vornehme. Ein solcher Ansatz benötigt allerdings auch in unserer Zeit schneller Desktop-PCs noch nicht-alltägliche Rechneranlagen, eine Menge Spezialisten für die Implementation und das Training neuronaler Netzwerke sowie eine hohe Frustrationstoleranz, weil relativ schwer analysierbar ist, was genau passiert und wie man Ergebnisse verbessern kann. Der Deep-Learning-Ansatz wird deswegen vor allem von großen Forschungseinrichtungen und Unternehmen eingesetzt, Google etwa hat Ray Kurzweil darauf angesetzt.Deep-Learning-Techniken eignen sich vor allem für Aufgaben, wo Muster erkannt werden müssen, die sich nicht oder nur schwer durch spezifische Merkmale beschreiben lassen. So werden sie z. B. die Spracherkennungssyteme von iOS und Andoid eingesetzt. Soweit ich das beurteilen kann, wird der Ansatz abgesehen davon in freier Wildbahn noch kaum angewendet, weil er einfach noch nicht gut genug modellierbar ist.Der Kochtopf mit Wasser: Maschinelles LernenRealweltszenarien, in denen Algorithmen eingesetzt werden, lassen sich fast alle durch Klassifikations- oder Gruppierungsproblem formulieren: Ist die Nutzerin schwanger oder nicht? Welche Kreditkonditionen bekommen die Kunden in der Gruppe, in die der potentielle Kreditnehmer eingeordnet wurde? Produkte welcher Warengruppe haben die anderen Käufer des Artikels noch erworben?  Ist der Autor des unbekannten Pamphlets Donald Rumsfeld oder der Una-Bomber? Will die Politikerin Europa - ja oder nein? Oder - wie in der Facebook-Studie damals - ist der Nutzer bzw. die Nutzerin heterosexuell oder irgendwas anderes (sic!)?Es ist hier nicht mein Punkt, welche der möglichen Anwendungsszenarien methodisch zweifelhaft oder gar ethisch verwerflich sind. Was gemacht werden kann, wird wahrscheinlich eh irgendwo durchgeführt werden, da habe ich wenig Illusionen. Mir geht es hier nur darum, aufzuzeigen, dass dort in den seltensten Fällen neue mathematische Formeln ersonnen werden, die dann irgendwer auf dem Computer programmiert. Vielmehr steht ein ganzer Werkzeugkasten bekannter Verfahren zur Klassifikation und Gruppierung (Clustering) von Objekten zur freien Verfügung. Theoretisch könnte sich also jede|r daran bedienen und für welche Typisierungen auch immer anwenden. Mit ein wenig Geduld kommt man auch mit so mächtigen Programmen wie WEKA zurecht (da bekommt man auch eine graphische Benutzeroberfläche). Oder man ist so verwegen und installiert sich die entsprechenden Pakete für R.Und schon ist man Data Scientist. Eigentlich, denn der Teufel liegt mal wieder ... in den Daten. Um Objekte zu klassifizieren, muss man sie zunächst durch Merkmale beschreiben, jedenfalls wenn man nicht einen solchen Zauber-Neuronalen-Netzwerk-Ansatz wie oben beschrieben verfolgt. Texte kann ich z.B. beschreiben über die Wörter, die sie enthalten; Menschen über ihre Augenfarbe, ihre Größe, ihr Geschlecht, ihren Wohnort oder eben über die Bücher, die sie bisher erworben haben. Oder ich kombiniere einfach mehrere Merkmale. Und gewichte sie dann möglicherweise unterschiedlich - Augenfarbe ist wichtig, Anzahl der Muttermale etwas weniger relevant. Was auch immer ich messen oder abzählen kann, ist als Merkmal verwendbar. Schwierig ist die Mischung von Merkmalen unterschiedlicher Skalenniveaus, aber auch das ist mit ein wenig Phantasie meist lösbar. Augenfarbe könnte etwa über RGB-Werte angegeben werden - dann hätte ich statt eines nominalskalierten Merkmals gleich drei verhältnisskalierte. Diesen Vorgang - die Zuordnung von Merkmalen zu Objekten - nennt man Feature Engineering. Am Ende dieses Schrittes hat man zu jedem Objekt, das man gruppieren oder klassifizieren möchte, eine Reihe von Zahlen. Und mit diesen Zahlen kann ich dann meinen Algorithmus füttern. Bei der Gruppierung gebe ich die Objekte einfach alle hinein und bekomme am Ende Gruppen (immer hinsichtlich der ausgewählten Merkmale) homogener Objekte zurück. Das nennt man auch unüberwachtes Lernverfahren, weil ich die ursprünglichen Objekte nicht vorklassifizieren musste, um sie in Gruppen einzuteilen.Ein weiteres bekanntes Verfahren ist das überwachter Art: Hierfür werden Trainingsobjekte benötigt, die bereit vor Anwendung des Algorithmus mit ihrer Klasse versehen sind (+/-schwanger, Text von Rumsfeld, Text vom Una-Bomber etc). Über diese Trainingsobjekte bildet sich der Algorithmus ein Modell, das er zu Rate zieht, wenn er weitere, nicht vorausgezeichnete Objekte zuweisen soll.Was ich eigentlich damit sagen willHinter dem was landläufig als Algorithmen bezeichnet wird, die einen immer größeren Einfluss auf unser Leben haben, verbergen sich meist maschinelle Lernverfahren. In denen steckt zwar ein wenig was an Mathematik drin, vor allem bei der Gewichtung von Merkmalen, bei der Distanzberechnung von Merkmalskombinationen und eben bei der Gruppierung oder Klassifikation. Dies sind aber in den meisten Fällen frei zugängliche Formeln oder gar fertige Implementationen, die über graphische Oberflächen von eigentlich jedem zu bedienen sind. Manche dieser Verfahren liefern für bestimmte Anwendungsfälle bessere, für andere wieder schlechtere Ergebnisse. Zumindest in meinem Bereich, der Computerlinguistik, lässt sich meist schwer voraussagen, welche der Kombinationen gut funktioniert. Man probiert halt einfach alle aus und schaut dann, welche am besten performt (ja, manchmal sind wir halt einfach Ingenieure).Mit das Wichtigste für die Funktion der Verfahren ist allerdings die Auswahl an Merkmalen, mit denen die Objekte beschrieben werden. Und anstatt darüber zu mosern, dass Algorithmen Entscheidungen für oder über uns treffen, sollte man vielleicht besser darauf drängen, offenzulegen, auf welcher Grundlage sie dies tun. Welche Merkmale erhebt die Schufa? Liest Amazon meine Cookie-History aus oder beruhen die Empfehlungen nur auf den Daten, die ich ihnen wissentlich gegeben habe? Vor allem: Kann ich das abschalten? Was der Algorithmus dann hinterher draus macht, kann ja auch mal hilfreich sein.[Hier ein leeres Versprechen denken, dass ich ein maschinelles Lernverfahren im umgehend folgenden Post an einem konkreten, aus dem Leben gegriffenen Beispiel vorführe][cite]