Odpowiedzi na pytania - Question answering

Pytanie sekretarka ( QA ) jest dyscypliną informatyka obrębie pola wyszukiwania informacji i przetwarzania języka naturalnego (NLP), która dotyczy systemów, które automatycznie odpowiadać na pytania stawiane przez ludzi w budynku języku naturalnym .

Przegląd

Implementacja odpowiadająca na pytania, zwykle program komputerowy, może konstruować swoje odpowiedzi, odpytując ustrukturyzowaną bazę wiedzy lub informacji, zwykle bazę wiedzy . Częściej systemy odpowiedzi na pytania mogą pobierać odpowiedzi z nieustrukturyzowanego zbioru dokumentów w języku naturalnym.

Niektóre przykłady zbiorów dokumentów w języku naturalnym wykorzystywanych w systemach odpowiedzi na pytania obejmują:

  • lokalny zbiór tekstów referencyjnych
  • dokumenty organizacji wewnętrznej i strony internetowe
  • skompilowane raporty newswire
  • zestaw stron Wikipedii
  • podzbiór stron World Wide Web

Badania polegające na udzielaniu odpowiedzi na pytania dotyczą szerokiego zakresu typów pytań, w tym: faktów, listy, definicji , Jak , Dlaczego , pytań hipotetycznych, ograniczonych semantycznie i pytań międzyjęzykowych.

  • Odpowiadanie na pytania w domenie zamkniętej dotyczy pytań z określonej dziedziny (na przykład medycyny lub konserwacji pojazdów) i może wykorzystywać wiedzę specyficzną dla danej domeny, często sformalizowaną w ontologiach . Alternatywnie, zamknięta domena może odnosić się do sytuacji, w której akceptowane są tylko ograniczone rodzaje pytań, takie jak pytania proszące o informacje opisowe, a nie proceduralne . Systemy odpowiedzi na pytania w kontekście aplikacji odczytu maszynowego zostały również skonstruowane w dziedzinie medycyny, np. związanej z chorobą Alzheimera.
  • Odpowiadanie na pytania w otwartej domenie dotyczy pytań dotyczących prawie wszystkiego i może polegać jedynie na ogólnych ontologiach i wiedzy o świecie. Z drugiej strony, systemy te mają zwykle znacznie więcej danych, z których można uzyskać odpowiedź.

Historia

Dwa wczesne systemy odpowiedzi na pytania to BASEBALL i LUNAR. BASEBALL odpowiadał na pytania dotyczące ligi Major League Baseball przez okres jednego roku. LUNAR z kolei odpowiadał na pytania dotyczące analizy geologicznej skał zwróconych przez misje księżycowe Apollo. Oba systemy odpowiedzi na pytania były bardzo skuteczne w wybranych przez siebie dziedzinach. W rzeczywistości LUNAR został zademonstrowany na konwencji księżycowej w 1971 roku i był w stanie odpowiedzieć na 90% pytań w swojej dziedzinie, zadawanych przez osoby nieprzeszkolone w systemie. Kolejne systemy odpowiedzi na pytania w ograniczonej domenie zostały opracowane w kolejnych latach. Wspólną cechą wszystkich tych systemów jest to, że posiadały one podstawową bazę danych lub system wiedzy, który został napisany ręcznie przez ekspertów z wybranej dziedziny. Zdolności językowe BASEBALL i LUNAR wykorzystywały techniki podobne do ELIZA i DOCTOR , pierwszych programów chatterbotowych .

SHRDLU był bardzo udanym programem odpowiedzi na pytania opracowanym przez Terry'ego Winograda pod koniec lat 60. i na początku lat 70. XX wieku. Symulował pracę robota w świecie zabawek („świecie klocków”) i dawał możliwość zadawania robotowi pytań o stan świata. Ponownie, siłą tego systemu był wybór bardzo specyficznej dziedziny i bardzo prostego świata z regułami fizyki, które można było łatwo zakodować w programie komputerowym.

W latach 70. opracowano bazy wiedzy skierowane do węższych dziedzin wiedzy. Systemy odpowiadania na pytania opracowane w celu współpracy z tymi systemami eksperckimi dawały bardziej powtarzalne i trafne odpowiedzi na pytania z obszaru wiedzy. Te systemy eksperckie bardzo przypominały nowoczesne systemy odpowiedzi na pytania, z wyjątkiem ich wewnętrznej architektury. Systemy eksperckie w dużej mierze opierają się na skonstruowanych przez ekspertów i zorganizowanych bazach wiedzy , podczas gdy wiele nowoczesnych systemów odpowiadania na pytania opiera się na statystycznym przetwarzaniu dużego, nieustrukturyzowanego korpusu tekstowego w języku naturalnym.

