Метка ‘система’

Обратная связь

LIFER анализирует типичные входные фразы, такие, как в диалоге 1, используя гораздо меньше секунды времени центрального процессора на графическом дисплее DEC, подсоединенном к машине PDP KL-104. Однако при сильной загрузке центрального процессора может произойти небольшая задержка при обработке входной фразы, что вызывает беспокойство пользователя. LIFER стремится снять это беспокойство, обеспечивая постоянную обратную связь. Например, луч электронно-лучевой трубки или печатная головка телетайпа непосредственно фиксирует результаты анализа фразы по мере продвижения слева направо. Такая обратная связь является важным свойством, присущим человеку; это явление того же порядка, что и поддержание связи с помощью взгляда, кивка головы и поглаживания бороды. Другим видом обратной связи является то, что система печатает сообщение PARSED! 'обработано', когда она закончила анализ входного текста и готова вызвать программное обеспечение прикладной системы (то есть системы, для которой LIFER обеспечивает интерфейс), чтобы ответить на вопрос, выполнить команду или включить информацию, содержащуюся во входном сообщении, в базу данных.

Неполные входы

Если пользователь только что задал вопрос What is the salary of Eric Johnson? 'Каково жалованье Эрика Джонсона?', а затем желает узнать его служебное положение и дату поступления на работу, гораздо удобнее и естественнее спросить: POSITION AND DATE HIRED 'Должность и дата поступления на работу', чем педантично печатать WHAT IS THE POSITION AND DATE HIRED OF ERIC JOHNSON. Учет склонности человека сокращать входной текст — важный фактор разработки прикладных систем. Хотя некоторые системы позволяют определить грамматику так, что она допускает неполные предложения в качестве "полных" входов 5, в LIFER это не является необходимым, так как система автоматически выводит возможные эллиптические (то есть неполные) структуры на основе грамматик, определенных для полных конструкций. (См. выше диалог 2).
Сначала LIFER пытается проанализировать входной текст как полное предложение 6. Только в случае, если такой анализ не срабатывает, система включает программу эллиптического разбора. Для уведомления пользователя об этой смене программ LIFER печатает сообщение TRYING ELLIPSIS 'попытка использования программы эллипсиса', когда запускается программа разбора эллипсиса. Если разбор неполного предложения прошел успешно, система снабжает пользователя дополнительной информацией, печатая после слов TRYING ELLIPSIS полный вариант неполного входного текста, который замещает сообщение PARSED! (печатаемое в случае полного входного текста). Входы 2—5 — различные неполные варианты одной и той же структуры входного предложения, а именно входа 1. Вход 2 вызывает замену атрибутов. Во входах 3—5 меняются лица, о которых запрашиваются сведения. Следует отметить, что во входе 5 запрашиваются сведения о положении и дате зачисления целой группы людей.

Коррекция орфографических ошибок

При работе с входными текстами, составленными человеком, важно учитывать, что они часто содержат орфографические ошибки. Независимо от того, действительно ли пользователь не знает правописания какого-либо слова или он просто неправильно его напечатал, результат один и тот же: искаженный вход. При разработке систем, нацеленных на исследование понимания естественного языка, нет необходимости обращать специальное внимание на коррекцию орфографии. Но пользователей прикладных систем раздражает, когда орфографические ошибки ведут к прерыванию процесса обработки текста и в конечном счете к задержкам и утомительным перепечаткам.
Способность к исправлению орфографических ошибок, реализуемая с помощью механизма коррекции системы INTERLISP, иллюстрируется диалогом 6. Печатается сообщение, указывающее, что было произведено исправление ошибки, а исправленное слово печатается непосредственно под неправильно написанным словом.Диалог 8 иллюстрирует реакцию LIFER, когда система не может успешно проинтерпретировать входное сообщение. Не сумев проанализировать предложение ни как полное, ни как эллиптическое и не имея возможности применить программу коррекции орфографических ошибок, LIFER прекращает обработку и печатает сообщение об ошибке. Это сообщение не является загадочным вздором типа ERROR TRAP AT LOC 13730 'Ошибка-ловушка в месте 13730', но ценной информацией, которая может помочь неопытному пользователю понять, в чем состоит ошибка, и содействовать ее исправлению. (Разработчики системы могут вызвать специальные диагностические стандартные подпрограммы, устанавливающие сложные ошибки, но это другой вопрос.) Сообщение о текущей ошибке (одно из нескольких) указывает, что LIFER поняла, что означает WHAT ASSISTANT PROFESSORS IN, но не знала слова COMPSCI. Система ожидала (DEPARTMENT-NAME) '(наз-вание-факультета )'.
Ё этом месте пользователь, по-видимому, поймет, что в лексиконе LIFER нет слова COMPSCI. Можно было бы попробовать выразить название факультета каким-либо другим способом, например, таким, как COMPUTER SCIENCE. С другой стороны, пользователь может быть поставлен в тупик, не имея понятия, что такое (DEPARTMENT-NAME). Это ведет к возникновению новой проблемы, иллкэСтрируемой диалогом 9.

