Pracuje w Microsoft Research i to jego wieloletnie badania przyczyniły się do powstania Cortany, wirtualnej asystentki w Windows Phone 8.1. Nazywa się Larry Heck i rozmawiam z nim o tym, czy maszyny będą czytać książki, jak bardzo realny jest scenariusz z filmu "Ona" i jaką rolę w przyszłości odegra wzrok.
Joanna Sosnowska: Gdybym powiedziała teraz że wygooglowałam informacje o panu, albo że je wyszukałam w sieci, to zrozumiałby pan obie wypowiedzi. A czy zrozumiałaby je także Cortana?


Larry Heck: Stworzenie przykładowego systemu w którym trzeba wypowiadać konkretne polecenia, żeby komputer je zrozumiał jest proste. Chodzi o to, żeby ludzie mogli wypowiadać dowolne kwestie w języku naturalnym. Jako badacz zajmujący się przetwarzaniem języka naturalnego odnoszę się przede wszystkim do tego, w jaki sposób osoba mówiąca wyraża swoje intencje. Jakich używa słów, jakich zwrotów, jak konstruuje całe zdanie. Na przykład jeśli powiem "Jedźmy teraz do parku w Sunnyvale, albo nie, do Mountain View", to człowiek będzie wiedział, że w środku wypowiedzi zmieniłem intencję.

Tak, ale jak sprawić, żeby zrozumiała to maszyna?

Nad podstawami przetwarzania języka naturalnego głowią się naukowcy od bardzo, bardzo dawna. W ciągu ostatnich 15 lat nastąpiła zmiana i żeby ten problem rozwiązać przestaliśmy tworzyć zasady i gramatykę, a zajęliśmy się uczeniem maszyn. To z kolei polega na tym, że przedstawiamy maszynom różne możliwe sposoby wypowiedzi i oznaczamy je według znaczenia. Ważne jest też to, że jeśli maszyna nie zrozumie naszego przekazu, żeby mogła w inteligentny sposób odpowiedzieć. Na przykład "Zrozumiałam to i to, ale tego już nie. Czy możesz wyjaśnić".

Jak to "zajęliście się uczeniem maszyn"? Będą się mogły uczyć w sposób podobny do człowieka? Będą same wnioskować i szukać połączeń między różnymi zjawiskami?

W badaniach jakie teraz prowadzę zajmuję się zagadnieniem, jak ludzie komunikują się ze sobą nawzajem i jak się od siebie uczą. Na przykład - spotykają się dwie osoby, jedna jest ekspertem z jakiegoś tematu (niech to będzie wędkarstwo muchowe), a druga wie o nim niewiele. Wśród ludzi jest tak, że w języku zawarty jest wspólny grunt, pewien rodzaj wiedzy powszechnej, więc jesteśmy w stanie rozmawiać na ten temat. Jeśli ja jako laik usłyszałem właśnie fachową uwagę o wiązaniu muchy, to już podstawowe rozumienie języka, pojęć zawartych w wypowiedzi, pozwala mi zrozumieć cały koncept, nawet taki który jest mi równie obcy jak wędkarstwo muchowe. Po prostu rozumiejąc poszczególne słowa, zależności między rzeczownikami, czasownikami i innymi częściami zdania jesteśmy w stanie dopowiedzieć sobie brakujące informacje, a przez to powiększyć naszą wiedzę. To właśnie w taki sposób uczą się ludzie, niejako wypełniają luki w wiedzy posługując się rozumieniem podstaw języka.

Badania które teraz przeprowadzamy sugerują, że na tej samej zasadzie mogą uczyć się też maszyny. Naturalnie, "uczenie się" może mieć kilka znaczeń - ale w tym konkretnym jestem przekonany, że nam się uda. Maszyny będą mogły się więc uczyć przez rozmowy, czytanie artykułów.

Czyli w przyszłości Cortana będzie czytać New York Timesa?

O, tak. Pod wieloma względami już to robi. Aby stworzyć Cortanę taką, jaką jest teraz, musieliśmy zgromadzić niesamowite ilości danych. Niektóre z nich pochodzą ze źródeł takich jak New York Times, czy Wikipedia i wykorzystujemy je na wiele różnych sposobów. Na przykład - wiemy, że Tom Cruise występował w filmie "Mission impossible". Ale nie wiemy, w jaki sposób ludzie zadaliby pytanie, które łączy te dwa byty - film i aktora. Mogą zapytać "Jak nazywał się ten film w którym występował Tom Cruise w 1996 roku?", albo "Kto występował w Mission Impossible?", itd. W New York Timesie czy w Wikipedii znajdują się informacje na ten temat, spisane w języku naturalnym. I tego właśnie poszukujemy. Przekazujemy te dane Cortanie i wskazujemy - tu są informacje o Tomie Cruise i Mission Impossible, te byty mają się do siebie tak a tak. Więc kiedy ktoś ją o to zapyta, będzie mogła udzielić odpowiedzi.

