Hallo, ich bin Christian Rudder und ich bin Mitbegründer von OKCupid. Heute ist es eine der größten Dating-Sites in den USA. Wie fast jeder dort habe ich Mathe studiert und erwartungsgemäß sind wir für unseren analytischen Ansatz zur Liebe bekannt. Wir nennen es unseren Treffer-Algorithmus. OKCupids Treffer-Algorithmus hilft uns bei der Entscheidung, ob zwei Leute sich verabreden sollten. Darauf haben wir unser ganzes Geschäft aufgebaut. "Algorithmus" klingt hochtrabend, und Leute meinen, es sei eine große Sache, aber in Wahrheit ist es nur ein Konzept, wie man Schritt für Schritt ein Problem lösen kann. Er muss gar nicht hochtrabend sein. Ich werde jetzt erklären, wie wir auf unseren speziellen Algorithmus gekommen sind, damit ihr seht, wie das funktioniert. Warum sind Algorithmen überhaupt wichtig? Warum gibt es diese Lektion überhaupt? Vorhin habe ich einen wichtigen Satz gesagt: Mit ihnen kann man Schritt für Schritt ein Problem lösen, und bekanntermaßen sind Computer dabei einsame Spitze. Ein Computer ohne Algorithmus ist im Grunde ein teurer Briefbeschwerer. Da Computer in unserem Leben allgegenwärtig sind, sind es auch Algorithmen. Die Mathematik hinter OKCupids Treffer-Algorithmus ist überraschend einfach. Es sind nur ein paar Additionen, Multiplikationen und ein paar Quadratwurzeln. Die Herausforderung dabei war, herauszufinden, wie man etwas Geheimnisvolles – menschliche Anziehungskraft – für einen Computer in "mundgerechte " Stücke aufsplitten kann. Zunächst brauchten wir Daten, um Menschen zusammen zu bringen. Etwas, womit der Algorithmus arbeiten kann. Am schnellsten bekommt man Daten von Menschen, wenn man einfach darum bittet. Wir beschlossen, dass OKCupid Anwender einfach fragen sollte, z. B. "Willst du einmal Kinder haben?" und "Wie oft putzt du deine Zähne?", "Magst du unheimliche Filme?" und große Fragen wie "Glaubst du an Gott?" Viele dieser Fragen eignen sich gut dafür, ähnliche Menschen zusammenzuführen, das heißt, wenn Menschen die gleichen Antworten geben. Wenn z. B. alle beide unheimliche Filme mögen, passen sie vielleicht besser zusammen als zwei Menschen, von denen sie nur einer mag. Aber was ist z. B. mit Fragen wie: "Stehst du gerne im Mittelpunkt?" Wenn beide Partner dies bejahen, dann werden sie massive Probleme haben. Das haben wir schnell bemerkt, also wollten wir zu jeder Frage weitere Daten haben. Wir baten Menschen, nicht nur ihre eigene Antwort zu geben, sondern auch die Antwort, die sie sich vom anderen wünschen. Das funktionierte sehr gut, aber wir benötigten eine weitere Dimension. Manche Fragen verraten mehr über einen Menschen als andere. Eine Frage über Politik wie "Was ist schlimmer: Bücher oder Flaggen zu verbrennen?" kann mehr über jemanden verraten als sein Filmgeschmack. Es ist auch sinnlos, alles gleich zu gewichten, also haben wir noch etwas hinzugefügt. Bei jeder Frage von OKCupid kannst du angeben, welche Rolle sie in deinem Leben spielt, auf einer Skala von "unwichtig" bis "ein Muss". Bei jeder Frage erhalten wir 3 Dinge für unseren Algorithmus: Erstens, deine Antwort, zweitens, wie jemand anders – der potentielle Treffer – antworten soll; und drittens, wie wichtig dir die Frage überhaupt ist. Mit diesen Informationen kann OKCupid einschätzen, wie gut zwei Menschen zusammenpassen. Der Algorithmus rechnet und liefert ein Ergebnis. Ein praktisches Beispiel: Schauen wir uns an, wie wir für dich einen Treffer – sagen wir "B" – finden. Die Trefferquote mit B basiert auf Fragen, die ihr beide beantwortet habt. Nennen wir die Gruppe gemeinsamer Fragen "s". Als einfaches Beispiel verwenden wir ein kleines "s" bei nur 2 gleichen Fragen und suchen nach einer Trefferquote. Hier sind zwei Beispielfragen: Erstens: "Wie unordentlich bist du?" und die Antwortmöglichkeiten sind: sehr unordentlich, durchschnittlich, und sehr organisiert. Angenommen, du sagst: "Sehr organisiert", und möchtest, dass der andere "sehr organisiert" antwortet und die Frage ist dir sehr wichtig. Weil du ein Sauberkeitsfanatiker bist. Du bist sauber, der andere soll es auch sein, fertig. Sagen wir, B ist ein bisschen anders. Er antwortet selbst "sehr organisiert", aber "durchschnittlich" ist als Antwort von jemand anderem für ihn ok, und die Frage ist ihm nicht sehr wichtig. Schauen wir uns die 2. Frage aus unserem vorigen Beispiel an: "Stehst du gerne im Mittelpunkt?" Die Antworten lauten ja und nein. Du hast "nein" geantwortet, der andere soll auch "nein" sagen, und die Frage ist dir nicht sehr wichtig. B antwortet "ja", der andere soll "nein" sagen, weil er im Rampenlicht stehen will, und die Frage ist ihm einigermaßen wichtig. Rechnen wir das jetzt durch. Als ersten Schritt – weil wir dafür Computer verwenden – müssen wir Zahlenwerte mit Vorstellungen wie "einigermaßen wichtig" und "sehr wichtig" verbinden, weil Computer alles in Zahlen brauchen. Bei OKCupid haben wir uns wie folgt entschieden: 0 ist "unwichtig", 1 ist "ein wenig wichtig", "einigermaßen wichtig" ist 10, "sehr wichtig" ist 50, und "ein Muss" ist 250. Der Algorithmus macht dann zwei einfache Rechnungen. Die erste ist: Wie sehr bist du mit Bs Antwort zufrieden, das heißt, wie viele mögliche Punkte hat B auf deiner Skala erzielt? Du hast gesagt, dass Bs Antwort auf die erste Frage nach der Sauberkeit für dich sehr wichtig ist. Das sind 50 Punkte, und B hat richtig geantwortet. Die zweite Frage erreicht nur 1, weil du gesagt hast, es ist nicht sehr wichtig und B hat falsch geantwortet. B hat also 50 von 51 möglichen Punkten erzielt. Das bedeutet zu 98% zufriedenstellend. Das ist ganz gut. Die zweite Frage des Algorithmus betrifft Bs Zufriedenheit mit dir. B vergab 1 Punkt auf deine Antwort bezüglich der Sauberkeit und 10 auf deine zweite Antwort. Von diesen 11 Punkten – das sind 1 plus 10 – hast du 10 bekommen. Bei der 2. Frage waren beide mit der Antwort zufrieden. deine 10 Punkte von 11 liefern 91% Zufriedenheit bei B. Das ist nicht übel. Im letzten Schritt nehmen wir diese beiden Prozentsätze und basteln daraus eine Zahl für euch beide. Dazu multipliziert der Algorithmus eure Punkte, zieht die n-te Wurzel daraus, n ist die Anzahl der Fragen. Denn "s" – die Anzahl der Fragen – hier ist nur 2, und unsere Trefferquote ist die Quadratwurzel aus 98% mal 91%. Das ergibt 94%. Deine Trefferquote mit B liegt bei 94%. So drückt die Mathematik aus, wie glücklich ihr miteinander auf Grundlage unserer Informationen wärt. Warum multipliziert der Algorithmus, anstatt den Durchschnitt der beiden Ergebnisse insgesamt und die Quadratwurzel auszurechnen? Diese Formel nennt man den geometrischen Mittelwert. Damit kann man sehr gut Werte miteinander kombinieren, die eine große Spannweite haben und ganz verschiedene Eigenschaften darstellen. Anders gesagt, ist es für romantische Treffer perfekt. Es gibt eine große Spannweite und Unmengen verschiedener Datenpunkte, wie z. B. über Filme, Politik, Religion, über alles. Auch intuitiv ist das sinnvoll. Zwei Menschen mit gegenseitig 50% Zufriedenheit sollten besser zusammenpassen als zwei andere mit einer Zufriedenheit von 0 und 100, weil Zuneigung beiderseitig sein muss. Nach einer kleinen Korrektur für Fehlerspielräume, falls wir nur sehr wenige Fragen haben, wie hier in diesem Beispiel, können wir loslegen. Jedesmal, wenn OKCupid zwei Menschen zusammenführt, werden alle angesprochenen Schritte durchgegangen. Zuerst werden Daten über deine Antworten gesammelt, danach deine Wünsche und Vorlieben mit anderen Menschen auf einfache, mathematische Weise verglichen. Diese Fähigkeit, Phänomene der realen Welt in etwas umzuwandeln, das ein Mikrochip verstehen kann, ist meiner Meinung nach die wichtigste Fähigkeit, die jemand heutzutage haben kann. So wie du Sätze verwendest, um jemandem eine Geschichte zu erzählen, verwendet man Algorithmen, um einem Computer eine Geschichte zu erzählen. Wenn du die Sprache erlernen kannst, kannst du der Welt deine Geschichten erzählen. Dies wird dir hoffentlich dabei helfen.