Определение синонимов

В диалоге 12 пользователь пытается вновь употребить слово COMPSCI и вновь получает сообщение об ошибке. Вполне вероятно, что он привык употреблять такое сокра щение для computer science й не желает приспосабливаться к тем синонимам, которые в настоящий момент может обрабатывать система. Напротив, он хочет, чтобы система приспособилась к ЕГО привычкам. В диалоге 13 пользователь просит систему определять COMPSCI как CS8. В дальнейшем эти слова будут считаться синонимами. -В диалоге 14 диалог 12 вновь вызывается с помощью оператора REDO, действующего в INTERLISP. На этот раз слово COMPSCI понято. В диалоге 15 COMPSCI используется в новом входном сообщении.Механизм синонимии, представленный выше, позволяет LIFER, обучаясь новым словам, приспосабливаться к отдельным пользователям. Механизм перифразирования позволяет LIFER приспособиться к новым грамматическим конструкциям. Например, пользователь может устать печатать синтаксически "правильные" английские вопросы и захотеть использовать сокращенный формат. В диалоге 16 пользователь пытается употребить сжатое выражение и получает сообщение об ошибке. В диалоге 17 используется обычная английская конструкция, которая указывает системе, что с этого момента разрешается сокращенная форма. LIFER анализирует конкретную перифразу, данную ей в качестве примера, с целью найти обобщение, пригодное для других случаев. (Подробнее об этом будет сказано ниже.) Правила вывода, фиксирующие результаты этого обобщения, напечатаны для более опытного пользователя.В диалоге 18 пробуется новый сокращенный формат. Диалог 19 — это пример расширения эллиптических выражений, основанных на формате, определенном пользова^ телем. Диалог 20 показывает, что LIFER обобщила начальную перифразу с тем, чтобы обобщенная конструкция покрывала другие сходные с начальной перифразой сокращенные конструкции.
Диалоги 21 и 22 — это дальнейшая иллюстрация способности LIFER к перифразированию. На основе диалога 21 DUMPALLX принимает значение INDICATE THE ID, POSITION, DEPARTMENT AND SALARY OF X 'укажите идентификационный номер, должность, факультет и жалованье Х-а\

Реализация программы обработки эллипса

Механизм обработки эллиптических входных сообщений системы LIFER пользуется тем, что спецификации языков прикладных систем имеют тенденцию в синтаксических категориях кодировать значительное количество семантической информации. Так, сходные синтаксические конструкции обычно близки семантически. Обработка эллипсисов в LIFER основывается на этом понятии схожести. В процессе разбора эллипсиса LIFER допускает любую цепочку слов, которая синтаксически сходна с любой подцепочкой смежных слов в последнем входном сообщении. (Если последнее входное сообщение было неполным, используется его расширение до полного предложения.) При поиске аналогии LIFER обращается к синтаксическому дереву последнего входного предложения, которое было успешно проанализировано системой. Для любой подцепочки смежных слов в последнем входном предложении может быть определен "образец аналогии" с помощью программы абстрагирования, работающей над старым синтаксическим деревом от слов подцепочки к корню дерева. Как только синтаксическое дерево показывает, что часть подцепочки является полным расширением некоторой синтаксической категории, данная часть замещается именем категории. Образец аналогии — это конечный результат всех таких замен.Механизм перифразирования в LIFER также использует семантически, ориентированные синтаксические категории и синтаксические деревья. В типичном случае механизму перифразирования дается модель предложения, которое система уже может понять, и перифраза. Общая стратегия механизма перифразирования — проанализировать предложение-модель и затем найти похожие структуры в перифразе.

