Научная статья на тему 'Дисфункция референтного словаря системы проверки орфографии и подход к ее снижению'

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

CC BY
56
13
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ОШИБКИ ПОЛЬЗОВАТЕЛЯ / СПЕЛЛ-ЧЕКИНГ / РЕФЕРЕНТНЫЙ СЛОВАРЬ / ЗАДАЧА "О РАНЦЕ" / USER ERRORS / SPELLCHECKING / REFERENTIAL VOCABULARY / KNAPSACK TASK

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

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

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

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

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

The checking process model in the system of orthography spellchecking and correlations which determine the index of dysfunction of the referential vocabulary is cosidered. The task of agreeing the criteria for forming the referential vocabulary is stated; its solution algorithm has been proposed; the results of algorithm modeling have been cited for specific vocabularies of the Ukrainian and Russian languages.

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

ШФОРМАЩИН1 I ТЕЛЕКОМУН1КАЦ1ИН1 ТЕХНОЛОГИ

УДК 681.3

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

ДИСФУНКЦИЯ РЕФЕРЕНТНОГО СЛОВАРЯ СИСТЕМЫ ПРОВЕРКИ ОРФОГРАФИИ И ПОДХОД К ЕЕ СНИЖЕНИЮ

Институт проблем математических машин и систем НАН Украины, Киев, Украина

Анотаця. Розглядаеться модель процесу чектга в системi nepeeipm орфографи i ствв1дношення, що визначають показник дизфункцп референтного словника. Формулюеться задача узгодження критерИ'в формування референтного словника, пропонуеться алгоритм гг виршення, наводяться результати моделювання алгоритму на конкретних словниках украгнськог i ростськог мов. Ключов1 слова: помилки користувача, спелл-чектг, референтний словник, задача «про ранець».

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

Ключевые слова: ошибки пользователя, спелл-чекинг, референтный словарь, задача «оранце».

Abstract. The checking process model in the system of orthography spellchecking and correlations which determine the index of dysfunction of the referential vocabulary is cosidered. The task of agreeing the criteria for forming the referential vocabulary is stated; its solution algorithm has been proposed; the results of algorithm modeling have been cited for specific vocabularies of the Ukrainian and Russian languages.

Keywords: user errors, spellchecking, referential vocabulary, knapsack task.

1. Введение

В настоящее время системы проверки орфографии (СПО) являются как востребованным самостоятельным продуктом (ОРФО, Language Tool и др.), так и обязательным компонентом текстовых редакторов, поисковых систем, почтовых клиентов, электронных словарей и т.п. [1, 2]. Центральный элемент таких систем - референтный орфографический словарь (РОС), содержащий «правильные» слова некой предметной области, с которыми сравниваются проверяемые слова.

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

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

2. Модель процесса чекинга

Определим качество РОС двумя факторами:

© Литвинов В.А., Майстренко С.Я., Хурцилава К.В., 2017 39

ISSN 1028-9763. Математичш машини i системи, 2017, № 2

- способностью обнаруживать как можно больше наиболее вероятных (типовых) ошибок;

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

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

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

Л..

Генератор случайной последовательности слов А

1-Р

; = 1...ЛГ

ч

-тх

Л' р

Р], 4}

Чекер 1

J к Л>г

Слова с обнаруженными ошибками

РОС

Слова с необнаруженными ошибками

ОШИБКИ

1 -Р

специфические независимые

^ 1 \

р1 р2 - рк

Рис. 1. Схема вероятностной модели искажения слов

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

Представим генератор слов Л в виде некой урны, в которой находятся некие фишки со словами Лу; значение р определяет относительное количество фишек с конкретным словом Л . При заместительном извлечении фишек из урны (генерации последовательности проверяемых слов) фишки могут повредиться, причем конкретная фишка Л

повреждается ^Л] ^ Л] ^ с вероятностью q.

В выходном потоке слов генератора относительное количество р. поврежденных фишек Л определяется произведением р. = р. ■ qy (с точностью до условий нормировки). Чекер сравнивает фишки Л., Л. с эталонными и отделяет поврежденные, причем некоторая часть повреждений (г) не распознается из-за того, что поврежденная фишка Л совпадает с эталонной Л . Показатель дисфункции г определяет относительное количество не-

