Witam, nazywam się Christian Rudder. Jestem jednym z założycieli OK Cupid. To jeden z największych portali randkowych w USA. Jak niemal każdy z założycieli, skończyłem matematykę, dlatego nasz portal stosuje metodę analityczną wobec miłości. Nazywamy to algorytmem dopasowania. Ten algorytm pomaga nam stwierdzić, czy dwoje ludzi powinno umówić się na randkę. Na tej zasadzie zbudowaliśmy cały biznes. Algorytm to takie wyszukane słowo, a ludzie lubią czuć, że robią coś wielkiego ale tak naprawdę, algorytm to po prostu metoda rozwiązywania problemów krok po kroku. To wcale nie jest takie niezwykłe. W tej lekcji pokażę, jak doszliśmy do naszego algorytmu, żebyś rozumiał, jak to robimy. Właściwie dlaczego te algorytmy są ważne? Po co ta cała lekcja? Jak wcześniej powiedziałem, to metoda rozwiązywania problemów krok po kroku a jak wiesz, komputery są w tym świetne. Komputer bez algorytmu to tylko droga kupa złomu. A ponieważ komputery są wszechobecne algorytmy są wszędzie. Matematyka do algorytmu w portalu OK Cupid jest bardzo prosta. Trochę dodawania, mnożenia, i pierwiastków. Cały trick polega na tym, żeby umieć przerobić coś zagadkowego, czyli lubienie innych ludzi, na kroki, które komputer może wykonać. Najpierw potrzebujemy od ludzi danych, bo użyjemy ich do naszego algorytmu. Najprościej jest zwyczajnie zadawać ludziom pytania. W OK Cupid znajdziesz pytania takie jak: "Czy chcesz mieć kiedyś dzieci?" "Jak często myjesz zęby?" "Czy lubisz straszne filmy?" i poważne pytania, np. "Czy wierzysz w Boga?". Wiele pytań pozwala dopasować ludzi, kiedy oboje odpowiedzą na dane pytanie tak samo. Np. kiedy oboje lubią straszne filmy, będą lepiej do siebie pasować, niż kiedy jedno je lubi, a drugie nie. Ale przy pytaniu typu: "Czy lubisz być w centrum uwagi?", jeśli oboje w związku to lubią, to będą mieć poważne problemy. Przewidzieliśmy to, więc postanowiliśmy uzyskać nieco więcej danych przy takich pytaniach. Zapytaliśmy ludzi nie tylko o ich odpowiedź, ale też, jakiej odpowiedzi chcą od drugiej osoby. To był dobry pomysł, ale brakowało jeszcze jednego wymiaru. Niektóre pytania mówią więcej o osobie, niż inne. Np. pytanie o politykę: "Co jest gorsze: palenie książek czy palenie flag?" może ujawnić więcej o osobie, niż gust filmowy. A ponieważ nie wszystko ma takie samo znaczenie, dodaliśmy jeszcze jeden parametr. Przy każdym pytaniu w OK Cupid jest wskaźnik jak dana sprawa jest ważna dla ciebie w skali od "nieważne" do "konieczne". Czyli teraz dla każdego pytania mamy 3 parametry dla naszego algorytmu: 1. twoja odpowiedź 2. czego chcesz od drugiej osoby – potencjalnego partnera, jak ta osoba ma odpowiedzieć 3. jak ważna dana sprawa jest dla ciebie. Na bazie tych danych OK Cupid wylicza, czy dwoje ludzi do siebie pasuje. Algorytm przelicza dane i podaje wynik. Na przykład, spróbujmy dopasować ciebie do drugiej osoby, nazwijmy go "B". Twoja zgodność z B opiera się na odpowiedziach podanych przez was oboje. Nazwijmy sumę tych pytań "s". Weźmy tylko kilka pytań dla naszego "s" np. dwa pytania i obliczmy, co wyjdzie. Powiedzmy takie dwa pytania: 1. "Czy jesteś bałaganiarzem?" możliwe odpowiedzi to: tak, bardzo bałaganię, przeciętnie jestem bardzo zorganizowany. Załóżmy, że twoja odpowiedź to "bardzo zorganizowany", i chcesz, żeby druga osoba odpowiedziała podobnie i ta sprawa jest dla ciebie bardzo istotna. Po prostu nie tolerujesz bałaganu. Ma być porządek, i druga osoba też ma utrzymywać porządek i kropka. Teraz powiedzmy, że B jest nieco inny. Jest bardzo zorganizowany, ale wystarczy mu przeciętny porządek, jako wymaganie stawiane drugiej osobie, a cała sprawa jest dla niego prawie nieistotna. Przejdźmy do drugiego pytania. Użyjmy pytania, które pojawiło się wcześniej: "Czy lubisz być w centrum uwagi?". Możliwe opcje to "tak" i "nie". Odpowiadasz "nie", i wolisz, żeby druga osoba też powiedziała "nie", a ta sprawa nie ma dla ciebie znaczenia. Ale B odpowiedział "tak", chce, żeby druga osoba powiedziała "nie", bo chce, żeby cała uwaga skupiła się na nim, i jest to dla niego trochę istotne. Teraz spróbujmy to przekalkulować. Na początku, ponieważ używamy komputera, musimy przyporządkować wartości numeryczne do odpowiedzi typu "dosyć istotne" i "bardzo ważne", bo komputer rozumie tylko liczby. W portalu OK Cupid robimy to tak: "nieważne" ma wartość 0, "nieco istotne" = 1, "dość istotne" = 10, "bardzo istotne" = 50, "absolutnie niezbędne" = 250. Teraz nasz algorytm przelicza. Najpierw sprawdza ile odpowiedzi udzielonych przez B odpowiada twoim, tzn. ile punktów uzyskał na twojej skali. Dla ciebie odpowiedź osoby B na pytanie o bałaganiarstwo, była bardzo ważna. Czyli na wartość 50 punktów, jeśli B odpowie prawidłowo. Drugie pytanie ma wartość zaledwie 1 bo powiedziałaś, że jest tylko nieco istotne, a B odpowiedział coś innego. Czyli odpowiedzi B to 50 na 51 możliwych punktów. To 98% zgodności. Nieźle. Drugi krok w algorytmie to to, jak bardzo twoje odpowiedzi zgadzają się z B. B przyznał 1 punkt twojej odpowiedzi na pytanie o bałaganiarstwo, a 10 – twojej odpowiedzi na drugie pytanie. 1 + 10 = 11, i z tych 11. uzyskałeś 10, bo w drugim pytaniu podałaś pożądaną odpowiedź. Więc twoje odpowiedzi to 10 punktów na 11, co daje 91% zgodności. Też nieźle. Ostatni krok to porównanie tych dwóch procentów i ustalenie procentu ogólnego dla was obojga. Teraz algorytm mnoży wasze wyniki następnie wyciąga z nich n-ty pierwiastek, gdzie n to liczba pytań bo s, czyli suma pytań w naszym przykładzie wynosiła 2. Procent zgodności równa się pierwiastkowi kwadratowemu z 98% razy 91% czyli 94%. To 94% to twoja zgodność z osobą B. To matematyczny zapis tego, jak szczęśliwi możecie być ze sobą na podstawie podanych odpowiedzi. Możesz zapytać, dlaczego algorytm mnoży, a nie np. wyciąga średnią z obu wyników i po co wyciąga pierwiastek. Ta zasada nosi nazwę średniej geometrycznej, która jest dobrym sposobem porównywania wartości, które mają szeroki zakres i odpowiadają wielu różnym wartościom. Innymi słowy, jest idealna dla szukania partnera. Mamy tu szeroki zakres i ogromną liczbę parametrów jak już wspomniałem: filmy, polityka, religia, wszystko. To ma też intuicyjny sens. Dwoje ludzi ze zgodnością 50% będzie bardziej do siebie pasować, niż dwoje ze zgodnością 0 i 100, bo uczucie musi być wzajemne. Po drobnych poprawkach i z marginesem błędu, kiedy mamy małą liczbę pytań, jak w naszym przykładzie, jesteśmy gotowi na randkę. Gdy OK Cupid swata dwoje ludzi wykonuje kroki, które właśnie widzieliśmy. Najpierw prosi o odpowiedzi na pytania, potem matematycznie porównuje twoje preferencje z odpowiedziami innych osób. Zdolność przekształcenia zjawisk w realnym życiu w dane, które procesor może zrozumieć jest według mnie najważniejszą umiejętnością w dzisiejszych czasach. Ludzie mówią zdaniami, żeby coś przekazać, komputery zaś używają do komunikacji algorytmów. Kiedy uczysz się języka, możesz coś w nim opowiedzieć. Mam nadzieję, że teraz będzie ci łatwiej.