Автореферат (1090482), страница 2
Текст из файла (страница 2)
Таким образом, принимаяслово «кошек» в качестве входных данных, морфологический анализатор долженпроизводить выход, похожий на «кошка NOUN femn plur gent».Для реализации морфологического словаря используется структура данныхпрефиксное дерево - это тип дерева поиска для хранения ассоциативного массива изэлементов (ключ, значение), где ключи являются префиксами строк. Ключ одного узласостоит из символов на пути из корня дерева до этого узла. Корень дерева содержитпустую строку. Значения, связанные с ключом содержат морфологические моделипрефикса этого узла. Чтобы найти морфологические варианты словоформы нужнообходить дерево по символам этой словоформы. Временная сложность операцииморфологического поиска словоформы является линейным, равна O(n), где n - длинасловоформы.8Figure 1: Структура морфологического словаря [5].Пример модели русской морфологии №106:Модель106Суффикс-ть-ю-ем-ешь-ете-ет-ют-л-ла-ло-ли-й-йтеРазметкаimpf, tran, VERB1per, indc, pres, sing1per, indc, plur, pres2per, indc, pres, sing2per, indc, plur, pres3per, indc, pres, sing3per, indc, plur, presindc, masc, past, singfemn, indc, past, singindc, neut, past, singindc, past, plurexcl, impr, singexcl, impr, plur9морфологических словарей:ПараметрКоличество узловКоличество леммКоличество моделейКоличествоморфологическихподмножествКоличествоморфологическиххарактеристикРусский7145053884743559739110Английский2679917822138704545Морфологический разбор Морфологический разбор словоформы содержит этиинформации: id леммы и морфологические характеристики.
Одна словоформа можетиметь несколько морфологических разборов, например для словоформы «пары»:Вариант 1: id леммы = 223625, морфологические признаки: inan, masc, NOUN,nomn, plur;Вариант 2: id леммы = 223625, морфологические признаки: inan, masc, NOUN,accs, plur;Вариант 3: id леммы = 223626, морфологические признаки: inan, femn, NOUN,gent, sing;Вариант 4: id леммы = 223626, морфологические признаки: inan, femn, NOUN,nomn, plur;Вариант 5: id леммы = 223626, морфологические признаки: inan, femn, NOUN,accs, plur;Вариант 6: id леммы = 223627, морфологические признаки: inan, femn, NOUN,Geox, Sgtm, gent, sing;Вариант 7: id леммы = 224617, морфологические признаки: GNdr, inan, NOUN,Pltm, nomn, plur;Вариант 8: id леммы = 224617, морфологические признаки: GNdr, inan, NOUN,Pltm, accs, plur;Для разрешения морфологической многозначности используется скрытаямарковская модельНейро-семантическая сеть на основе морфологического анализа [5] состоит изтрех последовательных частей:1.
Часть «семантические векторные представления», которая вычисляетвекторные представления грамматических структур предложений, содержитавтоэнкодеры по заданным грамматическим структурам (SVO, SVA, ...), которыепринимают на вход слова в виде пар (вектор, морфология) и объединяют их в однупару. Цель заключается в том, чтобы близкие по смыслу структуры предложений10имели похожие векторные представления, например «девушка читает книгу» и«женщина читает роман».Примеры часто встречаемых грамматических структур:• AN (прилагательное - существительное);• SVO (субъект - действие - объект);• SVA (субъект - действие - наречие);Рис.
2: Семантическое векторное представление.Для поиска грамматических структур для обучения семантических векторныхпредставлений будем считать частоту вхождения множеств из не более ngсемантических моделей.Для обучения семантических векторных представлений используютсяавтоэнкодеры размера ng kword , где ng - количество элементов в грамматическойструктуре (например, ng = 2 для AN, ng = 3 для SVO и SVA), а k word - размерностьвекторного пространства слов.
Для каждой грамматической структуры используетсяотдельный автоэнкодер для обучения представлений.Входной и выходной слои автоэнкодера имеют ng k нейронов, а скрытый слой- ksementic нейронов ( ksementic - размерность пространства семантических векторныхпредставлений):Автоэнкодер объединяет элементы грамматической структуры x1 , x2 ,..., xng ( ngвектора длины k word ) в один вектор y (длины ksementic ):11y = f (W (1) [ x1 , x2 ,..., xn ] b(1) ).g(1)Метод семантических векторных представлений отличается от рекурсивногоавтоэнкодеров тем, что рекурсивный автоэнкодер использует одну и ту же матрицупараметров для объединения всех слов, а метод семантических векторныхпредставлений использует разные матрицы параметров для разных грамматическихструктур, таким образцом формирует для каждой грамматической структуры односемантическое векторное пространство.2.
Часть «распределение по категориям семантического представления», котораяпринимает на вход объединенный вектор x и вычисляет распределение категорий hпо предложению, является слоем Softmax: ( y = 1 | x; ), ( y = 2 | x; ), (t )=h ( x) = ( y = K | x; )exp ( (1)ú x),(2)ú1exp ( x),.Kexp ( ( j )ú x) ( K )új =1x)exp ((2)3.
Часть «распределение по категориям текста», которая принимает на входраспределения категорий по предложениям и вычисляет распределение категорий потексту. Распределение вероятностей для текста, состоящегося из N предложений естьсреднее распределение вероятностей по предложениям:h =1NNh(t ).(3)t =1Нейро-семантическая сеть на основе морфологического анализа имеетпреимущество перед обычным рекурсивным автоэнкодером в том, что она учитываетграмматическуюструктурутекстов,поэтомувекторныепредставленияграмматических структур отражают семантические значения текстов.Рис. 3: Семантическое векторное пространство.12Целью здесь является создание семантических семантических векторныхпространств и поиском функций, которые вычисляют семантические векторныепредставления грамматических структур по векторным представлениям слов, такиекак:vAN (red car ) = f AN (v(red ), v(car )),vAN (blue car ) = f AN (v(blue), v(car )),(4)(5)(6)где- семантические векторные представления для «red car» и «я читаюкнигу» , v(red ), v(blue), v(car ), v( - векторные представления, f AN и f SVO - искомыефункции.Нейро-семантическая сеть на основе морфологического анализа имеетприменение и в семантическом индексировании и семантическом поиске.
Обычныепоисковые системы только индексируют и сравнивают тексты как строки из символов,а нейро-семантическая сеть использует семантические векторные представления дляиндексирования и поиска информации, при этом на запрос «буфет в институте»система может выдавать тексты с фразой «столовая в университете» посколку онипохожие по семантике и их векторные представления близки друг к другу.13Рекурсивный автоэнкодер морфологического анализа [5]Предлагается рекурсивный автоэнкодер морфологического анализа, которыйсостоит из двух частей - первая объединяет два вектора слов, а вторая объединяет двавектора морфологий. Морфологическая часть рекурсивного автоэнкодера позволяетповышать точность выбора векторов слов в процедуре формирования векторногопредставления текста.Векторное представление текста получается повторением процесса объединениядвух слов - векторов с использованием рекурсивного автоэнкодера.
На каждом этапевыбор пары слов - векторов объединение происходит с помощью данногорекурсивного автоэнкодера.Автоэнкодер объединяет две пары (слова; морфологический разбор)( x1; m1 ), ( x2 , m2 ) в одну пару ( y, m) :y = f (Ww(1)[ x1 , x2 ] bw(1) ),m = f (W [m1 , m2 ] b ).(1)m(1)m(7)(8)Чтобы вычислять ошибки объединения, нужно восстанавливать исходные словаx1, x2 из вектора y :[ x1, x2 ] = Ww(2) y bw(2) ,=W mb .(2)m(2)m(9)(10)Ошибка объединения есть евклидово расстояние между парами исходных ивосстановленных слов:n1n2Px1 x1P2 Px2 x2P2 ,n1 n2n1 n2n1n2Em ([m1 , m2 ]) =Pm1 m1P2 Pm2 m2P2 ,n1 n2n1 n2Ew ([ x1 , x2 ]) =Erec = Ew (1 ) Em ,(11)(12)(13)где n1 , n2 - количества встроенных слов в x1 , x2 соответственно; взвешенный параметр для ошибок объединений слов и морфологических разборов.Чтобы ошибка объединения не просто уменьшалась из-за уменьшения скрытыхслоев, используется нормализация объединенных векторов слов и морфологии:yˆ =y,y(14)14mˆ =m,m(15)Этот процесс повторяется N-1 раз для текста, состоящего из N слов.
В результатеполучается окончательный вектор - семантическое векторное представление текста,этот вектор используется как вход для системы обучения.Распределение вероятностей для K-классовой классификации для векторногопредставления текста y вычисляется слоем Softmax:d ( y; ) = Softmax (W Softmaxy).(16)Вычислительный комплекс алгоритма «К» ближайших соседей сиспользованием двоичного дерева [3]: Для уменьшения количества вычислительныхопераций, будем сравнивать только тексты, имеющие общие термины, другимисловами, нет смысла сравнивать тексты, которые не имеют никаких связей. Кроме того,использование двоичного дерева также помогает повысить быстродействие алгоритма.Подход 1: Кодирование текстов с помощью морфологического анализа: Длякаждого слова, анализируем его морфологический разбор и решаем морфологическуюмногозначность, получаем представление текста в виде массива индексов слов всловаре и их морфологическими разборами.Подход 2: Уменьшение количества потенциальных ближайших соседей: Длякаждого термина, храним id текстов, содержащих этот термин.















