Schlagwort-Archive: statistische Inferenz

Denkverbote für Star-Trek-Computer?

Zwei Jahre nach Datenkrake Google ist aus den damals noch unscharfen Gedanken mit Unterstützung meiner Kolleginnen Annika Selzer, Andreas Poller und Mark Bedner ein Artikel geworden: Denkverbote für Star-Trek-Computer?, Datenschutz und Datensicherheit – DuD 38(1), Januar 2014, DOI: 10.1007/s11623-014-0008-x. Abgeschlossen ist das Thema damit nicht, die Diskussion geht gerade erst richtig los.

Vor 30 Jahren definierte das Bundesverfassungsgericht im Volkszählungsurteil das Recht auf informationelle Selbstbestimmung und erklärte es zu einer Voraussetzung für Freiheit und Gemeinwohl. Die elektronische Datenverarbeitung (EDV), so nannte man die Informationstechnik damals, steckte noch tief im Manufakturzeitalter. Datenbanken ersetzten gerade die Karteischränke, das beschriebene und sortierte Papier. Wissenschaftler begannen, über künstliche Intelligenz nachzudenken, aber das war eine Zukunftsvision; der Spielfilm Computer Chess fängt die Stimmung jener Zeit ein.

Einerseits zeugt das Volkszählungsurteil von Weitsicht. Aus der Datenmanufaktur ist eine Datenindustrie geworden. Computer spielen heute nicht nur Schach auf Weltmeisterniveau, sie gewinnen auch im Fernsehquiz Jeopardy! Amazon, Netflix, Last.fm und viele andere Dienste empfehlen uns, was unserem Geschmack entspricht, und liegen damit häufig genug richtig um uns erfolgreich etwas zu verkaufen. Google ermittelt aus Suchanfragen die Ausbreitung von Grippewellen, wenn auch nicht ganz genau. Das Thema Datensammlung und Datenverarbeitung grundsätzlich anzugehen erweist sich im Nachhinein als richtig.

Denkverbote für Star-Trek-Computer? weiterlesen

Datenkrake Google (5/7): Daten besiegen die Logik

[InhaltTeil 1 Teil 2 – Teil 3 – Teil 4 – Teil 5 – Teil 6 (+Nachtrag) – Teil 7]

Die vorige Folge dieser Artikelserie behandelte die Frage, wie Maschinen lernen können. Diese Technik ist für Google ein zentrales und dienstübergreifendes Paradigma (freies PDF). Im Vorbeigehen bekommen wir damit eine Erklärung, warum die Metapher von Google+ als Facebook-Konkurrenz  nicht funktioniert (vgl. Teil 1). Facebook (der Dienst) ist für Facebook (die Firma) der Kern des Geschäftsmodells. Für Google dagegen ist maschinelles Lernen aus allen Daten dieser Welt der Kern des Geschäftsmodells – und Google+ vor allem eine weitere Quelle interessanter Daten. Wer interagiert wie mit wem? Welche Inhalte verbreiten sich in welchen Kreisen? Wie reagieren Nutzer auf personalisierte Suchergebnisse? Welche Transformationen durchläuft ein Gerücht? Welche Merkmale unterscheiden ein Mem von einem Shitstorm? Alleine die Liste der Fragen, zu denen man mit Googles Philosophie der Datenverarbeitung in Google+ nach Antworten suchen könnte, scheint endlos. Mit Facebook hat Google+ deshalb nur einige oberflächliche Funktionen gemeinsam, es dient aber – mutmaßlich – einem ganz anderen Zweck.

Künstliche Intelligenz, diesmal richtig

Doch funktioniert das überhaupt? Ist die KI nicht tot? Das ist sie, aber Google macht gerade keine klassische KI. Anfangs versuchte man in der KI, alle wesentlichen Aspekte eines Problems in nachvollziehbare Regeln zu fassen. Man versuchte also, Gehirne sich selbst beschreiben zu lassen. Das war ungefähr so schlau wie der Versuch, eine Turing-Maschine Aussagen über Turing-Maschinen machen zu lassen, aber irgendwo musste man ja anfangen und das Internet als reichhaltige Datenquelle gab es auch noch nicht.

