Úvod do dopředného a zpětného řetězení
Vpřed a vzad řetězení jsou režimy, které používá Inference Engine k odvození nových informací ze znalostní základny. Inference Engine je jednou z hlavních součástí inteligentního systému v systému umělé inteligence, který aplikuje sadu logických pravidel na existující informace (znalostní báze), aby bylo možné odvodit nové informace z již známé skutečnosti. Přední a zadní řetězení jsou dva režimy, pomocí kterých Inference engine odvozuje nové informace. Dopředná a zpětná propagace jsou přesně proti sobě, a to tak, že odvozují nové informace ze známých skutečností.
Jak dopředu funguje propagace?
Forward Chaining známý některými jako forward racing nebo forward deduction začíná známou skutečností nebo atomovou větou ve znalostní bázi a postupně odvozující pravidla se aplikují na již známá fakta, dokud nedosáhneme cílového stavu. Stručně řečeno, dopředné řetězení rozhoduje nebo dosahuje cílového stavu na základě dostupných údajů.
Vlastnosti dopředného řetězení
- Sleduje přístup zdola nahoru, tj. Odpočet uvažování se pohybuje zdola nahoru
- Nazývá se také přístup založený na údajích, protože k dosažení cílového stavu závisí na existujících datech
- Jde o závěr, tj. Jeho cílem je dospět k závěru z počátečního stavu
- Je široce používán v expertním systému jako CLIPS a Production Rule System
Příklad
Podívejme se na příklad, abychom pochopili, jak Forward Chaining funguje v praxi
Pravidlo 1: IF A je člověk THEN A je savec
Pravidlo 2: IF A je savec THEN A je živá forma
Pravidlo 3: POKUD A je živá forma POTŘEBA A je smrtelná
Skutečnost: Shyam je člověk
Z těchto inferenčních pravidel musíme dosáhnout cíle
Cíl: Je Shyam smrtelníkem?
Kroky:
- Začněte známou skutečností. Víme, že Shyam je člověk (Z Faktického prohlášení).
- Pomocí R1 můžeme usoudit, že Shyam je savec. Protože se nejedná o prohlášení o cíli, pokračujte.
- Pak přeskočte na pravidlo 2: pokud je Shyam savec, pak je to jako živá forma, takže můžeme říci, že Murat je živá forma. Protože se nejedná o prohlášení o cíli, pokračujte
- Používání R3, Protože Shyam je životní forma, musí to být smrtelník. Vzhledem k tomu, že jde o prohlášení cíle, tak Exit
Výhody dopředného řetězení
- Forward Chaining funguje skvěle, když lze dostupné informace použít k dosažení cílového stavu
- Forward Chaining má schopnost poskytovat spoustu dat z omezených počátečních dat
- Forward Chaining je nejvhodnější pro systémovou aplikaci Expert, která vyžaduje větší kontrolu, plánování a monitorování
- Forward Chaining by se měl použít, pokud existuje omezený počet počátečních stavů nebo skutečností
Nevýhody dopředného řetězení
- Inferenční motor vygeneruje nové informace, aniž by věděl, které informace budou relevantní pro dosažení cílového stavu
- Uživatel možná bude muset nejprve zadat mnoho informací, aniž by věděl, které informace budou použity k dosažení cílového stavu
- Inference Engine může vystřelit mnoho pravidel, která nepřispívají k dosažení cílového stavu
- Mohlo by to vést k odlišným závěrům, které mohou vést k vysokým nákladům na proces řetězení
Jak funguje zpětná propagace?
Zpětné řetězení nebo zpětné šíření je obrácením dopředného řetězení. Začíná od stavu cíle a šíří se dozadu pomocí inferenčních pravidel, aby zjistil fakta, která mohou cíl podpořit. To je také nazýváno jako cíl-řízené uvažování. Začíná od daného cíle, hledá THEN část pravidla (akční část), pokud je pravidlo nalezeno a jeho IF část odpovídá Inferenčnímu pravidlu, pak je pravidlo provedeno jiným Inferenčním modulem je nastaveno jako nový subgoal.
Pravidlo 1: POKUD A A B B PAK C
Pravidlo 2: POKUD JE POTŘEBNÉ E
Pravidlo 3: IF A A E THEN H
Fakta: A, B
Cíl: Dokázat H
Důkaz:
Krok 1 : Nejprve systém hledá prohlášení, které má cíl na RHS, tj. R3, pak vyhledejte LHS pravidla, aby se zkontrolovalo, zda obsahuje skutečnost. Obsahuje A a E, ale potřebujeme také B
Krok 2 : Nyní bude mít E jako dílčí cíl, který je prokázán pravidlem 2. Nyní se podívejme na jeho LHS, tj. C
Krok 3: C lze prokázat pravidlem 1, které má A & B jako LHS
Krok 4 : Vzhledem k tomu, že jsme dostali cíl Fakta A&B z cíle, tak Algoritmus končí zde
Krok 5: Zastavte
Vlastnosti zpětného řetězení
- Zpětné řetězení je přístup shora dolů, kde vycházíme ze stavu cíle a snažíme se najít potřebné skutečnosti, které podporují prohlášení o cíli
- Je známo jako cílem řízený přístup, když vycházíme z cíle a poté rozdělíme na dílčí cíl, abychom získali fakta
- Použije strategii hloubky-prvního vyhledávání
- Může generovat pouze omezený počet závěrů
- Testuje pouze několik požadovaných pravidel
Výhody zpětného řetězení
- Hledání zpětného řetězení je zaměřeno tak, aby zpracování skončilo, jakmile je skutečnost ověřena
- Zpětné řetězení zvažuje pouze relevantní části znalostní báze, takže nikdy neprovádí zbytečné závěry
- Na rozdíl od dopředného řetězení je zde zapotřebí pouze několik datových bodů, ale pravidla jsou prohledávána vyčerpávajícím způsobem
- Je velmi účinný při problémech, jako je diagnostika a ladění
Nevýhody
- Vzhledem k tomu, že zpětné řetězení je zaměřeno na cíl, musí být předem znám cíl, který provede zpětné řetězení
- Je obtížné implementovat zpětné řetězení
Závěr - dopředu a dozadu řetězení
Systém založený na pravidlech je relevantní pro každodenní život člověka, takže je nezbytné mít k dispozici pochopení tohoto systému. Oba režimy zapojené do systémů založených na pravidlech přicházejí s vlastními sadami výhod a nevýhod. Výběr přístupu závisí na povaze problému.
Doporučené články
Toto byl průvodce dopředu a dozadu řetězení. Zde diskutujeme vlastnosti, příklady, výhody a nevýhody řetězení dopředu a dozadu. Další informace naleznete také v následujících článcích -
- Dopředné řetězení vs zpětné řetězení
- Síťová zařízení
- Cheat sheet JQuery
- jQuery Elements