МЕТОД ПОВЫШЕНИЯ ТОЧНОСТИ ЧАСТЕРЕЧНОЙ

advertisement
МЕТОД ПОВЫШЕНИЯ ТОЧНОСТИ
ЧАСТЕРЕЧНОЙ КЛАССИФИКАЦИИ СЛОВ В
МОРФОЛОГИЧЕСКИХ АНАЛИЗАТОРАХ DLPСИСТЕМ
Лапшин С.В., аспирант кафедры безопасных информационных
технологий СПб НИУ ИТМО, sv.lapshin@gmail.com
Аннотация
В статье предложен метод повышения точности
частеречной
классификации
слов
предложения
в
морфологических анализаторах DLP-систем. Предложенный
метод обладает важным преимуществом – для его работы не
требуются предварительно размеченные тексты или иные
специально подготовленные данные, за исключением
морфологических словарей.
Введение
Ключевой момент в работе DLP системы – получение вердикта
анализатора данных в ответ на запрос: является ли перемещаемая
информация защищаемой? [1] Одним из важных этапов в работе
анализатора является морфологический анализ передаваемых сообщений.
От качества морфологических характеристик разобранных словоформ
зависят показатели полноты и точности определения угроз
информационной безопасности DLP-системы. Однако автоматический
анализ естественного языка, в том числе и морфологический,
небезошибочен и многозначен – часто он дает несколько вариантов
анализа для одной языковой единицы. [2]
В статье описан метод повышения точности автоматического
определения частей речи слов в предложении. Важной особенностью
метода является то, что он не требует предварительно размеченных
текстов или иных специально подготовленных данных, за исключением
словарей морфологических описаний слов.
Приводимый в статье метод предназначен для текстовой
информации, представленной на русском языке.
Суть метода
Предлагаемый метод разметки слов предложений по частям речи
основывается на использовании определенног множества известных,
заранее корректных
последовательностей признаков части речи
(множество корректных шаблонов) для аналогичных предложений.
Аналогичным в данном случае является предложение, имеющее
одинаковую длину и последовательность частей речи с анализируемым.
Выбор одной из гипотез определяется наличием ее во множестве
известных. При этом, если в известном множестве содержится более одной
гипотезы для анализируемого предложения, то выбирается наиболее часто
встречающаяся.
Предлагаемый метод состоит из следующих частей:
1. Формирование множества корректных шаблонов предложений.
2. Формирование множества гипотез о признаках части речи слов в
предложении.
3. Поиск во множестве корректных шаблонов каждой из гипотез.
4. Выделение одной из гипотез на основе результатов поиска.
Формализация задачи представлена следующим образом.
Пусть S = { si }, i=1,..., n – множество корректных шаблонов
предложений.
Пусть H = { h i }, i=1,..., m – множество гипотез о признаках части
речи слов анализируемого предложения.
Пусть R – правильное описание анализируемого предложения с
точки зрения
признаков части речи его слов.
Тогда решаемая задача состоит в том, чтобы выбрать такое hj
 H, что hj = R.