Letztlich geht es auch im Google-Ansatz um Regeln, aber formuliert werden sie nun unter Verwendung aller verfügbaren Daten und ohne die Notwendigkeit, dass ein Mensch diese Regeln nachvollziehen kann. Dass dabei bessere Regeln herauskommen können als aus menschlichen Gehirnen, gerade wenn das Problem kompliziert ist, zeigt ein Beispiel aus der IT-Sicherheit.

Bozorgi et al. beschäftigen sich in ihrem Paper Beyond Heuristics: Learning to Classify Vulnerabilities and Predict Exploits (freies PDF) mit der Vorhersage der Exploit-Wahrscheinlichkeit aus Verweundbarkeitsmeldungen. Gefundene Verwundbarkeiten in Software dokumentiert die Security-Community in Datenbanken, zum Beispiel der CVE oder der OSVDB. Ein Bewertungsschema für Verwundbarkeiten ist der CVSS-Score, ein Wert zwischen 0 und 10, der die Schwere des Problems angibt. 10 ist ganz schlimm, 0 völlig harmlos. Dieser Score wird auf eine nachvollziehbare und sinnvoll erscheinende Weise aus einer Reihe von Parametern gebildet. Für eine gegebene Verwundbarkeit in einer Software oder in einem System kann man sich den Score aus einigen Einschätzungen zusammenklicken und das Ergebnis stimmt meistens mit der Intuition des Fachmanns überein.

Computer schlägt Experten

Man sollte meinen, dass dieser Wert einen Anhaltspunkt liefert, ob ein Security-Bug nach seiner Entdeckung auch für Angriffe ausgenutzt wird – die mit dem Score 10 oft, die mit dem Score 0 nie. Bozorgi et al. zeigen jedoch, dass der CVSS-Score darüber wenig voraussagt, und stellen dem ihm einen angelernte Klassifikatoren gegenüber. Diese Klassifikatoren benutzt die gesamte Verwundbarkeitsdokumentation und liefert weit bessere Vorhersagen darüber, ob und wie schnell eine Verwundbarkeit ausgenutzt wird oder nicht.

Der verwendete Merkmalsraum hat 93.578 Dimensionen, die meisten abgeleitet aus Textfeldern wie den Namen der betroffenen Produkte oder den Freitextbeschreibungen des jeweiligen Sicherheitsproblems. Viele Dimensionen sind binär und geben einfach an, ob bestimmte Worte, zum Beispiel Buffer, in bestimmten Teilen eines Berichts vorkommen. Klassifikator lernt Cluster für ausgenutzte sowie für nicht ausgenutzte Verwundbarkeiten. Nebenbei liefert dieser Klassifikator noch einen Score, der sich daraus ergibt, wie weit eine Verwundbarkeitsmeldung nach der Merkmalsextraktion von der Clustergrenze entfernt liegt. Was tief im Cluster liegt, ist den anderen Punkten dort sehr ähnlich; was nahe der Grenze liegt, könnte nach kleinen Änderungen auch auf der anderen Seite, im anderen Cluster landen.

Das wirkt alles ein wenig wie Zauberei. Im Grunde genommen tut Google aber nichts anderes als unser Gehirn, nur ohne den Filter unserer Sinnesorgane, ohne Abgleich mit Lehrbuchwissen und mit viel mehr Daten und Aspekten dieser Daten als uns normalerweise bewusst werden. Google lernt Sprachen – oder Expertenintuition – wie wir, nur schneller und ohne den Umweg über Übungen und explizite Regeln direkt aus Beispielen und Feedback. Und wir sind die Lehrer.

Im nächsten Artikel werden wir uns damit beschäftigen, wie man mit lernenden Maschinen Werbeeinblendungen optimiert.

Datenkrake Google (4/7): Lernende Maschinen

[InhaltTeil 1 Teil 2 – Teil 3 – Teil 4 – Teil 5 – Teil 6 (+Nachtrag) – Teil 7]

