Historia Sztucznej InteligencjiArtificial Intelligence Experts

Przedstawienia Semantyczne

Programy komputerowe, które do tej pory opisywano, przeprowadzały transformacje na stosunkowo prostych strukturach symboli, które były wszystkie potrzebne do rozwiązywania problemów matematycznych, zagadek i gier, z którymi te programy się uporały. Główny wysiłek polegał na opracowaniu i wykorzystaniu heurystyk specyficznych dla problemu (takich jak na przykład funkcje do obliczenia wartości pozycji kontrolera), aby ograniczyć liczbę przekształceń tych struktur w poszukiwaniu rozwiązań. Jak ujął to Minsky: "Najbardziej centralna idea to okres przed 1962 r., to okres poszukiwania urządzeń heurystycznych do kontrolowania zakresu poszukiwań metodą prób i błędów. ". Na początku lat 60. XX wieku w kilku projektach badawczych doktoranckich, niektóre prowadzone pod kierunkiem Minsky′ego w MIT, zaczęto stosować złożone struktury symboli w programach do wykonywania różnych zadań intelektualnych. Ze względu na bogatą, artykułowaną treść informacji na temat ich problematyki struktury te nazwano reprezentacjami semantycznymi. Jak napisał Minsky: " W małej domenie, w której działa każdy program, wydajność [ z tych programów] nie jest tak zła w porównaniu z niektórymi ludzkimi działaniami … Ale znacznie ważniejsze niż to, co osiągają te konkretne eksperymenty, są metody, których używają do osiągnięcia tego, co robią, ponieważ każdy jest pierwszą próbą wcześniej niesprawdzonych pomysłów". Opiszemy kilka przykładów tego rodzaju projektów i nowych metod, które zastosowali.

Rozwiązywanie problemów z analogią geometryczną

Thomas G. Evans zaprogramował system, który był w stanie dobrze wykonywać niektóre standardowe testy analogii geometrycznych. Był to najwyraźniej największy program napisany do tego czasu w nowym języku programowania Johna McCarthy′ego, LISP. Zastanowimy się nad rozwiązaniem maszynowym tak zwanych pytań testu inteligencji "analogii geometrycznej". Każdy członek tej klasy problemów składa się z zestawu rysowanych linii. Zadanie do wykonania można opisać pytaniem: "Rysunek A dotyczy rysunku B, podobnie jak rysunek C do którego z poniższych wskaźników?" Na przykład wydaje się bezpiecznie powiedzieć, że większość ludzi zgodziłaby się z programem, który zamierzamy opisać, wybierając [numer 4] jako pożądaną odpowiedź.



Zauważył także, że problemy tego typu są powszechnie uważane za wymagające wysokiego stopnia inteligencji do ich rozwiązania i faktycznie są wykorzystywane jako kamień węgielny inteligencji w niektórych ogólnych testach inteligencji wykorzystywanych do przyjmowania na studia i innych celów. "Zatem ponownie, badania AI skupiły się na mechanizowaniu zadań wymagających ludzkiej inteligencji. Program Evansa pierwszy przekształcił przedstawione na niej diagramy, aby ujawnić, w jaki sposób zostały one złożone z części. Nazwał te reprezentacje "stawowe". Spośród możliwych kilku dekompozycji wybór wybrany przez program zależał od jego "kontekstu". jeden przykład heurystyki zastosowanej przez program.) Na przykład schemat



można albo rozłożyć na



lub do



Ale jeśli problem analogii zawierał inny schemat (część kontekstu):



wtedy wybierany byłby pierwszy rozkład. Evans przedstawiał diagramy i ich części jako złożone struktury symboli składające się z dość skomplikowanych kombinacji list i list list, których elementy wskazywały, które części były wewnątrz lub na zewnątrz (lub powyżej lub poniżej), które inne części, i tak dalej. Te szczegóły nie muszą nas tutaj dotyczyć, ale pozwoliły Evansowi określić "reguły" dla jego programu, które mogłyby zostać wykorzystane do pokazania, w jaki sposób jeden diagram można przekształcić w inny. Program był w stanie wywnioskować, które kombinacje tych reguł przekształciły Rysunek A danego problemu na Rysunek B. Następnie mógł zastosować tę transformację na Rysunku C. Jeśli wynikła jedna z odpowiedzi wielokrotnego wyboru, podałaby ją jako odpowiedź . W przeciwnym razie program "osłabił "transformację tak, że jedna z odpowiedzi została opracowana i taka byłaby odpowiedź programu. Evans podsumował swoje wyniki w następujący sposób:

Pozwalając sobie tylko na [części faktycznie wdrożonego programu], szacujemy, że spośród 30 problemów z analogią geometryczną podczas typowej edycji testów ACE [program] może z powodzeniem rozwiązać co najmniej 15, a być może nawet 20 problemy.

Zauważa, że ten poziom wydajności wypada korzystnie w porównaniu z przeciętnym uczniem szkoły średniej.

Przechowywanie informacji i udzielanie odpowiedzi na pytania

Kolejny doktor Minsky′ego z początku lat 60. Bertram Raphael skupił się na problemie "rozumienia maszyn". W swojej rozprawie Raphael wyjaśnił, że komputer powinien być uważany za zdolny do "zrozumienia", jeśli może rozmawiaćinteligentnie, tzn. jeśli pamięta, co zostało powiedziane, odpowiada na pytania i udziela odpowiedzi, które ludzki obserwator uważa za rozsądne. Raphael chciał móc powiedzieć coś komputerowi, a następnie zadać mu pytania, których odpowiedzi można by wywnioskować z tego, co mu powiedziano. (Mówienie i zadawanie pytań powinno odbywać się poprzez wpisywanie zdań i zapytań.) Oto kilka przykładów tego, co chciał powiedzieć:

Każdy chłopiec jest osobą.
Palec jest częścią ręki.
Każda osoba ma dwie ręce.
John jest chłopcem.
Każda ręka ma kilka palców.

