Ответы на вопросы ( QA ) — это дисциплина информатики в области поиска информации и обработки естественного языка (NLP), которая занимается созданием систем, которые автоматически отвечают на вопросы , задаваемые людьми на естественном языке . [1]
Реализация вопроса-ответа, обычно компьютерная программа, может формировать свои ответы, запрашивая структурированную базу данных знаний или информации, обычно базу знаний . Чаще всего вопросно-ответные системы могут получать ответы из неструктурированной коллекции документов на естественном языке.
Некоторые примеры коллекций документов на естественном языке, используемых для вопросно-ответных систем, включают:
Исследования вопросов-ответов направлены на разработку способов ответа на широкий спектр типов вопросов, включая факты, списки, определения , вопросы «как», «почему», гипотетические, семантически ограниченные и межъязыковые вопросы.
Другой способ классифицировать вопросно-ответные системы — это используемый технический подход. Существует ряд различных типов систем обеспечения качества, в том числе
Системы, основанные на правилах, используют набор правил для определения правильного ответа на вопрос. Статистические системы используют статистические методы для поиска наиболее вероятного ответа на вопрос. Гибридные системы используют комбинацию основанных на правилах и статистических методов.
Двумя ранними системами ответов на вопросы были BASEBALL [4] и LUNAR. [5] БЕЙСБОЛ отвечал на вопросы о Высшей лиге бейсбола в течение одного года [ неоднозначно ] . LUNAR ответил на вопросы о геологическом анализе горных пород, возвращенных миссией Аполлона на Луну. Обе системы ответов на вопросы были очень эффективны в выбранных ими областях. ЛУНАР была продемонстрирована на съезде по науке о Луне в 1971 году, и она смогла ответить на 90% вопросов в своей области, которые были заданы людьми, не имеющими опыта работы с системой. В последующие годы были разработаны дополнительные системы ответов на вопросы с ограниченной областью. Общей чертой всех этих систем является то, что они имеют основную базу данных или систему знаний, написанную вручную экспертами выбранной области. Языковые способности BASEBALL и LUNAR использовали методы, аналогичные ELIZA и DOCTOR , первым программам- чат-ботам .
SHRDLU была успешной программой ответов на вопросы, разработанной Терри Виноградом в конце 1960-х - начале 1970-х годов. Он имитировал работу робота в игрушечном мире («мир блоков») и предлагал возможность задавать роботу вопросы о состоянии мира. Сильной стороной этой системы был выбор очень конкретной области и очень простого мира с правилами физики, которые можно было легко закодировать в компьютерной программе.
В 1970-е годы были разработаны базы знаний , ориентированные на более узкие области знаний. Системы ответов на вопросы, разработанные для взаимодействия с этими экспертными системами , давали более воспроизводимые [ необходимы разъяснения ] и достоверные ответы на вопросы в области знаний. Эти экспертные системы очень напоминали современные системы вопросов и ответов, за исключением внутренней архитектуры. Экспертные системы в значительной степени полагаются на созданные экспертами и организованные базы знаний , тогда как многие современные системы ответов на вопросы полагаются на статистическую обработку большого, неструктурированного корпуса текстов на естественном языке.
В 1970-х и 1980-х годах развивались комплексные теории компьютерной лингвистики , что привело к разработке амбициозных проектов в области понимания текста и ответов на вопросы. Одним из примеров был Unix Consultant (UC), разработанный Робертом Виленски из Калифорнийского университета в Беркли в конце 1980-х годов. Система отвечала на вопросы, относящиеся к операционной системе Unix . У него была обширная, созданная вручную база знаний в своей области, и его целью было сформулировать ответ для различных типов пользователей. Другим проектом была LILOG, система понимания текста , работающая в области туристической информации в немецком городе. Системы, разработанные в проектах UC и LILOG, никогда не выходили за рамки простых демонстраций, но помогли развитию теорий компьютерной лингвистики и рассуждения.
Были разработаны специализированные системы ответов на вопросы на естественном языке, такие как EAGLi, для ученых в области здравоохранения и биологии. [6]
Системы контроля качества используются в различных приложениях, в том числе
По состоянию на 2001 год [обновлять]вопросно-ответные системы обычно включали модуль классификатора вопросов , который определял тип вопроса и тип ответа. [7]
Различные типы вопросно-ответных систем используют разную архитектуру. Например, современные системы ответов на вопросы с открытым доменом могут использовать архитектуру ретривер-считыватель. Средство извлечения предназначено для поиска соответствующих документов, связанных с заданным вопросом, а средство чтения используется для вывода ответа из полученных документов. Такие системы, как GPT-3 , T5, [8] и BART [9], используют сквозную [ жаргонную ] архитектуру, в которой [ жаргонная ] архитектура на основе трансформатора хранит крупномасштабные текстовые данные в базовых параметрах. Такие модели могут отвечать на вопросы, не обращаясь к каким-либо внешним источникам знаний.
Ответы на вопросы зависят от хорошего корпуса поиска ; без документов, содержащих ответ, система ответов на вопросы мало что может сделать. Большие коллекции обычно означают лучшую производительность ответов на вопросы, если только область вопросов не ортогональна коллекции. Избыточность данных в огромных коллекциях, таких как Интернет, означает, что кусочки информации, вероятно, будут сформулированы по-разному в разных контекстах и документах, [10] что приводит к двум преимуществам:
Некоторые системы ответов на вопросы в значительной степени полагаются на автоматическое рассуждение . [11] [12]
При поиске информации система ответов на вопросы открытого домена пытается вернуть ответ в ответ на вопрос пользователя. Возвращаемый ответ представлен в виде коротких текстов, а не списка соответствующих документов. [13] Система находит ответы, используя комбинацию методов компьютерной лингвистики , поиска информации и представления знаний .
Система принимает в качестве входных данных вопрос на естественном языке , а не набор ключевых слов, например: «Когда национальный день Китая?» Затем он преобразует это входное предложение в запрос в его логической форме . Принятие вопросов на естественном языке делает систему более удобной для пользователя, но ее сложнее реализовать, поскольку существует множество типов вопросов, и системе придется определить правильный, чтобы дать разумный ответ. Назначение типа вопроса вопросу является важной задачей; весь процесс извлечения ответов основан на поиске правильного типа вопроса и, следовательно, правильного типа ответа.
Извлечение ключевых слов — это первый шаг в определении типа входного вопроса. [14] В некоторых случаях слова четко обозначают тип вопроса, например «Кто», «Где», «Когда» или «Сколько» — эти слова могут подсказать системе, что ответы должны быть типа «Человек». ", "Местоположение", "Дата" или "Номер" соответственно. Методы тегирования POS (части речи) и синтаксического анализа также могут определять тип ответа. В приведенном выше примере подлежащее — «Национальный день Китая», сказуемое — «is», а наречие — «когда», поэтому тип ответа — «Дата». К сожалению, некоторые вопросительные слова, такие как «Какой», «Что» или «Как», не соответствуют однозначным типам ответов: каждое может обозначать более одного типа. В подобных ситуациях необходимо учитывать другие слова в вопросе. Для понимания контекста можно использовать лексический словарь, такой как WordNet .
Как только система определяет тип вопроса, она использует систему поиска информации для поиска набора документов, содержащих правильные ключевые слова. Тегер и блокировщик групп NP/Verb могут проверить , правильные ли сущности и отношения упомянуты в найденных документах. По таким вопросам, как «Кто» или «Где», средство распознавания именованных объектов находит соответствующие имена «Лицо» и «Местоположение» в полученных документах. Для ранжирования выбираются только соответствующие абзацы. [ нужны разъяснения ]
Модель векторного пространства может классифицировать ответы кандидатов. Проверьте [ кто? ] если ответ правильного типа, определенного на этапе анализа типа вопроса. Метод вывода может подтвердить ответы кандидата. Затем каждому из этих кандидатов выставляется оценка в зависимости от количества содержащихся в нем вопросительных слов и того, насколько близки эти слова к кандидату — чем больше и чем ближе, тем лучше. Затем ответ посредством синтаксического анализа преобразуется в компактное и значимое представление. В предыдущем примере ожидаемый выходной ответ — «1 октября».
В 2018 году была опубликована система ответов на вопросы с открытым исходным кодом под названием MathQA , основанная на Ask Platypus и Wikidata . [15] MathQA принимает в качестве входных данных вопрос на естественном языке на английском или хинди и возвращает математическую формулу, полученную из Викиданных, в виде краткий ответ, переведенный в вычислимую форму, позволяющую пользователю вставлять значения переменных. Система извлекает имена и значения переменных и общих констант из Викиданных, если они доступны. Утверждается, что система превосходит коммерческий механизм вычислительных математических знаний на тестовом наборе. [15] MathQA размещен на Wikimedia по адресу https://mathqa.wmflabs.org/. В 2022 году он был расширен и теперь позволяет отвечать на 15 типов математических вопросов. [16]
Методы MathQA должны сочетать естественный язык и язык формул. Один из возможных подходов — выполнение контролируемой аннотации через Entity Linking . «Задача ARQMath» на CLEF 2020 [17] была запущена для решения проблемы связи недавно опубликованных вопросов с платформы Math Stack Exchange с существующими вопросами, на которые уже ответило сообщество. Предоставление гиперссылок на уже отвеченные семантически связанные вопросы помогает пользователям получить ответы раньше, но это сложная проблема, поскольку семантическая связанность не является тривиальной. [18] Лаборатория руководствовалась тем фактом, что 20% математических запросов в поисковых системах общего назначения выражаются в виде правильно сформулированных вопросов. [19] Задача содержала две отдельные подзадачи. Задача 1: «Поиск ответов» — сопоставление ответов старых сообщений с вновь заданными вопросами, а также Задача 2: «Поиск по формуле» — сопоставление формул старых сообщений с новыми вопросами. Начиная с области математики, которая включает в себя язык формул, цель состоит в том, чтобы позже распространить задачу на другие области (например, дисциплины STEM, такие как химия, биология и т. д.), которые используют другие типы специальных обозначений (например, химические обозначения). формулы). [17] [18]
Также исследовалась обратная сторона ответа на математический вопрос — генерация математических вопросов. Механизм генерации и тестирования физических вопросов PhysWikiQuiz извлекает математические формулы из Викиданных вместе с семантической информацией об их составляющих идентификаторах (именах и значениях переменных). [20] Затем формулы перестраиваются для создания набора вариантов формул. Впоследствии переменные заменяются случайными значениями для создания большого количества различных вопросов, подходящих для индивидуальных тестов учащихся. PhysWikiquiz размещается на Wikimedia по адресу https://physwikiquiz.wmflabs.org/.
В последние [ могут быть устаревшими по состоянию на апрель 2023 года ] системы вопросов-ответов были расширены , чтобы охватить дополнительные области знаний [21] . Например, были разработаны системы для автоматического ответа на временные и геопространственные вопросы, вопросы определений и терминологии, биографические вопросы. , многоязычные вопросы и вопросы о содержании аудио, изображений, [22] и видео. [23] Текущие темы исследований, посвященных вопросам и ответам, включают:
В 2011 году Watson , компьютерная система ответов на вопросы, разработанная IBM , участвовала в двух показательных матчах Jeopardy! против Брэда Раттера и Кена Дженнингса , выиграв со значительным отрывом. [32] Facebook Research предоставила свою систему DrQA [33] под лицензией с открытым исходным кодом . Эта система использует Википедию в качестве источника знаний. [2] Платформа с открытым исходным кодом Haystack от deepset сочетает в себе ответы на вопросы в открытой области с генеративными ответами на вопросы и поддерживает адаптацию предметной области [ необходимы пояснения ] базовых [ необходимы пояснения ] языковых моделей для сценариев использования в отрасли [ неопределенно ] .[34] [35]
{{cite book}}
: CS1 maint: отсутствует местоположение издателя ( ссылка ){{cite journal}}
: Требуется цитировать журнал |journal=
( помощь ){{cite web}}
: CS1 maint: bot: исходный статус URL неизвестен ( ссылка )