In der dritten Folge der Artikelserie haben wir betrachtet, dass Google aus Crowdsourcing und Statistik nützliche Funktionen und Dienste baut und dabei aus dem Netz und von seinen Nutzern lernt. Wie funktioniert dieses Lernen?

Eine globale Tankstelle

Stell Dir vor, wir wären die Tankstelle der Welt. Wir verkaufen jede Sorte Treibstoff, die jemals irgendwo entwickelt, benannt und angeboten wurde, jeweils an einer eigenen Zapfsäule. Bei uns tanken deutsche Autofahrer Diesel, Super und Super Plus, Spanier 95 sin plomo und gasóleo, Japaner Hai-oku und Keiyu, Ossis in alten Trabis ihr Zweitaktgemisch VK 88 1:33 und afghanische Taliban brennbare Flüssigkeit aus Fässern und Flaschen.

Unsere Tankstelle ist riesig und unübersichtlich. Wie schicken wir jeden Fahrer mit seinem jeweiligen Fahrzeug an die richtige Säule? Wir könnten unsere Kunden nach ihren Wünschen fragen, aber dazu müssten wir all ihre Sprachen sprechen. Manche Kunden wüssten auch gar nicht, was sie tanken wollen, weil sie gerade in einem geliehenen Fahrzeug sitzen oder weil sie vergesslich sind oder weil ihre robuste russische Technik alles schluckt, was flüssig ist und brennt.

Unsere Kunden hätten zudem unterschiedliche Präferenzen, die teils mit ihren Fahrzeugen zusammenhängen, teils aber auch nicht. Während Mutti ihren Kleinwagen immer genau so betanken möchte, wie es ihr der nette Mann in der Werkstatt schon dreimal aus gegebenem Anlass erklärt hat, ist das Verhalten von Top-Verkäufer Johannes E. komplizierter. Gewohnheitsmäßig kippt er Super++ in seinen Audi, geht eh‘ auf Spesenrechnung und man gönnt sich ja sonst nichts. Ist er aber spät dran und ein Kunde wartet, nimmt er die erstbeste freie Säule, an der er sein Auto nicht kaputtmacht. Dann ist 95 sin plomo eine Alternative zur Schlange an der Super++-Säule, das kennt er aus seinem Urlaub auf Mallorca. Wenn Du mit Johannes E. redest, wirst Du davon allerdings nichts erfahren, weil ihm das selbst nicht so bewusst ist. Seine Bedürfnisse zeigen sich erst, wenn Du sein Verhalten beobachtest. Seine Verhaltensmuster können sich übrigens jederzeit ändern, zum Beispiel weil Johannes E. die Firma und damit den Firmenwagen gewechselt hat. Plötzlich sitzt Johannes E. in einem Mercedes und ein anderer in seinem Audi.

Eine Datenbank hilft uns nicht

Eine klassische Datenbank hilft uns in dieser Situation wenig. Führen wir sie über Fahrzeuge oder Fahrezugtypen, verlieren wir die Fahrerpräferenzen; führen wir sie über Fahrer, bekommen wir deren Wechsel vom Diesel zum Erdgas nicht mit. Bilden wir Paare von Auto und Fahrer, haben wir lauter Spezialfälle in der Datenbank und scheitern jedesmal, wenn eine unbekannte Paarung vorfährt, etwa weil Johannes E. eine Panne hatte und heute einen Mietwagen betankt. Was wir stattdessen haben wollen, ist ein Klassifikator, der fast immer die richtige Entscheidung trifft und dabei vorhandene Informationen generalisiert. Außerdem möchten wir, dass sich unser Klassifikator anpasst, wenn sich die Welt verändert. Wir möchten ihm nicht jede Woche die neuesten Gerüchte aus der Auto BILD und deren Auswirkungen auf seine Tätigkeit einprogrammieren, das soll er schön selbst lernen.

Merkmalsextraktion