обнаруженных повреждений (ошибок) по отношению к полному количеству поврежденных фишек (ошибочных слов).

Определим величину г через свойства слов Л], А словаря РОС. Обозначим через г.

относительное количество необнаруживаемых ошибок в слове Л. по отношению ко всем возможным ошибкам в этом слове. Тогда

n _

г=1 г ■ р, • (1)

Ошибки в словах Л. разделим на 2 класса: определенные (специфические) ошибки с относительной долей Р и произвольные ошибки с относительной долей (1 — Р) . Контролирующие свойства РОС по отношению к произвольным всевозможным ошибкам принципиально не поддаются учету и анализу, поскольку, если не накладывать ограничений на характер рассматриваемых ошибок, можно утверждать, что для каждого слова Л. существуют ошибки, переводящие его в любое другое слово. Поэтому ограничимся рассмотрением показателя дисфункции р по отношению к первому классу ошибок, для общности

разделив его на К подклассов с относительной долей, равной р, с нормирующим усло-

вием

IР = Р1 •

Ч к )

Тогда для (1) примем

^Рк} • Рк

1 " Г Р

и

г ^р = Цр}(2)

1 к Р

где р - относительное количество необнаруживаемых ошибок подкласса к в слове ЛJ■ по отношению к всевозможным ошибкам данного подкласса. Из очевидных соображений

V ■

р = • (3)

к1

где Ук . - количество совпадений слова А , искаженного ошибками подкласса к, с другими неискаженными словами Л;

VkJ - полное количество всевозможных искажений слова А. в подклассе ошибок к

(количество вариаций Лщ ) [3].

Таким образом, выражения (2), (3) определяют принятый смысл и значение показателя дисфункции произвольного РС и произвольной функции .

Для процесса последовательного ввода (передачи) символов проверяемых слов можно принять известное допущение о прямой зависимости вероятности искажения слова от его длины:

Ч, ■ п,-р,

Рщ ■ рк

где жс - статистическая вероятность искажения произвольного символа в процессе последовательного ввода;

п. - количество символов в слове А. ;

Л - нормирующий множитель.

Тогда с учетом нормирующего условия ^ ^ = 1.

з

п

(4)

j=1

1

В частном случае для n = const = n получим q = — .

j j N

Если еще и pj = ^ , то нормированное значение р; тоже равно —.

3. Задача согласования критериев формирования РОС и подход к ее решению

В настоящее время для одних и тех же предметных областей (в частности, понятий и слов украинского, русского и других естественных языков) существуют различные готовые орфографические словари, отличающиеся широтой охвата тезауруса (объемами) и контролирующими свойствами. Так, например, для русского языка в [3] были рассмотрены свойства «Словаря Зализняка» [4] (N =92555 для оригинального словаря и N =84575 - для украинской версии), «Словаря Лопатина» [5] (N=150213 и N =135401 - украинская версия), «Словаря русской литературы» [4] (N =161730 и N=1292440 - украинская версия). Проведенное моделирование показало, что из 1000 ошибочных слов, искаженных типовыми ошибками пользователя в процессах тайпинга, первый словарь не обнаруживает 5,4 слов, второй - 6,0, третий - 18,4. Показано, что уменьшение объема словаря при прочих равных условиях противоположным образом влияет на факторы качества - значения р и р. С одной стороны, за счет увеличения относительной избыточности представления слов и соответствующего уменьшения случайных совпадений ошибочных слов с допустимыми уменьшается показатель дисфункции р . С другой стороны, исключение из РОС слов с ненулевой востребованностью (вероятностью обращения) увеличивает значение р .

Представим тезаурус T некой предметной области, состоящий из двух частей: действительной (видимой) и мнимой (скрытой). Действительная часть представляет собой конкретный реальный РОС, а мнимая (МРС) - часть слов T, не представленных в РОС, но потенциально востребованных.

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

Результаты моделирования для ряда русских и украинских словарей, приведенные в [3], получены при использовании простого критерия «тупой силы» - исключения слова A ■

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

