Ako napísať systém otázok a odpovedí. Vytváranie stromov analýzy z viet

Nové informačné technológie

Prednáška č. 2.2. Základné triedy systémov prirodzeného jazyka. Inteligentné systémy otázok a odpovedí

    Nové informačné technológie (3)

1.1. Hlavné triedy systémov prirodzeného jazyka

        Funkčné zložky systémov prirodzeného jazyka

        Porovnávacie charakteristiky hlavných tried NL systémov

        1. Inteligentné systémy otázok a odpovedí

          1. Systémy na vyhľadávanie informácií

            Databázové komunikačné systémy

            Expertné systémy

            Dialógové systémy riešenia problémov

            Inteligentné úložisko a digitálne knižnice

        2. Systémy rozpoznávania reči

          1. Systémy na samostatné rozpoznávanie hovorených príkazov

            Systémy na rozpoznávanie kľúčových slov v prúde súvislej reči

            Systémy kontinuálneho rozpoznávania reči

            Prístup analýzy po syntéze

            Systémy na čítanie z pier

          Prepojené systémy na spracovanie textu

          1. Systémy sumarizácie textu

            Systémy porovnávania a klasifikácie textov

            Systémy klastrovania textu

          Syntetické systémy

          1. Systémy syntézy reči

            Systémy textovej syntézy videa

          Systémy strojového prekladu. Systémy na porozumenie reči (textu).

          1. Systémy prekladu fráz

            Kontextové prekladové systémy

            Systémy na porozumenie reči (textu).

          Ontológie a tezaury

          Rečové a textové databázy

          Komponenty inteligentných systémov

        Porovnávacie charakteristiky systémov prirodzeného jazyka

        Inteligentné systémy otázok a odpovedí

V súčasnosti sú najobľúbenejším produktom spadajúcim do kategórie inteligentných systémov na zodpovedanie otázok (57) systémy na vyhľadávanie informácií.

2.2.1.1. Systémy na vyhľadávanie informácií

Najznámejšie systémy na vyhľadávanie informácií GOOGLE, Yandex, Rambler majú približne rovnaké možnosti a funkčnosť. Jediná vec (58) systémový rozdielGOOGLEod zvyšku má skôr technický charakter: tento systém je implementovaný ako paralelný distribuovaný systém využívajúci veľké množstvo procesorov s interne vyrobenou pamäťou. Možno práve tento rozdiel zohral rozhodujúcu úlohu v nepochybnej nadradenosti tohto systému nad všetkými ostatnými, hoci mali viac intelektuálnych funkcií. (59) Spracovanie prirodzeného jazyka v tomto a iných systémoch na vyhľadávanie informácií nehrá veľmi veľkú úlohu, ale objem ich použitia v komunikačných systémoch človek-stroj je veľmi veľký.

Ryža. 2.2. Typický systém na vyhľadávanie informácií.

(60) Hlavné funkcie systému na vyhľadávanie informácií sa obmedzujú na analýzu zdrojov, indexovanie textov extrahovaných zo zdrojov, spracovanie požiadavky používateľa, porovnávanie textov indexovanej databázy s požiadavkou používateľa a vytváranie výsledkov. Nedávno sa objavil v systéme GOOGLE rečový vstup, ktorý umožňuje zadať do systému požiadavku s obmedzeným objemom hlasom. Ďalšou funkciou používanou v systémoch na vyhľadávanie informácií je funkcia reprezentácie štruktúry modelu systémového sveta, ktorá je prostriedkom navigácie v systémových zdrojoch.

Štandardný (61) systém na vyhľadávanie informácií teda obsahuje sedem hlavných komponentov (pozri obr. 2.2): blok pre vstup informácií, blok analýzy, blok zdrojového indexovania, blok spracovania užívateľských požiadaviek, porovnávací blok zdrojových textov s užívateľom. žiadosť prezentovaná v prirodzenom jazyku, blok na výstup výsledkov a blok na štruktúrovanie oblastí predmetov a navigáciu.

Hlavnou úlohou implementácie vstupu je prezentovať pôvodný súbor textov a požiadavku používateľa vo forme vhodnej pre počítač. Faktom je, že vzhľadom na veľký objem informácií spracovávaných systémami na vyhľadávanie informácií (62) texty spracovávaných dokumentov sa väčšinou v systéme neukladajú.Ukladajú sa iba ich reprezentácie. Texty sa preberajú z úložiska (úložísk) a z času na čas sa spracúvajú (zvyčajne cyklicky).

(63) Takouto reprezentáciou textu by mohol byť napríklad zoznam kľúčových slov extrahovaných z textu (reprezentovaný vektorovo-priestorovým, resp. n-gramatické modely), ale môže existovať aj sieť spoločného výskytu slov v textových fragmentoch.

Hlavná myšlienka (64) vektorovo-priestorový model jednoduché: text je opísaný lexikálnym vektorom v euklidovskom priestore, každá vektorová zložka zodpovedá nejakému objektu obsiahnutému v texte(slovo, fráza, názvy spoločností, pozície, mená atď.), čo sa nazýva termín. Každému Termín použitý v texte má priradenú svoju váhu (významnosť), určenú na základe štatistických informácií o jeho výskyte v samostatnom texte. Vektorová dimenzia je počet výrazov, ktoré sa vyskytujú v textoch.

(65) V polygramovom modeli je text reprezentovaný ako vektor, kde prvky vektora sú všetky kombinácie znakov dĺžky n z abecedyM (pre ruský jazyk M = 33 ). Každý prvok vektora je spojený s frekvenciou výskytu zodpovedajúcehon -gramy v texte. Vektorový rozmer pre ľubovoľný text je prísne pevný a predstavuje 33 3 = 35937 prvkov. Ako však ukazuje prax, v reálnych textoch nie je implementovaných viac ako 25-30 percent n-gramov z celkového prípustného počtu, t.j. pre ruský jazyk ich nie je viac ako 7000.

(66) Sieť spoločného výskytu slov v textových fragmentoch. Text je reprezentovaný rôznymi pojmami v ich vzťahoch. Pojmy aj spojenia sa posudzujú podľa váhy.

(67) Dotaz používateľa podaný v prirodzenom jazyku sa spracuje podobným spôsobom ako pri spracovaní informácií pri indexovaní zdrojových textov, aby sa zjednodušilo porovnávanie týchto textov v prirodzenom jazyku. Vo fáze porovnávania sa v skutočnosti implementujú stratégie vyhľadávania

Okrem metód vnútornej reprezentácie textu teda v systémoch vyhľadávania informácií zohráva významnú úlohu metóda klasifikácie (porovnávania) textov. (68) V súčasnosti sa v praxi používajú tieto typy klasifikátorov::

        (69) Štatistické klasifikátory založené na pravdepodobnostných metódach. Najznámejšia v tejto skupine je rodina Bayesovských klasifikátorov. Ich spoločným znakom je klasifikačný postup založený na Bayesovom vzorci pre podmienenú pravdepodobnosť.

Klasická metóda klasifikácie textu vytvára veľmi silné predpoklady o nezávislosti príslušných udalostí (výskytu slov v dokumentoch), ale prax ukazuje, že naivný Bayesov klasifikátor sa ukazuje ako veľmi účinný.

2. (70) Klasifikátory založené na funkciách podobnosti. Najcharakteristickejšie pre takéto klasifikátory je použitie lexikálnych vektorov modelu termín-dokument, ktoré sa používajú aj v neurónových klasifikátoroch. Ako miery podobnosti zvyčajne berú kosínus uhla medzi vektormi, vypočítaný cez skalárny súčin.

Vzhľadom na vyššie uvedené (72) v systémoch na vyhľadávanie informácií sa používajú nasledujúce stratégie.

1. (73) Na základe kľúčových slov. Kľúčové slová sa zvyčajne dodávajú s váhovými charakteristikami, ktoré určujú váhu slova v texte. Číselná charakteristika vychádza z frekvencie výskytu slov v texte. Sémantická váha slova sa však líši od frekvencie jeho výskytu v texte.

2. Veľmi dôležité (74) Informácie oporadie kľúčových slov v textových fragmentoch. Na zvýšenie efektivity vyhľadávania sa v tomto prípade používa n-gramov kľúčových pojmov namiesto kľúčových pojmov.