Solch einen Klassifikator können wir bauen, und wir können ihn lernfähig machen. Dazu überlegen wir uns zunächst, welche beobachtbaren Merkmale ein Auto nebst Fahrer hat: Farbe, Kennzeichen, Abmessungen, Motor- und Fahrgeräusche, Felgen- und Reifentyp, Anhängerkupplung, Dachgepäckträger, Sauberkeit, Anzahl der Türen, Spoiler, Spracheinstellung des Navigationssystems, eingestellter Radiosender; beim Fahrer Hautfarbe, Körpergröße, Haarschnitt, Gesichtsbehaarung, Kleidung, Gesichtsausdruck und so weiter. Wir sammeln also erst mal alle Merkmale ein, die wir messen können. Welche dieser Daten wir am Ende wirklich brauchen, wissen wir noch nicht genau, voraussichtlich von allen ein bisschen.

Jedes messbare Merkmal liefert uns eine Dimension in einem vieldimensionalen Raum. Fährt ein Auto an unserer Tankstelle vor, können wir es in allen Dimensionen messen und danach als Punkt in diesem Raum darstellen. Kleine Abweichungen, zum Beispiel durch den Wechsel von Winter- zu Sommereifen, führen zu kleinen Verschiebungen im Raum. Große Unterschiede, etwa zwischen Muttis Kleinwagen und Bennos Umzugslaster mit ihren jeweiligen Fahrern, führen zu großen Abständen.

Merkmalsraum in den Dimensionen Farbe und Länge mit Datenpunkten für einige Fahrzeuge. In Wirklichkeit würde man die Farbe als Hue/Saturation/Value darstellen und zur Länge noch die Breite und die Höhe nehmen. Das wären bereits sechs Dimensionen und immer noch ein vereinfachtes Modell.

Unser Klassifikator soll uns zu jeder Eingabe – einem Punkt im Raum, der unsere Messwerte zu einem Fahrzeug repräsentiert – eine oder mehrere wahrscheinlich passende Zapfsäulen ausgeben.

Feedback

Wenn unsere Kunden mitdenken und ohne Einweisung oder nach einer falschen Empfehlung selbständig eine für sie richtige Zapfsäule aufsuchen, können wir ihr Verhalten beobachten und daraus lernen. Jedesmal wenn jemand bei uns tankt, bekommen wir ein Datensample, einen Punkt im Raum und die für diesen Punkt richtige Entscheidung. Diese Samples sammeln wir sortiert nach richtigen Entscheidungen. Diese Sammlung könnten wir uns noch als Datenbank vorstellen, in der für jede Zapfsäule sämtliche Merkmale der dort beim Tanken gesehenen Auto-Fahrer-Paare hinterlegt sind. Das sind aber nur Rohdaten und wir werden gleich sehen, dass wir sie gar nicht auf Vorrat in einer Datenbank speichern müssen.

Automatische Verallgemeinerung

Unser Klassifikator soll diese Rohdaten generalisieren können, das heißt auch für solche Datenpunkte gute Entscheidungen treffen, für die bisher keine Beobachtungen vorliegen. Repräsentiert unser Datenraum alle oder die meisten für die Klassifikation relevanten Merkmale, so bilden die Rohdaten zu jeder möglichen Entscheidung einen Cluster: sie liegen näher beieinander als sie zu den Datenpunkten anderer Cluster liegen. In den Randbereichen kann es zu Überschneidungen kommen. Das liegt entweder an verrauschten Daten aufgrund von Messfehlern, oder an fehlenden Merkmalen. Beispielsweise könnten uns einige Parameter fehlen, die das Verhalten unseres Tankchaoten Johannes E. erklären würden, weil wir seinen Terminkalender nicht kennen.

Die maßgebliche Nachbarschaft zwichen den Datenpunkten eines Clusters besteht dabei oft nur in ausgewählten Merkmalsdimensionen, da nicht alle Merkmale gleichermaßen relevant sind. Welche Dimensionen das sind, kann sich von Cluster zu Cluster unterscheiden. Wir könnten an unserer Tankstelle zum Beispiel beobachten, dass rote deutsche Sportwagen fast immer Super tanken, während Lkw sowie silbergraue und schwarze Mittelklassewagen Diesel bevorzugen. Dieser Cluster ließe sich mit den Merkmalen Farbe und Größe recht genau beschreiben. Gleichzeitig könnten wir beobachten, dass Japaner unabhängig von Autotyp und Farbe stets die Säule Hai-oku bevorzugen, weil es ihnen als unhöflich gilt, öffentlich billigen Diesel zu tanken. Daraus ergibt sich wiederum für die anderen Cluster, dass dort das Merkmal Nationalität eine Rolle spielt, und sei es nur die, Japaner aus dem Cluster auszuschließen.

