Algorytmika. Rzecz o istocie informatyki
Oto ostatni już fragment książki Davida Harela w przekładzie Piotra Carlsona i Zbigniewa Weissa (Wydawnictwa Naukowo-Techniczne, w przygotowaniu).
Rozumienie języka naturalnego
...Problem jest w rzeczywistości znacznie trudniejszy niż się wydaje. Skoncentrujemy się tutaj na rozumieniu języka, a nie na rozpoznawaniu słów, ale pouczające będzie zobaczenie najpierw, co się stanie, gdy myli się program rozpoznający mowę. Zdanie „Umyj głowę Irence"* można z łatwością źle zrozumieć i zinterpretować jako „Umyj głowę i ręce". Podobnie „Piotr od godziny chodził za nią" można usłyszeć jako „Piotr od godziny chodził z Anią", a szybko wypowiedziane zdanie „Mama ma nas troje" można zrozumieć jako „Mama ma nastroje". Programy rozpoznawania mowy są rajem dla osób lubujących się w dwuznacznościach.
Jeśli chodzi o semantykę, subtelności są znacznie większe. Zdanie nie zawsze musi być zrozumiane bez kontekstu, w którym się pojawiło, i bez wiedzy o osobliwych niuansach, wyrażeniach i odmianie języka, w której zostało wypowiedziane. Czasami trzeba także znać idiosynkrazję osoby mówiącej. Znany przykład dotyczy angielskiego aforyzmu „The spirit is willing but the flesh is weak" („Chciałaby dusza, lecz ciało nie może"). Jak wieść niesie, zdanie to dano do przetłumaczenia najpierw programowi, który wykonał prosty słownikowy przekład na rosyjski, a następnie programowi, który przetłumaczył je z powrotem na angielski. Wynik był następujący „The vodka is stroną but the meat is rotten" („Wódka jest mocna, ale mięso jest zepsute"). Jak to podnosi na duchu!
Mogą powstać problemy, gdy części zdania są dwuznaczne. Rozważmy następujące zdania:
Jan usiadł przy stole i ujrzał przed sobą wielką porcję sałatki owocowej na talerzu obok koszyka z chlebem. Zajęło mu to chwilę, ale w końcu zdołał zjeść i strawić wszystko.
Co zjadł Jan? Czy była to sałatka, chleb, czy jedno i drugie? W pewnych kontekstach mógłby to być także talerz, koszyk, a nawet stół! Sama gramatyka niewiele tutaj pomoże, gdyż to znaczenie jest tym, co inteligentny program musi umieć uchwycić. Następujące zdania są identyczne gramatycznie, ale różnią się związkami między ich różnymi częściami.
Andrzej wyrzuci te śmieci za karę.
Andrzej wyrzuci te śmieci za chałupę.
Andrzej wyrzuci te śmieci za godzinę.
Oczywiście poprawna interpretacja zależy od znaczenia słów kara", „chałupa", „godzina".
To samo zjawisko występuje w następujących zdaniach:
Dzieci ukradły diamenty, po czym niektóre z nich sprzedano.
Dzieci ukradły diamenty, po czym niektóre z nich złapano.
Dzieci ukradły diamenty, po czym niektóre z nich znaleziono.
W tym wypadku słowo "sprzedano" dotyczy diamentów, „złapano" dotyczy dzieci, a „znaleziono" może odnosić się do jednych i drugich. Prawdę powiedziawszy, nawet to nie jest takie oczywiste. Możliwe, że historia dzieje się w kraju, gdzie dzieci sprzedaje się jako niewolników, co czyni dwuznaczne takie pierwsze zdanie. Gdyby drugie zdanie zawierało zwrot „wyrzuciły diamenty przez okno" zamiast „ukradły diamenty", byłoby także dwuznaczne.
I ponownie z całą ostrością pojawia się zagadnienie wiedzy. Oprócz samych słów i gramatyki, do ujednolicenia i zrozumienia zwykłego języka używamy olbrzymiej wiedzy. Problemem podstawowym i najważniejszym staje się ponownie identyfikacja tej wiedzy i reprezentowanie jej w sposób pozwalający uchwycić zagmatwane wzajemne powiązania, a jednocześnie umożliwiający praktyczne odzyskiwanie.
Zakończymy naszą dyskusję pewnymi hipotetycznymi dialogami między istotą ludzką a futurystyczną inteligentną maszyną odpowiadającą na telefony.
Maszyna: Halo, tu dom Jana.
Głos: Halo, chcę rozmawiać z Janem.
Maszyna: Jana nie ma. Czym mogę służyć?
Głos: To nie jest sprawa, o której mogę rozmawiać z maszynę. Kiedy wróci?
Maszyna: A kto mówi?
Głos: Olaf Londra.
Maszyna: Przykro mi, pani Flądro, ale nie spodziewam się tu Jana w ogarnianej przeze mnie przyszłości.
Dziękuję za telefon, pani Olu. (Odgłos odkładanej słuchawki.)
Głos: Cholera
Maszyna: Halo, tu dom ,Jana.
Głos: O, cześć kochana maszyno. Chciałam tylko sprawdzić, czy nadal jesteśmy umówieni na obiad i
tak w ogóle.
Maszyna: Oczywiście Agnieszko. Mam cię zapisaną na czwartek o zwykłej porze.
Głos: Tu mówi narzeczona Jana, Barbara. Kto to jest Agnieszka?
Maszyna: O, Barbara. Nie rozpoznałam twojego głosu. Nigdy nie słyszałam o kimś imieniem Agnieszka.
Głos: Ale przecież przed chwilę powiedziałaś, że on spotyka się z Agnieszkę w czwartek.
Maszyna: Och, z tą Agnieszką. Czy jest Pani pewna, że wykręciła dobry numer? Tu dom Marka Jóźwiaka.
Głos: Nie przejdzie ci ze mnę ten numer. Powiedz Janowi, że wszystko skończone!
Maszyna: Wykręciła Pani nie istniejący numer. Proszę sprawdzić i wykręcić jeszcze raz. (Odgłos odkładanej słuchawki.)
Maszyna: Halo, tu dom Jana.
Głos: Ach, to ty. Słuchaj, tu mówi szef Jana. Muszę się koniecznie z nim skontaktować. Możesz go znaleźć i
kazać mu do mnie zadzwonić?
Maszyna: Niestety, panie Szefiana. Jan gra dziś wieczorem w tenisa i polecił, aby mu nie przeszkadzać.
Głos: Czyżby! Słuchaj no. jestem zajęty, to sprawa nie cierpiąca zwłoki. Tu chodni o jego szefa,. a nie
o pana Szefiana. Daj mi Jana, ale już!
Maszyna: W sprawie zwłok proszę się skontaktować z prosektorium, panie Zajęty. My się tymi
rzeczami nie zajmujemy. Jeśli pan chce rozmawiać z szefem Jana wystarczy wykręcić numer
553-8861. On tutaj nigdy nie bywa. Umieściliśmy go w naszej książce telefonicznej pod
pseudonimem Potwór.
Głos: Zapamiętaj, ty z kości synu, i przekaż mu to słowo w słowo.Powiedz mu, że nie jest wart kluczyków do
twojej konsolki. Jest zwolniony! (Odgłos odkładanej słuchawki.)
Maszyna: Halo, tu dom ,Jana.
Głos: Czy jesteś zadowolony ze swoich obecnych inwestycji? Rozważyłeś korzyści z obligacji
miejskich wolnych od podatków? Jeśli chcesz usłyszeć coś więcej na ten temat, podaj proszę
po sygnale swoje nazwisko i adres. (Sygnał.)
Maszyna: Ee... tu dom Jana.
Głos: Dziękujemy panu, panie Domiana. Pozwolę sobie opowiedzieć coś więcej o naszych
możliwościach inwestycyjnych...
Jeśli chodzi o pełną sztuczną inteligencję, prognozy są raczej ponure. W zasadzie powiedzieliśmy, że w pewnych dziedzinach konwencjonalna sztuczna inteligencja oparta na heurystykach jest tylko lekarstwem, które można wziąć przed przyjściem lekarza. Moglibyśmy mieć nadzieję, że lekarz w końcu będzie w stanie przepisać czyste, analityczne algorytmy. Mając lepiej opanowany problem reprezentacji wiedzy, powinniśmy móc podjąć próbę zastosowania nieheurystycznych (być może wysoce równoległych, a może także probabilistycznych, ale analizowalnych) procedur algorytmicznych, aby osiągnąć możliwe do przyjęcia inteligentne działanie w szerokim zakresie zastosowań.