3. Pri vyhľadávaní sa využíva aj frekvencia spoločného výskytu kľúčových slov v textových fragmentoch. Vnútorná štruktúra textu (75) z hľadiska kľúčových slov v ich vzťahoch – sémantický portrét textu– je základom pre reprezentáciu textu v systémoch na vyhľadávanie informácií. Sémantický portrét textu nám umožňuje identifikovať logická štruktúra textu (a logickej štruktúry celého textového korpusu), ktoré skvalitňujú vyhľadávanie a zrýchľujú ho.

4. V poslednom čase pri vyhľadávaní začali používať tzv (76) nejasné porovnanie.

Na zlepšenie výsledkov vyhľadávania môže používateľ zmeniť dopyt. Na to slúži spätná väzba. (77) Spracovanie informácií v systéme na vyhľadávanie informácií zahŕňa štruktúrovanie informácií na účely následnej navigácie vrátane ich zoskupovania.

Menej ako (76) Pri výstupe výsledkov musíte pochopiť tie odkazy na zdrojový text (texty), ktoré systém poskytuje používateľovi. Môže ísť o systém citácií, čísel dokumentov, v ktorých sú uložené analyzované texty.

(77) Vyhľadávanie potrebných informácií na sieti pomocou vyhľadávača sa zvyčajne vykonáva takto. Používateľ zadá jeden alebo viac hľadaných výrazov do dialógového okna vyhľadávacieho nástroja. Vyhľadávací nástroj vráti výsledky vyhľadávania, ktoré zodpovedajú týmto hľadaným výrazom. Vyhľadávací nástroj môže napríklad vrátiť zoznam webových adries (URL), ktoré odkazujú na dokumenty obsahujúce jedno alebo viac slov vyhľadávacieho dopytu.

Systémy odpovedania na otázky

Anatolij Nikitin, Pavel Raikov

1. Úvod. 2

1.1 Problémy.. 3

2. Štart systému QA 4

2.1 Ternárne výrazy. 5

2.2 S-pravidlá. 6

2.3 Lexikón. 6

2.6 Anotácie v prirodzenom jazyku. 8

2.7 Záver. 9

3. Štatistické techniky analýzy prirodzeného jazyka. 10

3.1 Úvod. 10

3.2 Určovanie slovných druhov pre slová vo vetách. jedenásť

3.3 Vytváranie stromov analýzy z viet. 14

3.4 Vytváranie vlastných pravidiel analýzy na základe PCFG. Gramatiky stromovej banky. „Markovove gramatiky“ 16

3.5 Lexikálne analyzátory.. 16

1. Úvod

Vzhľadom na rýchly vývoj informačných technológií a neustály nárast objemu informácií dostupných na globálnom internete, otázky efektívneho vyhľadávania a prístupu k údajom sú čoraz aktuálnejšie. Štandardné vyhľadávanie pomocou kľúčových slov často neposkytuje požadovaný výsledok, pretože tento prístup nezohľadňuje lingvistické a sémantické vzťahy medzi dopytovanými slovami. Preto sa v súčasnosti aktívne rozvíjajú technológie spracovania prirodzeného jazyka (NLP) a systémy odpovedania na otázky (QAS), ktoré sú na nich založené.

Systém otázok a odpovedí je Informačný systém, ktorý je hybridom vyhľadávacích, referenčných a inteligentných systémov, ktorý využíva rozhranie prirodzeného jazyka. Vstupom do takéhoto systému je požiadavka formulovaná v prirodzenom jazyku, po ktorej sa spracuje pomocou metód NLP a vygeneruje sa odpoveď v prirodzenom jazyku. Ako základný prístup k úlohe nájsť odpoveď na otázku sa zvyčajne používa nasledujúca schéma: po prvé, systém tak či onak (napríklad vyhľadávaním podľa kľúčových slov) vyberie dokumenty obsahujúce informácie súvisiace s položenou otázkou, potom ich filtruje a zvýrazní jednotlivé textové fragmenty, ktoré môžu obsahovať odpoveď, a potom generujúci modul syntetizuje odpoveď na otázku z vybraných fragmentov.

Ako zdroj informácií používa systém QA buď lokálne úložisko, alebo globálnu sieť, alebo oboje súčasne. Napriek zjavným výhodám využívania internetu, ako je prístup k obrovským, stále rastúcim informačným zdrojom, je s týmto prístupom spojený značný problém – informácie na internete sú neštruktúrované a pre ich správne vyhľadávanie je potrebné vytvárať tzv. „wrappers“, teda podprogramy, ktoré poskytujú jednotný prístup k rôznym informačným zdrojom.

Moderné systémy kontroly kvality sa delia na všeobecné (open-domain) a špecializované (closed-domain). Všeobecné systémy, teda systémy zamerané na spracovanie ľubovoľných otázok, majú pomerne zložitú architektúru, no napriek tomu v praxi dávajú skôr slabé výsledky a nízku presnosť odpovedí. Pre takéto systémy je však spravidla dôležitejší stupeň pokrytia vedomostí ako presnosť odpovedí. Naopak, v špecializovaných systémoch, ktoré odpovedajú na otázky týkajúce sa konkrétnej oblasti, je presnosť odpovedí často kritickým ukazovateľom (lepšie je na otázku neodpovedať vôbec, ako dať nesprávnu odpoveď).

1.1 Problémy

V roku 2002 skupina výskumníkov napísala výskumný plán v oblasti systémov odpovedí na otázky. Bolo navrhnuté zvážiť nasledujúce otázky:

Typy otázok. Rôzne otázky si vyžadujú rôzne spôsoby hľadania odpovedí. Preto je potrebné vytvárať alebo zlepšovať metodické zoznamy typov možných otázok. Spracovanie otázok. O tie isté informácie možno požiadať rôznymi spôsobmi. Vyžaduje sa vytvorenie efektívnych metód na pochopenie a spracovanie sémantiky (významu) vety. Je dôležité, aby program rozpoznal otázky, ktoré sú významovo ekvivalentné, bez ohľadu na štýl, slová, syntaktický vzťahy a idiómy. Chcel by som, aby systém kontroly kvality rozdelil zložité otázky na niekoľko jednoduchých a správne interpretoval kontextové frázy, možno si ich počas dialógu vyjasní s používateľom. Kontextové otázky. Otázky sa kladú v konkrétnom kontexte. Kontext môže objasniť otázku, vyriešiť nejednoznačnosť alebo sledovať myslenie používateľa prostredníctvom série otázok. Zdroje znalostí pre systém QA. Pred zodpovedaním otázky by bolo dobré informovať sa o dostupných textových databázach. Bez ohľadu na to, aké metódy spracovania textu sa používajú, nenájdeme správnu odpoveď, ak nie je v databázach. Zvýraznenie odpovedí. Správne vykonanie tohto postupu závisí od zložitosti otázky, jej typu, kontextu, kvality dostupných textov, spôsobu vyhľadávania atď. – obrovské množstvo faktorov. Preto treba k štúdiu metód spracovania textu pristupovať s veľkou opatrnosťou a tento problém si zasluhuje osobitnú pozornosť. Formulácia odpovede. Odpoveď by mala byť čo najprirodzenejšia. V niektorých prípadoch jednoduché vypúšťanie to z textu. Napríklad, ak sa vyžaduje meno (meno osoby, názov nástroja, choroba), množstvo (kurz meny, dĺžka, veľkosť) alebo dátum ("Kedy sa narodil Ivan Hrozný?") - stačí priama odpoveď. Niekedy však musíte riešiť zložité otázky a tu sú potrebné špeciálne algoritmy zlúčiť odpovede z rôznych dokumentov. Odpovede na otázky v reálnom čase. Potrebujeme vytvoriť systém, ktorý by našiel odpovede v úložiskách za pár sekúnd bez ohľadu na zložitosť a nejednoznačnosť otázky, veľkosť a rozľahlosť dokumentovej základne. Viacjazyčné otázky. Vývoj systémov pre prácu a vyhľadávanie v iných jazykoch (vrátane automatického prekladu). Interaktivita. Informácie, ktoré systém QA ponúka ako odpoveď, sú často neúplné. Systém mohol nesprávne identifikovať typ otázky alebo ho nesprávne „pochopil“. V tomto prípade môže používateľ chcieť nielen preformulovať svoju požiadavku, ale aj „vysvetliť“ programu pomocou dialógu. Mechanizmus uvažovania (inferencia). Niektorí používatelia by chceli dostať odpoveď, ktorá presahuje rámec dostupných textov. Aby ste to dosiahli, musíte do systému QA pridať znalosti, ktoré sú spoločné pre väčšinu oblastí, ako aj prostriedky na automatické výstupy nových znalostí. Užívateľské profily systémov QA. Informácie o používateľovi, ako je oblasť jeho záujmu, spôsob reči a uvažovania a predvolené fakty, by mohli výrazne zlepšiť výkon systému.

