Bună, mă numesc Christian Rudder, și am fost unul dintre fondatorii OK Cupid. E printre cele mai mari site-uri de dating din SUA. Ca mai toți de la site, am terminat matematica și cum deja știți, suntem faimoși pentru viziunea analitică asupra iubirii. Îl numim algoritmul potrivirii. Algoritmul Ok Cupid ne ajută să aflăm dacă doi oameni ar putea ieși la o întâlnire. Întreaga noastră afacere se bazează pe el. „Algoritm" e un termen pretențios, iar oamenii îl folosesc ca pe ceva important, însă, de fapt, un algoritm e doar o cale sistematică de a rezolva o problemă. Nu are de ce să fie pretențios. În această lecție voi explica cum am creat și cum folosim acest algoritm special. Care e importanța algoritmilor? De ce există de fapt? Rețineți una dintre frazele folosite anterior: sunt căi sistematice spre rezolvarea unei probleme, și, după cum știți, calculatoarele excelează la astfel de procese. Un computer fără algoritm e practic un teanc de hârtii costisitor. Și cum aceasta sunt esențiale vieții de zi cu zi, algoritmii sunt pretutindeni. Matematica folosită de algoritmul nostru e surprinzător de simplă. Constă în adunare, înmulțire și câteva operații cu radicali. Dificultatea întâlnită la construirea lui a constat în felul în care ceva misterios, ca atracția umană, poate fi transformată în ceva procesat de calculatoare. Întâi am avut nevoie de date pentru a potrivi oamenii, ce erau apoi prelucrate de algoritm. Cel mai bun mod de a le obține de la oameni e pur și simplu să întrebi. Am decis ca OK Cupid să pună întrebări utilizatorilor precum, „Vă doriți copii într-o bună zi?" „De câte ori vă spălați pe dinți?" „Vă plac filmele de groază?" și lucruri mai importante precum „Credeți în Dumnezeu?" Majoritatea întrebărilor ajută la găsirea similarităților când două persoane răspund la fel. Astfel, doi oameni cărora le plac filmele de groază ar fi un cuplu mai bun decât cineva căruia-i plac și altcineva căruia îi displac. Dar cu întrebări ca „Doriți să fiți în centrul atenției?" Dacă ambii parteneri răspund da, atunci s-ar putea să aibă mari probleme. Am realizat asta din timp și am decis că aveam nevoie de mai multe detalii la fiecare întrebare. Am rugat oamenii să specifice nu doar propriul răspuns, ci și cel dorit de la partener. A funcționat bine, dar aveam nevoie de încă o dimensiune. Unele întrebări oferă mai multe detalii decât altele. De exemplu, o întrebare legată de politică precum: „Ce e mai rău, incendierea cărților sau cea a drapelului?" poate dezvălui mai mult decât gustul cuiva în filme. Cum nu toate lucrurile pot fi evaluate la fel, am adăugat un aspect final datelor. Pentru toate întrebările de la OK Cupid, puteți specifica rolul acestora în viața dumneavoastră, de la irelevant la obligatoriu. Deci la fiecare întrebare, algoritmul dispune acum de trei lucruri: răspunsul dumneavoastră; apoi, cum doriți ca posibila pereche să răspundă, și, în final, importanța întrebării pentru dumneavoastră. Cu aceste informații, OK Cupid poate stabili dacă doi oameni se potrivesc. Algoritmul preschimbă numerele în rezultate. Uitați un exemplu practic: să vedem cum putem să vă potrivim cu o altă persoană, să zicem B. Rata compatibilității cu B depinde de întrebările răspunse în comun. Să le spunem întrebărilor comune „s". Într-un exemplu simplu, folosim un set „s" limitat, cu doar două întrebări în comun, după care vom calcula compatibilitatea. Uitați cele două întrebări exemplu. Să zicem că prima e: „Cât de dezordonat sunteți?" iar răspunsurile posibile sunt: foarte dezordonat, acceptabil și foarte organizat. Să zicem că ați răspuns „foarte organizat" și doriți pe altcineva cu același răspuns, iar întrebarea e foarte importantă pentru dumneavoastră. Adică sunteți foarte îngrijit. Sunteți îngrijit, și doriți ca și celălalt să fie așa. Să spunem că B e puțin diferit. Deși a răspuns foarte organizat, „acceptabil” e tot un răspuns bun și întrebarea e puțin relevantă pentru el. să ne uităm la a doua întrebare, cea din exemplul anterior: „Vă place să fiți în centrul atenției?" Răspunsurile pot fi doar da sau nu. Ați răspuns „nu", doriți ca și celălalt să răspundă „nu", iar întrebarea e doar puțin importantă. B a răspuns „da", vrea ca celălalt să răspundă „nu", astfel ca el să fie în centrul atenției, iar întrebarea e destul de importantă pentru el. Să calculăm toate acestea. Primul pas este, devreme ce folosim calculatoare, să atribuim valori numerice ideilor ca „destul de important" și „foarte important", deoarece calculatoarele pot procesa doar cifre. Aici, la OK Cupid, am ales următoarea scală: „irelevant" are valoarea 0, „puțin important" valorează 1, „destul de important" valorează 10, „foarte important" înseamnă 50 și „obligatoriu" 250. Apoi, algoritmul efectuează două operații simple. Prima calculează în ce măsură v-a mulțumit răspunsul lui B, adică, numărul posibil de puncte obținut de B pe scala dumneavoastră. Ați menționat că răspunsul dat de B la prima întrebare legată de dezordine contează foarte mult. Valorează deci 50 de puncte și B a răspuns corect. A doua întrebare valorează doar 1, fiind puțin importantă, iar B a răspuns greșit. Deci răspunsurile lui B valorează 50 de puncte din 51. Sau satisfacție de 98%. Destul de bine. A doua întrebare verificată de algoritm e cât de mult l-ați mulțumit pe B. Pentru B răspunsul la prima întrebare valorează un punct și 10 la cea de-a doua. Din cele 11 puncte, adică 1 plus 10, ați obținut 10, mulțumindu-vă reciproc la a doua întrebare. Răspunsurile date au obținut 10 din 11, adică 91% satisfacție pentru B. Nu e deloc rău. La urmă se obține un singur număr pentru ambii parteneri din cele două procentaje. Pentru asta, algoritmul vă înmulțește scorurile, apoi extrage un radical de ordin n, unde n înseamnă numărul întrebărilor. Deoarece s, sau numărul întrebărilor, din acest exemplu e doar 2, scorul final va însemna rădăcina pătrată din 98% înmulțit cu 91%. Adică 94%. Acel 94% semnifică compatibilitatea cu B. Sau expresia matematică a fericirii determinată de ceea ce cunoaștem deja. De ce folosim înmulțirea și nu extragem radical din media celor două punctaje? Formula se numește medie geometrică, un mod bun de a combina valori numerice extinse reprezentând proprietăți diferite. Ideală pentru compatibilitatea romantică. Aveți mulțimi variate și tone de informații despre filme, politică, religie, practic despre orice. Acest lucru se înțelege chiar și intuitiv. Când doi oameni se satisfac 50%, aceștia ar face un cuplu mai bun decât doi oameni ce se satisfac în materie de 0, respectiv 100%, fiindca iubirea trebuie împărtășită. Mai adăugăm o mică corecție marginii de eroare, dacă avem, să zicem, un număr mic de întrebări, ca în exemplu, și suntem practic gata. Atunci când OK Cupid combină doi oameni, se urmează pașii menționați. Întâi se adună informația din răspunsurile date, apoi vi se compară alegerile și preferințele cu cele ale altora, prin procese matematice simple. Abilitatea de a transforma date reale în ceva ce poate fi utilizat de un microcip este, cred eu, cea mai importantă aptitudine a cuiva în ziua de azi. Așa cum folosiți fraze pentru a relata ceva, folosiți algoritmi pentru a povesti ceva unui computer. Învățând limbajul, vă puteți împărtăși poveștile. Sper ca asta să vă fie de ajutor.