8. Репин В. В., Елиферов В. Г. Процессный подход к управлению. Моделирование бизнес-процессов. М.: РИА «Стандарты и качество». 2008. 408 с.
Сведения об авторах
Быстров Виталий Викторович
к.т.н., старший научный сотрудник е-mail: bystrov@,iimm.ru Vitaliy V. Bystrov
Candidate of Tech. Sciences, senior researcher
Халиуллина Дарья Николаевна к.т.н, научный сотрудник е-mail: khaliullina@iimm. ru Darya N. Khaliullina
Candidate of Tech. Sciences, researcher
Малыгина Светлана Николаевна
к.т.н., научный сотрудник
е-mail: maly gina@iimm. ru
Svetlana N. Malygina
Candidate of Tech. Sciences, researcher
DOI: 10.25702/KSC.2307-5252.2019.9.84-90 УДК 004.853
М. Л. Малоземова, П. А. Ломов
Институт информатики и математического моделирования ФИЦ КНЦ РАН
ТЕХНОЛОГИЯ ПОПОЛНЕНИЯ ТЕЗАУРУСА НА ОСНОВЕ ПРИМЕНЕНИЯ ДИСТРИБУТИВНОГО ПОДХОДА К АНАЛИЗУ ЕСТЕСТВЕННО-ЯЗЫКОВЫХ ТЕКСТОВ
Аннотация
В статье рассматривается применение дистрибутивного подхода к анализу набора естественно-языковых текстов с целью выявления в нем лексических единиц для пополнения существующего тезауруса. Разработана технология пополнения тезауруса, представленного в проекте национального стандарта «Исследования в полярных регионах. Основные термины и определения» на основе латентно-семантического анализа. Ключевые слова:
дистрибутивный подход, пополнение тезауруса, латентно-семантический анализ (ЛСА). M. L. Malozemova, P. A. Lomov
THESAURUS REPLENISHMENT TECHNOLOGY BASED ON THE APPLICATION OF A DISTRIBUTIVE APPROACH TO ANALYSIS OF NATURAL LANGUAGE TEXTS
Abstract
The article discusses the application of the distribution approach to the analysis of a set of natural language texts in order to identify its lexical units to replenish the existing thesaurus. The replenishment technology of the thesaurus has been developed, which
is presented in the draft national standard "Research in the polar regions. Basic terms and definitions". The techology is based on latent-semantic analysis.
Keywords:
distributive approach, thesaurus replenishment, latent-semantic analysis (LSA). Введение
На сегодняшний день применение специализированных тезаурусов является распространенной практикой при работе коллективов и групп специалистов над решением определенного круга задач. Тезаурус позволяет «зафиксировать» единый набор используемых терминов, а также их взаимосвязи и смысловое значение для дальнейшего использования в различного рода коммуникациях, а также при решении широкого круга задач анализа и обработки естественно-языковых текстов. С этой точки зрения, целесообразно обеспечить его формирование и дальнейшее наполнение с наименьшими заратами труда и времени. При этом часто необходимо включать в тезаурус набор специализированных терминов, характерных для области его дальнейшего применения. В связи с этим актуальной видится задача автоматизации расширения некоторого исходного тезауруса на основе анализа набора специализированных текстов, потенциально содержащих новые понятия, относящиеся к рассматриваемой предметной области.
В данной работе предлагается технология, позволяющая выявить возможных кандидатов для пополнения тезауруса, представленного в проекте национального стандарта «Исследования в полярных регионах. Основные термины и определения», на основе применения дистрибутивного подхода.
1. Обзор существующих подходов к анализу текстов
Для решения задачи пополнения тематического тезауруса можно применять ряд подходов к анализу текстов:
1. Дистрибутивные подходы, учитывающие частоту встречаемости слов в едином контексте. Они основываются на дистрибутивной гипотезе, согласно которой лингвистические единицы, встречающиеся в схожих контекстах, имеют близкие значения. Результатом применения таких подходов является представление каждого слова в виде вектора в некотором пространстве.
2. Лингвистические подходы, предполагающие генерацию правил или лексико-синтаксических паттернов, на основе которых будут извлекаться знания из текста (лексико-синтаксические анализаторы). В данных подходах активно используются все уровни анализа естественного языка: морфология, синтаксис и семантика.
3. Краудсорсинг (сrowdsourcmg), предполагающий привлечение круга лиц со стороны для осуществления анализа текстового корпуса.
В рамках данной работы применялся один из дистрибутивных подходов, поэтому остановимся на этой группе подходов более подробно. Данная группа подходов основывается на технологии, называемой word embeddings (вложения слова) [1]. Вложение слова - это действительное число, векторное представление слова. Как правило, слова со схожим значением будут иметь векторные представления, которые расположены близко друг к другу в пространстве вложения.
Самыми простыми методами векторизации слов являются мешок слов, представление TF-IDF слов документа и матрица смежности (встречаемости) пары слов в документах.
Метод «горячего» кодирования (one-hot encoding) [1] - один из самых простых способов численного представления слов. Иначе этот метод еще называют «мешок слов» (bag-of-words). Создается вектор, который имеет столько измерений, сколько корпус содержит уникальные слова. Каждому уникальному слову присваивается значение, равное количеству его встречаемости в данном документе. На выходе получаются огромные и редкие векторы, которые не собирают абсолютно никакой реляционной информации. Данный способ применяется, когда нет других вариантов векторного представления слов.
TF-IDF векторы (Term Frequency - Inverse Document Frequency) [1] показывают вес слова, который пропорционален частоте употребления этого слова в документе и обратно пропорционален частоте употребления слова во всех документах коллекции. Проще говоря, это метод, который увеличивает веса слов, часто встречающихся в данном документе, и уменьшает веса слов, часто встречающихся во многих документах.
Матрица смежности (co-occurrence matrix) [1] представляет собой гигантскую матрицу, размер которой соизмерим с размером словаря. Она описывает то, как слова встречаются вместе, что, в свою очередь, фиксирует отношения между ними. Матрица смежности слов вычисляется просто путем подсчета того, как два или более слова встречаются вместе в данном корпусе. Недостатком данного метода является достаточно большое векторное представление слова, что составляет в объеме как размерность при методе горячего кодирования, только в квадрате. В итоге требуется слишком много памяти для хранения полученных результатов.
Более сложным методом считается латентно-семантический анализ (ЛСА) [2] - один из самых распространенных методов анализа текстовой информации. Он используется для выявления латентных (скрытых) ассоциативно-семантических связей между термами (словами, н-граммами) путем сокращения факторного пространства термы-на-документы. «Семантическое» пространство формируется на основе алгоритма, и семантика базируется как раз на встречаемости в контексте (дистрибутивная семантика). В области информационного поиска данный подход называют также латентно-семантическим индексированием (ЛСИ).
ЛСА отображает документы и отдельные слова в пространство термы-на-документы, что позволяет представлять их в виде векторов и тем самым решать такие задачи, как, например, сравнение двух термов между собой, сравнение двух документов между собой, сравнение терма и документа и сокращение факторного пространства термы-на-документы для последующей визуализации.
Тематическое моделирование [3] является развитием латентно-семантического анализа, но оно применяется для более узкой задачи определения принадлежности документа к теме. Наиболее предпочтительным алгоритмом его реализации считается латентное размещение Дирихле (LDA), так как в результате его применения получается более корректный набор тематик в связи с уходом от нормального распределения. Основное предположение LDA состоит в том, что каждый документ с некоторой вероятностью может принадлежать множеству тем. Тема в данном контексте - это совокупность слов, где каждое слово имеет
некоторую вероятность принадлежности к ней. В результате модель LDA представляется в виде произведения матрицы «документы-темы» на матрицу «темы-слова». Данные матрицы могут быть найдены при помощи сэмплирования Гиббса, то есть путем выбора сэмпла (выборки) из совместного распределения.
Word2vec [4], в свою очередь, является развитием векторного представления слов. Был разработан группой исследователей Google в 2013 году. Суть заключается в установлении близости между словами на основе схожести их контекстов, то есть слова, встречающиеся в тексте рядом с одинаковыми словами, в векторном представлении будут иметь близкие координаты. Получаемые на выходе координатные представления векторов-слов позволяют вычислять «семантическое расстояние» между словами.
Word2vec может быть однонаправленным, учитывающим контекст слева от слова, и двунаправленным, учитывающим контекст как слева, так и справа от слова. В качестве однонаправленного Word2vec можно привести реализацию InferSent [5] от компании Facebook. Он ориентирован на так называемый sentence embeddings, то есть это векторное представление не просто слов, а целых предложений в векторном пространстве. Он обучается на данных о естественном языке и хорошо обобщает множество различных задач. В рамках этого метода создается словарь векторов важных слов, который кодируется в массив этих векторов. Данный метод позволяет определить и визуализировать «важность» каждого слова в предложении.
Примером реализации двунаправленного Word2vec является BERT [6]. Он представляет из себя подход к формированию языковой модели для решения задач обработки естественного языка, разработанный командой Google AI в ноябре 2018 года. BERT реализует двунаправленную контекстно-зависимую обработку, то есть языковая модель учитывает в определении контекста конкретного слова то, что стоит в предложении перед ним и после него. Кроме того, BERT учит улавливать логические связи между предложениями (например, действительно ли второе предложение должно следовать за первым или оно случайное).
2. Описание предлагаемой технологии
Разработанная в рамках исследования технология основана на применении дистрибутивного подхода к анализу естественно-языковых текстов для автоматизации пополнения тематического тезауруса. Технология позволяет извлекать из текстового корпуса определенной тематики новые лексические единицы или, иначе говоря, сущности, которые в дальнейшем могут быть использованы в качестве кандидатов для пополнения тезауруса.
На данном этапе исследования было решено применить классический латентно-семантический анализ (в виде сравнения двух термов между собой) для выявления новых терминов с целью пополнения имеющегося тезауруса. Таким образом, при помощи ЛСА необходимо найти некоторые слова в корпусе текстов, близкие к тем, которые на данный момент имеются в тезаурусе.
ЛСА предполагает формирование исходной матрицы термы-на-документы, где строки - это слова, столбцы - документы, а в ячейках содержатся веса, учитывающие частоту встречаемости слова в документе. На данной матрице, как правило, применяется SVD-разложение (разложение по
сингулярным числам), которое позволяет разложить исходную матрицу на три составляющие, линейная комбинация которых является достаточно точным приближением к исходной матрице:
A = U^S^Vt, (1)
где U и — ортогональные матрицы, S — диагональная матрица.
Используя полученное разложение (1), можно выявить основные зависимости между термами и документами, латентно присутствующие в исходной матрице. Особенность такого разложения состоит в том, что если в матрице S оставить только к наибольших сингулярных значений, то линейная комбинация получившихся матриц будет наилучшим приближением исходной матрицы А к матрице А ранга к.
В рамках данной работы применение ЛСА состояло из следующих этапов:
1) формирование текстового корпуса документами определенной тематики;
2) извлечение из текстового корпуса отдельных слов и коллокаций (биграмм);
3) препроцессинг отдельных слов и коллокаций - исключение стоп-слов и небуквенных символов, нормализация;
4) вычисление TF-IDF для каждой униграммы и биграммы;
5) формирование исходной матрицы термы-на-документы и ее SVD-разложение;
6) получение векторов слов тезауруса и слов текстового корпуса;
7) вычисление расстояний между этими векторами;
8) выявление наиболее близких слов текстового корпуса к терминам тезауруса.
В контексте применения латентно-семантического анализа к текущей задаче поплнения тезауруса арктической деятельности возникли две проблемы. Первая проблема состоит в том, что исходная тематическая выборка текстов может не содержать термины, которые есть в тезаурусе. Следовательно, это приводит к невозможности нахождения в текстовом корпусе каких-либо слов, близких к таким терминам тезауруса. По этой причине дополнительно был сформировали набор так называемых связывающих текстов, которые потенциально связаны с выбранной тематикой и при этом содержат термины тезауруса. Идея в том, чтобы связать термин тезауруса как-нибудь с текстовым набором через другие слова. Вторая проблема заключается в том, что большая часть терминов тезауруса представлена словосочетаниями (биграммами), поэтому из текста необходимо извлекать подобные структуры. Для ее решения была использована python-библиотека spaCy [7], позволяющая анализировать синтаксические деревья предложений исходных текстов и, в зависимости от отношения между токенами, выявлять необходимые конструкции.
3. Применение технологии на примере пополнения тезауруса арктической деятельности
Изначально латентно-семантический анализ был опробован на тестовом корпусе текстов (фрагментов учебных пособий) по сетевым технологиям. Он состоит из 104 документов, в которых выявлено: общее число токенов — 238 401,
уникальные слова и биграммы - 67 683. Для данного текстового корпуса предварительно был сформирован экспертный набор, представляющий эталонный результат. Он включает в себя некоторый термин из предмтеной обсласти и слова, связанные с ним с точки зрения эксперта (2):
{термин: [связанные лексемы и биграммы]} . (2)
Следуя описанным выше этапам решения задачи, аналогичный по структуре набор терминов был сформирован с помощью ЛСА для сетевого корпуса текстов, и затем было оценено сходство этих двух наборов в виде полноты и точности, которые составили 0,29 и 0,015 соответственно. Низкие значения данных показателей прежде всего связаны с малым размером текстового корпуса, поскольку для более точных результатов требуется около 3-5 млн словоупотреблений. Но тем не менее, ненулевая полнота предполагает некоторую вероятность нахождения каких-то новых терминов в целевом корпусе текстов. Поэтому далее латентно-семантический анализ применялся уже к корпусу текстов арктической тематики.
Также придерживаясь описанных ранее этапов применения ЛСА, первоначально осуществлялось формирование арктического текстового корпуса, который на текущий момент состоит из 109 документов (фрагментов научных статей), в которых найдено 232 261 токен и 95 760 униграмм и биграмм.
Биграммы, учитывая упомянутые ранее особенности тезауруса, извлекались следующим образом. Первым делом языковая модель spaCy была обучена на корпусе синтаксических деревьев русского языка [8], так как в основном spaCy применяется только для английского языка. Затем биграммы извлекались по правилам, которые требуют наличие между словами биграммы определенного вида отношений - amod (adjectival modifier) и nmod (nominal modifier). Иначе говоря, это виды именных словосочетаний, где главным словом является имя существительное (например, существительное и прилагательное, существительное и существительное).
Применив поэтапно латентно-семантический анализ на арктическом текстовом корпусе, было выявлено большое количество общеупотребительной лексики, что подтверждает низкую точность данного метода. Но несмотря на это, удалось выявить новые термины, которые могут быть рассмотрены в качестве кандидатов для пополнения текущего тезауруса. Ниже представлены некоторые из обнаруженных понятий, связанные с понятиями тезуаруса (выделены курсивом):
• Айсберг: галоклин (слой воды);
• Антарктида: КМАГЭ (экспедиция), гравиметрический (весовой анализ);
• Арктический туризм: Грумант (поселок), свердруп (единица измерения), Шхера (архипелаг);
• Ледник: Маркхема (шельфовый ледник), Элсмир (остров), Эйлс (ледяной массив);
• Полярный регион: алеут (коренное население), накипной (лишайник), кайра (морская птица), Банкс (остров).
Заключение
Автоматическое пополнение онтологий, а именно тематического тезауруса, является на сегодняшний день весьма актуальной задачей онтологического инжиниринга, а также анализа естественно-языковых текстов. Применение дистрибутивных подходов позволяет существенно облегчить данную задачу в автоматизации некоторых этапов анализа текстов в силу простоты их использования. Именно латентно-семантический анализ позволяет выявить статистические зависимости зависимости между терминами, использованными в коллекции документов, что существенно ускоряет процесс поиска кандидатов для пополнения тезауруса.
В данной статье приведена технология пополнения тезауруса проекта национального стандарта «Исследования в полярных регионах. Основные термины и определения» на основе одного из дистрибутивных подходов — латентно-семантического анализа естественно-языковых текстов. В ходе применения данной технологии удалось выявить слова, которые могут быть рассмотрены в качестве потенциальных кандидатов для пополнения заявленного тезауруса.
В дальнейшем планируется доработать текущую технологию путем использования других дистрибутивных подходов и расширенного текстового корпуса.
Литература
1. Heidenreich H. Introduction to Word Embeddings. Режим доступа: https://towardsdatascience.com/introduction-to-word-embeddings-4cf857b 12edc.
2. Landauer T.K., Foltz P.W., Laham D. Introduction to Latent Semantic Analysis // Discourse Processes, 25. 1998. С. 259-284.
3. Li S. Topic Modeling and Latent Dirichlet Allocation (LDA) in Python. - Режим доступа: https://towardsdatascience .com/topic-modeling-and-latent-dirichlet-allocation-in-python-9bf156893c24.
4. Gensim models - Word2vec. Режим доступа: https://radimrehurek.com/gensim/models/word2vec.
5. InferSent. - Режим доступа: https://github.com/facebookresearch/InferSent.
6. BERT. - Режим доступа: https://github.com/google-research/bert.
7. SpaCy библиотека для обработки естественного языка. Режим доступа: https://spacy.io/.
8. Размеченный в нотации Universal Dependencies русский корпус текстов. Режим доступа: https://github.com/UniversalDependencies/UD_Russian-GSD.
Сведения об авторах
Малоземова Марина Леонидовна
инженер-исследователь e-mail: [email protected] Marina L. Malozemova research engineer
Ломов Павел Андреевич
к.т.н., старший научный сотрудник e-mail: [email protected] Pavel A. Lomov
PhD (Tech. Sci.), senior researcher