Ale tak naprawdę to tylko czubek góry lodowej. Cały czas staramy się dotrzeć głębiej i głębiej i wydobyć jeszcze więcej wiedzy.

OK, czyli Cortana uczy się z różnych źródeł, typu New York Times, ale nie zagadnie mnie, że właśnie znalazła bardzo ciekawy artykuł na przykład o sztucznej inteligencji?

Już teraz gdy konfigurujemy Cortanę możemy jej podać główne zagadnienia które nas interesują (na przykład technologie, zdrowie, motoryzacja, itd. ), a wtedy ona co jakiś czas będzie nam podrzucała najbardziej wartościowe artykuły z tych dziedzin. To o czym pani mówi jest realne do spełnienia już teraz, technologia jest dostępna. W Microsoft Research już od dawna zajmujemy się zagadnieniem, jak i czy Cortana faktycznie może przeczytać różne artykuły, zrozumieć je, wyciągnąć wnioski a potem wrócić do mnie i powiedzieć - tu znajdziesz takie artykuły, które powinny cię szczególnie zainteresować, są o tym i o tym.

Ale w całym tym procesie wciąż potrzebna jest pomoc człowieka. To inżynier wskazuje systemowi jakieś dane i mówi "one są ważne, przyswój je".

Wielu mądrych ludzi stara się stworzyć algorytmy do pozyskiwania danych, a następnie zaprząc je do uczenia maszyn, ale na kolejnym poziomie faktycznie nie ma już pośrednictwa ludzi. A innymi słowy - maszyny będą musiały móc uczyć się same, nazywamy to "unsupervised learning". Gdy maszyny zaczną zdobywać wiedzę bez pośrednictwa ludzi, albo gdy maszyny zaczną uczyć inne maszyny, to sam proces nauki może się znacznie przyspieszyć. Jest jeszcze jeden aspekt, który prawdopodobnie zdarzy się dużo szybciej - maszyny zaczną się uczyć bezpośrednio od ludzi. Więc teraz Cortana uczy się od inżynierów i naukowców z Microsoftu, ale naprawdę ekscytujące będzie to, kiedy Cortana będzie mogła się uczyć od swojego właściciela - to mogą być nowe informacje, nowe funkcje i możliwości, ale też na przykład informacje o twojej rodzinie, twoich zainteresowaniach.

To już brzmi jak scenariusz filmu "Ona"

Tak, wtedy będzie jak w filmie - będę mógł powiedzieć jej "Hej, Cortana, kup mi dwa bilety na Harrego Pottera, na ten weekend". Ona oczywiście wie kim i czym jest Harry Potter, czym jest kino, ale może powiedzieć "Nie wiem, jak kupuje się bilety do kina. Czy możesz mi pokazać, jak to zrobić". Wtedy ja jej pokażę, jak kupuje się bilety, a Cortana przy okazji dowie się, że mam żonę i dwóch synów i że lubimy siadać w kinie gdzieś blisko ekranu. Gdy za dwa tygodnie znów poproszę ją o kupienie biletów na inny film, będzie to mogła już zrobić sama. Taka interakcja z użytkownikiem przez dialog może być naprawdę potężna, bo w ten sposób uczyć się będzie nie jedna poszczególna Cortana znajdująca się w moim telefonie, ale wiedza trafi do "mózgu centralnego", czyli każda Cortana będzie mogła nauczyć się, jak kupować bilety do kina.

Gdy przejdziemy te dwa etapy: maszyny uczące się od ludzi i maszyny uczące się od innych ludzi, będziemy mogli prawdopodobnie mówić o bytach typu sztuczna inteligencja.

A co pan sądzi o tak potężnych maszynach? Niektórzy naukowcy, na przykład Hawking, już teraz uważają, że sztuczna inteligencja może być największym błędem ludzkości.

To całkiem uzasadniona obawa. Na naukowcach którzy się tym zajmują spoczywa ogromna odpowiedzialność. Podobnie, jak na korporacjach i laboratoriach, które prowadzą takie badania.

Ale to trochę tak, jak z każdą technologią - każde rozwiązanie może być dobre albo złe, zależy od zastosowania.

Wspominaliśmy przed chwilą o filmie "Ona". Tam główny bohater komunikuje się z komputerem po prostu rozmawiając. My teraz robimy to najczęściej wpisując polecenie tekstowe na klawiaturze. A co będzie później?

Najpierw zaczniemy używać dotyku. Chodzi o to, żebym mógł dotknąć jakiegoś obiektu i zadać pytanie na jego temat. A dokładniej - powiedzmy, że znalazłaś w sieci zdjęcie Toma Cruise'a. Jeśli korzystasz z tabletu czy ze smartfona, możesz go dotknąć, jeśli z telewizora - wskazać ręką i zadać pytanie "W jakim on grał filmie w 1996roku?". Gdybyśmy ominęli etap dotykania przedmiotu trzeba byłoby wprowadzić wiele dodatkowych informacji, wypowiedzieć wiele dodatkowych słów, dostarczyć systemowi dużo więcej kontekstu. Uważam, że za chwilę będziemy komunikować się z komputerami w sposób multi-modelowy, czyli dotyk + mowa, gest + mowa. Następne w kolejności będzie pewnie śledzenie ruchu gałek ocznych.