При этом важными подзадачами являются формирование
множества корректных шаблонов S и поиск h i в множестве S.
Формирование множества корректных шаблонов
предложений
Сформировать достаточное множество корректных шаблонов
вручную не представляется возможным. Если рассматривать 14 частей
речи и только предложения длинной до 10 слов, то мощность множетва S,
необходимого для анализа таких предложений, можно грубо оценить по
следующей формуле:
(1)
Очевидно, что корректно разметить такое или сравнимое с таким
число предложений за разумное время невозможно. Автоматическое
решение этой подзадачи «напрямую» сталкивается с исходной решаемой
проблемой – с проблемой точности автоматического определения частей
речи в предложениях.
Для решения этой подзадачи была использована следующая идея.
Искомое множество S можно формировать на основе предложений,
состоящих только из однозначных с точки зрения признака части речи
слов.
Таким образом, процесс формирования множества корректных
шаблонов предложений состоит из следующих шагов:
1. Формирование морфологического словаря без омонимов.
2. Определение предложений, состоящих только из полученных
на шаге 1 слов.
3. Создание шаблонов на основе полученных на шаге 2
предложений.
4. Добавление полученных шаблонов в искомое множество.
Описанный способ дает возможность получить необходимое
множество S автоматически, без использования предварительно
размеченных текстов. Таким образом, реализуется первая часть
предлагаемого метода.
Формирование множества гипотез о признаках части речи
слов в предложении
Следующей подзадачей является формирование множества гипотез
H о признаках части речи слов в предложении. Для этого, для каждого
слова в предложении из словаря извлекается список возможных частей
речи. Далее, с помощью перестановки возможных частей речи для каждого
слова формируется искомое множество H.
Поиск в множестве корректных шаблонов каждой из
гипотез
Полученное в первой части множество корректных шаблонов S
предложений достаточно велико (1). Поиск перебором в таком множестве
будет крайне неэффективен. В связи с этим, предлагается организовать
хранение множества корректных шаблонов с помощью словаря.
В нашей реализации описываемого метода шаблон предложения si
представляет собой последовательность чисел, т.е. части речи кодируются
числами
si = { mi }, i=1,..., n, mi – закодированная часть речи i-ого слова в
предложении.
Для организации хранения и поиска по большому числу таких
числовых последовательностей был выбран словарь неограниченной
вложенности, где на каждом уровне ключем является код части речи, а
значением – кортеж из словаря следующего уровня и числа, означающего
количество встреч предложения с частями речи, которые были
закодированны использованными числами.
S[m1] [m2]… [mn] = (Sn+1, N), где Sn+1 – словарь следующего уровня
вложенности, а N – число встреч шаблона si.
Такая структура хранения довольно проста в реализации и
использовании, и позволяет выполнять поиск по большому числу
шаблонов предложений с приемлемой скоростью, что подтверждается
экспериментом.
Выделение одной из гипотез на основе результатов поиска
Поиск каждой из гипотез hi в множестве известных шаблонов S
может привести к трем различным исходам:
1. H ∩ S = Ø – в имеющемся множестве корректных шаблонов не
найдено ни одной гипотезы
2. H ∩ S = { h j } – в имеющемся множестве корректных шаблонов
найдена одна гипотеза
3. H ∩ S = { hj ... hk } – в имеющемся множестве корректных
шаблонов найдено несколько гипотез
Большое число результатов первого исхода говорит о том, что
имеющегося множества корректных шаблонов недостаточно, и требуется
его пополнение.
В случае второго исхода единственная найденная гипотеза hj
считается верной.
В случае третьего исхода выбирается гипотеза, которая встречалась
наиболее часто.
Полученная в результате гипотеза hj является в среднем более
корректной, чем случайно выбранная из исходного множества H. Это
подтвердается экспериментом.
Вывод
Описанный в статье метод позволяет повысить точность
частеречной классификации слов в предложении. Поставленные
эксперименты подтверждают этот факт. При этом, он обладает важным
преимуществом – для его работы не требуются предварительно
размеченные тексты или иные специально подготовленные данные, за
исключением словарей морфологических описаний слов.
Улучшение указанной характеристики позволяет повысить качество
морфологического анализа в системах DLP, что, в свою очередь, приводит
к повышению защищенности таких систем.
Литература
1. Левцов В.Ю. Контроль подмены символов в системах борьбы с
утечками конфиденциальных // "Information Security/
Информационная безопасность" – 2009. – №5. – C. 28.
2. Боярский К.К., Каневский Е.А. Разработка инструментария для
полуавтоматической морфологической разметки текста // Труды
международной конференции «Корпусная лингвистика – 2008». –
СПб.: С-Петербургский гос. Университет, Факультет филологии и
искусств, 2008. С. 83 – 88.
Download