2. Štart systému QA

Systém Start QA je príkladom všeobecného systému odpovedí na otázky, ktorý odpovedá na ľubovoľné otázky formulované v anglický jazyk. Vyvíja sa v laboratóriu umelej inteligencie MIT pod vedením Borisa Katza. Tento systém sa prvýkrát objavil na internete v roku 1993 a teraz je dostupný na http://start. plachta. mit. edu. Pri hľadaní odpovede na otázku systém využíva lokálnu znalostnú bázu a množstvo informačných zdrojov na internete.

Systém dokáže odpovedať na rôzne typy otázok, ktoré možno rozdeliť do nasledujúcich kategórií:

Otázky týkajúce sa definícií (Čo je to fraktál?)

Faktické otázky (Kto vynašiel telegraf?)

Otázky o vzťahoch (Ktorá krajina je väčšia, Rusko alebo USA?)

Zoznam dopytov (Ukáž mi nejaké básne od Alexandra Puškina)

Jadrom systému je Knowledge Base. K dispozícii sú 2 moduly: Parser a Generator, ktoré dokážu konvertovať texty v angličtine do špeciálnej formy (T-výrazy), v ktorej sú uložené v Knowledge Base, a naopak generovať anglické texty zo sady T -výrazy.

2.1 Ternárne výrazy

Ternárny výraz (T-výraz) je vyjadrením formy<объект отношение субъект>. V tomto prípade môžu iné T-výrazy pôsobiť ako objekty/subjekty niektorých T-výrazov. Prídavné mená, privlastňovacie zámená, predložky a iné časti vety sa používajú na vytvorenie ďalších T-výrazov. Ďalšie atribúty ponuky ( články, slovesné časy, príslovky, pomocné slovesá, interpunkčné znamienka atď.) sú uložené v špeciálnej štruktúre histórie spojenej s T-výrazom.

Napríklad veta BillprekvapenýHillarysjehoodpoveď" po prechode cez Parser sa skonvertuje na 2 ternárne výrazy: << BillprekvapenieHillary>sodpoveď> A < odpoveďsúvisiace-doBill>. Informácie o čase slovesa prekvapenia budú uložené v štruktúre História.

Dovoľte systému, v ktorého znalostnej báze existujú 2 vyššie opísané T-výrazy, položiť otázku: KohourobilBillprekvapeniesjehoodpovedať?" Problém bude spracovaný v tomto poradí:

1. Nástroj Question Analyzer prevedie otázku na typ šablóny, čím obráti inverziu, ktorá sa používa pri formulovaní otázok v angličtine: Billprekvapenýkoho sjehoodpovedať?".

2. Analyzátor preloží vetu na 2 T-výrazy: <koho> s odpoveďou> A

3. Výsledná šablóna sa porovná s T-výrazmi umiestnenými v databáze znalostí. Zhoda nájdená kedy Koho = Hillary

4. Generátor konvertuje T-výrazy <> s odpoveďou> A do vety a vráti ju ako odpoveď.

Hľadanie odpovedí na otázky typu „Prekvapil Bill svojou odpoveďou?“ prebieha podobným spôsobom. Iba v tomto prípade sa bude hľadať presná zhoda s výrazmi v databáze a nie vyhľadávanie pomocou šablóny.

T-výrazy si teda do určitej miery uchovávajú informácie o sémantických vzťahoch medzi slovami. V roku 2002 sa uskutočnila séria experimentov na vyhodnotenie efektívnosti organizovania vyhľadávania na základe T-výrazov v porovnaní s vyhľadávaním kľúčových slov. Keď Parser spracoval encyklopédiu s popismi rôznych živočíšnych druhov, systém dostal otázku: „Čo jedia žaby? ("Čo jedia žaby?"). Vyššie opísaná metóda vyhľadávania vrátila 6 odpovedí, z ktorých 3 boli správne. Vyhľadávanie zdrojových dokumentov na základe kľúčových slov vrátilo 33 výsledkov vrátane rovnakých 3 správnych odpovedí, ale navyše sa vyskytli náhodné zhody slov žaby A jesť(napríklad odpovede na otázku „Kto žerie žaby?“). Vyhľadávanie založené na T-výrazoch teda prinieslo 10-krát menej nesprávnych odpovedí.

2.2 S-pravidlá

Okrem T-výrazov je v Knowledge Base uložený aj zoznam S-pravidiel. Toto sú pravidlá pre prevod T-výrazov do ekvivalentných foriem. Faktom je, že tá istá myšlienka v prirodzenom jazyku môže byť vyjadrená rôznymi spôsobmi. Napríklad vety "Billova odpoveď Hillary prekvapila" A "Bill prekvapil Hillary svojou odpoveďou" sú rovnocenné. Ale T-výrazy získané pri prechode týchto viet cez Parser sú odlišné: , A <s odpoveďou>, . Preto sa zavádza S-pravidlo Prekvapenie :

<<n1 prekvapenie n2>s n3>, <n3 súvisiaci s n1> = <n3 prekvapenie n2>, <n3 súvisiaci s n1>,

KdeniPodstatné mená

Pomocou takýchto pravidiel je možné opísať lingvistiku tzv variácie, teda ekvivalentné transformácie jazykových konštruktov:

Lexikálny (synonymá)

Morfologické (rovnaké koreňové slová)

Syntaktické (inverzie, aktívny/pasívny hlas, ...)

Okrem toho môžu S-pravidlá popisovať logické dôsledky. Napríklad:

<<A predať B > do C > = <<C kúpiť B >od A>

2.3 Lexikón

Mnoho S-pravidiel platí pre skupiny slov. Napríklad S-pravidlo opísané skôr Prekvapenie sa vykonáva nielen pre sloveso prekvapenie, ale aj pre ľubovoľné sloveso z takzvanej skupiny citovo-reakčných slovies. Aby sa nevyrábali S-pravidlá, bol vytvorený Lexicon, ktorý uchováva všetky slová anglického jazyka. Každé slovo je spojené so zoznamom skupín, do ktorých patrí. Teraz S-pravidlo Prekvapenie možno urobiť ešte abstraktnejšie:

<<n1v n2>s n3>, <n3 súvisiaci s n1> = <n3 vn2>, <n3 súvisiaci s n1>,

Kde niPodstatné mená, vemocionálne-reakčné-slovesá

2.4 WordNet

Okrem Lexikón , ktorý ukladá slová zoskupené podľa rôznych syntaktických a sémantických charakteristík, systém Start využíva ďalší výkonný nástroj na spracovanie sémantiky slov - slovník WordNet . Základnou jednotkou v tomto slovníku je pojem synset. Synset je určitý význam, význam. Rôzne slová môžu mať rovnaký význam (synonymá), a teda patria do jednej synmnožiny, a naopak, jedno slovo môže mať viacero významov, čiže patrí do viacerých synmnožín. Okrem toho slovník WordNet predstavuje vzťahy medzi synsetmi. Medzi podstatnými menami existujú napríklad tieto vzťahy:

- Hypernymá : Yhypernymum X, Ak X– rozmanitosť Y(ovocie– hypernymum broskyňa)

- Hyponymá : Yhyponymum X, Ak Y– rozmanitosť X(broskyňa– hyponymum ovocie)

- Rovnaký v hodnosti : X A Y rovnaký v hodnosti, ak majú spoločné hypernymum ( broskyňa A jablko- rovnaký v poradí)

- Golonims : Yholonim X, Ak X- Časť Y(broskyňa– holoním kosti)

- Meronymá : Ymeronymum X, Ak Y– časť X ( ošúpať– meronymum broskyňa)

Slovník WordNet teda popisuje vzťahy medzi význammi formy všeobecný-osobitný a časť.

