УДК 004.738.5, 81'322
МЕТОД ОБРАБОТКИ КОЛИЧЕСТВЕННЫХ ЧИСЛИТЕЛЬНЫХ ЕСТЕСТВЕННЫХ ЯЗЫКОВ И ЕГО ПРАКТИЧЕСКОЕ ПРИМЕНЕНИЕ
Н.Н. Гринченко, Д.М. Цыбулько
Рассматривается метод обработки количественных числительных естественных языков, в котором промежуточным этапом в операциях перевода и преобразований числительных является трехуровневая обобщенная модель числительного. Показаны преимущества данного метода и предлагается его практическая реализация в виде лингвистического интернет-приложения. Приведены результаты его использования.
Ключевые слова: автоматическая обработка текстов, метод обработки количественных числительных, машинный перевод, лингвистическое интернет-приложение.
В настоящее время имеется высокая потребность в автоматизированном переводе текстов. Например, ежемесячная аудитория сервиса Google Translate составляет 200 млн человек [1], что говорит об актуальности данной проблемы. Автоматизированный перевод текстов является сложной задачей, для решения которой необходимо решить множество подзадач. Одной из таких подзадач является перевод количественных числительных. Существует множество сервисов, которые позволяют решить задачу перевода количественных числительных. Среди них можно выделить Google Translate (http://translate.google.com), Languages And Numbers (http://www.languagesandnumbers.com), eng5 (http://eng5.ru/translator/ numbers/).
Google Translate использует технологию Translation Memory, по которой перевод осуществляется на основе заранее переведенных текстов. Если переведенные тексты для пары языков отсутствуют, то в качестве промежуточного этапа перевода используется английский язык. Поскольку английский язык не всегда может учитывать особенности другого языка, то в переводе могут появляться грамматические ошибки. Также сервис не поддерживает обработку дробной части числительного. Кроме Google Translate существует и другие сервисы, например, Languages And Numbers и eng5. Их недостатками являются следующие: отсутствуют преобразования вида «Числительное-Число» и «Числительное-Числительное», где под «Числом» понимается запись количественного числительного в цифровой форме (352), а под «Числительным» - в символьной форме (триста пятьдесят два) (в терминах работы [2]), отсутствует генерация и определение количественных числительных русского языка (в терминах работы [3] генерация - процесс получения словоформы с заданным грамматическим зна-
чением, а определение - обратный процесс, заключающийся в получении по словоформе его основы и грамматического значения), отсутствует автоматическое распознавание языка ввода.
Метод обработки количественных числительных естественных языков. Для устранения вышеперечисленных недостатков был предложен метод обработки количественных числительных c использованием промежуточного этапа обработки [2]. Промежуточный этап, называемый трехуровневой обобщенной моделью числительного, представляет собой порядок записи количественного числительного в виде контекстно-свободной формальной грамматики и состоит из следующих уровней.
Уровень 1. Знак числа, целая и дробная части. Разделителями частей являются слова-связки «целых», «запятая».
Уровень 2. Трехразрядные составляющие (триады). Каждая часть разделяется на трехразрядные составляющие, начиная от разделителя целой и дробной частей. Разделителями трехразрядных составляющих являются слова-связки «тысяч», «миллионов» и т. д.
Уровень 3. Элементы трехразрядных составляющих. Разделителями являются слова-связки «десятки», «сотни»» [2].
Пример разбиения количественного числительного на уровни представлен на рис. 1.
34 567,89
Первый уровень Второй уровень 34
--------------Л
Третий уровень 3 4 5 6 7
Рис. 1. Пример разбиения числа на уровни
Перевод числительных с языка 1 на язык N осуществляется следующим образом. На первом этапе числительное языка 1 переводится в модель числительного (алгоритм «Язык - Модель»). На втором этапе модель числительного переводится на язык N (алгоритм «Модель - Язык») (рис. 2). Преимуществом данного подхода является то, что для добавления нового языка требуется разработать и реализовать всего два алгоритма, которые будут связывать язык с моделью. После реализации данных алгоритмов появляется возможность выполнять перевод с добавленного языка на все поддерживаемые языки. Алгоритмы записаны с помощью нормальных алгоритмов Маркова.
Рис. 2. Обработка числительных с помощью трехуровневой обобщенной модели числительного
Практическая реализация метода обработки количественных числительных. Данный метод реализован в виде интернет-приложения для обработки и перевода количественных числительных естественных языков (приложение CLEDONIA, свидетельство о государственной регистрации программы для ЭВМ № 2012661379, Российская Федерация) и проверки знаний по этому разделу языкознания [4]. Приложение состоит из серверной и клиентской частей. На серверной части выполняется непосредственно сам перевод. Клиентская часть предоставляет интерфейс пользователю, а также выполняет прием и отправку данных на сервер. Для передачи данных используется формат JSON (англ. JavaScript Object Notation). Серверная часть осуществляет все преобразования с числительными, например, перевод с одного языка на другой. Серверная часть имеет открытое Web API (англ. Application Programming Interface), которое позволяет реализовать более сложные системы, в которых обрабатываются количественные числительных.
Реализованное приложение выполняет следующие функции:
1) перевод чисел из диапазона от -999 999 999,999999999 до 999 999 999,999999999;
2) преобразование в направлениях: «Число - Числительное», «Числительное - Число», «Числительное - Числительное»;
3) перевод количественных числительных для любой пары 5 языков: русского, английского, немецкого, испанского, финского;
4) обработку целых и дробных, положительных и отрицательных числительных;
5) автоматическое распознавание языка ввода;
6) генерацию и определение форм количественных числительных русского языка.
Все перечисленные функции также реализованы в приложении для Windows версий 7 и 8 (рис. 3). Оно, как и клиентская часть интернет-приложения, получает данные от пользователя, посылает их на сервер для обработки и представляет результаты обработки пользователю.
Рис. 3. Приложение для обработки количественных числительных для Windows 7/8
Другой функцией интернет-приложения является проверка знаний правил образования количественных числительных (приложение EXPERIA, свидетельство о государственной регистрации программы для ЭВМ № 2013615631, Российская Федерация) с динамической генерацией заданий [5]. Для генерации заданий (с формулировкой «Запишите числительное "один" на немецком языке») используется генератор случайных чисел. В шаблон задания при заданных входных и выходных языках подставляется число из определенного диапазона, а также генерируется ответ. Преимуществом такого подхода является большое число вариантов заданий, которые не требуют ручной обработки. Пример сценария проверки знаний по этому разделу языкознания приведен в работе [6].
Интернет-приложение доступно по адресу http://prutzkow.com/ numbers/ в сети Интернет.
За два с половиной года существования интернет-приложения его посетили более 3 000 пользователей, которые сделали более 25 000 запросов на обработку числительных. Наиболее популярными направлениями перевода являются «число - русский язык» и «число - немецкий язык» (табл. 1). Данные приведены по состоянию на сентябрь 2014 года.
Таблица 1
Направления обработки числительных
Куда переводится, %
Откуда переводится Русский Английский Испанский Немецкий Финский Число Общий итог
Русский — <1 <1 1,2 <1 <1 2,0
Английский <1 — <1 <1 <1 <1 0,5
Испанский <1 <1 — 0 <1 <1 0,2
Немецкий <1 <1 <1 — <1 <1 0,6
Финский <1 0 0 0 — <1 0,1
Число 37,1 10,9 14,1 33,2 1,5 — 96,7
Общий итог 37,5 11,3 14,4 34,5 1,6 0,6 100,0
Большинство пользователей интернет-приложения представляют Российскую Федерацию. Далее по числу пользователей следуют Украина, Польша и страны Европы (табл. 2).
Таблица 2
Доли стран и территорий пользователей интернет-приложения
Страна / территория Доля, %
Российская Федерация 64,1
Украина 9,7
Европа 7,6
США 6,3
Беларусь 3,6
Польша 1,8
Казахстан 1,2
Германия 0,9
Остальные 59 стран 4,8
Другая статистика использования интернет-приложения приведена в работе [7].
В настоящий момент аудитория интернет-приложения составляет более 200 человек в месяц. В дальнейшем планируется сделать интернет-приложение частью более крупного информационного ресурса, которое
21
также будет включать проверку знаний правил образования количественных числительных.
Список литературы
1. Breaking down the language barrier - six years in [Электронный ресурс] // The Official Google Translate Blog: [сайт]. [2012]. URL: http://googletranslate.blogspot.ru/2012/04/breaking-down-language-barriersix-years.html (дата обращения: 01.11.2013).
2. Пруцков А.В. Обработка числительных естественных языков с помощью формальных грамматик и нормальных алгоритмов Маркова // Вестн. Рязан. гос. радиотехн. ун-та. 2009. № 28. С. 49 - 55.
3. Пруцков А.В. Определение и генерация сложных форм слов естественных языков при морфологическом анализе и синтезе // Известия Таганрог. гос. радиотехн. ун-та. 2006. Т. 70. № 15. С. 10 - 14.
4. Пруцков А.В., Цыбулько Д.М. Интернет-приложение метода обработки количественных числительных естественных языков // Вестн. Рязан. гос. радиотехн. ун-та. 2012. № 41. С. 70 - 74.
5. Пруцков А.В. Статический и динамический подходы к проектированию подсистем проверки знаний автоматизированных обучающих систем // Информацион. ресурсы России. 2006. № 1. С. 27 - 29.
6. Пруцков А.В., Цыбулько Д.М. Проблемно-ориентированное объектное программирование // Вестн. Рязан. гос. радиотехн. ун-та. 2013. № 45. С. 57 - 62.
7. Пруцков А.В., Цыбулько Д.М. Анализ статистики использования Интернет-приложения обработки количественных числительных естественных языков // Вестн. Рязан. гос. радиотехн. ун-та. 2013. № 4 - 1 (46). С. 130 - 134.
Гринченко Наталия Николаевна, канд. техн. наук, доц., grinchenko_nn@,mail.ru, Россия, Рязань, Рязанский государственный радиотехнический университет,
Цыбулько Дмитрий Михайлович, магистрант, dmitriy. tsybulko@,gmail.com, Россия, Рязань, Рязанский государственный радиотехнический университет
THE METHOD OF CARDINAL NUMBERS PROCESSING AND ITS PRACTICAL APPLICA TION
N.N Grinchenko, D.M. Tsybulko
We review a method of processing of natural language cardinal numbers in which the intermediate stage in the operations of translation and transformation of numerals is a three-level generalized model of the numeral. The article shows the advantages of this method and it offers its practical application in the form of linguistic Internet service. Results of using Internet service are included in the article.
Key words: natural language processing, method of cardinal numbers processing, machine translation, linguistic Internet service.
Grinchenko Natalya Nikolayevna, candidate of technical science, docent, grinchen-ko_nn@,mail. ru, Russia, Ryazan, Ryazan State Radio Engineering University,
Tsybulko Dmitriy Mikhailovich, undergraduate, dmitriy. tsybulko@,gmail. com, Russia, Ryazan, Ryazan State Radio Engineering University
УДК 004.415.2
ПОЛУМАРКОВСКИЙ ПРОЦЕСС КАК МОДЕЛЬ ДЛЯ ОПИСАНИЯ
АЛГОРИТМОВ
С.Л. Гусева, А.С. Новиков
Рассмотрены основные характеристики электронных вычислительных машин. Выявлена зависимость между быстродействием компьютера и ««линейностью» выполняемой программы. Получена модель для описания реализации программ в виде полумарковского процесса.
Ключевые слова: быстродействие, вероятность, полумарковский процесс, случайная величина, функция распределения, электронные вычислительные машины.
На современном этапе развития науки и техники трудно представить жизнедеятельность людей без электронных вычислительных машин (ЭВМ): масштабы их применения находятся в широчайшем диапазоне от прогнозирования экологической обстановки целых регионов и управления гигантскими индустриальными центрами до автоматических определителей номеров в телефонах.
Электронная вычислительная машина - это комплекс технических (аппаратных) и программных средств для обработки информации, вычислений, автоматического регулирования [1].
Факт того, что использование вычислительной техники для решения научных, информационных и других задач стало повсеместной и неотъемлемой частью в жизни людей, ставит постоянный вопрос о повышении требований к характеристикам и показателям ЭВМ, главными из которых являются [2]:
- операционные ресурсы (множество реализуемых в электронной вычислительной машине операций обработки, хранения и ввода-вывода информации);
- быстродействие (число операций, выполняемых ЭВМ в 1 секунду.