WWW.LIBRUS.DOBROTA.BIZ
БЕСПЛАТНАЯ  ИНТЕРНЕТ  БИБЛИОТЕКА - собрание публикаций
 

«ПОМОЩЬЮ REFAL-ПОДОБНЫХ КОНСТРУКЦИЙ В статье кратко обосновывается возможность применения модификаций конструкций языка символьных преобразований REFAL для формирования ...»

Т.В. Батура, Ф.А. Мурзин

ОБРАБОТКА ПОИСКОВЫХ ЗАПРОСОВ НА ЕСТЕСТВЕННОМ ЯЗЫКЕ С

ПОМОЩЬЮ REFAL-ПОДОБНЫХ КОНСТРУКЦИЙ

В статье кратко обосновывается возможность применения модификаций

конструкций языка символьных преобразований REFAL для формирования

деревообразного представления предложений на естественном языке и схем

«вопрос-ответ» и описан алгоритм использования их в поисковых системах .

В действительности, сейчас имеется большой список, более сорока схем типа «вопрос-ответ», которые могут быть полезны при реализации программных систем, ориентированных на обработку текстов .

1. КОНСТРУКЦИИ ЯЗЫКА REFAL

Язык программирования REFAL является одним из языков, созданных для проведения символьных преобразований на компьютерах [1]. Это типичный язык продукций, и он аналогичен языку SNOBOL. Его операторы представляют собой продукции вида, которые обозначают, что если слово имеет свойство, то необходимо применить действие. Отметим, что так называемый функциональный стиль естественным образом присущ языку REFAL. Ниже дано формальное описание синтаксических свойств этого языка, описана виртуальная REFAL-машина, и даны некоторые примеры программ .

Предположим, что зафиксированы: T — алфавит объектных символов, Q — алфавит вспомогательных символов (например, /,,, скобки, двоеточие, запятая), T Q = и F — алфавит функциональных символов .

Имеется три типа переменных si, ei, i, где — множество натуральных чисел .

Если S — произвольный алгоритм, то через S* обозначим множество всех слов над S, включая пустое слово .

1. Формула языка REFAL определяется индуктивно:

a) переменная является формулой,

b) любое t T является формулой,

c) если — формула, то ( ) — формула, Батура Т.В., Мурзин Ф.А. Обработка поисковых запросов на естественном языке 25

d) если, — формулы, то их конкатенация — формула,

e) если — формула и f F, то / f / — формула,

f) других формул нет .

Если формула получена без применения правила e), то мы назовем ее простой. Множество всех переменных, входящих в формулу, обозначим var ( ) .

2. Оператором называется слово, где, — формулы, при этом — простая и var( ) var( ) .

3. Подпрограммой называется любой столбец, имеющий вид:

f : L1 .

.

.

Ln, где f F, L1,..., Ln — операторы, n. При этом, f называется именем подпрограммы .

4. Программа есть столбец вида:

F1 .

.

.

Fm, где Fi — подпрограммы, m .

5. Пусть — простая формула, t S *, где S = T {(,)}. Определим функцию i, мы будем называть ее функцией отождествления. Функция i паре,t сопоставляет кортеж, с описанными ниже свойствами, если такой кортеж существует. В противном случае она сопоставляет 0. В этом случае говорят, что отождествление невозможно .

Пусть = x1...xk — формула, и для любого j выполнено x j S, либо

x j — переменная. Мы полагаем i (, t ) = c1,..., cm, если k = m и выполнены свойства:

a) x j S c j = x j,

b) x j = si c j T, x j = ei c j S *, 26 Проблемы интеллектуализации и качества систем информатики

c) x j = xi c j = ci,

d) любое c j имеет правильно построенную скобочную структуру,

e) если c1,..., ck — произвольный кортеж со свойствами (a)–(d), то | c1 |,..., | ck | | c1 |,..., | ck | в лексикографическом порядке, где | c j |, | c j | — длины слов c j, c j соответственно .