Модуальность

Однако эта модульность явилась причиной целого ряда трудностей. При таком подходе система, которую мы строим, должна, например, в идеале, использовать ELI на первом этапе анализа (в качестве "приставки"). Но на практике ELI оказывается очень большой и громоздкой программой. Далее, возникает еще одна практическая проблема, а именно: словарь для любой новой области, в которой должна работать создаваемая система, является, скорее всего, новым для ELI. Поскольку в ELI определения слов являются в известном смысле сами программами, всякая новая система в любом случае потребует написания большой части соответствующей анализирующей программы с самого начала. Эта практическая проблема приводит, далее, к гораздо более интересному вопросу. Подобно тому как несколько лет назад мы осознали, что для построения более интегрированной анализирующей системы важно воспользоваться силой имевшихся у нас представлений КЗ, точно так же любой новый анализатор, разрабатываемый для новой системы, должен в принципе пользоваться результатами, полученными на более высоких уровнях понимания, которые являются частью новой системы. Так, система POLITICS может проводить анализ более эффективно, если она использует не только частично построенное представление КЗ для того фрагмента текста, который она уже поняла, но также и его место в идеологии, которую использует эта программа, его общую значимость и т. д. С этой точки зрения модульность оказывается весьма серьезным недостатком. Почему не извлекать выгоду из всего, что имеется в нашем распоряжении и может помочь в процессе анализа? Тот факт, что для осуществления анализа люди используют только синтаксис и некоторые конкретные семантические признаки (именно эти, а не другие), является не более вероятным, чем то, что они используют только чистый синтаксис. Понимание является в полном смысле этого слова интегральным процессом. Приверженность принципу построения модульных систем помешала прогрессу в автоматизации анализа, потому что эта задача требует использования наших знаний в полном объеме; это, очевидно, необходимо и для разрешения неоднозначности предложения, и для выявления подходящих смыслов слова, и, что не менее важно (как мы увидим ниже в этой статье), для принятия решений о том, что в тексте следует игнорировать.

Неопределенный артикль

AN (неопределенный артикль) — это слово, которое сначала нужно только сохранить, чтобы не забыть. Это значит, что система смотрит его в словаре и находит там указание перейти к следующему слову, поместив AN в какой-то отсек оперативной памяти (ОП) с тем, чтобы вернуться к нему позднее.
ARABIC 'арабский' подается в словаре как слово, которое может быть пропущено, если ему предшествовало другое пропускаемое слово, поэтому наша модель пропускает его и помещает в ОП." (То, что слово ARABIC может быть пропущено, было определено еще при разработке модели и записано в словаре. Сами же критерии определения того, что может пропускаться, составляют одну из интересных актуальных проблем при моделировании языковой способности человека. (Обсуждение этих вопросов можно найти в Schank and S е 1 f г i d g е, 1977). Обычно прилагательные (правда, не все) могут пропускаться. Слово Russian 'русский', например, не может быть пропущено, потому что оно может обозначать деятеля. Не могут пропускаться и прилагательные, отмеченные как представляющие определенный интерес, например disgusting 'отвратительный', murderous 'кровавый', lecherous 'распутный' и т. д.)
SPEAKING 'говорящий' также может быть пропущено, пока не встретилось потенциальных деятелей. Поиск обозначений ДЕЯТЕЛЕЙ в ОП приводит к отрицательному результату. Поэтому данное слово также пропускается.
GUNMAN 'вооруженный человек' снабжено признаками ACTOR 'деятель', NOUN 'существительное' и HIGH INTEREST ACTOR 'деятель, представляющий большой интерес'. Тот факт, что у нас появилось слово с признаком HIGH INTEREST, заставляет нас построить запросы типа "сверху вниз", связанные с выяснением определенной информации; в частности, теперь мы хотим получить ответы на следующие вопросы:
КТО он? — Заставляет нас собрать вместе накопленные прилагательные (например, ARABIC) и приписать их к элементу памяти, обозначающему данного человека (GUNMAN).
ЧТО он сделал? — Ответом на этот вопрос служит единица, которую мы находим в памяти при элементе GUNMAN, а именно — SHOOT 'стрелять'. Таким образом, еще до того как в систему поступит продолжение текста, выводится умозаключение, что упомянутый вооруженный человек стрелял или будет в кого-либо стрелять.