Lata 70. i 80. przyniosły rozwój kompleksowych teorii w językoznawstwie komputerowym , które doprowadziły do ​​rozwoju ambitnych projektów w zakresie rozumienia tekstu i odpowiadania na pytania. Jednym z przykładów takiego systemu był Unix Consultant (UC), opracowany przez Roberta Wilensky'ego na Uniwersytecie Kalifornijskim w Berkeley pod koniec lat osiemdziesiątych. System odpowiadał na pytania dotyczące systemu operacyjnego Unix . Posiadał obszerną, ręcznie opracowaną bazę wiedzy na temat swojej domeny i miał na celu sformułowanie odpowiedzi tak, aby uwzględnić różne typy użytkowników. Kolejnym projektem był LILOG, system rozumienia tekstu działający w dziedzinie informacji turystycznej w niemieckim mieście. Systemy opracowane w ramach projektów UC i LILOG nigdy nie wyszły poza etap prostych demonstracji, ale pomogły w opracowaniu teorii dotyczących lingwistyki obliczeniowej i rozumowania.

Opracowano specjalistyczne systemy odpowiedzi na pytania w języku naturalnym, takie jak EAGLi dla naukowców zajmujących się zdrowiem i naukami przyrodniczymi.

Architektura

Od 2001 r. systemy odpowiadania na pytania zazwyczaj zawierały moduł klasyfikatora pytań , który określa typ pytania i typ odpowiedzi.

Metody odpowiadania na pytania

Odpowiadanie na pytania jest bardzo zależne od dobrego korpusu wyszukiwania — ponieważ bez dokumentów zawierających odpowiedź system odpowiadania na pytania niewiele może zdziałać. W związku z tym sensowne jest, aby większe rozmiary kolekcji na ogół dobrze wpływały na lepszą wydajność odpowiadania na pytania, chyba że domena pytań jest ortogonalna w stosunku do kolekcji. Pojęcie nadmiarowości danych w ogromnych zbiorach, takich jak sieć, oznacza, że ​​bryłki informacji mogą być formułowane na wiele różnych sposobów w różnych kontekstach i dokumentach, co prowadzi do dwóch korzyści:

  1. Dzięki temu, że właściwe informacje pojawiają się w wielu formach, zmniejsza się obciążenie systemu odpowiadania na pytania związane z wykonywaniem złożonych technik NLP w celu zrozumienia tekstu.
  2. Prawidłowe odpowiedzi można odfiltrować od fałszywych trafień , polegając na tym, że poprawna odpowiedź pojawia się w dokumentach więcej razy niż przypadki błędnych.

Niektóre systemy odpowiedzi na pytania w dużym stopniu opierają się na automatycznym rozumowaniu .

Odpowiadanie na pytania dotyczące otwartej domeny

W wyszukiwaniu informacji system odpowiedzi na pytania w otwartej domenie ma na celu zwrócenie odpowiedzi w odpowiedzi na pytanie użytkownika. Zwracana odpowiedź ma postać krótkich tekstów, a nie listy odpowiednich dokumentów. System wykorzystuje kombinację technik z lingwistyki komputerowej , wyszukiwania informacji i reprezentacji wiedzy do znajdowania odpowiedzi.

System przyjmuje jako dane wejściowe pytanie w języku naturalnym, a nie zestaw słów kluczowych, na przykład „Kiedy jest święto narodowe Chin?” Zdanie jest następnie przekształcane w zapytanie poprzez jego logiczną formę . Wprowadzanie danych wejściowych w postaci pytania w języku naturalnym sprawia, że ​​system jest bardziej przyjazny dla użytkownika, ale trudniejszy do wdrożenia, ponieważ istnieją różne typy pytań i system będzie musiał zidentyfikować właściwe, aby udzielić sensownej odpowiedzi. Przypisanie typu pytania do pytania jest kluczowym zadaniem, cały proces wyodrębniania odpowiedzi polega na znalezieniu właściwego typu pytania, a tym samym poprawnego typu odpowiedzi.

Hasło ekstrakcja jest pierwszym krokiem do identyfikacji typu zapytania wejściowego. W niektórych przypadkach istnieją wyraźne słowa, które bezpośrednio wskazują typ pytania, np. „Kto”, „Gdzie” lub „Ile”, słowa te informują system, że odpowiedzi powinny być typu „Osoba”, „Lokalizacja”, lub „Liczba”. W powyższym przykładzie słowo „Kiedy” wskazuje, że odpowiedź powinna być typu „Data”. Do określenia typu odpowiedzi można również użyć technik znakowania POS (part-of-speech) i technik analizy składniowej. W tym przypadku tematem jest „Chiński Święto Narodowe”, predykatem jest „jest”, a modyfikatorem przysłówkowym jest „kiedy”, dlatego typem odpowiedzi jest „Data”. Niestety, niektóre pytające słowa, takie jak „Który”, „Co” lub „Jak” nie dają jasnych typów odpowiedzi. Każde z tych słów może reprezentować więcej niż jeden typ. W takich sytuacjach należy rozważyć inne słowa w pytaniu. Pierwszą rzeczą do zrobienia jest znalezienie słów, które mogą wskazać znaczenie pytania. Do zrozumienia kontekstu można użyć słownika leksykalnego, takiego jak WordNet .

