WSTĘP
Wczesne próby implementacji systemów rozumiejących wiedzę zdroworozsądkową dotyczyły bardzo ograniczonych dziedzin. Na przykład system Planes znał rzeczywiste fakty dotyczące floty samolotów i potrafił odpowiadać na pytania na ich temat zadawane mu w języku angielskim. Nie posiadał jednak żadnych zachowań, nie potrafił interpretować faktów, wyciągać z nich wniosków ani rozwiązywać problemów innych niż te związane ze zrozumieniem pytań. Z drugiej strony, system SHRDLU rozumiał sytuacje w swojej domenie dyskursu (postrzeganej wizualnie), akceptował polecenia w języku naturalnym, aby wykonywać zachowania w tej domenie i rozwiązywać problemy pojawiające się podczas wykonywania poleceń; wszystkie te możliwości były jednak ograniczone do sztucznego świata kolorowych klocków SHRDLU. Zatem w zaimplementowanych systemach wydaje się, że może istnieć kompromis między stopniem realizmu domeny a liczbą możliwości, które można zaimplementować. W debacie "rama kontra logika" , prawdziwym problemem, zdaniem Israela (1983), nie jest sam formalizm reprezentacji, ale raczej to, że fakty ze świata zdrowego rozsądku nie zostały sformułowane, a to jest ważniejsze niż wybór konkretnego formalizmu. Godną uwagi próbą sformułowania "faktów ze świata zdrowego rozsądku" jest praca Hayesa w ramach fizyki naiwnej. Praca ta wykorzystuje rachunek predykatów pierwszego rzędu do reprezentacji wiedzy zdroworozsądkowej o codziennym świecie fizycznym. Autor niniejszego przeglądu podjął podobne wysiłki w odniesieniu do wiedzy biznesowej opartej na zdrowym rozsądku . Niektóre szersze próby sformułowania baz wiedzy zdroworozsądkowej są cytowane w rozdziale "Bazy wiedzy zdroworozsądkowej".
ZDROWY ROZSĄDEK I SYSTEMY EKSPERCKIE
Pewność, że systemy eksperckie nie są obecnie wystarczające do reprezentacji zdroworozsądkowej, jest wzmacniana przez świadome unikanie w tej dziedzinie problemów zdroworozsądkowych. Doskonałym przykładem jest następująca maksyma dotycząca budowy systemów eksperckich:
Skoncentruj się na wąskiej dziedzinie specjalistycznej, która nie wymaga dużej wiedzy zdroworozsądkowej. ….zbudowanie systemu posiadającego wiedzę specjalistyczną w kilku dziedzinach jest niezwykle trudne, ponieważ prawdopodobnie wymagałoby to różnych paradygmatów i formalizmów. W tym sensie wiele praktycznych prac nad systemami eksperckimi odeszło od tradycji dążenia do ogólności w badaniach nad sztuczną inteligencją, czego dobrym przykładem jest General Problem Solver oraz prace nad przetwarzaniem języka naturalnego. Z drugiej strony, badania oparte na zdrowym rozsądku wydają się idealnie wpisywać w tradycję sztucznej inteligencji, ponieważ do atrybutów zdrowego rozsądku (Zdroworozsądkowa Reprezentacja Wiedzy I) konieczne jest dodanie jeszcze jednego niejawnego atrybutu, a mianowicie zdolności do zastosowania dowolnej wiedzy opartej na zdrowym rozsądku w DOWOLNEJ istotnej dziedzinie. Ta potrzeba ogólności wydaje się być jedną z największych trudności w reprezentowaniu zdrowego rozsądku. Rozważmy na przykład zdroworozsądkowe informacje o pomiarach; znajomość właściwych miar, ich przeliczeń i okresu ich stosowalności jest niezbędna w tak różnych dziedzinach, jak medycyna, biznes i fizyka. Jednak każdy system ekspercki reprezentuje wiedzę, w tym niezbędną wiedzę o skalach pomiarowych, w sposób najwygodniejszy dla jego konkretnych celów. Żadna taka reprezentacja prawdopodobnie nie będzie zbyt użyteczna w żadnym innym systemie w tej samej dziedzinie, a już na pewno nie w systemach w innych dziedzinach. Wydaje się zatem, że przyczyną niezdolności systemów eksperckich w obecnej formie do reprezentowania ogólnego zdrowego rozsądku jest przede wszystkim funkcja ogólności zdrowego rozsądku w porównaniu ze specyfiką systemów eksperckich. Z pozytywnego punktu widzenia, jednym z głównych celów systemów zdroworozsądkowych musi być reprezentacja wiedzy w taki sposób, aby mogła być użyteczna w każdej dziedzinie; tj. gdy strategie przechowywania nie mogą opierać się na wcześniejszych informacjach o tym, do czego wiedza zostanie wykorzystana. Na tym właśnie polega główna różnica między systemami eksperckimi a systemami zdroworozsądkowymi; podczas gdy te pierwsze zajmują się głównie konkretną wiedzą i zachowaniami w ściśle ograniczonym zakresie działalności, zdrowy rozsądek musi obejmować wszystkie obszary wiedzy i zachowań, które nie są wyraźnie przypisane do grona ekspertów. System ekspercki, który zna się na medycynie wewnętrznej, nie zna się na chorobach skóry ani toksykologii, a tym bardziej na platformach wiertniczych czy górnictwie węglowym. Z drugiej strony, systemy oparte na zdrowym rozsądku powinny wiedzieć o przeziębieniach, bólach głowy, samochodach, pogodzie, supermarketach, restauracjach, "kredzie i serze, laku do pieczęci, kapuście i królach".
WDROŻENIA BAZY WIEDZY ZDROWOTNEJ
Biorąc pod uwagę znaczenie wiedzy zdroworozsądkowej i fakt, że jest ona niezbędna w szerokim zakresie zastosowań, podjęto szereg wysiłków w celu zbudowania uniwersalnych baz wiedzy opartej na zdrowym rozsądku. Trzy z najbardziej znanych to Cyc, ConceptNet i WordNet.
Cyc
Projekt Cyc został zainicjowany w 1984 roku przez Douglasa Lenata, który od tamtej pory kieruje jego pracami. Celem projektu było zbudowanie bazy wiedzy obejmującej całą wiedzę zdroworozsądkową niezbędną do zrozumienia zbioru artykułów w encyklopedii. W 2005 roku baza wiedzy zawierała około 15 000 predykatów, 300 000 pojęć i 3 200 000 asercji - faktów, reguł praktycznych i heurystyk do wnioskowania o przedmiotach i zdarzeniach codziennego użytku. Projekt jest nadal aktywny, a baza wiedzy stale się rozrasta. Formalizm zastosowany w Cyc to rachunek predykatów, a asercje są wprowadzane ręcznie.
ConceptNet
ConceptNet to zdroworozsądkowa baza wiedzy i zestaw narzędzi do przetwarzania języka naturalnego, który wspiera wiele praktycznych zadań związanych z rozumowaniem tekstowym. Zamiast ręcznego rejestrowania twierdzeń, jak w Cyc, w ConceptNet są one generowane automatycznie z 700 000 zdań projektu Open Mind CommonSense Project (Singh, 2002), dostarczonych przez ponad 14 000 autorów. Dostępna jest wersja zwięzła zawierająca 200 000 twierdzeń oraz wersja pełna zawierająca 1,6 miliona twierdzeń. ConceptNet jest skonstruowany jako sieć semantyczna.
WordNet
WordNet jest opisany następująco : "Rzeczowniki, czasowniki, przymiotniki i przysłówki są pogrupowane w zestawy synonimów kognitywnych (synsetów), z których każdy wyraża odrębne pojęcie. Synsety są ze sobą powiązane za pomocą relacji konceptualno-semantycznych i leksykalnych. Powstała sieć sensownie powiązanych słów i pojęć może być przeglądana za pomocą przeglądarki.
Struktura WordNet czyni go użytecznym narzędziem w lingwistyce komputerowej i przetwarzaniu języka naturalnego". WordNet zawiera około 155 000 słów, 118 000 synsetów i 207 000 par słowo-znaczenie.
PRZYSZŁE TRENDY I WNIOSKI
Każdy system zaprojektowany do przetwarzania języka naturalnego musi zawierać wiedzę opartą na zdrowym rozsądku, podobnie jak wiele innych typów systemów. W związku z tym rozwój baz wiedzy opartej na zdrowym rozsądku z pewnością będzie kontynuowany. Ponieważ kompletna baza wiedzy oparta na zdrowym rozsądku musi zawierać bardzo duże ilości wiedzy, jej rozwój jest bardzo długotrwałym procesem, który musi być kumulatywny, aby osiągnąć swój cel. W związku z tym implementacje baz wiedzy opartej na zdrowym rozsądku będą się rozwijać i udoskonalać w długim okresie czasu.
WSTĘP
Znaczący postęp w dziedzinie sztucznej inteligencji, w tym maszyny, które grają w szachy na poziomie mistrzowskim lub stawiają diagnozy medyczne, uwypukla intrygujący paradoks. Podczas gdy systemy mogą konkurować z wysoko wykwalifikowanymi ekspertami w wielu dziedzinach, znacznie mniejszy postęp nastąpił w konstruowaniu maszyn wykazujących się prostym zdrowym rozsądkiem, jakiego można oczekiwać od każdego normalnie inteligentnego dziecka. W rezultacie zdrowy rozsądek został uznany za jeden z najtrudniejszych i najważniejszych problemów w dziedzinie sztucznej inteligencji .
TŁO
Znaczenie zdrowego rozsądku
Na początek warto wymienić kilka powodów, dla których zdrowy rozsądek jest tak ważny:
1. Każdy ogólny procesor języka naturalnego musi posiadać zdrowy rozsądek, który jest zakładany w tekście.
2. Podczas tworzenia systemów komputerowych przyjmuje się wiele założeń dotyczących sposobu ich użytkowania i wiedzy użytkowników. Im więcej zdrowego rozsądku można jawnie wbudować w systemy, tym mniej będzie on zależeć od niejawnej zgodności zdrowego rozsądku projektanta z rozsądkiem użytkownika.
3. Wiele systemów eksperckich ma wbudowaną pewną wiedzę zdroworozsądkową, z której wiele jest wielokrotnie przeformułowywanych dla podobnych systemów. Korzystne byłoby ujednolicenie wiedzy zdroworozsądkowej do wykorzystania w różnych systemach.
4. Zdrowy rozsądek ma w dużej mierze element specyficzny dla danego środowiska i kultury. Badanie i formalizacja wiedzy zdroworozsądkowej może pozwolić ludziom z różnych kultur lepiej zrozumieć wzajemne założenia.
Definicja zdrowego rozsądku
Nie będziemy tutaj podejmować próby rygorystycznej definicji zdrowego rozsądku. Intuicyjnie jednak zdrowy rozsądek ma na ogół obejmować następujące zdolności, zdefiniowane dla danej kultury:
a. znajomość powszechnie znanych faktów o świecie,
b. znajomość i zdolność do wykonywania powszechnie stosowanych zachowań oraz przewidywania ich skutków,
c. umiejętność interpretowania lub identyfikowania powszechnie występujących sytuacji w kontekście powszechnie znanych faktów - tj. rozumienia, co się dzieje,
d. umiejętność wiązania przyczyn i skutków,
e. umiejętność rozpoznawania niespójności w opisach typowych sytuacji i zachowań oraz między zachowaniami a ich kontekstami sytuacyjnymi,
f. umiejętność rozwiązywania codziennych problemów.
Podsumowując, zdrowy rozsądek to wiedza, której każdy uczestnik danej kultury oczekuje od każdego innego uczestnika tej kultury, w odróżnieniu od wiedzy specjalistycznej, którą posiadają wyłącznie specjaliści. Warunki konieczne, aby formalizacja mogła rościć sobie prawo do reprezentowania zdrowego rozsądku, są zawarte w powyższej definicji; Formalizm musi wykazywać co najmniej jeden z wymienionych tam atrybutów. Praktycznie wszystkie prace w tej dziedzinie starały się spełnić jedynie pewien podzbiór kryteriów zdrowego rozsądku.
FORMALIZMY REPREZENTACJI ZDROWOTNEGO ROZSĄDKU
W badaniach nad sztuczną inteligencją prace nad zdrowym rozsądkiem są zazwyczaj ujęte w kategorii reprezentacji wiedzy. Celem niniejszego artykułu jest przegląd różnych formalizmów proponowanych do reprezentacji wiedzy zdroworozsądkowej.
FORMALIZMY REPREZENTACJI ZDROWOTNEJ
W badaniach nad sztuczną inteligencją prace nad zdrowym rozsądkiem są zazwyczaj podporządkowane terminowi Reprezentacja Wiedzy. Celem niniejszego artykułu jest przegląd różnych formalizmów proponowanych do reprezentacji wiedzy zdroworozsądkowej. W literaturze omówiono cztery główne schematy reprezentacji wiedzy - reguły produkcji, sieci semantyczne, ramy i logikę. Systemy produkcyjne są często stosowane w budowaniu systemów eksperckich. Praktycznie wszystkie dyskusje na temat reprezentacji zdroworozsądkowej dotyczą jednak sieci semantycznej, ram lub systemów logicznych. Schematy te są stosowane w ramach trzech głównych paradygmatów reprezentacji zdroworozsądkowej - propozycjonalnej, utrzymania prawdy i dyspozycyjnej