Схема анализа

Схема анализа, реализованная в ИЧА, основана на классификации слов в словаре с точки зрения того, что должен делать анализатор с каждым словом по мере его прочитывания. Следовательно, такие категории, как существительное, глагол ит. п., имеют смысл в анализаторе лишь в том случае, если они приводят к разным типам обработки.
Легко говорить, как мы это делали выше, что такое-то слово надо пропустить или сохранить или что-нибудь в этом роде. На практике же подобные решения мы должны принять заранее. Таким образом, ключевые проблемы реализации такого анализатора следующие: во-первых, установление категорий для подачи слов в словаре, которые будут полезны в данной модели; во-вторых, разработка процедуры для определения того, к какой категории подходит каждое данное слово. Как мы вскоре увидим, приписывание слова к определенной категории может зависеть от предметной области.
Возвращаясь к примеру в предыдущем разделе, мы можем сказать, что с прочитываемым словом можно поступать тремя способами. Слово может быть пропущено, оно может быть записано в ОП и затем пропущено или оно может сразу же быть подвергнуто полной обработке.
Первая возможность заключается в том, что его можно просто пропустить. Существует много слов, которые с точки зрения нормального чтения не имеют существенного понятийного содержания. Если вспомнить текст, приведенный в предыдущем разделе, то это будут слова: most 'большая часть', way 'путь', held 'держал'.
Вторая возможность, которая следует из нашего примера, заключается в том, что слово может быть записано в ОП и затем пропущено. Слова, к которым следует применять эту стратегию обработки, несут определенную функциональную нагрузку или какое-то понятийное содержание, но при этом могут считаться банальными и неинтересными. Тем не менее мы не можем их просто игнорировать, потому что их значения могут оказаться важными для конкретизации наших знаний о событиях и предметах, которые нас интересуют. Например, они могут использоваться для заполнения ролей в концептуальных структурах, представляющих интересные события. Они могут также больше не использоваться в последующем анализе. В соответствии с данной стратегией обрабатываются многие слова в нашем примере. Примерами могут служить слова Arabic, Iraqi и his, а также все артикли.
С такими словами система может поступать двумя способами. Либо их значение помогает в конкретизации чего-либо интересного (и в этом случае такое значение будет включено в семантическое представление текста), либо оно не помогает в решении этой задачи.

Стратегия обработки слова

