OpenCog - OpenCog
Pierwotni autorzy | Programiści OpenCog |
---|---|
Deweloper (y) | Fundacja OpenCog |
Pierwsze wydanie | 21 stycznia 2008 |
Magazyn | |
Napisane w | C ++ , Python , Schemat |
Platforma | Linux |
Rodzaj | Sztuczna inteligencja ogólna |
Licencja | Powszechna Licencja Publiczna GNU Affero |
Stronie internetowej | opencog |
OpenCog to projekt, którego celem jest zbudowanie frameworka sztucznej inteligencji typu open source . OpenCog Prime to architektura robota i wirtualnego poznania ucieleśnionego, która definiuje zestaw oddziałujących komponentów zaprojektowanych w celu stworzenia odpowiednika ludzkiej sztucznej inteligencji ogólnej (AGI) jako wyłaniającego się zjawiska całego systemu. Projekt OpenCog Prime jest przede wszystkim dziełem Bena Goertzela, podczas gdy platforma OpenCog jest przeznaczona jako ogólna struktura dla szeroko zakrojonych badań AGI. Badania wykorzystujące OpenCog zostały opublikowane w czasopismach i zaprezentowane na konferencjach i warsztatach, w tym na dorocznej konferencji na temat sztucznej inteligencji ogólnej . OpenCog jest udostępniany na warunkach Powszechnej Licencji Publicznej GNU Affero .
OpenCog jest używany przez ponad 50 firm, w tym Huawei i Cisco .
Pochodzenie
OpenCog był pierwotnie oparty na wydaniu w 2008 roku kodu źródłowego zastrzeżonego silnika „Novamente Cognition Engine” (NCE) firmy Novamente LLC. Oryginalny kod NCE jest omówiony w książce PLN (odniesienie poniżej). Stały rozwój OpenCog jest wspierany przez Artificial General Intelligence Research Institute (AGIRI), projekt Google Summer of Code , Hanson Robotics , SingularityNET i inne.
składniki
OpenCog składa się z:
- Bazie wykresu , nazwany AtomSpace , że posiada „atomy” (czyli warunki , formuła atomowa , zdania i relacje ) wraz z ich „wartości” ( wycen lub interpretacji , które mogą być traktowane jako per-atomu baz danych klucz-wartość ). Przykładem wartości byłaby wartość prawdy . Atomy są unikalne w skali globalnej, niezmienne i indeksowane (przeszukiwalne); wartości są ulotne i zmienne.
- Zbiór predefiniowanych atomów, zwanych Atomese , używanych do ogólnej reprezentacji wiedzy , takiej jak grafy koncepcyjne i sieci semantyczne , a także do reprezentowania i przechowywania reguł (w sensie przepisywania terminu ) potrzebnych do manipulowania takimi wykresami.
- Kolekcja wstępnie zdefiniowanych atomów, które kodują podsystem typu , w tym konstruktory typów i typy funkcji . Służą one do określania typów zmiennych, terminów i wyrażeń oraz służą do określania struktury wykresów ogólnych zawierających zmienne.
- Zbiór wstępnie zdefiniowanych atomów, które kodują zarówno funkcjonalne, jak i imperatywne style programowania. Należą do poboru lambda do wiązania wolnych zmienne w zmiennych związanych , a także do wykonywania redukcji beta .
- Zbiór predefiniowanych atomów, które kodują solver spełnialności teorii modulo , wbudowany jako część generycznego silnika zapytań grafowych, do wykonywania dopasowywania wzorców grafów i hipergrafów ( wykrywanie izomorficznych podgrafów ). To uogólnia ideę strukturalnego języka zapytań ( SQL ) na dziedzinę ogólnych zapytań graficznych; jest to rozszerzona forma języka zapytań grafowych .
- Ogólny silnik reguł , w tym mechanizm łańcuchowy do przodu i mechanizm łańcuchowy do tyłu , który jest w stanie łączyć ze sobą reguły. Reguły są dokładnie zapytaniami grafowymi podsystemu zapytań grafowych, więc silnik reguł nieco przypomina planer zapytań . Został zaprojektowany w taki sposób, aby umożliwić implementację różnych rodzajów mechanizmów wnioskowania i systemów wnioskowania , takich jak wnioskowanie bayesowskie lub logika rozmyta , lub zadań praktycznych, takich jak rozwiązywanie ograniczeń lub planowanie ruchu .
- Podsystem alokacji uwagi oparty na teorii ekonomii, zwany ECAN. Podsystem ten służy do kontrolowania kombinatorycznej eksplozji możliwości wyszukiwania, które są napotykane podczas wnioskowania i łączenia.
- Implementacja mechanizmu wnioskowania probabilistycznego opartego na probabilistycznych sieciach logicznych (zł). Obecna implementacja wykorzystuje silnik reguł do łączenia w łańcuch określonych reguł wnioskowania logicznego (takich jak modus ponens ), wraz z kilkoma bardzo określonymi formułami matematycznymi przypisującymi prawdopodobieństwo i pewność każdej dedukcji. Podsystem ten można traktować jako pewnego rodzaju pomocnik dowodowy, który działa ze zmodyfikowaną formą wnioskowania bayesowskiego.
- Probabilistyczny ewolucyjny program genetyczny zwany Meta-Optimizing Semantic Evolutionary Search lub MOSES. Służy do odkrywania kolekcji krótkich programów Atomese, które wykonują zadania; można je traktować jako rodzaj uczenia się drzewa decyzyjnego , co prowadzi do pewnego rodzaju lasu decyzyjnego , a raczej jego uogólnienia.
- System wprowadzania języka naturalnego składający się z Link Grammar , częściowo inspirowany zarówno teorią znaczenia-tekstu, jak i gramatyką słów Dicka Hudsona , która koduje relacje semantyczne i składniowe w Atomese.
- System generowania języka naturalnego.
- Implementacja teorii psi do radzenia sobie ze stanami emocjonalnymi , popędami i popędami, nazwana OpenPsi.
- Interfejsy do robotów Hanson Robotics , w tym modelowanie emocji za pośrednictwem OpenPsi. Obejmuje to projekt Loving AI , używany do demonstrowania technik medytacyjnych.
Organizacja i finansowanie
W 2008 roku Machine Intelligence Research Institute (MIRI), dawniej nazywany Singularity Institute for Artificial Intelligence (SIAI), sponsorował kilku badaczy i inżynierów. Od czasu udziału OpenCog w Google Summer of Code w 2008 i 2009 roku dokonano wielu wkładów ze strony społeczności open source . Obecnie MIRI nie obsługuje już OpenCog. OpenCog otrzymał fundusze i wsparcie z kilku źródeł, w tym rządu Hongkongu, Politechniki w Hongkongu , Fundacji Jeffreya Epsteina VI i Hanson Robotics . Projekt OpenCog jest obecnie powiązany z SingularityNET i Hanson Robotics.
Aplikacje
Podobnie jak w przypadku innych architektur poznawczych , głównym celem jest stworzenie wirtualnych ludzi, którzy są trójwymiarowymi postaciami awatarów . Celem jest naśladowanie zachowań, takich jak emocje, gesty i uczenie się. Na przykład moduł emocji w oprogramowaniu został zaprogramowany tylko dlatego, że ludzie mają emocje. Sztuczną inteligencję ogólną można zrealizować, jeśli symuluje inteligencję ludzi.
Samoopis projektu OpenCog dostarcza dodatkowych możliwych aplikacji, które idą w kierunku przetwarzania języka naturalnego i symulacji psa.
Zobacz też
Źródła
- Hart, D; B Goertzel (2008). OpenCog: struktura oprogramowania dla zintegrowanej sztucznej inteligencji ogólnej (PDF) . Obrady pierwszej konferencji AGI. Gbooks
- Goertzel, B., Iklé, M., Goertzel, IF, Heljakka, A. Probabilistic Logic Networks, A Comprehensive Framework for Uncertain Inference , Springer, 2009, VIII, 336 p., Hardcover ISBN 978-0-387-76871-7
Bibliografia
Linki zewnętrzne
- Oficjalna strona internetowa
- OpenCog Wiki
- AGI 2011: OpenCog - GoogleTechTalks na YouTube
- AGI 2011: Architectures Part I - GoogleTechTalks on YouTube
- Sztuczna inteligencja ogólna: teraz jest czas - 2007 GoogleTechTalks on YouTube
- CogPrime: integracyjna architektura dla ucieleśnionej sztucznej inteligencji ogólnej
- OpenCog: Open Source Software Framework oraz projekt i wizja zaawansowanego AGI. Film na YouTube Nagrany na Monash University Australia, wrzesień 2011. Adam Ford
- Film wprowadzający do OpenCog autorstwa Bena Goertzela Wideo na YouTube . Ben przemawia na OpenCog w Tai Po, Hongkong, grudzień 2011. Adam Ford
- Ben Goertzel - przyszłość AGI - rozwój Open Cog w Azji Film na YouTube Adam Ford