W skrócie, modele propozycjonalne to opisy reprezentacji rzeczy lub konkretnych faktów. Gdy reprezentowana wiedza jest nieprecyzyjna lub zmienna, formalizmy propozycjonalne nie są już wystarczające i należy rozważyć przekonania o świecie wygenerowane przez aktualny stan wiedzy systemu oraz uwzględnić zmiany tych przekonań w zależności od okoliczności; taka jest natura systemów podtrzymywania przekonań lub prawdy. Wreszcie, gdy wiedza jest zarówno nieprecyzyjna, jak i niefaktyczna, lecz odnosi się raczej do uczuć, spostrzeżeń i rozumienia, przywoływane są reprezentacje dyspozycyjne. W ramach każdego paradygmatu reprezentacyjnego istnieje szereg specyficznych formalizmów. Rysunek wskazuje na istnienie ośmiu różnych formalizmów reprezentacji wiedzy. Każdy z tych formalizmów przedstawiono poprzez omówienie jednego lub kilku reprezentantów. Potrzeba różnych typów formalizmów, trudności w reprezentowaniu wiedzy wielodomenowej, psychologiczne teorie różnych poziomów świadomości, fizjologiczne dowody na istnienie różnych poziomów mózgu i ich powiązania z określonymi funkcjami, specjalizacja funkcjonalna określonych obszarów mózgu oraz podobne dowody dotyczące obu półkul mózgu - wszystko to przemawia za poglądem, że umysł, czyli jaźń, składa się ze znacznej liczby współpracujących podagentów, do których Minsky (1981) odnosi się jako do społeczeństwa umysłu. Warto pamiętać o tej koncepcji podczas badania różnorodności schematów reprezentacji; sugeruje ona, że wiele takich formalizmów może współistnieć w każdym racjonalnym agencie i że niewiele można zyskać, próbując wybrać "właściwy" formalizm w jakimkolwiek ogólnym sensie.
MODELE PROPOZYCYJNE
Praktycznie wszystkie modele propozycjonalne wiedzy zdroworozsądkowej są postrzegane jako składające się z węzłów powiązanych ze słowami lub tokenami reprezentującymi koncepcje. Węzły mają strukturę hierarchiczną, przy czym węzły niższego poziomu rozwijają lub reprezentują instancje węzłów wyższego poziomu; węzły wyższego poziomu przekazują swoje właściwości tym znajdującym się poniżej, które, jak się mówi, dziedziczą te właściwości. Zatem wszystkie modele propozycjonalne są hierarchicznie ustrukturyzowanymi sieciami składającymi się z węzłów i łuków łączących węzły. Od tego momentu struktury reprezentacyjne zaczynają się rozchodzić w zależności od rozkładu informacji między łukami a węzłami. Z jednej strony węzły są samodzielnymi opisami pojęć, z jedynie hierarchicznymi relacjami między pojęciami wyrażonymi w łukach; ramy i skrypty mają taką naturę. Z drugiej strony węzły zawierają tylko nazwy, a treść opisowa znajduje się w wielości typów relacji, które nadają znaczenie nazwom. Ta ostatnia forma jest ogólnie nazywana siecią semantyczną. Pomiędzy skrajnościami znajdują się reprezentacje, w których wiedza opisowa jest rozłożona między węzły i relacje. Opisane reprezentacje można omawiać jako modele teoretyczne lub implementacje komputerowe, które zazwyczaj wywodzą się z jednego z modeli teoretycznych .
Sieci semantyczne
Sieci semantyczne zostały opracowane w celu reprezentowania zdań i ich struktury składniowej, a nie wiedzy zawartej w zdaniach. Sieć semantyczna składa się z trójek węzłów, łuków łączących węzły i etykiet (Rich, 1983). Słowa zdania są zawarte w węzłach, a jego struktura składniowa jest ujęta w łukach oznaczonych etykietami.
Ramki
W środowisku wykorzystującym ramki (lub schematy) wydaje się, że panuje powszechna zgoda co do tego, że ramki definiują pojęcia poprzez zawartość slotów, które określają komponenty pojęć. Zawartość slotu może być instancją, wartością domyślną lub zwykłą, warunkiem lub podschematem. Ostatnia z tych zawartości slotów generuje ogólnie akceptowaną hierarchiczną naturę reprezentacji pojęć.
Skrypty
W swoim przełomowym artykule na temat ramek Minsky (1975) sugeruje, że ramki nie są dokładnie tym samym, co skrypty Schanka (1981). Główna różnica polega na reprezentowanych koncepcjach. Skrypty opisują czasowe sekwencje zdarzeń reprezentowane przez sekwencję slotów w skrypcie. W tym przypadku struktura slotów ma znaczenie. W przypadku ramek opisujących obiekty dokładna kolejność slotów prawdopodobnie nie ma znaczenia. Czasowa kolejność slotów jest niezbędna w wielu innych reprezentacjach, w tym w reprezentacjach większości zachowań. Podsumowując, ramki, skrypty i sieci semantyczne są logicznie równoważne. Wszystkie trzy są hierarchiami składającymi się z węzłów i relacji; różnią się one położeniem informacji w sieci. Skrypty dodatkowo różnią się czasowym i przyczynowym porządkiem slotów w węzłach.
Rachunek predykatów
Rachunek predykatów pierwszego rzędu jest metodą reprezentacji i przetwarzania wiedzy propozycjonalnej i został opracowany specjalnie w tym celu. Wielu badaczy w tej dziedzinie uważa ten formalizm za najbardziej odpowiedni do reprezentacji wiedzy w sposób zdroworozsądkowy. Omawiając logikę jako narzędzie reprezentacji wiedzy, należy rozróżnić użycie logiki jako formalizmu reprezentacyjnego od użycia języków logistycznych do implementacji. Języki logistyczne mogą implementować dowolny formalizm reprezentacyjny, logistyczny lub inny. Należy również dokonać rozróżnienia między użyciem logiki do wnioskowania a jej użyciem do reprezentacji (Hayes, 1979). Zatem można zastosować wnioskowanie logiczne do dowolnej reprezentacji wiedzy, pod warunkiem, że jest ona podatna na tego rodzaju manipulację; wiedza wyrażona w rachunku predykatów jest najbardziej podatna na taką manipulację. Ożywione debaty w dziedzinie sztucznej inteligencji koncentrowały się na wyborze ram lub logiki do reprezentacji wiedzy w sposób zdroworozsądkowy. Za ramami opowiadali się ci, którzy próbowali wdrożyć schematy reprezentacji wiedzy . Argument jest dwojaki: po pierwsze, formalizmy logistyczne nie mają wystarczającej mocy ekspresyjnej, aby adekwatnie reprezentować wiedzę zdroworozsądkową. Dotyczy to w szczególności dynamicznego dostosowywania tego, co uznaje się za prawdę, w miarę zdobywania nowych informacji. Logika klasyczna nie dopuszcza reinterpretacji w miarę poznawania nowych faktów - jest monotoniczna. Po drugie, argument ten zakłada, że ludzka reprezentacja wiedzy nie podlega regułom logiki formalnej, a zatem logika jest nieadekwatna psychologicznie, a także ekspresyjnie. Logicy odpowiadają na pierwszy argument, że w logice można wyrazić wszystko, ale czasami może to być trudne; szkoła ta nie zgadza się z twierdzeniem, że paradygmat ram ma większą moc ekspresyjną. Hayes (1979) twierdził, że "większość "ram" to jedynie nowa składnia dla elementów logiki pierwszego rzędu". Zatem wszystkie formalizmy reprezentacyjne wydają się mieć wiele wspólnego, nawet jeśli nie są całkowicie równoważne. Odpowiedź na drugi argument brzmi, że przedmiotem badań jest sztuczna inteligencja, zatem przyjęte formalizmy nie muszą przypominać mechanizmów ludzkich. Jednym z punktów porozumienia, który wydaje się wyłaniać między obiema stronami, jest to, że klasyczny rachunek predykatów rzeczywiście nie ma wystarczającej mocy ekspresywnej. Dowodem na to są liczne próby rozszerzenia formalizmów logicznych w celu zapewnienia wystarczającej mocy ekspresywnej, zwłaszcza poprzez złagodzenie niektórych ograniczeń monotoniczności. Istotą monotoniczności jest to, że jeśli teoria A zostanie rozszerzona o dodatkowe aksjomaty, aby stać się teorią B, to wszystkie twierdzenia teorii A pozostają twierdzeniami teorii B. Zatem wnioski w logice monotonicznej są nieodwracalne i to ograniczenie musi zostać złagodzone, aby logiczny system wnioskowania mógł ponownie oceniać swoje wnioski po poznaniu nowych faktów. Wnioski logiki niemonotonicznej są traktowane jako przekonania lub dyspozycje oparte na aktualnej wiedzy i podatne na zmianę w razie potrzeby. Próby przezwyciężenia ograniczeń monotoniczności obejmują rozumowanie niemonotoniczne McCarthy′ego (1980), logiki niemonotoniczne , logikę rozmytą i podejście funkcjonalne reprezentowane przez języki KL-One i KRYPTON. Należy zauważyć, że logika niemonotoniczna działa nie poprzez zmianę reprezentacji logicznej, ale raczej poprzez wzmacnianie
REPREZENTACJE LOGISTYCZNE: SYSTEMY PODTRZYMYWANIA PRZEKONAŃ
Logika rozmyta (Zadeh, 1983)
Obszerna praca Zadeha nad zastosowaniem logiki rozmytej do reprezentacji wiedzy opiera się na założeniu, że rachunek predykatów jest nieadekwatny do reprezentacji wiedzy w rozumieniu potocznym, ponieważ nie dopuszcza predykatów rozmytych (np. mały, tani) ani kwantyfikatorów rozmytych (np. wiele, większość), jak w zdaniu "najbardziej małe ptaki latają". Logika rozmyta postępuje w reprezentacji dyspozycji, wykonując następujące kroki:
1. Propozycja jest traktowana jako zbiór (zwykle niejawnych) ograniczeń rozmytych.
2. Baza danych wyjaśniająca zawiera listy próbek przedmiotu propozycji wraz ze stopniem spełnienia każdego predykatu lub ograniczenia. Dane te służą do obliczania wyników testów określających stopień spełnienia każdego ograniczenia. Wyniki te stają się następnie znaczeniem ograniczeń rozmytych.
Ograniczenie (McCarthy, 1980)
Ograniczenie to forma rozumowania niemonotonicznego (w odróżnieniu od logiki niemonotonicznej), która redukuje kontekst zdania do wszystkiego, co da się wydedukować z samego zdania, i nic więcej. Bez takiego mechanizmu każde stwierdzenie może odwoływać się do całej wiedzy, jaką posiada system, związanej z tematem stwierdzenia, z czego wiele prawdopodobnie byłoby nieistotnych. Pytanie "Wrony i kanarki to ptaki; dlaczego Tweetie boi się wron?" mogłoby skłonić do rozważenia faktu, że strusie i pingwiny również są ptakami, a strusie nie latają i chowają głowy w piasek, podczas gdy pingwiny pływają i jedzą ryby, co jest nieistotne dla rozpatrywanego problemu. Celem ograniczenia jest ograniczenie oceny stwierdzeń problemowych do faktów zawartych w stwierdzeniu - co McCarthy opisuje jako zdolność do przeskakiwania w wnioskach.
Domyślne rozumowanie (Reiter, 1980)
Domyślne rozumowanie Reitera opiera się na rachunku predykatów pierwszego rzędu i stanowi próbę rozwiązania pewnego problemu, który pojawia się podczas wyrażania wiedzy zdroworozsądkowej w klasycznym formalizmie. Problem polega na wyciąganiu wniosków na podstawie niepełnej wiedzy, gdy brakujące informacje można założyć, o ile nie ma dowodów przeciwnych. Takie założenia są możliwe, ponieważ znaczna część wiedzy ze świata rzeczywistego na temat klas obiektów jest prawie zawsze prawdziwa. Zatem większość ptaków jest zdolna do lotu, z kilkoma wyjątkami, takimi jak pingwiny, strusie i kiwi, pod warunkiem, że nie cierpią na specyficzne ułomności, takie jak śmierć lub stopy wbite w beton.
Logika niemonotoniczna (McDermott i Doyle, 1980)
Logika niemonotoniczna stara się sformalizować reprezentację wiedzy w taki sposób, aby modele utrzymywane na podstawie dostarczonych przesłanek mogły się zmieniać, w razie potrzeby, wraz z dodawaniem nowych przesłanek. Zatem zamiast określać prawdziwość lub fałszywość twierdzeń, jak w logice klasycznej, logiki niemonotoniczne utrzymują przekonania oparte na aktualnym poziomie wiedzy.
MODELE DYSPOZYCYJNE
Modele dyspozycyjne próbują ustalić związek między reprezentacją wiedzy a pamięcią. Parafrazując Schanka (1981), rozumienie zdań polega na dodawaniu informacji, zazwyczaj zdroworozsądkowych, niewyrażonych wprost w zdaniu oryginalnym. Zatem pamięć pełna faktów dotyczących świata zdrowego rozsądku jest niezbędna do zrozumienia języka. Co więcej, model lub zbiór przekonań jest niezbędny, aby dostarczyć oczekiwań lub wyjaśnień dotyczących zachowania aktora. Dodanie przekonań do reprezentacji zmienia koncepcję wnioskowania z prostego dodawania informacji, aby umożliwić analizę zdań, na integrowanie danych z danym modelem pamięci; prowadzi to do badania faktów i przekonań w pamięci.
Linie K (Minsky, 1981)
Główną tezą Minsky′ego jest to, że funkcją pamięci jest odtworzenie stanu umysłu. Każde wspomnienie musi zawierać informacje, które mogą później posłużyć do odtworzenia mechanizmów aktywnych w momencie jego powstania. Zakłada się, że pamięć składa się, na najwyższym poziomie, z szeregu luźno powiązanych ze sobą specjalistów - "społeczności umysłu". Każdy ze specjalistów z kolei składa się z trzech krat z połączeniami między nimi. Najbardziej podstawowa krata składa się z "agentów mentalnych" lub węzłów P. Niektórzy z tych agentów uczestniczą w dowolnym wydarzeniu, które można zapamiętać - doświadczeniu, idei lub rozwiązaniu problemu - i zostają z nim skojarzeni. Reaktywacja niektórych z tych agentów odtwarza "częściowy stan mentalny" przypominający oryginał.Reaktywacja węzłów P i wynikające z niej odtwarzanie częściowych stanów mentalnych odbywa się za pomocą linii K połączonych z węzłami. Linie K biorą swój początek w węzłach K osadzonych w drugiej sieci, Piramidzie K. Ustanowienie linii K między węzłem K a niektórymi węzłami P następuje w momencie zapadnięcia w pamięć zdarzenia mentalnego. Informacja w Piramidzie K przepływa w dół, ale nie w górę. Trzecią strukturą w modelu Minsky′ego jest Piramida N. Jej funkcją jest umożliwienie uczenia się, a robi to poprzez konstruowanie nowych węzłów K dla P. Warto wyobrazić sobie tę strukturę jako analogiczną do kuli z kości słoniowej - sfer w sferach.
Pakiety Organizacji Pamięci: MOPS (Schank, 1981)
Chociaż Minsky przedstawia ogólną teorię pamięci bez odwoływania się do reprezentacji pojęć, model Schanka jest silnie zależny od wzajemnych relacji między reprezentacjami a pamięcią. Jest to prawdopodobnie wynikiem szczególnej dziedziny badanej przez Schanka - czasowych sekwencji zdarzeń. Scenariusze, plany, cele i tematy modelu Schanka przypominają piramidy P, K i N Minsky′ego, choć zawierają dodatkowy poziom. Próba dokładniejszego określenia tej relacji sugeruje równoważność scenariuszy z piramidą P, planów z piramidą K i celów z piramidą N. Poziom tematów wydaje się nie być uwzględniony w modelu Minsky′ego, chociaż może to odzwierciedlać "społeczeństwo umysłu", w którym każdy temat reprezentuje członka tego społeczeństwa. Oprócz różnicowania poziomów opisu, model Schanka wyróżnia cztery poziomy pamięci w zależności od stopnia szczegółowości. Poziomy te to:
1. Pamięć zdarzeń (EM) - specyficzne wspomnienia konkretnych sytuacji. Po pewnym czasie mniej istotne aspekty zdarzenia zanikają, pozostawiając zdarzenia uogólnione oraz nietypowe lub interesujące części zdarzenia pierwotnego.
2. Uogólniona pamięć zdarzeń (GEM) - zestawienia zdarzeń, których wspólne cechy zostały wyabstrahowane. To tutaj przechowywane są ogólne informacje o sytuacjach, które miały miejsce wielokrotnie - np. poczekalnia u dentysty.
3. Pamięć sytuacyjna (SM) - zawiera informacje o konkretnych sytuacjach - np. wizyta w gabinecie lekarskim.
4. Pamięć intencjonalna (IM) - wspomnienia uogólnień na wyższym poziomie niż SM - np. uzyskanie pomocy od organizacji.
Skrypty konkretnych sytuacji nie istnieją jako trwałe struktury pamięci, lecz są rekonstruowane z bardziej ogólnych struktur wyższego poziomu, aby ułatwić interpretację zdarzeń w miarę ich rozwoju. Części skryptów niezbędne do interpretacji zdarzenia są pobierane ze struktur pamięci na poziomie sytuacyjnym, zwanych Pakietami Organizacji Pamięci (ang. Memory Organization Packets - MOP). MOP to zbiory zdarzeń, które uległy uogólnieniu ("zlepieniu" - jak to ujął Schank) i są przechowywane pod nimi. MOP to sposób, za pomocą którego można pobrać odpowiedni epizod z pamięci, aby ułatwić interpretację konkretnego zdarzenia. Zatem w pamięci muszą zostać ustanowione połączenia między MOP-ami a konkretnymi zdarzeniami, które są przywoływane w celu ułatwienia przetwarzania. Połączenia te przywodzą na myśl linie K Minsky′ego. MOP wspomaga przetwarzanie zdarzenia dzięki temu, że zawiera abstrakcje podobnych, wcześniejszych zdarzeń i, wraz ze szczególnie zapadającymi w pamięć wyjątkami przechowywanymi w pamięci EM, dostarcza oczekiwań dotyczących rozwoju zdarzeń. Zatem MOP jest skryptem wysokiego poziomu i jest powiązany z MOP-ami jeszcze wyższego poziomu. W przykładzie Schanka, skrypt restauracyjny jest MOP niższego poziomu, powiązanym z MOP-ami bardziej ogólnymi, takimi jak sytuacje społeczne, kontrakty i uzyskiwanie usług. Podobnie jak MOP-y, skrypty podlegają wyszukiwaniu priorytetów czasowych, generują zależności koncepcyjne i zawierają pamięć, dlatego można je traktować jako pod-MOP-y.
PRZYSZŁE TRENDY I WNIOSKI
Chociaż włożono znaczny wysiłek w próby sformalizowania reprezentacji wiedzy opartej na zdrowym rozsądku, żadna z nich nie przyniosła jeszcze w pełni satysfakcjonujących rezultatów. W związku z tym nadal istnieje znaczne pole do popisu w tej dziedzinie. Co więcej, w ostatnich latach powstało niewiele prac teoretycznych dotyczących formalizmów reprezentacji opartej na zdrowym rozsądku. Większość wysiłków przeniosła się na projekty wykorzystujące różne formalizmy do implementacji baz wiedzy opartej na zdrowym rozsądku.
WSTĘP
Spośród wszystkich technik sztucznej inteligencji, sztuczne sieci neuronowe (ANN) okazały się bardzo potężnym narzędziem . Ta technika jest bardzo wszechstronna i dlatego została pomyślnie zastosowana w wielu różnych dyscyplinach (klasyfikacja, klasteryzacja, regresja, modelowanie itp.) (Rabu?al & Dorado, 2005). Jednak jednym z największych problemów przy korzystaniu z ANN jest duży wysiłek ręczny, który należy włożyć w ich rozwój. Wielkim mitem dotyczącym ANN jest to, że są łatwe w obsłudze, a ich rozwój odbywa się niemal automatycznie. Ten proces rozwoju można podzielić na dwie części: rozwój architektury oraz szkolenie i walidację. Ponieważ architektura sieci jest zależna od problemu, proces projektowania tej architektury był kiedyś wykonywany ręcznie, co oznaczało, że ekspert musiał testować różne architektury i szkolić je, aż znalazł taką, która osiągała najlepsze wyniki po procesie szkolenia. Ręczna natura opisanego procesu determinuje jego powolną wydajność, chociaż część szkoleniowa jest całkowicie zautomatyzowana ze względu na istnienie kilku algorytmów, które wykonują tę część. Wraz z tworzeniem narzędzi obliczeń ewolucyjnych (EC) naukowcy pracowali nad zastosowaniem tych technik do opracowywania algorytmów automatycznego tworzenia i trenowania sieci neuronowych, tak aby cały proces (lub przynajmniej jego duża część) mógł być automatycznie wykonywany przez komputery, a zatem w tym procesie trzeba było włożyć niewiele wysiłku ze strony człowieka.
TŁO
EC to zestaw narzędzi opartych na imitacji naturalnego zachowania istot żywych w celu rozwiązywania problemów optymalizacyjnych. Jednym z najbardziej typowych podzbiorów narzędzi w EC są algorytmy ewolucyjne (EA), które opierają się na naturalnej ewolucji i jej implementacji na komputerach. Wszystkie te narzędzia działają na tej samej podstawie: populacja rozwiązań danego konkretnego problemu jest tworzona losowo, a następnie stosuje się do niej proces ewolucyjny. Z tej początkowej losowej populacji ewolucja odbywa się za pomocą selekcji i kombinacji najlepszych osobników (chociaż najgorsze mają również małe prawdopodobieństwo zostania wybranymi), aby stworzyć nowe rozwiązania. Proces ten jest przeprowadzany za pomocą selekcji, krzyżowania i operatorów mutacji. Operatory te są zwykle używane w biologii w jej ewolucji w celu adaptacji i przetrwania. Po kilku pokoleniach istnieje nadzieja, że populacja zawiera dobre rozwiązanie problemu. Pierwszym EA, który się pojawił, były algorytmy genetyczne (GA) w 1975 r. Zgodnie z powyższym wyjaśnieniem działania, algorytmy genetyczne wykorzystują kodyfikację binarną (tj. każde rozwiązanie jest kodowane w ciągu bitów). Później, na początku lat 90. pojawiła się nowa technika, zwana programowaniem genetycznym (GP). Opiera się ona na ewolucji drzew, tj. każdy osobnik jest kodowany jako drzewo, a nie ciąg binarny. Pozwala to na jej zastosowanie w szerszym zestawie środowisk. Chociaż algorytmy genetyczne i algorytmy genetyczne są dwiema najczęściej używanymi technikami w algorytmach ewolucyjnych, więcej narzędzi można zaklasyfikować jako część tego świata, takie jak programowanie ewolucyjne lub strategie ewolucyjne, wszystkie z tą samą podstawą: ewolucja populacji zgodnie z naturalnymi zasadami ewolucji.
ROZWÓJ SIECI ANN Z NARZĘDZIAMI EC
Rozwój sieci neuronowych to temat, który był szeroko omawiany za pomocą bardzo różnych technik. Świat algorytmów ewolucyjnych nie jest wyjątkiem, a dowodem na to jest ogromna liczba prac, które zostały opublikowane na temat różnych technik w tej dziedzinie. Techniki te podążają za ogólną strategią algorytmu ewolucyjnego: początkowa populacja składająca się z różnych genotypów, z których każdy kodyfikuje różne parametry (zwykle wagę połączeń i/lub architekturę sieci i/lub reguły uczenia się) i jest tworzona losowo. Ta populacja jest oceniana w celu określenia sprawności każdego osobnika. Następnie populacja ta jest wielokrotnie ewoluowana za pomocą różnych operatorów genetycznych (replikacja, crossover, mutacja itp.), aż do spełnienia określonego kryterium zakończenia (na przykład, uzyskano wystarczająco dobrego osobnika lub osiągnięto z góry określoną maksymalną liczbę pokoleń). Zasadniczo proces generowania ANN za pomocą algorytmów ewolucyjnych dzieli się na trzy główne grupy: ewolucję wag, architektur i reguł uczenia się.
Ewolucja wag
Ewolucja wag zaczyna się od sieci o ustalonej topologii. W tym przypadku problemem jest ustalenie, za pomocą treningu, wartości wag połączeń sieciowych. Jest to ogólnie postrzegane jako problem minimalizacji błędu sieci, przyjmowanego na przykład jako wynik średniego błędu kwadratowego sieci między pożądanymi wynikami a wynikami osiągniętymi przez sieć. Większość algorytmów szkoleniowych, takich jak algorytm propagacji wstecznej (BP) , opiera się na minimalizacji gradientu. Ma to kilka wad , najważniejszą jest to, że dość często algorytm utknie w lokalnym minimum funkcji błędu i nie jest w stanie znaleźć minimum globalnego, zwłaszcza jeśli funkcja błędu jest multimodalna i/lub nieróżniczkowalna. Jednym ze sposobów przezwyciężenia tych problemów jest przeprowadzenie treningu za pomocą algorytmu ewolucyjnego , tj. sformułowanie procesu treningu jako ewolucji wag w środowisku zdefiniowanym przez architekturę sieci i zadanie do wykonania (problem do rozwiązania). W takich przypadkach wagi mogą być reprezentowane w materiale genetycznym osobników jako ciąg wartości binarnych lub ciąg liczb rzeczywistych. Tradycyjne algorytmy genetyczne (Holland, 1975) wykorzystują metodę kodyfikacji genotypowej w postaci ciągów binarnych. W ten sposób powstało wiele prac, które kodyfikują wartości wag za pomocą konkatenacji wartości binarnych, które je reprezentują. Dużą zaletą tych przybliżeń jest ich ogólność i to, że są bardzo proste w zastosowaniu, tj. bardzo łatwo i szybko można zastosować operatory jednorodnego krzyżowania i mutacji na ciągu binarnym. Wadą stosowania tego typu kodyfikacji jest problem permutacji. Problem ten został podniesiony po rozważeniu, że kolejność, w jakiej wagi są pobierane w ciągu, powoduje, że równoważne sieci mogą odpowiadać całkowicie różnym osobom. To sprawia, że operator krzyżowania staje się bardzo nieefektywny. Logicznie rzecz biorąc, kodyfikacja wartości wag pojawiła się również w formie konkatenacji liczb rzeczywistych, z których każda jest powiązana z określoną wagą . Za pomocą operatorów genetycznych zaprojektowanych do pracy z tym typem kodyfikacji i biorąc pod uwagę, że istniejące operatory dla ciągu bitów nie mogą być tutaj użyte, kilka badań wykazało, że ten typ kodyfikacji daje lepsze wyniki oraz większą wydajność i skalowalność niż algorytm BP.
Ewolucja architektur
Ewolucja architektur obejmuje generowanie struktury topologicznej, tj. topologii i łączności neuronów oraz funkcji przejścia każdego neuronu sieci. Architektura sieci ma ogromne znaczenie dla pomyślnego zastosowania sieci neuronowych, ponieważ ma bardzo znaczący wpływ na zdolność procesową sieci. W ten sposób, z jednej strony, sieć z niewielką liczbą połączeń i liniową funkcją przejścia może nie być w stanie rozwiązać problemu, który inna sieć mająca inne cechy (odrębną liczbę neuronów, połączeń lub typów funkcji) byłaby w stanie rozwiązać. Z drugiej strony, sieć mająca dużą liczbę nieliniowych połączeń i węzłów może być nadmiernie dopasowana i nauczyć się szumu, który jest obecny w treningu jako jego nieodłącznej części, bez możliwości rozróżnienia ich, a ostatecznie nie mieć dobrej zdolności generalizacji. Dlatego projektowanie sieci jest kluczowe, a zadanie to jest klasycznie wykonywane przez ekspertów-ludzi, wykorzystując własne doświadczenie, w oparciu o "próby i błędy", eksperymentując z różnymi zestawami architektur. Ewolucja architektur stała się możliwa dzięki pojawieniu się algorytmów konstruktywnych i destrukcyjnych. Ogólnie rzecz biorąc, algorytm konstruktywny zaczyna od minimalnej sieci (z niewielką liczbą warstw, neuronów i połączeń) i sukcesywnie dodaje nowe warstwy, węzły i połączenia, jeśli są potrzebne, podczas treningu. Algorytm destrukcyjny wykonuje odwrotną operację, tj. zaczyna od maksymalnej sieci i eliminuje niepotrzebne węzły i połączenia podczas treningu. Jednak metody oparte na algorytmach Hill Climbing są dość podatne na upadek do lokalnego minimum. Aby opracować architektury ANN za pomocą algorytmu ewolucyjnego, konieczne jest podjęcie decyzji, jak skodyfikować sieć wewnątrz genotypu, aby mogła być używana przez operatorów genetycznych. W tym celu powstały różne rodzaje kodyfikacji sieciowych. W pierwszej metodzie kodyfikacji, kodyfikacji bezpośredniej, istnieje jednoznaczna korespondencja między genami a reprezentacją fenotypową . Najbardziej typowa metoda kodyfikacji składa się z macierzy C=(cij) o rozmiarze NxN, która reprezentuje architekturę N węzłów, gdzie cij wskazuje obecność lub brak połączenia między węzłami i i j. Możliwe jest użycie cij=1 do wskazania połączenia i cij=0 do wskazania braku połączenia. W rzeczywistości cij może przyjmować wartości rzeczywiste zamiast wartości boolowskich, aby reprezentować wartość wagi połączenia między neuronem "i" i "j", w ten sposób architektura i połączenia mogą być rozwijane jednocześnie. Ograniczenia, które są wymagane w architekturach, można łatwo włączyć do tego schematu reprezentacyjnego. Na przykład sieć feedforward miałaby współczynniki niezerowe tylko w prawym górnym trójkącie macierzy. Tego typu kodyfikacja jest na ogół bardzo prosta i łatwa do wdrożenia. Mają jednak wiele wad, takich jak skalowalność, niemożność kodyfikacji powtarzających się struktur lub permutacja (tj. różne sieci, które są funkcjonalnie równoważne, mogą odpowiadać różnym genotypom). Jako kontrpropozycja dla tego typu bezpośredniej metody kodyfikacji istnieją również pośrednie typy kodyfikacji. W celu skrócenia długości genotypów, tylko niektóre cechy architektury są kodowane w chromosomie. W ramach tego typu kodyfikacji istnieją różne typy reprezentacji. Po pierwsze, należy wspomnieć o reprezentacjach parametrycznych. Sieć może być reprezentowana przez zestaw parametrów, takich jak liczba ukrytych warstw, liczba połączeń między dwiema warstwami itd. Istnieje kilka sposobów kodyfikacji tych parametrów wewnątrz chromosomu. Chociaż reprezentacje parametryczne mogą zmniejszyć długość chromosomu, algorytm ewolucyjny dokonuje wyszukiwania w ograniczonej przestrzeni w obrębie możliwej przestrzeni przeszukiwalnej, która reprezentuje wszystkie możliwe architektury. Inny typ kodyfikacji niebezpośredniej opiera się na systemie reprezentacyjnym o kształcie reguł gramatycznych . W tym systemie sieć jest reprezentowana przez zestaw reguł o kształcie reguł produkcyjnych, które zbudują macierz reprezentującą sieć. Inne typy kodyfikacji, bardziej inspirowane światem biologii, to te znane jako "metody wzrostu". W ich przypadku genotyp nie kodyfikuje już sieci, ale zamiast tego zawiera zestaw instrukcji. Dekodowanie genotypu polega na wykonaniu tych instrukcji, co spowoduje konstrukcję fenotypu. Te instrukcje zazwyczaj obejmują migracje neuronowe, duplikację lub transformację neuronalną oraz różnicowanie neuronalne. Wreszcie, w ramach pośrednich metod kodyfikacji, istnieją inne metody, które są bardzo różne od tych już opisanych. Andersen opisuje technikę, w której każdy osobnik populacji reprezentuje ukryty węzeł zamiast architektury. Każda ukryta warstwa jest konstruowana automatycznie za pomocą procesu ewolucyjnego, który wykorzystuje algorytm genetyczny. Ta metoda ma ograniczenie, że można konstruować tylko sieci typu feed-forward, a także istnieje tendencja do pojawiania się różnych węzłów o podobnej funkcjonalności, co wprowadza pewną redundancję do sieci, którą należy wyeliminować. Jedną z ważnych cech jest to, że ogólnie rzecz biorąc, te metody rozwijają tylko architektury, które są najczęstsze, lub architektury i wagi razem. Zakłada się, że funkcja przejścia każdego węzła architektury została wcześniej określona przez eksperta i jest taka sama dla wszystkich węzłów sieci (przynajmniej dla wszystkich węzłów tej samej warstwy), chociaż wykazano, że funkcja przejścia ma duże znaczenie dla zachowania sieci. Opracowano niewiele metod, które powodują ewolucję funkcji przejścia, a zatem miały one niewielkie reperkusje w świecie sieci neuronowych z EC.
Ewolucja reguły uczenia się
Innym interesującym przybliżeniem rozwoju sieci neuronowych za pomocą EC jest ewolucja reguły uczenia się. Pomysł ten pojawia się, ponieważ algorytm szkoleniowy działa inaczej, gdy jest stosowany do sieci o różnych architekturach. W rzeczywistości, biorąc pod uwagę, że a priori, ekspert zwykle ma bardzo niewielką wiedzę na temat sieci, lepiej jest opracować automatyczny system dostosowujący regułę uczenia się do architektury i problemu, który ma zostać rozwiązany. Istnieje kilka przybliżeń ewolucji reguły uczenia się , chociaż większość z nich opiera się tylko na tym, jak uczenie się może modyfikować lub kierować ewolucją oraz na relacji między architekturą a wagami połączeń. Właściwie istnieje niewiele prac, które skupiają się na ewolucji reguły uczenia się samej w sobie. Jedno z najczęstszych podejść opiera się na ustawieniu parametrów algorytmu BP: tempa uczenia się i pędu. Niektórzy autorzy proponują metody, w których proces ewolucyjny jest używany do znalezienia tych parametrów, pozostawiając stałą architekturę (Kim, Jung, Kim i Park, 1996). Inni autorzy z kolei proponują skodyfikowanie tych parametrów algorytmu BP wraz z architekturą sieci wewnątrz osobników populacji .
PRZYSZŁE TRENDY
Ewolucja sieci neuronowych jest tematem badań od kilku dekad. Tworzenie nowych technik EC i ogólnie nowych technik AI oraz ewolucja i ulepszanie istniejących umożliwiają rozwój nowych metod automatycznego tworzenia sieci neuronowych. Chociaż istnieją metody, które (mniej lub bardziej) automatycznie tworzą sieci neuronowe, zwykle nie są one zbyt wydajne, ponieważ ewolucja architektur, wag i reguł uczenia się jednocześnie prowadzi do posiadania bardzo dużej przestrzeni wyszukiwania, więc ta cecha zdecydowanie musi zostać ulepszona.
WNIOSEK
Świat EC dostarczył zestaw narzędzi, które można zastosować do problemów optymalizacji. W tym przypadku problemem jest znalezienie optymalnej architektury i/lub zestawu wartości wag i/lub reguły uczenia się. Dlatego rozwój sieci neuronowych został przekształcony w problem optymalizacji. Jak pokazują opisane techniki, wykorzystanie technik EC umożliwiło rozwój sieci neuronowych bez ingerencji człowieka lub przynajmniej zminimalizowało udział eksperta w tym zadaniu. Jak wyjaśniono, techniki te mają pewne problemy. Jednym z nich jest już wyjaśniony problem permutacji. Innym problemem jest utrata wydajności: im bardziej skomplikowana jest struktura do rozwinięcia (wagi, reguły uczenia się, architektura), tym mniej wydajny będzie system, ponieważ przestrzeń wyszukiwania staje się znacznie większa. Jeśli system musi rozwijać kilka rzeczy na raz (na przykład architekturę i wagi, aby rozwój ANN był całkowicie zautomatyzowany), ta utrata wydajności wzrasta. Jednak te systemy nadal działają szybciej niż cały ręczny proces projektowania i trenowania ANN kilka razy.