Repräsentanten für Cluster

Damit unser Klassifikator gut funktioniert, benötigt er Beschreibungen der einzelnen Cluster, ihrer Clustergrenzen und ggf. der Überschneidungen mehrerer Cluster. Um einen Datenpunkt zu klassifizieren, also eine Entscheidung zu treffen, müssen wir ihn dem passendsten Cluster zuordnen. Erweist sich eine Klassifikation als falsch, so wollen wir außerdem die betroffenen Clusterbeschreibungen anpassen, ohne uns jedoch von einzelnen Ausreißern unsere Statistik kaputtmachen zu lassen. Anstelle der Rohdaten im Datenbankformat verwendet man dafür Repräsentanten: für jeden Cluster bestimmt man einen Satz von Punkten, der diesen Cluster gut repräsentiert. Diese Repräsentanten liegen irgendwo zwischen den Rohdatenpunkten; ihre Anzahl ist in der Regel geringer.

Für das Beispiel von eben bekämen wir als Repräsentanten des Clusters zur Zapfsäule Hai-Oku gemittelte Erkennungsmerkmale japanischer Fahrer, für Super die gemittelten Merkmale von Sportwagen mit Fahrern, in deren Land Sportwagen Super tanken, und für Diesel gemittelte Merkmale von Lastern sowie von langweilig kolorierten Mittelklassewagen. Die Cluster können komplizierte Formen haben und müssen nicht zusammenhängen, deswegen mehrere Repräsentanten.

Repräsentanten der Klassen Diesel und Super im vereinfachten Merkmalsraum. Datenpunkte – durch Kreuze dargestellt – lassen sich anhand ihrer Entfernung zu den Repräsentanten einer Klasse zuordnen. Ein roter Kleinbus mit Anhänger würde an der Diesel-Säule landen.

Um einen neuen Datenpunkt zu klassifizieren, suchen wir uns den oder die n nächstgelegenen Repräsentanten zu diesem Punkt und bestimmt daraus die Wahrscheinlichkeit der Clusterzugehörigkeit. Wir schicken das Fahrzeug an die Zapfsäule, deren Cluster die höchste Wahrscheinlichkeit hat. Klasse (d.h. Zapfsäule) und  Wahrscheinlichkeit die Ausgaben des Klassifikators. Erweist sich die Entscheidung als falsch, analyisieren wir den Fehler und berechnen Korrekturen für die betroffenen Repräsentanten. Diese Korrekturen halten wir klein, Repräsentanten werden nur ein Stückchen in die richtige Richtung verschoben. Das macht unseren Klassifikator robust gegen einzelne statistische Ausreißer. Erst wenn systematische Fehler auftreten, akkumulieren sich viele gleichartige Korrekturen zu einer nennenswerten Verschiebung der Repräsentanten und Clustergrenzen. Beginnen können wir mit zufällig verteilten Repräsentanten; unser Klassifikator wird dann anfangs viele Fehler machen und schnell lernen.

Die Nutzerdaten werfen wir weg

Die ursprünglich erfassten Rohdaten, die gemessenen Merkmalswerte, können wir nach Verwendung wegwerfen. Dass Mutti beim Betanken ihres Kleinwagens immer eine Alditüte mit Einkäufen auf dem Beifahrersitz liegen hat, geht vielleicht als Merkmal in die Klassifikation ein – steht am Ende aber in keiner Datenbank. Wir brauchen diese Information nicht, unseren Klassifikator interessiert nur, ob der das Merkmal Alditüte berücksichten muss und falls ja, was es über die Clusterzugehörigkeit aussagt.

