Научная статья на тему 'Обнаружение и исправление ошибок пользователя по словарям допустимых слов и словосочетаний'

Обнаружение и исправление ошибок пользователя по словарям допустимых слов и словосочетаний Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
654
114
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АВТОМАТИЧЕСКАЯ ИДЕНТИФИКАЦИЯ ОШИБОК / ОРФОГРАФИЧЕСКИЕ И СМЫСЛОВЫЕ ОШИБКИ / СЛОВАРИ ДОПУСТИМЫХ СЛОВ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Литвинов В. А., Майстренко С. Я., Ходак В. И.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Литвинов В. А., Майстренко С. Я., Ходак В. И.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

The method of the checking, automatic or semiautomatic to identifications and corrections spelling and semantic user' s errors, which were made in step of primary shaping or entering the document, is considered. Models of the estimation of the probabilistic features, defining efficiency and area of the expedient using the method are offered

Текст научной работы на тему «Обнаружение и исправление ошибок пользователя по словарям допустимых слов и словосочетаний»

УДК 681.51:57

В.А. ЛИТВИНОВ, С.Я. МАЙСТРЕНКО, В.И. ХОДАК

ОБНАРУЖЕНИЕ И ИСПРАВЛЕНИЕ ОШИБОК ПОЛЬЗОВАТЕЛЯ ПО СЛОВАРЯМ ДОПУСТИМЫХ СЛОВ И СЛОВОСОЧЕТАНИЙ

Abstract: The method of the checking, automatic or semiautomatic to identifications and corrections spelling and semantic user's errors, which were made in step of primary shaping or entering the document, is considered. Models of the estimation of the probabilistic features, defining efficiency and area of the expedient using the method are offered.

Key words: errors' s automatic identification, spelling and semantic errors, dictionary of the possible words.

Анотація: Розглядається метод контролю, автоматичної або напівавтоматичної ідентифікації та виправлення орфографічних і смислових помилок користувача, що були зроблені на етапі первинного формування або вводу документа. Запропоновано моделі оцінки імовірнісних характеристик, які визначають ефективність та область доцільного використання методу.

Ключові слова: автоматична ідентифікація помилок, орфографічні та смислові помилки, словники допустимих слів.

Аннотация: Рассматривается метод контроля, автоматической либо полуавтоматической

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

1. Введение

Автоматическое обнаружение, идентификация и исправление ошибок пользователя является важным фактором повышения уровня интеллектуализации интерфейса человек-компьютер. В [1] исследуются модели и характеристики общих методов и алгоритмов автоматической идентификации и исправления типовых ошибок пользователя на основе словаря допустимых слов. В теоретических моделях [1] и практических коммерческих программных продуктах подобного назначения [2-4] в качестве словарей подразумеваются и используются орфографические словари соответствующих языков, т.е. словари, определяющие правильное написание (представление) отдельных слов. Целью настоящей работы является обобщение и распространение методов и подходов [1] на ошибки, имеющие более сложную грамматическую и смысловую структуру, и построение моделей оценки вероятностных характеристик, определяющих возможности их обнаружения, автоматической идентификации и исправления.

2. Основные понятия и определения

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

Для основных понятий и компонентов системы примем следующие определения и обозначения:

Alk - входное l-е слово (атрибут некоего информационного объекта) длиной nk символов в алфавите qk;

і ( i i i Л

A = I A ...A ...A I - входное словосочетание (кортеж из K атрибутов);

11 k K I

Т1к- словарь допустимых значений к -го слова (г = \,...,Ык);

ТТ1 - словарь допустимых значений словосочетаний (] = !,...,N) .

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

Орфографическую ошибку определим как переход Л1к ® Л1к, в результате которого

образуется значение, отсутствующее в словаре Тгк . Такая ошибка обнаруживается в результате проверки допустимости отдельного взятого слова.

Смысловую ошибку определим как переход Л1к ® Л1к , в результате которого образуется

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

(или нет) только в результате проверки допустимости словосочетания в целом.

Примечание. Смысловая ошибка в приведенной трактовке может иметь двоякое происхождение:

1) как результат неумышленного искажения отдельных символов слова при формировании документа (сообщения) или его вводе;

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

В качестве наглядного иллюстративного примера рассмотрим правильное словосочетание русского языка "кот бежит". Орфографическая ошибка "кот ^ крт" может быть обнаружена путем проверки допустимости значения "крт", отсутствующего в словаре. Смысловая ошибка "кот ^ кит" не обнаруживается на уровне орфографического контроля, но ошибка в словосочетании "кит бежит" - налицо. И, наконец, смысловая ошибка "бежит ^ лежит" не обнаруживается вообще (без более широкого контекстного анализа, но этот уровень контроля мы здесь не рассматриваем). Статическая структура рассматриваемой системы приведена на рис. 1.

Сформулируем исходное правило построения ТТ1 :

Если Л‘1...Лгк...ЛгК е ТТ1, то

"Лк е Тк (г = \,...^к;к = 1,...,К) . (1)