WordNet sa používa pri vyhľadávaní zhôd v databáze znalostí. Napríklad, ak je T-výraz uložený v Základe < vtákmôcťlietať> a slovník WordNet to definuje kanárikhyponymum vták. Nech je položená otázka Môcťkanáriklietať?. Analyzátor prevedie túto otázku na výraz < kanárikmôcťlietať>. Ak nenájde zhodu v databáze, Start použije WordNet a pokúsi sa nájsť odpoveď na všeobecnú otázku: Môcťvtáklietať? Táto otázka bude zodpovedaná Áno, z ktorej, vzhľadom na to kanárik– rozmanitosť vták Start to uzavrie kanárikmôcťlietať".

2.5 Omnibase

Nájsť odpovede na faktické otázky ako „Kedy zomrel Beethoven? alebo "Aké je hlavné mesto Anglicka?" Štart používa základňu Omnibase. Táto databáza používa iný model ukladania informácií: „hodnota objektu-vlastníctva“. Napríklad informácie "Federico Fellini je riaditeľom La Strada" budú uložené v databáze Omnibase ako La Strada – režisér – Federico Fellini . Tu LaStrada- objekt, riaditeľ– majetok, a FedericoFellini– hodnotu tohto majetku. S týmto dátovým modelom prebieha vyhľadávanie potrebných informácií pomerne rýchlo a efektívne.

Na vyhľadávanie informácií Omnibase využíva veľké množstvo externých zdrojov dát z internetu: Wikipedia, Google, Internet Movie Database a pod.. V tomto prípade sú dáta extrahované z externého zdroja cez takzvaný wrapper – modul, ktorý poskytuje prístup k externej databáze cez dotazy typu „objekt“ -vlastnosť“. Ak chcete určiť zdroj, v ktorom sú uložené informácie o konkrétnom objekte, Omnibase používa Katalóg predmetov, v ktorej je každý objekt priradený k zdroju údajov. Napríklad predmet LaStrada zodpovedá základu imdb-film(Internetová filmová databáza). Po určení základne, v ktorej sa má hľadať, Omnibase odošle požiadavku na obal tejto databázy: ( LaStrada, riaditeľ) a dostane odpoveď FredericoFellini.

2.6 Anotácie v prirodzenom jazyku

Problém strojovej analýzy prirodzenej reči je veľmi zložitý. Vývojári systémov na zodpovedanie otázok preto navrhujú vyriešiť tento problém z dvoch strán: na jednej strane zlepšiť metódy spracovania prirodzeného jazyka tým, že počítač naučíte „rozumieť“ jazyku, ale na druhej strane sa pokúsia urobiť text pre počítače zrozumiteľnejšie. Konkrétne sa navrhuje zostaviť anotácie v prirodzených jazykoch pre informačné zdroje.

V tomto prípade je možné efektívne organizovať vyhľadávanie nielen textu, ale aj rôznych multimediálnych informácií: obrázkov, video a audio nahrávok. V systéme Start sa anotácie používajú nasledovne: pri pridávaní informácií do databázy znalostí analyzátor spracuje iba jej anotáciu a k vygenerovaným T-výrazom pripojí odkaz na zdrojový zdroj.

Implementácia anotácií prebieha prostredníctvom popisov RDF (Resource Description Framework), ktoré sú pripojené ku každému zdroju. Jazyk RDF je založený na formáte XML. Popis tohto jazyka je pomerne rozsiahly, preto sa obmedzíme len na príklad RDF popisu určitej databázy, v ktorej sú uložené geografické informácie. K tejto základni sú pripojené parametrizované anotácie " veľaľudínaživov ? s " A " populáciaz ? s " a šablóna odpovede: „Populácia ?s je ?o" , Kde ? o označuje prístup k základni a získanie vlastnosti populácia pri objekte ? s. Pri spracovaní takejto anotácie si Parser uloží 2 šablóny otázok a odkaz na šablónu odpovede. Ak pri vykonávaní požiadavky používateľa Start nájde v databáze znalostí zhodu so šablónou otázky, skontaktuje sa s externým zdrojom, z ktorého bola anotácia prevzatá, a vygeneruje sa príslušná odpoveď.

Okrem toho pomocou parametrizovaných anotácií môžete opísať vzor vyhľadávania pre odpoveď na celú triedu otázok. Napríklad otázky ako „Aká je krajina v Afrike s najväčšou rozlohou?“ alebo „Ktorá krajina v Európe má najnižšiu detskú úmrtnosť?“ spadajú pod jednu šablónu: „V akej krajine $regiónu má najväčšiu $atribút " Ďalej anotácia popisuje všeobecný algoritmus na hľadanie odpovedí na takéto otázky.

Niektoré otázky sú zložením niekoľkých otázok. Napríklad odpovedať na otázku „Je pobrežie Kanady dlhšie ako pobrežie Ruska?“ je potrebné po prvé vypočítať dĺžku pobrežia Kanady a Ruska a po druhé porovnať získané hodnoty a vygenerovať odpoveď. Preto pre tento druh otázok môžete opísať plán na nájdenie odpovede, v ktorom budú položené pomocné otázky.

2.7 Záver

Používa sa systém otázok a odpovedí na začiatku diferencované prístup k hľadaniu odpovedí v závislosti od typu otázky. To dáva relatívne dobrý výsledok pre veľký počet všeobecných otázok.

Znalostná báza a ternárne výrazy používané ako základ sú úspešným modelom prezentácie informácií, ktorý na jednej strane do určitej miery zachováva sémantické súvislosti medzi slovami a na druhej strane je dostatočne jednoduchý na efektívnu implementáciu vyhľadávania. a editovanie databázy.

Pomocou anotácií môžete organizovať programový prístup k internetovým informačným zdrojom pomocou univerzálneho rozhrania prirodzeného jazyka. A použitie dodatočných štruktúr, ako je Omnibase, umožňuje zvýšiť efektivitu hľadania odpovedí na niektoré špecifické typy otázok.

Napokon, rôzne slovníky a lingvistické moduly môžu do určitej miery modelovať sémantické črty prirodzeného jazyka a zvládať zložitejšie otázky. Úloha zostavovania takýchto slovníkov, ako aj iné problémy spojené s vývojom systémov otázky a odpovede si nevyhnutne vyžadujú zapojenie odborníkov nielen z oblasti informatiky, ale aj lingvistov a filológov.

3. Štatistické techniky analýzy prirodzeného jazyka

3.1 Úvod

Pozrime sa na proces analýzy návrhov. Našou úlohou bude zostaviť syntaktický strom pre každú vetu. Kvôli relatívnej zložitosti ruský jazyk a nedostatok literatúry pre neho a vedeckých prác na túto tému sa zvážia ďalšie príklady z anglického jazyka. Nižšie je uvedený príklad takejto analýzy.

Obr. 1 Strom analýzy pre frázu „Pes zjedol“

Na obr. 1 vrcholy (det, podstatné meno, np atď.) predstavujú logické kombinácie častí vety. Napríklad np – fráza podstatného mena znamená, že tento uzol stromu je zodpovedný za časť vety, ktorá má význam podstatného mena. Všimnite si, že pre akúkoľvek frázu, dokonca aj takú jednoduchú, môže existovať niekoľko stromov analýzy, ktoré sa budú líšiť v tom, že tej istej fráze budú dávať rôzne významy. Môžete napríklad povedať: „Jedol som mäso so psami.“ Z takejto vety môžete získať 2 úplne odlišné stromy analýzy. V jednom prípade sa ukazuje, že som jedol mäso so psami a v druhom, že som zjedol nejaké mäso zriedené psími vnútornosťami. Najúžasnejšie je, že takéto „úžasné“ príklady sa nachádzajú všade Anglická literatúra, takže sa s nimi budete musieť uspokojiť. Aby ste sa vyhli takýmto absurditám, mali by ste použiť samostatný syntaktický analyzátor, ktorý v rámci svojich možností pomôže nášmu analyzátoru. V tejto práci vytvoríme syntaktický analyzátor, ktorý bude brať do úvahy syntaktické spojenia pri konštrukcii stromu analýzy.

3.2 Určovanie slovných druhov pre slová vo vetách