В итоге мы можем сделать следующие замечания:

• функция i используется, как функция отождествления с образцом,

• переменные типа si служат для обозначения символов,

• переменные типа ei служат для обозначения выражений,

• скобки ( ) используются для того, чтобы фиксировать синтаксическую структуру строк .

6. REFAL-машина состоит из поля зрения и поля памяти и работает в дискретном времени. В текущий момент у нее в поле зрения находится формула, не содержащая переменных, а в поле памяти — программа. Опишем шаг работы машины .

Если в поле зрения находится простая формула, то процесс вычисления на этом заканчивается, и это считается нормальным окончанием .

В противном случае в формуле из поля зрения выделяется самая левая подформула, имеющая вид / f /, такая, что простая. После этого отыскивается в программе подпрограмма с именем f. Если такой нет или их несколько, то в поле памяти появляется диагностика этого, и работа машины заканчивается .

В противном случае в подпрограмме с именем f отыскивается самый первый оператор такой, что i (, 0) 0. Если такого оператора нет, то в поле памяти появляется информация об этом, и работа заканчивается .

Допустим теперь, что требуемый оператор имеется. Тогда подформула / f / в поле зрения заменяется на *. Слово * получается из формулы заменой переменных на значения, которые они получили при отождествлении и. 3начениями переменных называются c j из пункта

b) в определении функции отождествления .

Рассмотрим теперь несколько примеров. Они показывают, что, используя скобочные структуры специального вида, можно очень коротко записывать довольно сложные программы .

Батура Т.В., Мурзин Ф.А. Обработка поисковых запросов на естественном языке 27

–  –  –

2. ОБРАБОТКА ПОИСКОВЫХ ЗАПРОСОВ НА ЕСТЕСТВЕННОМ ЯЗЫКЕ

Считаем, что поисковый запрос представляет собой совокупность предложений на естественном языке. Эту совокупность предложений можно расширить, используя словарные статьи из толкового словаря (например, словаря Ожегова), т. е. фактически приписать определения отдельных слов .

Следующий этап состоит в том, чтобы представить данные предложения в виде помеченных деревьев. Вершины помечаются словами, а ребра — вопросами, задаваемыми от одного слова к другому .

Далее рассмотрим текст достаточно большого объема, из которого необходимо выбрать предложения по тематике поискового запроса и, таким образом, сформировать аннотацию или решить, является ли текст релевантным данному запросу. Для этого предложения данного текста также могут быть представлены в виде деревьев (вообще говоря, необязательно все предложения, а выборочно по некоторым критериям). После этого необходимо сопоставление на похожесть (соответствие) деревьев, полученных из запроса, и деревьев, возникших из текста .

Для аннотации выбираются предложения, которые соотносятся по теме, имеют похожие структуры и т. д. На основании подобных идей можно судить о релевантности .

Обработка поисковых запросов на естественном языке предполагает выполнение ряда действий .

• Семантико-синтаксический разбор запроса .

• Генерация схем возможных ответов .

• Нахождение в тексте фрагментов в соответствии со схемами ответов .

• Анализ контекстной связности между предложениями .

Поисковый запрос может представлять собой либо вопрос, поставленный в явном виде, либо набор фраз, задающих тему. Мы должны в тексте найти ответ на поставленный вопрос, либо выделить фрагменты на заданную тему. Для простоты считаем, что запрос состоит из одного предложения .

Батура Т.В., Мурзин Ф.А. Обработка поисковых запросов на естественном языке 29

2.1. Семантико-синтаксический разбор запроса Семантико-синтаксический разбор запроса заключается в том, что запросу сопоставляется дерево семантико-синтаксического разбора. В общем случае, это будет размеченное дерево. Пометки ребер будем также называть вопросами. Дерево может быть классического типа, из тех, которые применяются в лингвистике, так и неклассического .