Суть правила заключается в том, что допустимые словосочетания состоят исключительно из допустимых слов.

Примечание. Правило не носит абсолютного характера, а лишь ограничивает область рассматриваемых ситуаций случаями, наиболее типичными для представления данных. Для более сложных случаев, которые теоретически могут быть свойственны в частности, отношениям между элементами знаний, это правило может и не выполняться. Например, некие лица Х,У,2 вместе

(ХУ2) могут быть совместимыми, а попарно (ХУ,Х2,У2) - нет.

г

1-

г;

Г'~

Чі

'і -<

V

Ж

N

N

'Т\

Чк

АІ Ак аК

П N і

к=1

А;1 ... а; ... А1 Ак

... ...

... ...

а; ... Ак ... Аі Ак

>

N

тт1

Рис. 1. Структура рассматриваемой системы

Из (1) вытекают следующие свойства проверяемых словосочетаний Л[...Л1к...Л1К по отношению к возможным ошибкам.

1. Если Л\...Л'К £ ТТ1 и ЗЛк £ , то произошла орфографическая ошибка в слове Л1к .

2. Если Л\...ЛК £ ТТ1 и "Л1к е Т'к , то произошла смысловая ошибка из-за формально допустимого искажения неизвестного слова.

3. Если Л\...ЛК е ТТ1, то "Л1к е Т^ , и ошибка в словосочетании отсутствует (или не обнаружена).

3. Общая схема контроля-коррекции словосочетания

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

В первом варианте вначале проверяются отдельные слова на наличие орфографических ошибок. Ошибки (при их наличии) обнаруживаются, идентифицируются и исправляются по алгоритмам моделей [1]. Затем выполняются контроль совместимости слов словосочетания, идентификации и коррекция смысловых ошибок.

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

к

Явная предпочтительность второго варианта определяется тем фактором, что ошибок следует ожидать далеко не в каждом словосочетании. Следовательно, во втором варианте большая часть контрольных проверок ограничится проверкой «группового» условия

Л[...Л1К е ТТ1.

Общая схема алгоритма контроля-коррекции на основе второго варианта включает следующие этапы:

1. Проверка Л[...Л[ е ТТ1. Если результат положительный, то словосочетание считается безошибочным. Иначе - в словосочетании имеется ошибка; переход к п. 2.

2. Проверка условия "Л[ е Т1к . Если результат отрицательный и ЗЛгк £ Т'к , то произошла

орфографическая ошибка в слове Л1к . Она обрабатывается схемой АИК [1] с последующим переходом к п. 1. (I := I +1). Иначе в словосочетании имеется смысловая ошибка. Переход к п. 3.

3. Идентификация смысловой ошибки и ее исправление (с участием или без участия пользователя). Переход к п.1.

Граф, отображающий структуру частных исходов-событий алгоритма, приведен на рис. 2.

12

Рис. 2. Структура событий

При оценке вероятностей Р1 ,Р2,Р21 ,Р22 будем исходить из следующего допущения о их распределении:

а) множества допустимых значений слов Л‘к мощностью Ык среди множества их

П,

всевозможных значений мощностью Цк ;

б) множества допустимых значений словосочетаний Л1к...Л1К мощностью N среди

К

множества их всевозможных значений мощностью ГГNk .

С учетом определения типов ошибок, принятого допущения о распределении вероятностей и свойств 1-2 получим,

Из приведенных соотношений видно, что контролирующая способность (относительное количество обнаруженных ошибок) для орфографического контроля равна:

а для совокупности орфографического и смыслового контролирующая способность будет равна:

При г < 1 и Я < 1 (а эти неравенства практически всегда достаточно глубоки) величина Еорфсм))Ворф. Например, для г = 10-2 и Я = 10-2 только орфографический контроль теоретически позволяет обнаружить 99% ошибок, а орфографический + смысловой - 99,99%.

4. Идентификация и исправление смысловых ошибок

Идентификация смысловых ошибок и оценка вероятностных характеристик этого процесса возможны на основе применения и исследования механизма [1] генерации обратных искажений

ошибочного слова по словарям Тгк .

Будем интерпретировать К - кратное словосочетание как К - символьное гиперслово в смешанном алфавите Ы1,...Ык,...ЫК, а смысловую ошибку в гиперслове - как однократную транскрипцию к -го гиперсимвола. Под гипервариацией будем понимать замену текущего значения слова Л1к на очередное из словаря Т'к . В контексте этих определений процесс автоматической (полуавтоматической) идентификации заключается в генерации гипервариаций в классе однократных транскрипций и проверке допустимости образованного гиперслова по словарю ТТ1 . Полное количество генерируемых гипервариаций УК определяется простым выражением:

К

Ук = ЪХк - К . (2)

к=1

(2)

Оорф = Р1 = 1

/ Л

= евт1, Я =

к=1

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Тогда Оорф,см = 1 - гЯ .

В зависимости от используемого алгоритма разрешения возможной неоднозначности