Po zidentyfikowaniu typu pytania, system wyszukiwania informacji służy do odnalezienia zestawu dokumentów zawierających prawidłowe słowa kluczowe. Tagger i Chunker NP Grupa / czasownik może być używany w celu sprawdzenia, czy właściwe podmioty i stosunki wymienione są w znalezionych dokumentach. W przypadku pytań, takich jak „Kto” lub „Gdzie”, narzędzie rozpoznające nazwane podmioty służy do wyszukiwania odpowiednich imion „Osoba” i „Lokalizacja” w pobranych dokumentach. Do rankingu wybierane są tylko odpowiednie paragrafy.

Wektor przestrzeń modelu może być stosowany jako strategię klasyfikacji odpowiedź kandydujących. Sprawdź, czy odpowiedź jest poprawnego typu, jak określono na etapie analizy typu pytania. Do walidacji odpowiedzi kandydatów można również zastosować technikę wnioskowania. Następnie każdemu z tych kandydatów przyznawana jest ocena w zależności od liczby zawartych w nim słów pytających oraz tego, jak blisko są one do kandydata, im więcej i im bliżej, tym lepiej. Odpowiedź jest następnie tłumaczona na zwięzłą i znaczącą reprezentację poprzez parsowanie. W poprzednim przykładzie oczekiwaną odpowiedzią wyjściową jest „1 października”.

Matematyczne odpowiedzi na pytania

W 2018 r. opublikowano system odpowiedzi na pytania z otwartym kodem źródłowym oparty na Ask Platypus i Wikidata . System przyjmuje jako dane wejściowe pytanie w języku naturalnym w języku angielskim lub hindi i zwraca wzór matematyczny pobrany z Wikidanych jako zwięzłą odpowiedź. Wynikowa formuła jest tłumaczona na postać obliczeniową, umożliwiając użytkownikowi wstawienie wartości zmiennych. Nazwy i wartości zmiennych oraz wspólne stałe są pobierane z Wikidanych, jeśli są dostępne. Twierdzi się, że system przewyższa komercyjny silnik matematycznej wiedzy obliczeniowej na zestawie testowym.

Metody MathQA muszą łączyć język naturalny i język formuł. Jednym z możliwych podejść jest wykonanie nadzorowanej adnotacji za pośrednictwem Entity Linking. „ARQMath Task” na CLEF 2020 zostało uruchomione w celu rozwiązania problemu łączenia nowo opublikowanych pytań z platformy Math Stack Exchange (MSE) z istniejącymi, na które już odpowiedziała społeczność. Laboratorium było motywowane faktem, że Mansouri i in. odkryli, że 20% zapytań matematycznych w wyszukiwarkach ogólnego przeznaczenia jest wyrażanych jako dobrze sformułowane pytania. Zawierał dwa oddzielne podzadania. Zadanie 1: „Pobieranie odpowiedzi” dopasowywanie odpowiedzi na stare posty do nowo postawionych pytań oraz Zadanie 2: „Pobieranie formuł” dopasowywanie starych formuł postów do nowych pytań. Wychodząc od dziedziny matematyki, która obejmuje język formuł, celem jest następnie rozszerzenie tego zadania na inne dziedziny (np. dyscypliny STEM, takie jak chemia, biologia itp.), które stosują inne rodzaje notacji specjalnej (np. formuły).

Postęp

Systemy odpowiadania na pytania zostały rozszerzone w ostatnich latach, aby objąć dodatkowe dziedziny wiedzy. Na przykład opracowano systemy automatycznego odpowiadania na pytania czasowe i geoprzestrzenne, pytania dotyczące definicji i terminologii, pytania biograficzne, pytania wielojęzyczne oraz pytania dotyczące treści audio, obrazy i wideo. Aktualne pytania odpowiadające na tematy badawcze obejmują:

  • interaktywność – wyjaśnienie pytań lub odpowiedzi
  • ponowne użycie lub buforowanie odpowiedzi
  • parsowanie semantyczne
  • odpowiedź na prezentację
  • reprezentacja wiedzy i rozumowanie
  • analiza mediów społecznościowych z systemami odpowiadania na pytania
  • analiza sentymentu
  • wykorzystanie ról tematycznych
  • rozwiązanie semantyczne: wypełnienie luki między pytaniami różniącymi się składnią a tekstami zawierającymi odpowiedź
  • wykorzystanie zasobów językowych, takich jak WordNet , FrameNet i tym podobne
  • Podpisy graficzne do wizualnej odpowiedzi na pytania

W 2011 roku Watson , komputerowy system odpowiedzi na pytania opracowany przez IBM , brał udział w dwóch meczach pokazowych Jeopardy! przeciwko Bradowi Rutterowi i Kenowi Jenningsowi , wygrywając ze znaczną przewagą. Facebook Research udostępnił swój system DrQA na licencji open source . Ten system był używany do odpowiadania na pytania w otwartej domenie przy użyciu Wikipedii jako źródła wiedzy.

Bibliografia

Dalsza lektura

Linki zewnętrzne