Например, ребра могут помечаться семантическими предикатами, т. е .

лексическими функциями по терминологии Мельчука; предикатами, выявленными в процессе изучения структуры словарных статей в словаре Ожегова и т. д. В общем случае можно считать, что ребра помечены двухместными предикатами, которые должны быть истинными на соответствующих пометках вершин .

Результирующее дерево представляется в виде скобочной структуры .

Для размеченных деревьев можно использовать следующую конструкцию .

Предположим, что ( x1, q, x2 ) — помеченное ребро, q — метка. Тогда его скобочное представление будет иметь вид ( x1 (q ( x2 ))). Понятно, что данное преобразование можно применять рекурсивно .

2.2. Генерация схем возможных ответов На данной стадии вопросу сопоставляется множество возможных ответов. При этом могут быть использованы конструкции, которые аналогичны конструкциям, применяемым в языке REFAL .

Рассмотрим пример. Вопрос: «Сколько тебе лет?». Ответ: «Мне 15 лет» .

Договоримся, переменные вида si использовать для символов, а переменные ei использовать для совокупностей слов и для выражений, содержащих скобки .

Тогда может быть предложена схема перехода «вопрос—ответ»

e0 тебе e1 мне s2 e1 .

Более сложная схема может учесть возможный контекст e0 тебе e1 e3 мне s2 e1e4 .

Если мы будем работать с деревьями синтаксического разбора, то переходу (сколько (тебе лет )) ( мне (15 лет )) соответствует схема (e0 (тебе e1 )) (e3 ( мне ( s2 e1 ))e4 ) .

30 Проблемы интеллектуализации и качества систем информатики Большое количество таких схем можно получить, заглянув в учебники иностранных языков, школьные учебники по конкретным предметам, в учебники по скорочтению. В последних предлагается быстро прочесть текст, а потом с помощью вопросов осуществляется контроль качества его усвоения .

Используя размеченные деревья, можно учесть морфологические особенности слов и их согласование по родам, падежам и т. д. Но в действительности, целесообразно модифицировать REFAL-подобные конструкции, введя новые типы переменных, т. е. сделать их более типизированными и ориентированными на лингвистику. Можно ввести специальные переменные для частей речи. Например, e[ Adj ]0, где Adj — прилагательное и т. д .

В настоящее время выделено более 40 схем, соответствующих стандартным вопросам и ответам. Предложения, в соответствии с которыми строились схемы, взяты из учебника «Do You Speak English?»

B.&R. Retman [2]. Каждой из схем сопоставлено представление с вовлечением скобочных структур и использованы расширенные типы переменных языка REFAL. Например,

1. Это красная машина Да, это красная машина Это ((attr e[ Adj ]0 )) sub(e1 )) Да, это ((attr (e[ Adj ]0 )) sub(e1 )) .

1'. Это красная машина Нет, это не красная машина Это ((attr e[ Adj ]0 )) sub(e1 )) Нет, это ((attr (не e[ Adj ]0 )) sub(e1 )) .

1''. Это красная машина Нет, это зеленая машина Это ((attr e[ Adj ]0 )) sub(e1 )) Нет, это ((attr (e[ Adj ]2 )) sub(e1 )) .

Здесь attr — определение слева от определяемого слова, sub — подлежащее .

Более интересными и полезными являются, например, переменные вида fi, которые будут обозначать, что слова одинаковы с точностью до флексии, т. е. изменений суффиксов и окончаний. При отождествлении левой части продукции с запросом переменная fi будет отождествлена со словом как si. А при отождествлении правой части продукции с предложением в тексте данное слово будет отыскиваться с точностью до флексии .

