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

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

CC BY
239
38
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ОБРАБОТКА ТЕКСТОВ / NATURAL LANGUAGE PROCESSING / КЛАССИФИКАЦИЯ / CLASSIFICATION / СИНТАКСИЧЕСКИЙ АНАЛИЗ / ОПРЕДЕЛЕНИЕ АВТОРСТВА ТЕКСТА / AUTHORSHIP ATTRIBUTION / SYNTACTIC PARSING

Аннотация научной статьи по математике, автор научной работы — Куликов В. В.

В работе исследуются различные способы определения понятия “словосочетание”. Помимо метода, использующего $n$-граммы, рассматриваются новые способы, основанные на синтаксических деревьях. Вводятся понятия “$n$-цепи”, “$n$-поддеревья”, “полные $t$-поддеревья”. Новые типы словосочетаний могут служить основой для признаков текстов в задачах машинного обучения. Все описанные типы словосочетаний сравниваются между собой в задаче определения авторства, поставленной как задача классификации.

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

Some methods of words combination definition in text classification problem

This paper describes multiple ways of the term “word combination” definition. A well-known method based on $n$-grams and several new methods based on syntactic tree properties are described. The paper defines new terms: $n$-chains, $n$-subtrees, full $t$-subtrees. The new word combination types can be used for text features definition in machine learning tasks. All described word combination types are examined in the authorship attribution problem stated as a text classification problem.

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

УДК 004.852

В. В. Куликов1

О НЕКОТОРЫХ СПОСОБАХ ОПРЕДЕЛЕНИЯ СЛОВОСОЧЕТАНИЙ ДЛЯ ЗАДАЧИ КЛАССИФИКАЦИИ ТЕКСТОВ

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

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

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

1 Факультет ВМК МГУ, асп., e-mail: segoonQcs.msu.ru

свойства слова, необходимо каким-либо образом формализовать понятие "взаимное сочетание". Как правило, в качестве подобного сочетания используются последовательности словоформ или их свойств, называемые n-граммами. Однако n-граммы, учитывая взаимное использование подряд идущих в предложении слов, не учитывают синтаксис языка. К примеру, в результате в предложении "мыла мама раму" словосочетание "мыла раму" не будет в явном виде учтено биграммами слов.

При использовании синтаксического анализатора (парсера) языка возможно в явном виде учитывать синтаксические связи между словами, что может быть использовано для определения понятия сочетания слов. Был применен синтаксический анализатор* MaltParser для построения корневого дерева, в котором отдельные слова предложения (а также знаки препинания, числа и т. д.) представлены в виде вершин, а синтаксические связи — в виде ребер. Инцидентность вершин дерева может быть использована для определения "взаимного сочетания" свойств слов. Как будет видно далее, использование структуры синтаксического дерева предложения для учета словосочетаний значительно улучшает качество классификации.

В предыдущих исследованиях других авторов синтаксическая информация уже использовалась некоторым образом для классификации текстов. Так, в работах [1, 2] рассматривалась возможность использования правил вывода контекстно-свободной грамматики и получения из их частот признаков текстов. При этом в работе [2] извлечение признаков происходило полностью автоматически. В работах [3, 4] проводились частичный разбор предложений (partial parsing [3]; chunk parsing [4]) и построение признаков текстов из частот и размеров тех или иных синтаксических групп.

В данном исследовании мы введем три новых способа формализации понятия "словосочетание", которые можно использовать для выделения признаков в задачах машинного обучения, к примеру, классификации, кластеризации или идентификации. Новые типы словосочетаний основаны на свойствах синтаксических деревьев. Также мы проверим их эффективность по сравнению с п-граммами в задаче определения авторства текста, поставленной как задача классификации. Заметим, что область применения новых типов словосочетаний не ограничивается задачей определения авторства.

2. Варианты сочетаний слов.

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

