1 Введение 3
2 Постановка задачи 4
3 Обзор литературы 6
4 Подготовка данных 7
4.1 Подготовка текстовых данных 7
4.2 TextTiling 10
4.2.1 Токенизация 11
4.2.2 Определение лексической оценки (The lexical score) 11
4.2.3 Определение границ 13
4.3 Подготовка тестовых данных 15
5 Описание методов 16
5.1 Тематическая модель текстовых блоков на основе LDA 16
5.2 Подход на основе векторного представления слов 17
5.3 Усовершенствованный подход на основе построенной тематической модели 19
5.4 Анализ статистических данных 22
6 Результаты 26
7 Выводы 28
8 Заключение 29
Список литературы 30
За последние десятилетия накопилось огромное количество данных, имеющих различное происхождение, вследствие чего появилась возможность проанализировать эти данные, а результаты использовать в образовании, науке и безопасности, а также для описания объектов или улучшения качества какой-либо продукции. Это можно сделать с помощью машинного обучения.
К такого рода задачам относится поиск несоответствий в деловых документах. В качестве документов в данной работе рассматриваются государственные контракты. Все они построены по одному и тому же шаблону и имеют определенную семантическую структуру. Люди, которые работают с подобными документами, легко могут предсказать по предыдущей части документа следующую. Иногда в таких документах встречаются случаи мошенничества, опечатки и технические ошибки, например, как описанные в [1, 2], так называемые «аномалии».
Необходимо научиться автоматически, проанализировав большой корпус «честных» документов на предмет их внутренней связности, определять такого рода аномалии. В качестве аномалий могут выступать документы или части документов, которые расходятся с общепризнанными шаблонами.
Учитывая объёмы данных, которые накопила каждая компания сегодня, и которые продолжает генерировать, причем всё в больших размерах, можно сделать вывод, что рассматриваемая задача становится исключительно актуальной. Вследствие чего в данной работе предложены несколько подходов к семантическому анализу текста.
В данной работе была поставлена цель разработать алгоритм, определяющий алогичность в деловых документах, предложено несколько подходов к решению поставленных задач. Было учтено, что данные, с которыми придется работать, не обязательно уже разбиты на осмысленные параграфы, в таких случаях можно самостоятельно разбить текст на блоки с помощью алгоритма TextTiling.
Было рассмотрено несколько способов векторного представления текстовых блоков. В рамках одного из подходов был построен кластеризатор, с помощью результатов которого появилась возможность явно обозначить темы, которые присущи текстам такого формата, как деловой контракт. Также в этом подходе был предложен способ аннотации части документа.
Были получены алгоритмы, показывающие достойное качество. В работе не были учтены такие аномалии как нетипичные цены, например, сахар за миллион рублей, поэтому в дальнейшем можно рассмотреть и такую задачу, а пока предложенный алгоритм умеет определять только относительно грубые несостыковки. Также в этой области осталось весьма широкое поле для экспериментов в сторону различных рекурентных нейронных сетей и отказа от принципа bag of words.
[1] Заемщик переписал условия договора банка Тинькова [Электронный ресурс] // Ведомости. URL: https: //www.vedomosti.ru/finance/articles/2013/08/07/ zaemschik-perepisal-usloviya-dogovora-banka-tinkova-i (дата обращения: 13.03.18).
[2] Сорок процентов — откат нормальный. Пальчики оближешь [Электронный ресурс] // Фонтанка. URL: http://www.fontanka.ru/ 2018/01/15/110/ (дата обращения: 13.03.18).
[3] David M. B., Andrew Y. Ng., Michael I. Latent Dirichlet allocation // Journal of Machine Learning Research. 1997. Vol. 3. P. 993-1022.
[4] Marti A. Hearst TextTiling: Segmenting Text into Multi-paragraph Subtopic Passages // Computational Lingustics. 2003. Vol. 323. P. 33-64.
[5] Deep learning with word2vec [Электронный ресурс]: URL: https: //radimrehurek.com/gensim/models/word2vec.html (дата обращения: 14.03.18).
[6] Digital Design [Электронный ресурс]: URL: https://digdes.ru/ (дата обращения: 14.03.18).
[7] Портал закупок [Электронный ресурс]: URL: http://zakupki.gov. ru/epz/main/public/home.html (дата обращения: 14.03.18).
[8] Natural Language Toolkit [Электронный ресурс]: URL: https://www. nltk.org/ (дата обращения: 14.03.18).
[9] Воронцов К. В. Вероятностные тематические модели коллекций текстовых документов [Электронный ресурс]: URL: http://www. machinelearning.ru/wiki/images/c/c2/Vorontsov2apr2012.pdf (дата обращения: 14.03.18).
[10] Gensim. Topic modelling for humans [Электронный ресурс]: URL: https://radimrehurek.com/gensim/ (дата обращения: 14.03.18).
[11] GloVe: Global Vectors for Word Representation [Электронный ресурс]: URL: https://nlp.stanford.edu/projects/glove/ (дата обращения: 14.03.18).
[12] FastText. Library for efficient text classification and representation learning [Электронный ресурс]: URL: https://fasttext.cc/ (дата обращения: 14.03.18).
[13] Marco B., Georgiana D., German K. Don’t count, predict! A systematic comparison of context-counting vs. context-predicting semantic vectors // Proceedings of the 52nd Annual Meeting of the Association for Computational Linguistics. 2014. Vol. 1. P. 238-247.
[14] Закиров М. А. Сравнительный анализ методов word2vec и GloVe и некоторые выводы из него // Современная наука: актуальные проблемы теории и практики. Серия: Естественные и технические науки. 2016. № 9-10. С. 36-41.
[15] Масловская М. А. Сравнение методов тематического моделирования // Процессы управления и устойчивость. 2017. T. 4. № 1. С. 423-427.
...