Можно ввести специальную переменную, которая будет обозначать, что совпадают достаточно длинные начальные части слов, например, не менее 75% каждого из них. Заметим, что слова могут быть разной длины. Такого типа сравнение полезно тем, что оно алгоритмически просто и не требует морфологического разбора. В то же время, для длинных слов указанное частичное совпадение автоматически обозначает, что это одно и то же слоБатура Т.В., Мурзин Ф.А. Обработка поисковых запросов на естественном языке 31 во, с точностью до флексии. На ранних стадиях развития ребенка, повидимому, именно так и происходит .

2.3. Нахождение в тексте фрагментов в соответствии со схемами ответов Заданному вопросу соответствует несколько возможных ответов. Поэтому можно считать, что схема перехода «вопрос-ответ» имеет вид 1 2 … N .

После отождествления с вопросом переменные, входящие в нее, приобретают значения. Далее в тексте ищем предложения, которые можно отождествить хотя бы с одной из формул i. Все такие предложения выдаем пользователю как ответы .

Рассмотрим пример, приведенный выше. В нем = Это ((attr e[ Adj ]0 )) sub(e1 )) 1 = Да, это ((attr (e[ Adj ]0 )) sub(e1 )) 2 = Нет, это ((attr (не e[ Adj ]0 )) sub(e1 )) 3 = Нет, это ((attr (e[ Adj ]2 )) sub(e1 )) .

Таким образом, для данного примера схема перехода «вопрос-ответ»

кратко запишется 1 2 3 .

Заметим, что, говоря об отождествлении, мы можем рассматривать как сами предложения, так и результаты синтактико-семантического разбора, и работать с ними, что, безусловно, более интересно, и может привести к более качественным результатам .

Целесообразно предусмотреть специальные метки, которые позволят управлять областями отождествления и выдаваемыми областями. Например, формулу i можно отождествлять не с отдельным предложением, а с целым абзацем. Другой вариант, когда i отождествляется с предложениями, но после нахождения соответствующего предложения пользователю выдается весь абзац, в котором оно найдено. Поэтому можно считать, что схемы переходов «вопрос-ответ» имеют вид l : 1 2... N, где l — метка .

2.4. Анализ контекстной связности между предложениями В текстах на естественном языке наблюдается явление, называемое контекстной связностью. Например, мы хотели бы выделить в тексте все предПроблемы интеллектуализации и качества систем информатики ложения, в которых идет речь о птице вороне. В ряде предложений встречается слово «ворона» с точностью до флексии, а в ряде предложений может встречаться «эта птица». Если слова «эта птица» в соответствующих предложениях заменить на «ворона», то полученные предложения можно анализировать в соответствии с методами, описанными выше .

Связать «ворона» и «эта птица» можно, если заглянуть в толковый словарь. Там написано, что «ворона — большая всеядная птица…» .

В ряде случаев способы обнаружения контекстной связности болееменее простые. В данном случае имеется указательное местоимение «эта», слово при нем «птица», как правило, согласовано в роде и падеже со словом «ворона», но вообще говоря, это не обязательно .

Самое главное, что слово «птица» встречается в соответствующей словарной статье толкового словаря. Последнее легко проверить на компьютере. Фактически, в толковом словаре содержится информация о том, что имеет место истинность лексического предиката Gener ( ворона, птица ), который обозначает, что «птица» является более общим понятием, чем «ворона» .

Отметим в заключение, что вопрос о контекстной связности требует дополнительного изучения. В целом он очень сложный, но типовые ситуации можно достаточно легко описать и реализовать на компьютере .

ВЫВОДЫ

На основе изложенного выше могут быть сделаны следующие выводы .

При формировании деревообразного представления предложений на естественном языке предлагается использовать модифицированные конструкции языка символьных преобразований REFAL:

1. Целесообразно использовать новые типы переменных, связанные с частями речи, частичным совпадением слов и т. д.;

2. В языке REFAL для любого оператора выполнено var( ) var( ). У нас это нарушается, и таким образом пытаемся учесть контекст .

3. Заданному вопросу соответствует несколько возможных ответов. Поэтому можно считать, что схема перехода «вопрос—ответ» имеет вид 1 2... n .