Biorąc pod uwagę te informacje, Raphael chciałby, aby jego system mógł wydedukować odpowiedź na pytanie "Ile palców ma Jan?" Ponieważ Raphael chciał, aby jego system komunikował się z ludźmi, chciał, aby jego języki wejściowe i wyjściowe były w rozsądnym stopniu zbliżone do naturalnego angielskiego. Uznał, że "problem językowy przekształcenia języka naturalnego w użyteczną formę będzie musiał zostać rozwiązany, zanim będziemy uzyskać ogólny semantyczny system wyszukiwania informacji. "Ten" problem językowy "jest dość trudny i nadal nie" rozwiązany ", mimo że od lat 60. dokonano znacznego postępu. Raphael używał różnych" urządzeń "(jak je nazywał i które nie są niemądre) do naszej obecnej dyskusji), aby "ominąć [ogólny problem radzenia sobie z językiem naturalnym] przy jednoczesnym wykorzystaniu zrozumiałych angielskich danych wejściowych i wyjściowych". Główny problem, który zaatakował Raphael, polegał na tym, jak uporządkować fakty w pamięci komputera, aby można było dokonać odpowiednich wniosków. Jak to ujął Raphael: "Najważniejszym warunkiem umiejętności rozumienia jest odpowiednia wewnętrzna reprezentacja lub model przechowywanych informacji. Model powinien być tak skonstruowany, aby informacje istotne dla odpowiedzi na pytania były łatwo dostępne". Raphael nazwał swój system SIR, dla semantycznego wyszukiwania informacji (który zaprogramował w LISP). Użył słowa "semantyczny", ponieważ SIR modelował zdania w sposób zależny od ich znaczenia. Zdania, z którymi SIR mógł sobie poradzić, dotyczyły "bytów" (takich jak John, chłopiec, ręka, palec itd.) Oraz relacji między tymi podmiotami (takich jak "zestaw-członkostwo", "część {całość", "własność", " powyżej, "obok" i inne relacje przestrzenne.) Model musiał zatem mieć sposoby reprezentowania bytów i relacji między nimi. Podmioty takie jak John i chłopiec były reprezentowane przez komputer LISP jako słowa JOHN i BOY, odpowiednio. (Oczywiście komputer nie mógł wiedzieć, że słowo komputerowe JOHN ma coś wspólnego z osobą Johna. Raphael równie dobrze mógł reprezentować Johna na komputerze przez X13F27, o ile konsekwentnie używał tej prezentacji dla Johna. Słowo komputerowe JOHN było mnemoniczną wygodą dla programisty {nie dla komputera!) Przedstawiając fakt, że John jest chłopcem, SIR "łączy" wyrażenie komputerowe (SUPER-SET JOHN BOY) do wyrażenia JOHN i połączenie wyrażenia komputerowego (SUB-SET BOY JOHN) z wyrażeniem BOY. Zatem jeśli SIR zostanie poproszony o nazwanie chłopca, może odpowiedzieć" JOHN "odnosząc się do BOY w swoim modelu, patrząc na link SUB-SET i wyszukując JOHN. (Uprościłem nieco reprezentacje, aby uzyskać główne pomysły; rzeczywiste reprezentacje SIR były nieco bardziej skomplikowane.) SIR mógł poradzić sobie z dziesiątkami różnych bytów i relacji między nimi. Za każdym razem, gdy otrzymywał nowe informacje, dodawali nowe byty i linki jakie były potrzebne. Miał także kilka mechanizmów dokonywania logicznych dedukcji i wykonywania prostej arytmetyki. Sama struktura modelu ułatwiła wiele jego dedukcji, ponieważ, jak zauważył Minsky w swojej dyskusji na temat tezy Rafaela, "bezpośrednie predykaty łączą… prawie fizycznie łączą bezpośrednie logiczne konsekwencje danej informacji". SIR był również pierwszym systemem sztucznej inteligencji stosującym "zasadę wyjątku" w rozumowaniu. Tę zasadę najlepiej wyjaśnić, cytując bezpośrednio z pracy Raphaela:

Uwzględniono ogólne informacje o "wszystkich elementach" zestawu aby stosować do określonych elementów tylko przy braku bardziej szczegółowych informacji o tych elementach. Zatem niekoniecznie sprzeczne jest stwierdzenie, że "ssaki są zwierzętami lądowymi", a jednak "wieloryb to ssak, który zawsze żyje w wodzie". W programie pomysł ten wdraża się, zawsze odwołując się do pożądanych informacji do listy właściwości [czyli linków] danej osoby przedtem patrząc na opisy zbiorów, do których należy dana jednostka. Uzasadnieniem tego odstępstwa od zasad nie-wyjątkowych w logice arystotelesowskiej jest to, że ten pierwszeństwo konkretnych faktów nad wiedzą w tle wydaje się być sposobem działania ludzi i chcę, aby komputer komunikował się z ludźmi tak naturalnie, jak to możliwe. Obecny program nie odczuwa dyskomfortu, jaki ludzie często odczuwają, gdy muszą stawić czoła faktom takim jak "wieloryb to ssak żyjący w wodzie, chociaż ssaki z reguły żyją na lądzie".

Zasada wyjątku została zbadana przez badaczy AI bardziej szczegółowo później i doprowadziła do tak zwanego domyślnego rozumowania i logiki niemonotonicznej, jak zobaczymy.

Sieci semantyczne

Pouczające jest przemyślenie schematu reprezentacji SIR w kategoriach sieci. Jednostki (takie jak JOHN i BOY) są "węzłami" sieci, a łącza relacyjne (takie jak SUB-SET) są połączeniami między węzłami. SIR była wczesną wersją tego, co stanie się ważną ideą reprezentacyjną w sztucznej inteligencji, a mianowicie sieci semantycznych. Nie był to jednak pierwszy. John Sowa, który pisał obszernie o sieciach semantycznych, twierdzi, że najstarsza znana sieć semantyczna została narysowana w III wieku n.e. przez greckiego filozofa Porphyry′ego w komentarzu do kategorii Arystotelesa. W 1961 r. Margaret Masterman, dyrektor jednostki Cambridge Language Research Unit, zastosowała sieć semantyczną w systemie tłumaczeń, w którym koncepcje były uporządkowane w hierarchii. M Ross Quillian, student Herba Simona w Carnegie Institute of Technology, był zainteresowany, wraz z Newellem i Simonem, modelami obliczeniowymi procesów umysłowych człowieka, a konkretnie organizacją pamięci. Opracował model pamięci składający się z semantycznej sieci węzłów reprezentujących angielskie słowa. Węzły zostały połączone przez to, co nazwał "powiązaniami asocjacyjnymi". W słowach Quilliana: "W modelu pamięci składniki użyte do zbudowania pojęcia są reprezentowane przez węzły symboliczne nazywające inne pojęcia, a konguracyjne znaczenie pojęcie to reprezentuje szczególna struktura powiązań łączących te węzły-tokeny z każdym z nich z innym". Quillian pisze dalej, że" głównym pytaniem zadanym w tych badaniach było: Co stanowi rozsądny pogląd na to, jak uporządkowane są informacje semantyczne w pamięci osoby? Innymi słowy: jaki rodzaj formatu reprezentacyjnego może pozwolić na przechowywanie "znaczeń" słów, aby możliwe było ich użycie w sposób podobny do ludzkiego?". Mogę zilustrować sposób, w jaki format sieci Quillian reprezentuje znaczenie, na jednym z jego przykładów. Rozważ różne znaczenia słowa "plant". Jednym z takich znaczeń jest połączenie węzła PLANT z innymi węzłami, takimi jak LIVE, LIŚĆ, ŻYWNOŚĆ, POWIETRZE, WODA i ZIEMIA, poprzez połączenia, które reprezentują, to że roślina (zgodnie z tym znaczeniem tego słowa) żyje, ma liście i otrzymuje pokarm z powietrza, wody i ziemi. Inne znaczenie "plant "łączy PLANT z innymi węzłami, takimi jak LUDZIE, PROCES i PRZEMYSŁ, poprzez połączenia, które reprezentują, że roślina (zgodnie z tym innym znaczeniem tego słowa) jest urządzeniem, które wykorzystuje ludzi do angażowania się w używany proces w przemyśle. Według Quilliana znaczenie terminu jest reprezentowane przez jego miejsce w sieci i sposób, w jaki jest on powiązany z innymi terminami. Ten sam pomysł jest używany w słownikach, w których znaczenie słowa jest podane przez odniesienie do tego związku słowo do innych słów. Znaczenia tych innych słów są z kolei nadawane przez swoje relacje jeszcze innym słowom. Możemy więc myśleć o słowniku jako o dużej sieci semantycznej słów powiązanych z innymi słowami. Korzystając z tego widoku, pełne znaczenie pojęcia może być dość obszerne. Jak to ujął Quillian, "Załóżmy, że ktoś został poproszony o przedstawienie wszystkiego, co wie na temat pojęcia "maszyna"… Informacje te zaczną się z bardziej "przekonującymi" faktami na temat maszyn, takimi jak ten są zazwyczaj wykonane przez człowieka, zawierają ruchome części itd. i przejdzie "w dół "do coraz mniej integrujących faktów, takich jak fakt że maszyny do pisania to maszyny, a potem w końcu do nich dojdzie znacznie więcej zdalnych informacji o maszynach, takich jak fakt że maszyna do pisania ma ogranicznik uniemożliwiający jej przewóz odlatuje za każdym razem, gdy jest zwracany. Sugerujemy ,że informacje mogą być użyteczne jako część przedmiotu koncepcji "maszyny". W jaki sposób sieć Quilliana jest modelem organizacji ludzkiej pamięci? Quillian zbadał dwie możliwości ludzkiej pamięci modelowane przez jego sieć. Jedno porównywało i kontrastowało dwa różne słowa. Quillian zaproponował, aby zrobić to w procesie, który nazwano "aktywacją rozprzestrzeniania". Koncepcyjnie, jeden zaczyna się od węzłów reprezentujących dwa słowa i stopniowo przemierza emanujące z nich łącza, "aktywując" węzły po drodze. Proces ten trwa do momentu, gdy dwie "fale" aktywacji przecinają się, tworząc w ten sposób "ścieżkę" między dwoma oryginalnymi węzłami. Quillian zaproponował, aby całkowitą "odległość" na tej ścieżce między tymi dwoma słowami można było wykorzystać jako miarę ich podobieństwa. Ścieżka może zostać użyta do utworzenia konta porównującego dwa słowa. (Program Quillian miał mechanizmy wyrażania tego konta w prostym języku angielskim). Aby użyć jednego z przykładów Quilliana, załóżmy, że chcieliśmy porównać słowa "płacz" i "pociecha". Aktywacje rozprzestrzeniania się przecinałyby słowo "smutny", a angielska relacja wyrażałaby coś w stylu "płakać to wydawać smutny dźwięk, a dla wygody - sprawiać, by coś mniej smutnego". Quillian był również zainteresowany tym, w jaki sposób sieć może zostać wykorzystana do "ujednoznacznienia" dwóch możliwych zastosowań tego samego słowa. Rozważmy na przykład zdanie "Po strajku prezydent go odesłał". Sieć może kodować różne znaczenia słowa "strajk". Jednym z nich może być spór pracowniczy, innym może być baseball, a jeszcze innym nalot samolotów wojskowych. Które z tych znaczeń jest zamierzone w zdaniu? Przypuszczalnie aktywacja przebiegająca na zewnątrz od słowa "prezydent" ostatecznie doprowadziłaby do koncepcji związanych ze sporami pracowniczymi, a następnie do koncepcji związanych z baseballem lub wojskiem. Dlatego "spór pracowniczy" byłby preferowany, ponieważ jest "bliższy", biorąc pod uwagę, że słowo "prezydent" znajduje się w zdaniu. W przeciwieństwie do tego można dojść do innego wniosku w sprawie zdania "Po strajku sędzia go odesłał". Model Quillian różni się od niektórych późniejszych sieci semantycznych tym, że nie ma z góry określonej hierarchii nadklas i podklas. Jak to ujął Quillian, "każde słowo jest patriarchą własnej odrębnej hierarchii, gdy zaczyna się od niego jakiś proces wyszukiwania. Podobnie każde słowo znajduje się w różnych miejscach w hierarchii (tj. jest składnikiem) bardzo wielu innych słów koncepcje, gdy przetwarzanie zaczyna się od nich ".