V angličtine znie úloha tejto časti ako Part-Of-Speech tagging a je jednou z mnohých čiastkových úloh takej sekcie modernej vedy, akou je NLP (Natural Language Processing). Vo všeobecnosti je cieľom NLP umožniť počítaču porozumieť textom v prirodzenom jazyku. S týmito problémami sa v súčasnosti bežne stretávame a ich efektívne riešenia sú veľmi žiadané. Bolo by, samozrejme, skvelé, keby program po „prečítaní“ učebnice fyziky nezávisle odpovedal na otázky ako: „Aký je dôvod zahrievania polovodiča v takom a takom experimente? Tu je okamžite viditeľná ďalšia ťažkosť - aj po prečítaní učebnice musí program stále rozumieť otázkam používateľa a tiež, pokiaľ možno, musí byť schopný generovať svoje vlastné otázky (sen niektorých lenivých učiteľov).

Vráťme sa k už položenej otázke: „Ako určiť Časť reči za slovo vo vete?"

Antonymá" href="/text/category/antonimi/" rel="bookmark">antonymá atď. Keďže sa pozeráme na štatistický prístup, pri každom slove budeme brať do úvahy pravdepodobnosť, že pôjde o podstatné meno, prídavné meno atď. d) Takúto tabuľku pravdepodobnosti môžeme zostaviť na základe testových textov, ktoré už boli ručne analyzované. Na obr. problémy sú okamžite viditeľné - dokonca aj „can“ vo väčšine prípadov ide o modálne sloveso, ale niekedy to môže byť aj podstatné meno. Ukazuje sa, že táto metóda bude vždy považovať „can“ za modálne sloveso. Napriek svojej jednoduchosti a zjavným nevýhodám , táto metóda vykazuje dobré výsledky a v priemere rozpozná, že 90 % slov je správnych. Po formalizácii získaných výsledkov napíšeme produkt, ktorý je potrebné počas tohto algoritmu maximalizovať:

Tu sú uvedené nasledujúce zápisy:

    t – tag (det, podstatné meno, …) w – slovo v texte (can, will...) p(t | w) – pravdepodobnosť, že tag t zodpovedá slovu w

S prihliadnutím na nedostatky predchádzajúceho modelu bol vytvorený nový, ktorý zohľadňuje skutočnosť, že napríklad podľa štatistík je za prídavným menom ďalšie prídavné meno alebo podstatné meno. Stojí za zmienku, že táto, rovnako ako všetky ostatné štatistiky, sa získava z nejakého príkladu a prípad, keď neexistujú žiadne počiatočné štatistiky, sa nebude brať do úvahy. Na základe tohto návrhu bol odvodený nasledujúci vzorec:

    p(w | t) – pravdepodobnosť, že slovo w zodpovedá tagu t p(t1 | t2) – pravdepodobnosť, že t1 nasleduje po t2

Ako je zrejmé z navrhovaného vzorca, snažíme sa vybrať značky tak, aby sa slovo zhodovalo so značkou a značka sa zhodovala s predchádzajúcou značkou. Táto metóda vykazuje lepšie výsledky ako predchádzajúca, čo je celkom prirodzené, napríklad „can“ rozpoznáva ako podstatné meno, a nie ako modálne sloveso.

Skonštruovaný model na výpočet pravdepodobnosti, že množina značiek bude zodpovedať vete, ako sa ukázalo, možno interpretovať ako „Skrytý Markovov model“.

Dostaneme niečo ako konečný automat. Teraz si popíšeme, ako ho získať. Vertices sú časti reči. Dvojica (slovo, pravdepodobnosť) pri vrchole ukazuje pravdepodobnosť, že slovo priradené k danému slovnému druhu bude presne toto, napríklad pre vrchol „det“ a slovo „a“ to bude pravdepodobnosť, že a náhodne vybraný článok z testovacieho textu bude „a“. Prechody ukazujú, aká je pravdepodobnosť, že po jednej časti reči bude nasledovať ďalšia. Napríklad pravdepodobnosť, že sa objavia 2 články za sebou, za predpokladu, že narazíte na článok, sa bude rovnať 0,0016.

Našou úlohou bude nájsť v takomto modeli cestu tak, aby súčin čísel na hranách a vrcholoch bol maximálny. Riešenie takéhoto problému existuje, ale nebudeme sa ním zaoberať, keďže táto problematika presahuje rámec tejto práce. Povedzme, že existujú algoritmy, ktoré riešia tento problém v čase, ktorý je lineárny v počte vrcholov. Dodajme, že podľa existujúcej klasifikácie sme získali „kanonický štatistický tagger“.

Uvažujme teraz o inom prístupe k definovaniu značiek. Nazýva sa to transformačná schéma. Spočíva v tom, že pri práci na testovacích vetách sa najprv použije triviálny algoritmus a potom systém zohľadní všetky pravidlá formulára: „Zmeňte značku slova X na značku Y, ak je značka predchádzajúceho slova Z. .“ Celkový počet takýchto pravidiel bude predstavovať počet značiek v kocke, ktorý je relatívne malý. Preto sa v každom kroku snažíme aplikovať takéto pravidlo a ak sa potom počet správne identifikovaných slovných druhov zvýši, pravidlo sa v prvom kroku stane kandidátom na titul najlepšie pravidlo. Potom sa vyberie najlepšie pravidlo a pridá sa do zoznamu „dobrých“ pravidiel. Robíme to niekoľkokrát. Získame N pravidiel, ktoré „dobre“ zlepšujú pravdepodobnosť systému značiek pre vety z testovacieho systému. Ďalej, pri analýze samotnej ľubovoľnej vety, po aplikácii triviálneho algoritmu, používame už pripravené pravidlá. Pre tento algoritmus možno zaznamenať jednu z jeho hlavných výhod – rýchlosť. Je to rovných 11 000 slov/s, zatiaľ čo algoritmus využívajúci HMM má 1 200 slov/s.

Na záver by som rád dodal, že doteraz sme predpokladali prítomnosť objemnej počiatočnej základne. Ak nič také neexistuje, potom tréning HMM nevedie k výraznému zlepšeniu (účinnosť je 90%). Zatiaľ čo TS (transformačná schéma) umožňuje dosiahnuť 97%. Pripomeňme, že účinnosť sa meria ako počet správne identifikovaných tagov na testovacích textoch.

3.3 Vytváranie stromov analýzy z viet

Obr. 4 Analýza vety „Neznámy jedol šišku vidličkou.“ Obr.

Úlohou tejto časti bude skonštruovať parsovacie stromy podobné tým, ktoré sú znázornené na obr. 4. Hneď si všimnime, že existuje bohatý zber už vytvorené stromy pre zodpovedajúce návrhy z počiatočnej databázy. Viac o tomto systéme sa dozviete na webovej stránke. Poďme okamžite diskutovať o otázke kontroly syntaktických analyzátorov. Jednoducho im podávame vety ako vstup a skontrolujeme zhody vo výsledných stromoch. Dá sa to urobiť niekoľkými spôsobmi, ale v tejto práci použijeme jeden z tých, ktoré už boli navrhnuté. V stromovom priestore uvádzame dve metriky: presnosť a pamäť. Presnosť bude definovaná ako počet správne identifikovaných neterminálnych vrcholov vydelený ich celkovým počtom. Pamäť sa bude rovnať počtu správne nájdených vrcholov, vydelenému počtom neterminálov tej istej vety v databáze. Uvádza sa, že ak použijete najjednoduchší prístup k stavbe stromu, okamžite získate 75% účinnosť pre obe metriky. Moderné syntaktické analyzátory však môžu dosiahnuť účinnosť 87 – 88 % (ďalej, pokiaľ nie je uvedené konkrétne, účinnosť sa bude vzťahovať na obe metriky).

Rozdeľme našu úlohu do 3 hlavných etáp:

    Hľadanie pravidiel, ktoré sa majú použiť Priraďovanie pravdepodobností pravidlám Hľadanie najpravdepodobnejšieho pravidla

Jedným z najjednoduchších mechanizmov na vyriešenie tohto problému sú „pravdepodobnostné bezkontextové gramatiky“ (PCFG). Pozrime sa na príklad gramatiky, ktorý uľahčí pochopenie tohto pojmu:

    sp → np vp (1,0) vp → sloveso np (0,8) vp → sloveso np np (0,2) np → det podstatné meno (0,5) np → podstatné meno (0,3) np → det podstatné meno podstatné meno (0,15) np → np np (0,05)