Направленным графом G называется пара (F, Е), где V — множество вершин и /•.' С V • V — множество ребер графа. Путем в графе (F, Е) называется конечная последовательность вершин этого графа {v\,... ,vn), такая, что ребро Vj+i) принадлежит множеству ребер Е для всех значений г от 1 до п — 1. Исходящей степенью вершины v назовем число исходящих из нее ребер, т. е. число элементов множества {(«, и) | и € V}. Назовем вершину с нулевой исходящей степенью корнем дерева: Rt = Root(T). Назовем деревом Т с выделенным корнем направленный граф, для которого выполняются три условия. Во-первых, исходящая степень каждой вершины не превышает единицы. Во-вторых, существует лишь одна вершина с нулевой исходящей степенью. В-третьих, из любой вершины существует путь к корню. Заметим, что из любой некорневой вершины существует лишь единственный путь к вершине дерева.

Определим для дерева с выделенным корнем несколько свойств. Для каждого ребра (v, и) € Е назовем вершину и родительской по отношению к вершине v: и = parent(T, v). Из определений дерева и корня дерева следует, что у всех вершин дерева, кроме корня, существует родительская вершина. Назовем множеством детей произвольной вершины v множество тех вершин, у которых родительской вершиной является вершина v: children(T, v) = parent(T, и) = v}. Назовем

* http://www.maltparser.org/

поддеревом {V',E') дерева Т = (V,E) любое дерево с выделенным корнем, такое, что V' С V жЕ' СЕ.

Назовем синтаксическим деревом Т = ST(S) предложения S = дерево с выделен-

ным корнем, такое, что в качестве его вершин выступают слова предложения, а в качестве ребер выступают синтаксические связи между словами: Т = ({¿ь ..., Е). Синтаксический анализатор MaltParser строит синтаксическое дерево для предложения, дополненного псевдословом ROOT: S' = {ROOT, ti,..., Если синтаксические связи были получены с помощью анализатора MaltParser, то определение синтаксического дерева корректно, так как результатом анализа предложения является набор помеченных слов, для каждого из которых определено родительское слово, кроме корневой вершины ROOT, и все слова имеют путь до корневой вершины. Каждое слово имеет набор заранее определенных свойств: prop1(t),... , ргорр(£). Конкретные примеры свойств слов мы рассмотрим позже. Пример синтаксического дерева ST\ приведен на рисунке. Корень дерева выражен в виде вершины ROOT. Для простоты диаграммы вершины помечены лишь словоформой, а не группой свойств prop1(t),..., ргорр(£). Далее мы будем использовать дерево ST\ в качестве примера.

ROOT Сами же они его называют не иначе , как бандит

Пример синтаксического дерева

2.2. Определение n-грамм. Рассмотрим произвольную конечную последовательность, состоящую из к элементов: (ai,... Назовем n-граммой этой последовательности произвольную подпоследовательность, состоящую ровно из п подряд идущих элементов. В качестве признаков текста Т = могут выступать частоты встречаемости n-грамм последовательности (prop(ti),..., prop(£&)), где prop — свойство слова.

2.3. Определение n-цепей. Рассмотрим унарное поддерево Т' дерева с выделенным корнем Т = (V,E). Унарное дерево представляет собой набор вершин (г^,... где вершины Vi и Vi+i связаны ребром. Назовем простой n-цепью дерева Т последовательность (ui,... , такую, что дерево ({^i,...,{(г^,г Е 1,... ,п — 1}) — унарное поддерево дерева Т. В качестве признаков используются всевозможные последовательности (prop(^i),..., prop(un)), где (vi,..., vn) — простая n-цепь предложения текста, а prop — свойство слова. Назовем эту группу признаков простой n-цепью свойства prop. Для дерева STi ниже представлены некоторые 3-цепи словоформ:

(ROOT, называют, сами) (называют, иначе, не) (как, бандит, .)

Использование частот простых n-цепей в качестве признаков текста имеет существенный недостаток, присущий также и n-граммам: некоторые слова предложения участвуют в n-цепях чаще других. К примеру, листовое слово v участвует не более чем в одной цепи: (и,parent(Т,и), parent(T, parent(Т, г>)),...). Аналогично корень Rt участвует лишь в n-цепях вида (..., гл, г>, Дт)? где v = parent(Т, и), Rt = parent(Т, v) и число подобных цепей не более числа детей вершины Rj1-Напротив, вершины, достаточно удаленные от корня и листьев дерева, участвуют в гораздо большем числе цепей. В результате вершины, удаленные и от корня, и от листьев дерева, оказывают большое влияние на признаки текста, а вершины, приближенные к корню и/или к листьям дерева, — сравнительно небольшое. Аналогичная проблема существует и для n-грамм: в последовательности ... ,Vk) первые и последние п — 1 элементов представлены в меньшем числе n-грамм, нежели срединные элементы. Для устранения подобного дисбаланса первоначальная последовательность расширяется добавлением п — 1 фиктивных элементов е в начало и в конец по-

следовательности: (е,..., е, vi,..., Vk, е,..., е). В результате крайние элементы более представлены в n-граммах расширенной последовательности.

Попробуем расширить произвольную простую n-цепь аналогично n-граммам. Мы будем использовать фиктивные вершины NONE и ROOT, которые отсутствуют в исходном дереве. Определим для них значения всех свойств, которые определены для обычных вершин: ргорДМШЕ), prop^ROOT). Определим р, г-расширение* дерева Т:

1) 0, О-расширением дерева Т является само дерево Т;

2) 1, О-расширением дерева Т = (F, Е) является дерево Т' = (VU{i?}, EU(Rt, R)), где R не встречается среди вершин дерева Т и имеет те же свойства, что и фиктивная вершина ROOT: R ^ V, prop i(R) = propj(ROOT);

к

3) 0,1-расширением дерева Т = (F, Е) является дерево Т' = (V U {«!,..., щ}, Е U |J (щ, где

__г=1

vi,... ,Vk — листья дерева Т, к — число листьев дерева Т, щ — новые фиктивные вершины, отсутствующие в первоначальном дереве Т и имеющие те же свойства, что и фиктивная вершина NONE: prop^(щ) = propj-(NONE);

4) р, О-расширением дерева Т при р > 1 называется (р — 1,0)-расширение 1,0-расширения дерева Т;

5) р, r-расширением дерева Т при р > 0, г > 0 называется (р,г — 1)-расширение 0,1-расширения дерева Т.

Таким образом, р, r-расширение дерева является результатом последовательного "приписывания" р фиктивных вершин к корню дерева иг — к каждому листу. Назовем расширенной п-цепью дерева Т для целого п > 1 простую n-цепь (п — 2, п — 1)-расширения дерева Т. В расширенной цепи у срединных вершин дерева нет тех преимуществ по сравнению с листовыми и корневыми вершинами, которые есть в простой цепи. Число n-цепей, в которых включена вершина, зависит лишь от числа детей у ближайших вершин. Для дерева ST\ приведем примеры некоторых расширенных 3-цепей:

(ROOT, ROOT, называют) (ROOT, называют, сами) (называют, сами, же) (же, NONE, NONE)