С целью формирования «точечного» критерия, оценивающего конкретный вклад потенциально исключаемых слов в значения факторов качества, рассмотрим следующий

Пусть и = const = n, N = 8 , K = 1 ( к -искажения

ограничены однократными транскрипциями).

Соответствующий гипотетический «словарь», упорядоченный по убыванию Pj , представлен в таблице.

Как видно из таблицы, в приведенном словаре не обнаруживаются однократные транскрипции 576^676, 576^-516 и т.д.

Таблица иллюстрирует следующие положения.

пример.

Таблица 1. Исключение слов

j Pi Р/ Ai

1 0,2 0,2 57 Ц

2 0,2 0,2 ||316 I I

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

3 0,15 0,15 Т 676 1

4 0,15 0,15 I+516 ▼

5 0,1 0,1 * 311

6 0,1 0,1 428 Ж

7 0,05 0,05 328 1

8 0,05 0,05 119

1. Исключение нейтрального слова (в словаре это 119), к -искажения которого не вызывают совпадений (то есть необнаруживаемых ошибок с реальными словами, не уменьшают значения р, но увеличивают значение < Следовательно, исключение

нейтральных слов не входит в парето-оптимальные решения.

2. Для каждого слова А(например, 576) необнаруживаемые прямые к -искажения которого (А => А) вызывают совпадения со словами А8 (в данном случае 676 и 516),

существуют необнаруживаемые обратные к -искажения слов А (676, 516), совпадающие со словом А .

Это положение справедливо и для остальных классов рассматриваемых типовых ошибок тайнинга. Так, легко показать, что любой прямой транспозиции соседних символов в слове АI соответствует обратная транспозиция в слове А; вставке символа в слове А\ соответствует пропуск слова в слове А.

3. Исключение слова А^ (например, 516) уменьшает значение р за счет уменьшения количества совпадений обратных к -искажений слов А1 со словом А (здесь слов 676, 316).

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

Из приведенной в табл. 1 структуры совпадений к -искажений видно, что среднее

абсолютное значение количества необнаруживаемых ошибок равно ра&, р] ^ = 1,5 .

/ *

Будем искать слово, исключение которого с учетом положения 3 дает наименьшее отно-АР

шение щ =-.

АРабс

В гипотетическом словаре табл. 1 это слово А4 (516), для которого АР =0,15, Арабс =0,4 и щ =0,375. В результате исключения слова А4 из РОС рабс=1,1 и <=0,15.

Приведенные качественные рассуждения обобщает следующий критерий соответствия (~), который может быть положен в основу пошагового алгоритма решения задачи выбора для исключения слова А1:

A ~ min i «,=-£-, Лр=£ Pk Z P, ■ ^,

Лр k , Vs

где Vks - полное количество всевозможных к -искажений слов As .

В приведенной постановке задачу можно рассматривать как некоторое обобщение задачи «о ранце» (Knapsack Problem [5]), а пошаговый алгоритм её решения на основе (1) -как разновидность «жадного» алгоритма GA (Greedy algorithm [6]), в котором в рюкзак помещаются предметы с максимальным отношением цены (в нашем случае Лр ) к весу

(pl). Рассматриваемая задача отличается от классической Knapsack Problem тем, что там

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

4. Алгоритм решения задачи

В основу алгоритма решения поставленной задачи положен алгоритм GA, адаптированной к отмеченным особенностям, - зависимости параметров (цены и веса) от шага решения.

Общая схема алгоритма приведена на рис. 2. Приведенные на рис. 2 дополнительные обозначения имеют следующие смысл и значения.

Корректировка

A, Pj, Pj Pj < Pj+1 j = 1...N

A, Pi > Pi l = 1...m

Pi < Pi+i

al , pl > pl

L = 1...Y

9 = Z Pl

Рис. 2. Обобщенная схема алгоритма

1111 - промежуточный пул объемом т слов, в который помещаются слова Л. -

кандидаты на исключение на данном шаге;

ДТ - диагностическая таблица дисфункций слов Л.;

В - слова ПП;

C -

исключенные слова.

На начальном шаге в ПП из БРС перемещается т слов с минимальными значениями ру. Далее на каждом очередном шаге выполняется следующая последовательность действий.