Sú tu napísané pravidlá pre analýzu zodpovedajúcich vrcholov a pre každé pravidlo existuje pravdepodobnosť jeho aplikácie. Môžeme teda vypočítať pravdepodobnosť, že strom „π“ zodpovedá jeho vete „s“:

margin-top:0cm" type="disc"> s – začiatočná veta π – strom, ktorý sme získali c – prechádza vnútornými vrcholmi stromu r(c) – pravdepodobnosť použitia r pre c

Nebudeme uvádzať presné algoritmy, len povieme, že iterácia cez všetky parse stromy dĺžky N pomocou PCFG zaberie N kubických času. Bohužiaľ je možné poznamenať, že PCFG samy osebe neprodukujú „dobré“ štatistické analyzátory, a preto nie sú široko používané.

3.4 Vytváranie vlastných pravidiel analýzy na základe PCFG. Gramatiky stromovej banky. "Markovove gramatiky"

Pozrime sa na hlavné úlohy, ktoré je potrebné vyriešiť, aby sa návrh analyzoval:

Vytvorenie vlastnej gramatiky vo forme PCFG (bolo by žiaduce, aby náš návrh mal v tejto gramatike aspoň jeden záver). Analyzátor, ktorý by aplikoval dané pravidlá na vetu a získal niektoré alebo všetky možné stromy analýzy. Schopnosť nájsť optimálne stromy pre rovnicu (1).

Prehľad posledných 2 problémov bol uvedený v predchádzajúcej časti, tak sa teraz zastavme

v prvom bode. Najprv vám ponúkneme jednoduché riešenie. Povedzme, že už máme hotovú zbierku parsových stromov. Potom pri spracovaní každého z týchto stromov jednoducho vytvoríme pravidlo z každého neterminálneho vrcholu na základe toho, ako je rozšírený v konkrétnom strome. Potom, ak takéto pravidlo už existuje, zvýšime jeho štatistický parameter o 1, a ak neexistuje, tak do našej gramatiky pridáme nové pravidlo s týmto parametrom rovným 1. Po spracovaní všetkých testovacích stromov vykonajte normalizáciu tak, aby pravdepodobnosť uplatnenia každého pravidla bola ≤ 1. Účinnosť takýchto modelov je 75 %. Takéto modely sa nazývajú „stromové gramatiky“.

Teraz si povedzme trochu o prístupe, ktorý vám umožňuje vymýšľať nové pravidlá za behu. Aby sme to dosiahli, na základe testovacích stromov vytvoríme štatistiku pre nasledujúcu hodnotu – p(t1 | f, t2). Znamená to pravdepodobnosť, že tag „t1“ sa objaví za tagom „t2“ pri rozširovaní tvaru „f“. Napríklad p(adj | np, det) znamená pravdepodobnosť, že za prídavným menom bude nasledovať článok za predpokladu, že rozšírime „podstatnú frázu“ (voľný preklad np) a stretneme sa s členom. Na základe toho môžeme pre pravdepodobnosť správnej aplikácie akéhokoľvek pravidla na nejaký vrchol vytvoriť vzorec:

3.5 Lexikálne syntaktické analyzátory

Hlavnou myšlienkou tejto časti bude zmena štruktúry stromu s cieľom zlepšiť efektivitu nášho modelu. Teraz nepostavíme len parse strom, ako bolo prezentované vyššie, ale ku každému vrcholu dodatočne priradíme slovo, ktoré ho bude najlepšie charakterizovať ako lexikálnu jednotku. Pre vrchol „c“ označíme takú čiaru ako head(c). Hlava (c) bude definovaná ako aplikácia určitej funkcie na deti písmena „c“ a pravidlo, podľa ktorého bolo „c“ „otvorené“. Vo všeobecnosti sa ukazuje, že pri konštrukcii tejto hlavy berieme do úvahy, že niektoré slová sa navzájom často vyskytujú, a preto s takouto štatistikou môžeme zlepšiť pravdepodobnosť analýzy pravdivosti niektorých viet. Napríklad vo vete „augustový obchodný deficit“ sú 4 podstatné mená za sebou, takže ak použijeme predchádzajúce modely, dostaneme veľmi nízku pravdepodobnosť správneho analyzovania tejto vety. Ale fakt, že „deficit“ je hlavnou súčasťou tohto „np“ a že v testovacích textoch sme sa stretli s výrazmi, ktoré súčasne obsahovali „deficit“ a iné slová, nám pomôže správne zostaviť strom analýzy. Teraz formalizujme vyššie uvedené pomocou vzorca:

    p(r | h) je pravdepodobnosť, že pravidlo r bude aplikované na uzol s daným h. p(h | m, t) – pravdepodobnosť, že takéto h je potomkom vrcholu s head = m a tagom t.

Uveďme tabuľku, z ktorej by mala byť jasnejšia podoba vzorca uvedeného vyššie.

h(c) = „deficit“

Aktívne sa tu používa pojem podmienenej pravdepodobnosti. Ide len o to, že pravdepodobnosť, že slovo na vrchole stromu „c“ je „august“, sa ukáže byť vyššia, ak predpokladáme, že head(c) = „deficit“. V skutočnosti chceme naše prípady spresniť, aby veľmi zriedkavé pravidlá ako „pravidlo = np → det vlastné podstatné meno podstatné meno podstatné meno“ mali pomerne dobrú pravdepodobnosť a potom sme mohli spracovať veľmi zložité texty. V tomto prípade nám nezáleží na tom, že pravidlo, ktoré by sme chceli použiť, sa nemusí nachádzať v úvodnej zbierke pravidiel.

3.6 Záver

Štatistický prístup umožňuje riešenie mnohých problémov NLP a je jednou z pomerne nových a rýchlo sa rozvíjajúcich oblastí v matematickej lingvistike. V tejto práci sa zvažovali len základné pojmy a pojmy, čo ponecháva čitateľovi slobodu výberu pri čítaní konkrétnych štúdií na túto tému. Nanešťastie pre rusky hovoriacich čitateľov stojí za zmienku, že počet štúdií a prác na túto tému v Rusku je malý a všetok materiál musel byť prevzatý z anglických zdrojov. Možno ste práve vy ten, kto môže zmeniť situáciu a vyzdvihnúť iniciatívy 2 ruských projektov. Jeden z nich je nekomerčný a vyvíja sa na PM-PU Štátnej univerzity v Petrohrade. Druhý je komerčný produkt od RCO, vedecké práce tejto spoločnosti si záujemcovia môžu prečítať na ich stránke. Všetky príklady a obrázky použité v tomto článku boli prevzaté z.

4. Odkazy

CLEF. http://clef-qa. atď. it/WordNet. http://wordnet. Princeton. edu/Pen treebank. http://www. cis. upenn. edu/~treebank/Štart. http://štart. plachta. mit. edu/TREC. http://trec. nist. gov/ Eugene Charniak, “Štatistické techniky pre analýzu prirodzeného jazyka” Gary C. Borchardt, “Kauzálna rekonštrukcia” Boris Katz, Beth Levin “Využitie lexikálnych zákonitostí pri navrhovaní systémov prirodzeného jazyka” SEMLP. http:///RCO. http://www. *****/

Krátko po nástupe spracovania zoznamov v informatike bol napísaný program BASEBALL (na ilustráciu toho, ako by sa nové metódy dali aplikovať na systémy odpovedania na otázky) (Green, Wolfe, Chomsky a Loughrey, 1961; Greene, 1963). Tento program bol navrhnutý tak, aby odpovedal na otázky o hrách American Baseball League v roku 1959 – odtiaľ pochádza aj jeho názov. Aj keď je spoločenská hodnota tejto aplikácie programu otázna, poskytuje dobrý nástroj na testovanie princípov programovania, ktoré odvtedy našli široké využitie. Správy do programu boli zostavené v jednoduchej podskupine anglického jazyka, ktorou sa prakticky nebudeme zaoberať. Oveľa zaujímavejšia je tu použitá dátová štruktúra.

Údaje programu BASEBALL boli usporiadané do hierarchického systému. Táto dátová štruktúra by mohla byť ekvivalentne reprezentovaná ako strom. Najvyššia úroveň bola ROK (použité boli len údaje za rok 1959, ale program poskytoval možnosti na niekoľko rokov), za nimi nasledoval MESIAC a MIESTO. Po určení ROK, MESIAC a MIESTO sa postupne uvádzalo číslo hry, deň a skóre (body, ktoré tím získal).