A czy to nie jest zbyt mało precyzyjne?

Robiliśmy u nas w laboratorium doświadczenia w których sprawdzaliśmy różne scenariusze, między innymi robiliśmy symulację wyszukiwania zdjęcia Toma Cruise'a, ale nie trzeba tego zdjęcia dotykać. Odpowiedź możemy uzyskać na podstawie tego na co patrzymy, albo na co właśnie patrzyliśmy. Czyli na przykład - przeglądasz sobie coś na komputerze, twój wzrok napotyka zdjęcie Toma Cruise'a, a ty zadajesz pytanie - "W jakim on grał filmie w 1996 roku?". To wszystko co trzeba zrobić, a system już sam poradzi sobie z resztą.

Rok temu opublikowałem pracę dotyczącą gestów, na przykład zwykłego wskazywania, w której dowodziłem, że jest to dużo lepsze na przykład pod względem dokładności rozpoznawania mowy i rozumienia języka naturalnego. Podczas moich badań robiłem kilka eksperymentów - do laboratorium przychodzili ludzie, mieli wskazywać różne rzeczy palcem i zadawać pytania na ich temat. Ale to nie było naturalne. A dodatkowo system się mylił, nie zawsze wiedział, co ludzie wskazują. Rozwiązaniem na to jest właśnie śledzenie ruchu gałek ocznych.

To będzie wielki przełom, gdy w końcu do tego dojdziemy.

A nie uważa pan, że wydawanie urządzeniom poleceń głosowych może być trochę... dziwne, albo nienaturalne?

Tak, może takie być. Naturalny interfejs użytkownika bardzo zależy od sytuacji no i oczywiście upodobań osobistych danego człowieka. Tak, to trzeba podkreślić, że będziemy korzystać nie tylko z różnych rodzajów komunikatów (głos, gesty, tekst), ale także okoliczności. Niekiedy bardziej odpowiednie będą polecenia głosowe, kiedy indziej tekst, a jeszcze w innym wypadku wskazanie czegoś palcem albo zakreślenie w powietrzu. Czyli na przykład - patrzysz na mapę, zakreślasz w powietrzu jakiś obszar i pytasz "czy są tu jakieś włoskie restauracje?". To dla wielu osób jest naturalne, w taki sposób rozmawiamy ze sobą nawzajem, właśnie w taki sposób zadałabyś pytanie asystentce która siedzi koło ciebie. Ich wirtualne odpowiedniki w przyszłości będą musiały mieć taki naturalny interfejs.

OK, to w takim razie dlaczego ludzie wciąż niechętnie odzywają się do swoich urządzeń i niezbyt często korzystają z poleceń głosowych?

Myślę, że to sytuacja analogiczna do wyszukiwania w połowie lat '90. Ludzie mogli przecież wtedy przeglądać internet za pośrednictwem np. Yahoo Directory, i jeśli wiedziało się co się robi i czego szukać, można było znaleźć żądane informacje. Ale nie upowszechniło się to, dopóki interfejs nie stał się superprosty. Wyszukiwanie stało się powszechne, kiedy zaczęło działać na każdym polu. I wydaje mi się, że wirtualne asystentki będą musiały przejść podobną drogę. Dopóki ty w komunikacji z asystentką musisz pamiętać o ograniczeniach systemu, tak długo on się nie upowszechni. Doświadczenie musi być naturalne, nie możesz się nad nim zastanawiać.

Nie mam co prawda osobistej asystentki ale wyobrażam sobie, że takiej prawdziwej nie tylko wydaje się polecenia. Czasem tak zwyczajnie się z nią gawędzi.

To prawda, powinniśmy móc pytać nie tylko o to, czy w pobliżu jest kwiaciarnia, ale też pogadać na tematy takie jak moja kolekcja znaczków pocztowych czy o wędkarstwie muchowym. Mamy tu trochę do czynienia z dylematem jajka i kury. Musimy wdrożyć te funkcje, żeby Cortana się upowszechniła, ale żeby to zrobić potrzebujemy bardzo dużo danych, które zdobywa się dzięki szerokiemu upowszechnieniu.

Już teraz mamy dość sporo użytkowników, że zaczyna się mały efekt kuli śnieżnej. Teraz najważniejszym wyzwaniem jest to, jak przetworzyć te wszystkie dane, które przepływają przez system w tę i z powrotem. To gigantyczne wyzwanie. Ale przynajmniej się nie nudzę i mam co rozważać.