1. Поиск в ПП слова В = С, для которого выполняется (4), и перенесение его в

МРС.

2. Исключение слова Л1 = В1 = С из БРС и корректировка параметров ДТ.

3. Расчет значений р, р.

4. Пополнение пула очередным словом, переход к п. 1.

Физически БРС, ПП и МРС являются единым целым, объединенным вместе с диагностической таблицей ДТ. В частности, БРС представляет собой упорядоченный список слов Л . ДТ содержит информацию о возможных совпадениях слов Л., искаженных рассматриваемыми типовыми ошибками, с другими словами, а ПП и МРС реализуются соответствующими метками - признаками.

На рис. 3 приведен пример фрагмента интегрированного БРС для словаря Лопатина.

С(|Г|ЧОГ(]

1:гап5к Ъгап^к I

¥5Ьау I

уфас! уфасН

1:гап5р Ьгап5р_1 |

полевать барн

шкатулка

обследовательский ярд

выграненный

перепляс

румянка

жиреть

прочитаться

садоводство

ксилитный

снизанный

плетённый

неведомый

денационализация

либерально

неизданный

голенной

неслёжиеающийся влечь

братоубийца

латентный

утайщица

беннеттитовые

ожидаться

спеваться

дефиниция

рукопожатие

пневмомеханический

зарыть

пожевать, .,,,полетать 'барк1,'барс'

ярь

румынка

пропитаться,.,., прочищаться

унизанныи,слизанныи

'пленённый'

'невесомый'

слечь,впечь

патентный

'забыть'/замыть'

поплевать 'баран',,.,'барон'

лярд

вперепляс

ожиреть

вплетенный,,.,, уплетенный

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

увлечь

дожидаться

закрыть

1 'плевать'

О

О

О

О

О

0

1 'румяна' О

О О О О

2 'плетёный','плетёный' О

О О О О

0

1 'лечь' О

О О О О О О О О О

1 'оплевать'

О

О

0

1 'ряд' О

О

о о о о о о о о о о о о о о о о о о о о о о о о

I—г;—;— ——г,—,. -.„,-^тт^:—г"7-гт^гтттттт—г~~

Рис. 3. Фрагмент интегрированного БРС для словаря Лопатина

Результаты моделирования алгоритма приведены в табл. 2-5. Данные таблицы имеют следующий смысл.

Таблица 2. Словарь Лопатина (Л = —)

N

У -103 (N - У)-103 N - У Случайное уменьшение Расчетное уменьшение

N р{У )-10-2 Р(У ) ^•10-2 РУ Ч0-2 РУ >+р(") (рЛ0А

0 84,57 1 0,277 1,0 0 0,277 1,0 0,0

5,08 79,50 0,94 0,261 0,942 5,660 0,225 0,812 4,00

10,16 74,42 0,88 0,246 0,888 11,909 0,156 0,563 28,38

15,24 69,35 0,82 0,232 0,838 17,901 0,062 0,224 299,36

16,16 68,41 0,81 0,229 0,827 19,064 0,035 0,126 632,099

24 Таблица 3. Словарь Лопатина (Л = —) N

У -103 (N - У)-103 N - У Случайное уменьшение Расчетное уменьшение

N р{У )-10-2 Р(У Чр*) ^•10-2 РУ Ч0-2 РУ ) V") (рЛ0А

0 84,57 1 0,269 1,0 0,0 0,269 1,0 0,0

5,08 79,50 0,94 0,252 0,937 6,229 0,221 0,822 0,000014

10,16 74,42 0,88 0,236 0,877 12,525 0,149 0,554 0,003772

15,24 69,35 0,82 0,221 0,822 17,957 0,053 0,197 9,72321

16,18 68,40 0,81 0,219 0,814 19,009 0,011 0,041 229,8810

Таблица 4. Украинская версия словаря Лопатина (Л = —)

N

У 403 (N - У) -103 N - У Случайное уменьшение Расчетное уменьшение

N РУ М0-2 РУ Кр^) ^•10-2 р{У) • 10-2 р У )^р( N) <рЛ0~*