Третья возможная стратегия обработки слова заключается в том, что оно немедленно и полностью обрабатывается, то есть система обращает внимание на его значение и на ожидания, им порождаемые. Именно эта стратегия применяется ко всякому слову, обладающему существенным и интересным понятийным содержанием. Эти понятия и ожидания управляют всем ходом анализа. Примеры из нашего рассказа включают слова gunman, shot и hostages. Ожидания, порождаемые этими словами, могут включать тот же тип простых конкретизирующих ожиданий (типа заполнения позиций), которые ассоциируются с некоторыми словами, подлежащими обработке по стратегии "записать и пропустить". Например, вполне возможно, что одно из ожиданий, порождаемых словом gunman, будет направлено на поиск национальной или политической принадлежности данного вооруженного человека.
Эти слова могут также порождать ожидания, оперирующие на гораздо более высоком уровне. Например, когда мы читаем слово gunman, мы ожидаем, что он мог осуществить действие стрельбы из какого-либо оружия. Мы также ожидаем событий, связанных с несколькими возможными сценариями, включая $ROBBERY 'ограбление* и $TERRO-RISM. Эти ожидания действуют примерно так же, как происходит применение сценариев (см. Gullingford,1978): они служат для того, чтобы распознавать события и тем самым определять, разумно ли усматривать их в данном контексте. Так, коль скоро мы знаем, что вооруженный человек скорее всего является террористом, мы ожидаем, что он может задерживать заложников, может стрелять и убивать каких-то людей и может выдвигать требования. Мы знаем также, что данный эпизод может иметь лишь очень ограниченное число возможных исходов: террорист может быть взят в плен, он может сдаться сам, он может быть убит, он может сбежать. Эти ожидания высшего уровня помогают нам решить, что является важным в рассматриваемом тексте при взгляде на него "сверху вниз". Все это имеет решающее значение для организации анализа. Но гибкость анализа зависит также от его способности отвечать на вопросы относительно таких предметов и событий, которые не предусматриваются ожиданиями.
Ожидания, используемые в ИЧА, реализуются в форме запросов (см. R i е s b е с к, 1975). Запрос имеет форму правила вывода, или пары вида "проверка — действие". Если в результате проверки некоторого действующего запроса выясняется его справедливость, то выполняются соответствующие наборы действий. Список запросов упорядочен так, что, когда система приступает к рассмотрению действующих запросов, первыми рассматриваются запросы, активизированные позже всех, поскольку они представляют более новые и, видимо, более адекватные ожидания.

Историческая перспектива

В последнее время растет число примеров, показывающих, что современное состояние исследований в области автоматической обработки текстов на естественном языке, хотя и находится пока на довольно примитивном уровне, все же позволяет справиться с решением некоторых вполне реальных проблем. Например, Браун и Бертон (Brown and Burton, 1975) разработали практическую систему обучения с помощью ЭВМ, создан ряд языковых систем для общения с базой данных, в частности системы REL (Thompson and Thompson, 1975), LUNAR (W о о d s et al., 1972) и PLANES (Waltz, 1975). Февральский номер Известий SIGART за 1977 г. содержит краткий обзор 52 исследовательских работ, посвященных вопросам разработки интерфейсов на естественном языке.
Все возрастает также потребность в создании собственно прикладных систем. Только в одном Центре искусственного интеллекта в Стэнфордском исследовательском институте разработаны многочисленные программы, увеличивающие возможности систем благодаря применению естественного языка в рамках таких задач, как: поиск в базе данных, автоматизация в промышленности, автоматическое программирование, логический вывод, оценочные рассуждения. Привлекательность всех этих систем как для разработчиков, так и для пользователей резко возрастает, когда они могут использовать в качестве входного языка естественный язык.С целью добавить к различным видам программного обеспечения возможности естественного языка в Стэнфордском исследовательском институте разработан пакет удобных инструментов, в совокупности названных LIFER, которые способствуют быстрому конструированию интерфейсов на естественном языке.
В основе LIFER лежит идея (Н е n d г i х, 1976, 1977) приспособить методы вычислительной лингвистики к системам, нацеленным на практическое применение, одновременно расширяя эти методы в плане более полного удовлетворения потребностей человека. Быть может, эти потребности не входят в число центральных проблем всей науки о языке, но они, безусловно, являются главным фактором в ее приложениях. В последующих разделах данной статьи представлены некоторые включенные в систему LIFER1 особенности инженерной психологии, ориентированные на пользователей интерфейсов.
Ряд нелингвистических методов был разработан либо под влиянием системы INTERLISP (Т е i t е 1 m а п, 1975), либо взят оттуда непосредственно 2. INTERLISP — это интерактивная система программирования на языке LISP, которая сама по себе является блестящим примером продуманного применения принципов инженерной психологии при разработке программного обеспечения.