Wer genauer wissen möchte, wie statistische Inferenz und maschinelles Lernen funktioniert, und sich von Formeln nicht abschrecken lässt, findet im Buch Information Theory, Inference, and Learning Algorithms von David MacKay eine hervorragende und umfangreiche Einführung; das komplette Buch mit seinen 600 Seiten gibt es online als PDF-Datei. [Bevor Ihr jetzt anfangt zu drucken: die Amazon-Lieferung dauert auch nicht viel länger.]

In der nächsten Folge schauen wir uns die Leistungsfähigkeit und einige Implikationen dieses Ansatzes an.

Datenkrake Google (3/7): Statistisches Crowdsourcing

[InhaltTeil 1 Teil 2 – Teil 3 – Teil 4 – Teil 5 – Teil 6 (+Nachtrag) – Teil 7]

Im vorigen Teil dieser Serie haben wir uns einige mentale Modelle angeschaut, die genau wie viele unserer Datenschutzkonzepte von der Informationstechnik des vorigen Jahrhunderts ausgehen. Jetzt nähern wir uns der Realität von heute, zunächst anhand einiger Dienste und Funktionen, die in Sachen Privatsphäre weniger kritisch sind.

Strategische Position

Google sitzt auf der Content-Schicht in der Mitte des Netzes. Alle online veröffentlichten Informationen kommen dort vorbei, und das inzwischen sehr schnell. Obendrein bietet Google mit der Suche einen Dienst an, den fast jeder Internet-Nutzer verwendet. Und die Google-Suche muss mit verrauschten Informationen umgehen können, um aus der Datenhalde Internet jeweils die relevanten Informationen herauszufiltern. Google setzt dafür auf Statistik, auf maschinelles Lernen und auf Crowdsourcing. Das illustrieren Funktionen der Suche sowie der Dienst Google Translate.

Wie baut man eine Rechtschreibkorrektur oder eine Suchbegriff-Autocompletion, wenn man in Googles Position  ist? Wäre man Microsoft, würde man Wörterbücher und Grammatik-Engines in die Schachtel packen, in der man sein Office-Paket verkauft. Als Microsoft muss man alles vordenken, was der Nutzer jemals tun wird. Die einzigen Rückkanäle sind die Support-Hotline, gelegentliche Crash-Reports sowie der Markt. Ist man dagegen Google, so interagiert man bei jedem Tastendruck mit seinem Nutzer.

Homöopathisches Crowdsourcing

Darauf lassen sich Crowdsourcing-Modelle stützen. Crowdsourcing bedeutet in etwa andere arbeiten lassen. Das ist gar nicht so einfach wie es klingt. Verlangt man zu viel für zu wenig Gegenleistung, fühlen sich die anderen ausgenutzt und spielen nicht mit. Ein früher Versuch in dieser Richtung war Googles Image Labeler. Er verpackte das Finden von Schlagworten zu Bildern als Spiel – das schnell langweilig wurde. Am besten funktioniert andere arbeiten lassen, wenn die anderen damit gar keine Arbeit haben oder die Arbeit sowieso machen.

Eingabekorrekturen sind ein Beispiel. Wer sich vertippt und seinen Fehler bemerkt, der wird ihn korrigieren. Sind wir nun Google und haben wir einen interaktiven Kanal zu jedem einzelnen Internet-Nutzer, so bekommen wir täglich Millionen, vielleicht sogar Milliarden von Tippfehlern samt den zugehörigen Korrekturen frei Haus geliefert. Mit anderen Worten, Google erhält eine umfangreiche Tippfehler- und Korrekturstatistik über einen beachtlichen Teil der Weltbevölkerung. Der einzelne Fehler, die einzelne Korrektur oder auch das Profil eines einzelnen Nutzers sind dabei belanglos, während die Aggregation dieser Daten fast alles enthält, was man über Tippfehler und und ihre Berichtigungen wissen kann.