0 84,57 1 0,214 1,0 0,0 0,2 14 1,0 0,0

5,08 79,50 0,94 0,201 0,939 6,077 0,152 0,710 5,881

10,16 74,42 0,88 0,188 0,879 12,150 0,070 0,327 108,187

11,65 72,93 0,86 0,185 0,864 14,001 0,027 0,126 449,207

24 Таблица 5. Украинская версия словаря Лопатина (Л = —) N

У -103 (N - У) -103 N - У Случайное уменьшение Расчетное уменьшение

N р Ч0-2 РУ Чр*) ^•10-2 р{У) • 10-2 р У )+р{ ) <рЛ0~*

0 84,57 1 0,214 1,0 0,0 0,214 1,0 0,0

5,08 79,50 0,94 0,203 0,949 5,487 0,150 0,701 0,000065

10,16 74,42 0,88 0,192 0,897 11,314 0,069 0,322 0,663742

15,24 69,35 0,82 0,187 0,874 13,122 0,009 0,042 1749,524

Параметр Л определяет «крутизну» экспоненциальной кривой, аппроксимирующей ступенчатое распределение плотности вероятности обращений к словам БРС. Для Л = ум

распределение характеризуется отношением 20/80 (80% обращений к БС охватывают всего 20% слов), а для Л = - отношением 10/90 (с аналогичным смыслом) [3].

При «случайном» уменьшении БРС слова «переносились» в МРС случайным образом, при «расчетном» - в соответствии с результатами работы описанного выше алгоритма (точечным подбором).

Моделирование проводилось для словаря Лопатина (табл. 2, 3) и его украиноязычной версии (табл. 4, 5). Абсолютную результативность работы алгоритма иллюстрируют столбцы 7 (значения показателя дисфункции) и 9 (суммарная вероятность ложных сигна-

8

лов об ошибке), а относительную - столбцы 5 и 8. В частности, для Л = — выборочное

N

исключение 6% слов БРС приводит к снижению значения показателя дисфункции на 18% (русский словарь Лопатина) и 29% (украиноязычная версия словаря), а произвольное -всего на 5,8% и 6,1 %. Соответствующие значения <р составляют 5,7 •Ю-4 и 5,9 •Ю-4 для выборочного исключения и 5,7 • 102 и 6,1 • 102 для случайного.

5. Выводы

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

- выбор готового базового словаря, описывающего заданную предметную область;

- решение о возможности и целесообразности его улучшения на основе критериев р, р с последующим формированием рабочего референтного словаря РОС;

- частные решения при адаптивном сопровождении РОС (пополнения, исключения) на основе критерия (5).

Точность принимаемых решений зависит от точности знаний о востребованности

1

слов РОС. Грубая оценка дисфункции словаря может быть произведена для Ру = до и П / п

#. = у^ . С другой стороны, возможно и повышение точности рассмотренных моделей

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

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

1. Системы проверки орфографии [Электронный ресурс]. - Режим доступа: http://compress.ru/article.aspx?id=9511.

2. Проверка орфографии [Электронный ресурс]. - Режим доступа: http://www.bestfree.ru/artide/computer/spell-check.php.

3. Литвинов В.А. Оценка контролирующих свойств базового словаря допустимых слов в системе автоматического обнаружения ошибок пользователя / В.А. Литвинов, С.Я. Майстренко, К.В. Хур-цилава // Математичш машини i системи. - 2014. - № 2. - С. 65 - 70.

4. Словари русского языка [Электронный ресурс]. - Режим доступа: http://speakrus.ru/dict.

5. Словарь Лопатина [Электронный ресурс]. - Режим доступа: http://royallib.ru/book/lo-patin_vladimir/russkiy_ orfograficheskiy_slovar.html.

6. Knapsack problem [Электронный ресурс]. - Режим доступа: http://en.wikipedia.org/ wiki/Knapsack problem.

7. Задача о рюкзаке: жадный алгоритм [Электронный ресурс]. - Режим доступа: ЬйрУАга&йо-ги.огаМ1И/Задача_о_рюкзаке: жадный_алгоритм.

Стаття над1йшла до редакцп 12.04.2017

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