Vo všeobecnosti bol formát dátovej štruktúry:

Je zrejmé, že táto forma dátovej štruktúry nie je jedinečná pre baseball a rutiny spracovania dát v programe BASEBALL boli napísané so zámerom pracovať s akoukoľvek hierarchickou dátovou štruktúrou, bez ohľadu na interpretáciu rôznych úrovní a odvetví.

Fungovanie programu BASEBALL možno pochopiť zvážením dvoch konceptov: dátovej cesty a zoznamu špecifikácií.

Dátová cesta je postupnosť vetiev, ktoré je potrebné dodržiavať, aby ste získali informácie o konkrétnej hre.

Napríklad definuje a zároveň vytvára niektoré informácie o tejto hre. Každá hra má priradenú jednu dátovú cestu a jej položky definujú, ako je znázornené v príklade, vlastnosti hry. Na generovanie všetkých možných dátových ciest môžete použiť ľubovoľný jednoduchý stromový vyhľadávací algoritmus, pretože dátový strom je samozrejme konečný.

Zoznam špecifikácií je zoznam atribútov, ktoré musí mať dátová cesta, aby bola platnou odpoveďou na otázku. Napríklad zoznam špecifikácií otázky

Kde (na akých miestach) hral tím Redsox v júli? (1) bude

Povedzme, že jazykový procesor vygeneroval zoznam špecifikácií pre otázku. Hierarchický dátový procesor vezme zoznam špecifikácií a systematicky generuje všetky dátové cesty, ktoré mu zodpovedajú. Cesta zodpovedá zoznamu špecifikácií if