4. После отождествления с вопросом переменные, как и в обычном языке REFAL, входящие в нее, приобретают значения. Далее в тексте ищем Батура Т.В., Мурзин Ф.А. Обработка поисковых запросов на естественном языке 33 предложения, которые можно отождествить хотя бы с одной из формул i .

Все такие предложения выдаем пользователю в качестве ответов .

СПИСОК ЛИТЕРАТУРЫ

1. Murzin F.A. Syntactic properties of the REFAL language // Int. J. Computer Math. — 1985. — N17. — P. 123 — 139 .

2. Retman B.&R. Do You Speak English? — Warszawa: Wiedza Powszechna, 1977. — 160 p .






Похожие работы:

«ПРАВИТЕЛЬСТВО РОССИЙСКОЙ ФЕДЕРАЦИИ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ "САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ" (СПбГУ) Выпускная квалификационная...»

«Вестник ТвГУ. Серия Филология. 2017. № 4. С. 50–56. Вестник ТвГУ. Серия Филология. 2017. № 4. УДК 811.111’367.623’37 СРАВНИТЕЛЬНЫЙ АНАЛИЗ РАЗВИТИЯ СЕМАНТИЧЕСКИХ СТРУКТУР ДВУХ ГРУПП ОТНОСИТЕЛЬНЫХ ПРИЛАГАТЕЛЬНЫХ С.А. Виноградова Мурманский арктический государственный университет, Му...»

«Муниципальное Дошкольное Образовательное Учреждение Озерского городского округа Центр развития ребенка Д/с № 15 "Семицветик" Соколова Светлана Евгеньевна Профилактика фонематической дислексии и дисграфии у детей старшего дошкольного возраста с фонетико-фонематическим недоразвитием речи. Первая квалифика...»

«ВСЕРОССИЙСКАЯ ОЛИМПИАДА ШКОЛЬНИКОВ ПО РУССКОМУ ЯЗЫКУ. 2018–2019 уч. г. МУНИЦИПАЛЬНЫЙ ЭТАП. 7 КЛАСС Задания, ответы, критерии оценивания Задание 1 (8 баллов) Прочитайте фрагмент статьи "Дети поправляют взрослых" (Л. Введенская, Н. Колесников). В 1970 г. в Минске проходила Всесоюзная научная конференция. Известные у...»

«ГУЗ ЮЛИЯ ВЛАДИСЛАВОВНА ЭКСПЕРИМЕНТАЛЬНОЕ ИССЛЕДОВАНИЕ БАЗОВЫХ КОНЦЕПТОВ ЦВЕТА (НА МАТЕРИАЛЕ РУССКОГО, АНГЛИЙСКОГО, НЕМЕЦКОГО И КИТАЙСКОГО ЯЗЫКОВ) Специальность 10.02.19 теория языка АВТОРЕФЕРАТ диссертации на соискание ученой ст...»

«К.В. Секлецова, Н.И. Филатова Лексико-семантическое поле "ювелирные украшения" в испанском языке В современном языкознании наблюдается тенденция к исследованию разного рода лексико-семантических полей. Данное лингвистическое явление представляет интерес для лингвистов и находит применение при составлении тезаурусов, словаре...»

«Справка по программе "Converter 5.0.0.0" Справка по русской версии программы "Converter 5.0.0.0" Справка по программе "Converter 5.0.0.0" О программе Перед Вами русская версия программы "Converter 5.0.0.0", позволяющая рассчитывать двухтактные автогенераторные...»

«В. Ли V. Li Национально-семантические особенности русских и китайских фразеологизмов со значением "внешность человека" Аннотация: в статье рассматривается образная семантика русских и китайских фразеологизмов со значением "внешность человека". Цель исслед...»







 
2019 www.librus.dobrota.biz - «Бесплатная электронная библиотека - собрание публикаций»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.