Wenn man Google ist, zapft man diese Datenquelle an und baut einen Mechanismus, der von den Nutzern lernt, wie Tippfehler zu korrigieren sind. [Das Teufelchen auf meiner linken Schulter unterbricht mich gerade und schlägt vor, einen Google-Korrektur-Flashmob zu organisieren, der Google einen falschen Korrekturvorschlag für Hommingberger Gepardenforelle antrainiert. Das Engelchen auf der rechten weint leise in einen Facepalm hinein.] Funktioniert so ein Mechanismus einmal, müssen wir uns um keine Rechtschreibreform mehr kümmern. Das übernehmen alles die Nutzer, indem sie sich ganz natürlich verhalten. Das ist etwas vereinfacht, weil Google außerdem auch noch das ganze Web kennt und auch daraus eine Menge über alle möglichen Sprachen lernen kann (freies PDF).

Welche Vervollständigungen für teilweise eingetippte Suchbegriffe in Frage kommen, können wir an Googles Stelle auf ähnliche Weise ermitteln. Wir beginnen mit einer Statistik über die eingegebenen Suchbegriffe und die Texte im Web und bieten Vervollständigungen an. Mit dem Nutzerfeedback – welche Vorschläge werden angeklickt? – verfeinern wir unser Modell. In diesem Fall ist es manchmal nützlich, zum Beispiel den ungefähren Aufenthaltsort des Nutzers genauer zu kennen, wie ihn die IP-Adresse oft verrät.

Von der EU lernen heißt Übersetzen lernen

Wie weit solche Ansätze der automatischen Sprachverarbeitung heute führen können, zeigt uns der Übersetzer Google Translate. Dessen Übersetzungen erfolgen nicht anhand von Regeln, die ein Programmierer vorgegeben hat. Das wäre die Microsoft-Methode für Firmen, die Software in Schachteln packen. Die Google-Methode funktioniert nach demselben Prinzip wie eben erläutert. Aus dem Web bekommt Google laufend Beispiele für Übersetzungen, etwa von der EU mit ihren 23 Arbeitssprachen, in die alle offiziellen Dokumente übersetzt werden. Diese Übersetzungen stammen von Menschen; Google lässt daraus Maschinen lernen.

Weil das alleine noch recht fehleranfällig ist, berücksichtigt Google wieder auch das Feedback von seinen Benutzern. Sie können für die Übersetzung einzelner Wörter oder Wortgruppen zwischen Alternativen wählen, eigene Korrekturen eingeben und die Übersetzung insgesamt bewerten:

Die Korrekturen und Bewertungen liefern Google auch hier eine Statistik zur Optimierung.

Verhaltensforschung ohne Privacy-Problem

Um solche Funktionen und Dienste realisieren zu können, muss Google seine Nutzer ein wenig beobachten. Google benötigt eine Aufzeichnung der Nutzerinteraktion über einen Nutzungskontext hinweg, der sich über eine Folge von Klicks (Nutzersicht) oder HTTP-Requests (Googlesicht) erstreckt. Informationen über den Nutzer als Person sind Google dabei egal, das beobachtete Nutzerverhalten liefert lediglich Datenpunkte für eine Statistik über die gesamte Nutzerpopulation. Google möchte an dieser Stelle nicht wissen, wer wir sind oder wofür wir uns interessieren, sondern welche Verhaltensweisen häufig und welche selten vorkommen.

Unerwünschte Nebenwirkungen, zum Beispiel das Erstellen persönlicher Rechtschreibprofile beim Dienstanbieter, sind nicht per se ausgeschlossen. Sie sind nur uninteressant und lassen sich durch mittlere Sorgfalt im Umgang mit Daten recht zuverlässig vermeiden. Unterwegs besteht noch das Risiko einer Datenverkehrsanalyse, aus der jemand  trotz Verschlüsselung Rückschlüsse auf Eingaben ziehen könnte, aber das ist ein (kleines) inhärentes Risiko des Netzes, dafür kann Google nichts. Sollte so etwas als Angriffsszenario praktisch relevant werden, ließe es sich zudem technisch verhindern.

Google baut also Dienste, die mit implizitem Feedback aus dem statistischen Nutzerverhalten optimiert werden. In der nächsten Folge werden wir noch etwas tiefer in die Welt der lernenden Maschinen eintauchen. Es wird dann darum gehen, wie eine Maschine überhaupt lernen kann. Keine Angst, Formeln gibt es keine.