2.4. Определение п- под деревьев. Назовем /(-поддеревом дерева Т с выделенным корнем произвольное поддерево дерева Т, в котором число вершин не превышает п. Для удобного использования n-поддеревьев в качестве признаков необходимо использовать некоторый алгоритм кодирования дерева в строке символов. Мы использовали запись, полученную в результате применения алгоритма обхода дерева в глубину. При заходе в вершину дерева v алгоритм записывает символ открывающейся скобки "(", значение некоторого свойства данной вершины дерева prop(v) и символ При выходе из вершины дерева v записывается символ ")". Дочерние вершины обходятся в порядке номера слова в исходном предложении. Для дерева ST\ результат записи будет выглядеть следующим образом:

(ROOT|(называют|(Сами|(же|))(они|)(его|)(иначе|(не|)(,|)(как|(бандит|(.|))))))

Некоторые примеры 3-поддеревьев для этого же дерева:

(ROOT|(называют|(Сами|))) (называют|(Сами|)(они|)) (как|(бандит I(.I)))

2.5. Определение полных ¿-поддеревьев. К /(-поддеревьям относятся все поддеревья с числом вершин, не превышающих п. Если вершина v является родительской по отношению к и, то к n-поддеревьям относятся поддеревья с корневой вершиной v, как включающие вершину и, так и исключающие ее. Иногда может оказаться полезным исследовать только те поддеревья, которые

*Название процедуры расширения дерева было выбрано по аналогии с р, q-расширением в работе [5]. В ней расширение в сторону корня совпадает с нашей процедурой, однако вторая часть расширения отличается. Поэтому первый индекс получил ту же букву алфавита, что и в [5] ("р"), а второй индекс получил новую букву ("г" вместо "д"), чтобы подчеркнуть отличие от р, q-расширения.

состоят изо всех вершин, удаленных от корневой вершины не более чем на расстояние ¿. Такие деревья мы будем называть полными ¿-поддеревьями. Определим полные ¿-поддеревья дерева Т с выделенным корнем формально.

1. Дерево Т' = (F',£") является полным 1-поддеревом дерева Т = (V^E) тогда и только тогда, когда оно является поддеревом Т и имеет ровно одну вершину: V' = {v}, v € V, Е = 0.

2. Пусть Т\ = (Vi, Ei) — полное ¿-поддерево дерева Т при t > 0. Тогда дерево Т2 = (Vi U FChiidren, Ei U ¿children) является полным ¿ + 1-поддеревом дерева Т, где FChiidren — множество всех детей всех вершин из множества Vi, a ¿children — множество всех ребер в дереве Ti, соединяющих ^children с их родительскими вершинами.

Для записи полных ¿-поддеревьев мы также будем использовать обход дерева в глубину. Ниже приведены некоторые примеры полных 3-поддеревьев для дерева ST\:

(ROOT I(называют|(Сами I)(они I)(его I)(иначе I))) (Сами I(же I))

(иначе I(не I)(,I)(как|(бандит I))) (они|)

3. Признаки текстов. Для получения дерева синтаксических зависимостей был использован синтаксический анализатор MaltParser 1.5 и морфологический анализатор* TreeTagger 3.2. Для каждого слова TreeTagger определяет его лемму, общую часть речи и морфосинтаксический дескриптор. Для слов, отсутствующих в словаре, TreeTagger в качестве леммы выдает псевдолемму <unkiiowii>, что не позволяет учитывать сочетания несловарных лемм. Для получения более точного значения леммы мы дополнительно использовали статистический лемматизатор** CSTLemma. В качестве модели русского языка для анализаторов MaltParser, TreeTagger и CSTLemma были использованы модели, полученные С. А. Шаровым [6]. Для извлечения описанных в п. 2 признаков текстов из вывода MaltParser была написана программа*** syndep.

В качестве свойств слов мы использовали следующие свойства:

• словоформа, т. е. слово в той форме, в которой оно было встречено в тексте;

• лемма слова, полученная с помощью анализатора TreeTagger. Среди подобных лемм встречается псевдолемма <unkiiowii>. Для отличия от следующего типа леммы мы будем называть этот тип леммы словарной леммой;

• лемма слова, полученная с помощью анализаторов TreeTagger и CSTLemma. Для отличия от словарной леммы мы будем называть эту лемму полной леммой;

• часть речи;

• морфосинтаксический дескриптор в формате MULTEXT-East****.

Среди типов словосочетаний мы выбрали n-граммы, а также расширенные n-цепи, п-подде-ревья и полные ¿-поддеревья. Все типы словосочетаний описаны в п. 2. Исследовались словосочетания длины от двух до четырех.

Среди используемых признаков присутствует значительное число шумовых признаков, поэтому необходимо провести отбор признаков. Мы использовали лишь те признаки, которые являются самыми частыми в корпусе русского языка. Похожая техника использовалась в работе [7] с применением частотного словаря. Для каждой группы признаков мы собрали статистику, используя корпус русского языка OpenCorpora. Все тексты корпуса были объединены в один текст путем простой конкатенации и обработаны анализаторами TreeTagger, MaltParser, syndep. Для каждой группы феноменов была собрана статистика самых частых феноменов в виде пары: (название, частота).

4. Описание эксперимента. В качестве корпуса текстов мы использовали набор текстов, который использовался в работе [7]. Он представляет собой набор из 47 произведений 9 русских писателей XVIII XX вв. Различные произведения из данного корпуса состоят из 80-1600 тыс.

• http://www.cis.uni-muenchen.de/~schmid/tools/TreeTagger/

** https: //github.com/kuhumcst/cstlemma

""" I In момент публикации статьи программа находилась в состоянии бета-версии, поэтому автором планируется публикация исходного кода под свободной лицензией по адресу: https://github.com/segoon/syndep

**** http://nl.ijs.si/ME/

символов. Для нивелирования разницы в размерах текстов мы использовали лишь первые 60 тыс. символов каждого текста, игнорируя оставшиеся.

В качестве алгоритма машинного обучения мы использовали машину опорных векторов (SVM, Support Vector Machine) [8] с линейным ядром. Была применена реализация* Weka с автоматической нормализацией признаков и значениями параметров по умолчанию. В нашем случае необходимо строить многоклассовые классификаторы, различающие не два, а большее число классов. Поскольку число классов невелико (9 классов), то мы строили всевозможные бинарные классификаторы для каждой пары авторов и каждый классифицируемый текст помечался меткой того класса, который получил большинство голосов бинарных классификаторов (all-against-all или one-vs .-one [9]). Для оценки качества различных типов словосочетаний мы провели серию экспериментов скользящего контроля. Число классифицируемых объектов достаточно малое (47 текстов), поэтому мы выбрали минимальный размер блока в один текст, получив контроль по отдельным объектам (Leave-one-out, LOO). Внешними параметрами алгоритма обучения являлись тип словосочетания, свойство слова, размер словосочетания, размер словаря (50, 100, 500, 2000 или его отсутствие). Для каждого набора внешних параметров был проведен независимый эксперимент.

5. Результаты. Результаты всех экспериментов приведены в таблице. В некоторых случаях словосочетаний длины больше 3 результат получить не удалось из-за нехватки оперативной памяти в программе Weka. В таких случаях в соответствующей ячейке таблицы стоит прочерк.

Результаты скользящего контроля**

п-граммы п-цепи п-поддеревья Полные í-поддеревья

1 2 3 4 2 3 4 2 3 4 2 3 4

Словоформа Все признаки 14 0 0 - 0 0 - 0 0 - 0 - -

50 87 61 4 0 78 78 78 74 76 76 31 25 4

100 87 68 21 0 74 72 70 85 82 ш 42 27 4

500 78 80 48 8 80 78 78 74 76 76 55 19 6

2000 78 70 55 27 65 63 65 70 72 74 57 23 8

Словарная лемма Все признаки 53 2 0 - 2 0 - 0 0 - 2 - -

50 91 68 23 6 85 87 87 87 87 87 65 31 10

100 87 76 31 8 97 93 93 91 91 89 68 42 23

500 82 82 63 23 93 М м 87 85 87 85 42 21

2000 87 80 57 27 82 ш ш 76 78 78 76 40 17

Полная лемма Все признаки 42 0 0 - 0 0 - 0 0 - 2 - -

50 85 57 2 0 м 89 89 89 91 М 48 2 0

100 87 74 14 0 100 95 97 93 93 93 65 10 8

500 80 85 46 10 95 91 М 85 82 85 74 27 12

2000 87 80 53 19 80 82 87 78 80 80 65 31 12

Часть речи Все признаки 44 82 82 - М 61 - 17 0 - 80 53 -

50 46 87 70 68 М 76 76 80 80 78 76 82 57

100 46 89 85 65 М 82 82 76 82 74 82 85 68

500 46 80 89 82 м 91 87 63 74 76 80 78 80

2000 46 80 80 80 м 63 65 40 44 51 80 63 76

Полный морфосинтак-сический класс Все признаки 51 12 0 - 12 2 - 0 0 - 10 0 -

50 72 76 53 14 82 68 70 80 76 76 61 48 11

100 80 80 59 25 82 78 76 87 74 74 74 48 25

500 57 87 68 40 87 87 85 76 72 78 82 42 34

2000 51 70 53 27 76 72 76 57 59 61 70 31 23

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

* http://www.cs.waikato.ac.nz/ml/weka/

В подавляющем большинстве свойств слов и размеров словосочетаний расширенные п-цепи и п-поддеревья обогнали n-граммы в точности классификации. Исключением стали морфосинтак-сические дескрипторы, n-граммы которых показали лучшие результаты, чем n-поддеревья. В большинстве случаев полные í-поддеревья показали худший результат. При использовании словарных и полных лемм, частей речи и морфосинтаксических дескрипторов лучшие результаты показали n-цепи. Расширенные 2-цепи лемм показали лучшие результаты среди всех групп признаков. Для словарных лемм лишь один текст был классифицирован неверно, для полных лемм все тексты были классифицированы верно.

Результат классификации n-грамм всех свойств, кроме частей речи, резко падает при увеличении размера словосочетания, т. е. при увеличении значения п. При этом результат классификации расширенных n-цепей и n-поддеревьев этих свойств практически не меняется при увеличении размера словосочетания. Использование словарных лемм вместо полных лемм, т. е. псевдолеммы <unkiiowii> вместо эвристически определенных лемм, улучшает результат униграмм на 0-11%, триграмм — на 0-21, а 4-грамм на 6-13%. Однако для расширенных п-цепей и п-поддеревьев ситуация противоположная. Хоть разница не столь заметна и в отдельных случаях использование псевдолеммы незначительно увеличивает точность, прирост от использования полных лемм достигает 0-11%.

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

6. Выводы. В исследовании были рассмотрены различные способы определения понятия "словосочетание". Введено формальное определение для четырех новых типов словосочетаний — n-цепей, расширенных п-цепей, n-поддеревьев, полных ¿-поддеревьев. Использовались расширенные п-цепи, n-поддеревья и полные ¿-поддеревья различных свойств слова, полученные с помощью синтаксического анализатора MaltParser, в качестве признаков текстов для определения авторства текстов в задаче классификации. Как показали результаты, расширенные п-цепи и п-поддеревья во многих случаях дают лучшие результаты по сравнению с n-граммами. При этом использование 2-цепей полных лемм позволило распознать все тестовые тексты. Использование новых типов словосочетаний без последующего отбора признаков показывает весьма незначительные результаты. Последующий автоматический отбор самых частых словосочетаний корпуса русского языка позволяет резко улучшить результат. В качестве минуса предложенного метода можно отметить, что для выявления словосочетаний на основе синтаксических связей необходимо использовать синтаксический анализатор помимо морфологического анализатора. Это повышает программную сложность классификатора и вводит новый источник ошибок классификации.

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

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

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

1. Baayen Н., Halteren Н. van, Tweedie F. Outside the cave of shadows: using syntactic annotation to enhance authorship attribution // Literary and Linguistic Computing. 1996. 11. N 3. P. 121-132.

2. Ganion M. Linguistic correlates of style: authorship classification with deep linguistic analysis features // Proc. of Coling 2004. Geneva, Switzerland: COLING, 2004. P. 611-117.

3. Hirst G. Bigrams of syntactic labels for authorship discrimination of short texts // Literary and Linguistic Computing. 2007. 22. N 4. P. 405-417.

4. Stamatatos E., Fakotakis N., Kokkinakis G. Computer-based authorship attribution without lexical measures // Computers and the Humanities. 2001. 35. N 2. P. 193-214.

5. Augsten N., Bohlen М., Gamper J. The pq-gram distance between ordered labeled trees // ACM Trans. Database Syst. 2008. 35. N 1. P. 1-36.

6. SharoffS., NivreJ. The proper place of men and machines in language technology: Processing Russian without any linguistic knowledge // Компьютерная лингвистика и интеллектуальные технологии: По материалам ежегодной Междунар. конф. "Диалог". № 10. М.: Изд-во РГГУ, 2011. С. 657-670.

7. Романов А. С., Мещеряков Р. В. Идентификация авторства коротких текстов методами машинного обучения // Компьютерная лингвистика и интеллектуальные технологии: По материалам ежегодной Междунар. конф. "Диалог". № 9. М.: Изд-во РГГУ, 2010. С. 407-413.

8. В urges С. A tutorial on support vector machines for pattern recognition // Data Min. Knowl. Discov. 1998. 2. N 2. P. 121-167.

9. Hsu Chih-Wei, Lin Chih-Jen. A comparison of methods for multiclass support vector machines // Trans. Neur. Netw. 2002. 13. N 2. P. 415-425.

Поступила в редакцию 26.01.15

SOME METHODS OF WORDS COMBINATION DEFINITION IN TEXT CLASSIFICATION PROBLEM

Kulikov V. V.

This paper describes multiple ways of the term "word combination" definition. A well-known method based on n-grams and several new methods based on syntactic tree properties are described. The paper defines new terms: n-chains, n-subtrees, full i-subtrees. The new word combination types can be used for text features definition in machine learning tasks. All described word combination types are examined in the authorship attribution problem stated as a text classification problem.

Keywords: natural language processing, classification, syntactic parsing, authorship attribution.

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