совпавшее гиперслово словаря ТТ1 может предлагаться пользователю для подтверждения корректировки либо исправляться автоматически. При условии сохранения допущения о случайном

распределении значений словосочетаний в словаре ТТ1 и применении соотношений общей

модели испытаний Бернулли вероятность Р^,Я,Ук) в точности g случайных совпадений

определяется выражением

Р^,Я,Ук) = с?к ■ яе (1 - Я)‘к^.

Вероятность одновременного искажения более одного слова будем считать пренебрежимо малой. В этом случае в терминах [1] "корректируемой" ошибкой является однократная транскрипция, и вероятность ее появления (при условии, что в словосочетании обнаружена смысловая ошибка) равна 1, так что все выражения [1] для вероятностей правильной РАК , ложной РЛК и ручной РРК коррекции соответственно упрощаются. Например, для наиболее простого (в

смысле анализа) и перспективного для применения в рассматриваемом приложении алгоритма 3, требующего подтверждения предлагаемой корректировки пользователем,

РАК = р(т) ,

Рлк » 0 ,

Ррк = 1 -р( т) ,

где Р(т) определяет вероятность того, что среди т предложенных вариантов корректировки содержится правильный вариант. Как показано в [5],

ук - 8-і УК^1 т

Р( т) = I С8КЯ8 (1 - Я) + I -О -іК8 (1 - К)

я=0 К 8=т 8 + 1 К

Ук - 8-1

В таблице приведены иллюстративные результаты расчета значений РАК = Р(т) для следующих данных:

К = 3, ^ = 102; Ы2 = 5 • 102; Ыъ = 103 ; N = 5 • 104,5 • 103,5 • 102.

В этом случае, как следует из (1) и (2), Ук = 1597, Я = 10-3,10-4,10-5.

Таблица. Иллюстративные результаты расчета значений Ра

Я т

1 2 3 4 5

10 -3 0,4994 0,7964 0,9315 0,9857 0,9953

10 -4 0,9242 0,9960 0,9998 1,0000 1,0000

10 -5 0,9920 0,9999 1,0000 1,0000 1,0000

Как видно из таблицы, для данных значений К,Nk,N результаты полуавтоматической идентификации смысловой ошибки, допущенной при вводе, можно считать вполне приемлемыми -

правильное значение атрибута находится среди 3-5 альтернатив с вероятностью, весьма близкой к 1 (с точностью в пределах 5 знаков). Для ошибки, допущенной при формировании первичного документа, возможно только автоматическое исправление (алгоритмы 1, 2 [1]) или возврат документа на проверку и исправление к первоисточнику. Уверенное автоматическое исправление возможно только в случае таких сочетаний значений Nk, N, при которых т » 1.

Поскольку, как известно, среднее число "удачных" исходов для испытаний Бернулли равно ЯУК (в наших обозначениях), то обобщенным ориентировочным критерием оценки применимости метода автоматической идентификации и исправления смысловых ошибок может служить неравенство ЯУк <е. Выражая левую часть через “первичные” параметры словарей N., N, получим:

где е - принятое допустимое относительное количество “ручных” (или ложных) исправлений.

Например, значение е= 0,01 означает, что примерно на 100 случаев идентификации

смысловой ошибки в 1 случае в дополнение к правильной вариации со словарем ТТ 1 произойдет еще одно случайное ложное совпадение. В этом случае алгоритм 1 [1] выполнит правильную автоматическую коррекцию с вероятностью 0,5, а алгоритмы 2, 4 предложат идентифицировать и исправить ошибку "вручную".

Совместный контроль орфографических и смысловых ошибок позволяет существенно повысить достоверность вводимой информации.

Для автоматической идентификации и исправления смысловых ошибок может быть использован метод генерации обратных искажений словосочетания и проверки их допустимости. Полученные в работе [1] соотношения вместе с выражениями (1)-(3) позволяют получить ориентировочные оценки результативности метода. В перспективе применение описанного подхода возможно и для более сложных ошибок, - в частности, сочетания кортежей таблицы (экземпляров входных форм). Это случай нуждается в отдельном исследовании.

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

1. Кузьменко Г.Є., Литвинов В.А., Майстренко С.Я., Ходак В.І. Алгоритми і моделі автоматичної ідентифікації та корекції типових помилок користувача на основі природної надмірності // Математичні машини і системи. -2004. - № 2. - С. 134-148.

2. ААегБсап. ІіНр://\т^/аЛег8сап.сот/ги.

3. http://www.abbyy.ru/products/handprint/WP_form_processing_65.pdf.

4. Редактор 1ДФ. http://octant.com.ua.

5. Литвинов В.А., Майстренко С.Я., Ступак Н.Б. Некоторые оценки вероятностных характеристик процесса автоматической идентификации ошибок пользователя на основе эталонного словаря // УСиМ. - 2001. - № 2. -

К

5. Выводы

С. 21-24.

i Надоели баннеры? Вы всегда можете отключить рекламу.