a) dvojica vlastnosť – hodnota (napríklad je obsiahnutá v zozname špecifikácií aj na ceste, alebo

(b) pár vlastnosť-hodnota v zozname špecifikácií má hodnotu (napríklad v tomto prípade je zodpovedajúca hodnota v dátovej ceste zaregistrovaná ako je to možné (v príklade (1), zoznam hodnôt by bol odpoveď).

Ak má pár vlastnosť-hodnota v zozname špecifikácií hodnotu, je konzistentná s hodnotou akejkoľvek funkcie na dátovej ceste. Typ schválenia nie je zaregistrovaný.

Ako už bolo spomenuté, proces generovania dátových ciest a ich priraďovanie k zoznamu špecifikácií neobsahuje nič špecifické pre baseballovú tému. Odvodené páry atribút-hodnota môžu byť tiež konzistentné, ale v tomto prípade sú špecifické pre aplikáciu. Zvážte napríklad otázku:

Koľko zápasov vyhrali tímy na svojich domácich ihriskách v júli? (2)

Na jej zodpovedanie musí program nájsť všetky dátové cesty, ktoré definujú hry, pre ktoré sa hodnota zhoduje s hodnotou a ktorých názov sa zhoduje s hodnotou a má najlepšie skóre. Je zrejmé, že podprogram, ktorý zostavuje príslušný zoznam špecifikácií, sa spolieha na znalosť bejzbalovej hry.

Keď sa nájdu dátové cesty vyhovujúce zoznamom špecifikácií, skombinujú sa do hlavného zoznamu. Je tiež reprezentovaný ako strom. Napríklad cesty odpovedajúce na otázku (1) možno zhrnúť takto:

Odpoveď na otázku je zostavená preskúmaním hlavného zoznamu. V prípade (1) sa odpoveď získa jednoduchým uvedením hodnôt PLACE v hlavnom zozname.

Ryža. 14.1. (pozri sken) Fázy odpovedí na otázky v programe BASEBALL.

Odpoveď na trochu zložitejšiu otázku

Na koľkých miestach hrali Redsox v júli? (3)

možno získať prepočítaním hodnôt v hlavnom zozname.

Schéma tohto postupu pri zodpovedaní otázok je na obr. 14.1. Analyzátor podmnožín prirodzeného jazyka

vníma otázku v prirodzenom jazyku, rozpoznáva typ položenej otázky a vytvára zoznam špecifikácií. Táto časť programu BASEBALL nevyhnutne súvisí s oblasťou použitia v dvoch ohľadoch. Je zrejmé, že musí mať prístup k lexikóne tejto hry. Menej zrejmé, musí obsahovať rutiny, ktoré transformujú výrazy v prirodzenom jazyku ako „koľko“ alebo „v čom“ do vhodných zoznamov špecifikácií. Aj keď Green et al., neobmedzili používateľa v kladení „indexovaných“ otázok, ako sa to robí v knižniciach, vopred určili typy otázok, ktoré môže systém dostávať.

V kroku (B) program vygeneruje zoznam hlavných údajov zo zoznamu špecifikácií. Ako už bolo uvedené, veľké časti B sú nezávislé od aplikácií, hoci jednotlivé rutiny môžu potrebovať odvodené testovacie funkcie. V poslednom kroku je odpoveď odvodená z hlavného zoznamu (bloky a Tu opäť musí programátor predvídať typ kladených otázok a zadať do systému vhodnú rutinu generovania hlavného zoznamu pre každý typ otázky.

Ako je možné vidieť z blokov na obr. 14.1 sa program BASEBALL neobmedzuje len na otázky, na ktoré je možné odpovedať iba raz prejdením údajov. Zamyslime sa nad otázkou:

Koľko tímov hralo v júli na 8 miestach? (4)

Počiatočný zoznam špecifikácií je nasledujúci:

Na otázku definovanú týmto zoznamom špecifikácií nemožno okamžite odpovedať. Namiesto toho musí procesor preskúmať

a nedá sa odpovedať okamžite, preto je potrebná pomocná otázka:

Tiež sa na ňu nedá odpovedať okamžite, takže sa zapamätá a vygeneruje sa otázka

Dá sa odpovedať pomocou procesora otázok, ktorý poskytuje hlavný zoznam

Špecifikácia znamená prezeranie všetkých zoznamov formulára. Spočítaním názvov miest naň získate odpoveď. Môžete ho previesť na zoznam a získať odpoveď na. Toto hneď nasleduje po odpovedi na

Vývoj programu BASEBALL neprekročil rámec prvotného projektu – bežného osudu systémov umelej inteligencie. V skutočnosti sa zdá, že myšlienka hierarchickej dátovej štruktúry zmizla zo strojovo čitateľného programovania. To je trochu prekvapujúce, pretože hierarchické štruktúry umožňujú efektívnu správu údajov, najmä ak sa veľké množstvo informácií musí uchovávať čiastočne v primárnej pamäti a čiastočne v relatívne pomalých, lacných pamäťových zariadeniach (podrobnosti pozri Sussengut, 1963). Okrem toho môžu byť hierarchické štruktúry implementované technikami správy údajov, ktoré sú kompatibilné s tradičnejšími systémami spracovania informácií (Hunt a Kildall, 1971; Lefkowitz, 1969). Niet pochýb o tom, že keď sa chystáte používať programy na „porozumenie“, musíte v určitej fáze nastoliť nevyhnutné praktické otázky nákladov a kompatibility systému. Možno by v budúcnosti stálo za to vrátiť sa k princípom implementovaným v tomto dosť starom programe.

Systémy odpovedania na otázky

Systém otázok a odpovedí(anglicky Question-answering system) je špeciálny typ informačných systémov, ktoré sú hybridom vyhľadávacích, referenčných a inteligentných systémov (často sú považované za inteligentné vyhľadávače). Systém kontroly kvality musí byť schopný prijímať otázky v prirodzenom jazyku, to znamená, že je to systém s rozhraním prirodzeného jazyka. Informácie sa poskytujú na základe dokumentov z internetu alebo z lokálneho úložiska. Moderný vývoj systémov QA umožňuje spracovať mnoho variantov žiadostí o fakty, zoznamy, definície, otázky typu Ako, Prečo, hypotetické, komplexné a interlingválne.

  • Vysoko špecializované Systémy kontroly kvality fungujú v špecifických oblastiach (napríklad medicína alebo údržba automobilov). Budovanie takýchto systémov je pomerne jednoduchá úloha.
  • Sú bežné Systémy QA pracujú s informáciami o všetkých oblastiach poznania, čím umožňujú vyhľadávanie v súvisiacich oblastiach.

Architektúra

Prvé systémy kontroly kvality boli vyvinuté v 60. rokoch minulého storočia a boli to prirodzené jazykové shelly pre expertné systémy zamerané na špecifické oblasti. Moderné systémy sú určené na vyhľadávanie odpovede na otázky v dokumentoch poskytovaných pomocou technológií spracovania prirodzeného jazyka (NLP).

Moderné systémy kontroly kvality zvyčajne obsahujú špeciálny modul - klasifikátor otázok, ktorý určuje typ otázky a podľa toho aj očakávanú odpoveď. Po tejto analýze systém postupne aplikuje na poskytnuté dokumenty stále zložitejšie a jemnejšie metódy NLP, pričom vyraďuje nepotrebné informácie. Najhrubšia metóda je hľadať v dokumentoch- zahŕňa použitie systému vyhľadávania informácií na výber častí textu, ktoré potenciálne obsahujú odpoveď. Potom filter zvýrazní frázy, ktoré sú podobné očakávanej odpovedi (napríklad pri otázke „Kto ...“ filter vráti časti textu obsahujúce mená ľudí). A nakoniec modul zvýraznenie odpovedí medzi týmito frázami nájde správnu odpoveď.

Schéma práce

Výkon systému odpovedí na otázky závisí od kvality textovej základne – ak v nej nie sú odpovede na otázky, systém kontroly kvality nič nenájde. Čím väčšia základňa, tým lepšie, ale iba ak obsahuje potrebné informácie. Veľké úložiská (napríklad internet) obsahujú množstvo nadbytočných informácií. To vedie k dvom pozitívnym bodom:

  1. Keďže informácie sú prezentované v rôznych formách, systém kontroly kvality rýchlo nájde vhodnú odpoveď. Nemusíte sa uchyľovať k zložitým technikám spracovania textu.
  2. Správne informácie sa opakujú častejšie, takže chyby v dokumentoch sú eliminované.

Povrchové vyhľadávanie

Najbežnejší spôsob vyhľadávania je podľa kľúčových slov. Frázy nájdené týmto spôsobom sú filtrované podľa typu otázky a následne zoradené na základe syntaktických vlastností, ako je slovosled.

pokročilé vyhľadávanie

Problémy

V roku 2002 skupina výskumníkov napísala výskumný plán v oblasti systémov odpovedí na otázky. Bolo navrhnuté zvážiť nasledujúce otázky.

Typy otázok Rôzne otázky si vyžadujú rôzne metódy hľadania odpovedí. Preto je potrebné vytvárať alebo zlepšovať metodické zoznamy typov možných otázok. Spracovanie otázok Rovnaké informácie možno požadovať rôznymi spôsobmi. Vyžaduje sa vytvorenie efektívnych metód na pochopenie a spracovanie sémantiky (významu) vety. Je dôležité, aby program rozpoznal otázky, ktoré sú významovo ekvivalentné, bez ohľadu na použitý štýl, slová, syntaktické vzťahy a idiómy. Chcel by som, aby systém kontroly kvality rozdelil zložité otázky na niekoľko jednoduchých a správne interpretoval kontextové frázy, možno si ich počas dialógu vyjasní s používateľom. Kontextové otázky Otázky sa kladú v špecifickom kontexte. Kontext môže objasniť otázku, vyriešiť nejednoznačnosť alebo sledovať myslenie používateľa prostredníctvom série otázok. Zdroje znalostí pre systém QA Pred zodpovedaním otázky by bolo dobré opýtať sa na dostupné textové databázy. Bez ohľadu na to, aké metódy spracovania textu sa používajú, nenájdeme správnu odpoveď, ak nie je v databázach. Výber odpovedí Správne vykonanie tohto postupu závisí od zložitosti otázky, jej typu, kontextu, kvality dostupných textov, spôsobu vyhľadávania atď. – obrovské množstvo faktorov. Preto treba k štúdiu metód spracovania textu pristupovať s veľkou opatrnosťou a tento problém si zasluhuje osobitnú pozornosť. Formulácia odpovede Odpoveď by mala byť čo najprirodzenejšia. V niektorých prípadoch jednoduché vypúšťanie to z textu. Napríklad, ak sa vyžaduje meno (meno osoby, názov nástroja, choroba), množstvo (kurz meny, dĺžka, veľkosť) alebo dátum ("Kedy sa narodil Ivan Hrozný?") - stačí priama odpoveď. Niekedy však musíte riešiť zložité otázky a tu sú potrebné špeciálne algoritmy zlúčiť odpovede z rôznych dokumentov. Odpovedanie na otázky v reálnom čase Je potrebné vytvoriť systém, ktorý by našiel odpovede v úložiskách za pár sekúnd bez ohľadu na zložitosť a nejednoznačnosť otázky, veľkosť a rozsiahlosť dokumentovej základne. Viacjazyčné dopyty Vývoj systémov pre prácu a vyhľadávanie v iných jazykoch (vrátane automatického prekladu). Interaktivita Informácie ponúkané systémom kontroly kvality ako odpoveď sú často neúplné. Systém mohol nesprávne identifikovať typ otázky alebo ho nesprávne „pochopil“. V tomto prípade môže používateľ chcieť nielen preformulovať svoju požiadavku, ale aj „vysvetliť“ programu pomocou dialógu. Mechanizmus uvažovania (inferencie) Niektorí používatelia by chceli dostať odpoveď, ktorá presahuje rámec dostupných textov. Aby ste to dosiahli, musíte do systému QA pridať znalosti, ktoré sú spoločné pre väčšinu oblastí (pozri Všeobecné ontológie v informatike), ako aj prostriedky na automatické odvodzovanie nových znalostí. Používateľské profily systémov QA Informácie o používateľovi, ako je oblasť jeho záujmu, spôsob reči a uvažovania a predvolené fakty, môžu výrazne zvýšiť výkon systému.

Odkazy

  • Dialogus je vyhľadávací nástroj, ktorý automaticky vyberá odpovede na otázky používateľov.
  • [email protected]: Ľudské hľadanie odpovedí na akékoľvek otázky.

Nadácia Wikimedia. 2010.

Pozrite si, čo sú „systémy odpovedania na otázky“ v iných slovníkoch:

    Tento článok je o automatických informačných systémoch. Informácie o type sociálnych sietí nájdete v systéme otázok a odpovedí (webová služba). Systém odpovedania na otázky (systém QA; z angličtiny QA English Question answering... ... Wikipedia

    Inteligentný informačný systém (IIS) je jedným z typov automatizovaných informačných systémov, niekedy sa IIS nazýva znalostný systém. IIS je komplex softvéru, lingvistického a logicko-matematického... ... Wikipedia

    V tomto článku chýbajú odkazy na zdroje informácií. Informácie musia byť overiteľné, inak môžu byť spochybnené a vymazané. Môžete... Wikipedia

    URL... Wikipedia

    - (z anglického Virtual virtual, Digital digital, Assistant assistant, skrátene VDA) webová služba a/alebo aplikácia pre smartfóny a PC, ktorá v skutočnosti plní úlohu osobného tajomníka používateľa. Rieši problémy s plánovaním,... ... Wikipedia

    Reprezentácia znalostí je problém, ktorý vzniká v kognitívnej vede (veda o myslení), počítačovej vede a výskume umelej inteligencie. V kognitívnej vede súvisí s tým, ako ľudia ukladajú a spracúvajú informácie. V informatike s výberom ... Wikipedia

    Reprezentácia znalostí je problém, ktorý vzniká v kognitívnej vede (veda o myslení), v informatike a v umelej inteligencii. V kognitívnej vede súvisí s tým, ako ľudia ukladajú a spracúvajú informácie. V informatike je hlavným cieľom vybrať reprezentáciu... Wikipedia

    Je určený na to, aby používateľ získal čo najpresnejšie (relevantné) informácie o téme, ktorá ho zaujíma (a je obmedzená databázou článkov). Typicky sa článok vyberá podľa hierarchie tém pomocníka. Systémy pomoci sú často kombinované s... ... Wikipédiou

    - (Natural Language Processing, NLP) všeobecný smer umelej inteligencie a matematickej lingvistiky. Študuje problémy počítačovej analýzy a syntézy prirodzeného jazyka. Pri aplikácii na umelú inteligenciu analýza znamená... Wikipedia

    Wolfram|Alpha Hlavná stránka webu ... Wikipedia