УДК 004

Использование моделей глубокого обучения для анализа и оформления текстовых документов в формате ГОСТ

Комиссаров Денис Сергеевич – магистр, преподаватель МИРЭА – Российского технологического университета.

Григоров Арсений Игоревич – руководитель Лаборатории технических решений Научно-производственного предприятия «Исток им. Шокина».

Аннотация: В настоящей статье рассматривается применение моделей глубокого обучения для анализа и обработки текстовых документов с целью приведения их содержания в соответствие с ГОСТ (Государственный стандарт). Разрабатываемый программный продукт способен выделить ключевые предложения, понятия и идеи из исходных текстовых документов формата «.docx», формируя структурированный текст.

Ключевые слова: автоматическая обработка текста, структурирование текста, форматирование документов, анализ документов, нейронная сеть, ГОСТ, модели глубокого обучения, искусственный интеллект.

В последние годы методы глубокого машинного обучения значительно продвинулись в обработке и анализе текстовых данных. Это открывает новые возможности для разработки инструментов, облегчающих обработку и извлечение информации из больших объемов текста. Вследствие того, что на полное документирование всей информации в рамках проекта уходит довольно значительная часть времени, и последующее оформление в виде структурированной информации в соответствии с ГОСТ достаточно трудоемко, то данное программное обеспечение призвано сэкономить время на первоначальное формирование документа, перед его проверкой, коррекцией и сдачей в архив. В этой статье мы представляем общее описание программного обеспечения, использующее модель, способную анализировать, обрабатывать текстовые документы и оформлять их в соответствии с выбранным вариантом ГОСТ.

Цель разработки - создание инструмента, использующего готовую модель глубокого обучения для анализа, обработки и формирования текстовых документов в соответствии с требованиями ГОСТ. Это позволит автоматизировать и упростить процесс подготовки документов, сократить время, затрачиваемое на ручное форматирование и структурирование текста, а также уменьшить вероятность ошибок, связанных с неправильным применением стандартов. В результате, пользователи смогут быстрее и проще создавать документы, соответствующие требованиям ГОСТ, что повысит качество и стандартизацию подготовки текстовых материалов.

Решаемые задачи:

  1. Программное обеспечение анализирует содержимое исходного текста, определяет его структуру, ключевые понятия.
  2. Программное обеспечение автоматически применяет выбранный шаблон требований ГОСТ к структуре, форматированию и оформлению документа, включая оглавление, список литературы, форматирование заголовков, абзацев, иллюстраций, таблиц и прочих элементов.
  3. Адаптация программы под специфические требования пользователя или предметной области.
  4. Программное обеспечение может быть интегрировано с другими системами и сервисами, такими как системы управления документами, облачные хранилища или среды разработки текстовых документов, для обеспечения более удобной и эффективной работы с текстами.

Рассмотрим алгоритм работы приложения. В качестве входных данных для приложения не должно быть разницы в обработке текстовых файлов на предмет стилистического оформления или структурного форматирования, например, может предоставляться документ, сформированный на основе другого стандарта [1]. На рисунке 1 представлен алгоритм работы приложения.

1 1

Рисунок 1. Алгоритм работы приложения по стандартизации текста.

Ввиду того, что данное приложение является продвинутым текстовым редактором, предназначенным для предварительной обработки исходных документов и предоставления инструментов для качественного анализа документа перед окончательным экспортом, работа является линейным процессом, ветвлений в работе не может быть из-за однозначности входных и выходных результатов. Авторами Сидоровой Е.А., Гараниной Н.О., Кононенко И.C., Боровиковой О.И. в статье «Семантические особенности технической документации: онтологический взгляд на проблемы корректности» представлена схема верификации технической документации, на основе которой была сформирована начальная логика обработки текстов приложением [2].

В связи с тем, что приложение может обрабатывать конфиденциальные документы или данные, не подлежащие открытому распространению [3], разработка должна функционировать на локальном устройстве, обеспечивать защиту от несанкционированного доступа третьих сторон и предусматривать обработку текстовых документов, которые могут содержать значительное количество текстовых выражений, состоящих из энного количества слов. В этом контексте на рисунке 2 представлена схема, иллюстрирующая общую связь между компонентами приложения.

2 1

Рисунок 2. Архитектура программного обеспечения.

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

С целью экономии аппаратных ресурсов для хранения больших объемов данных и последующего доступа к ним, в приложении используется локальная система управления базами данных (СУБД). Она требуется для сохранения объемных текстовых конструкций, которые могут быть выявлены в результате процесса анализа текста, наличия инструментов по дополнительной фильтрации, в момент формирования конечного документа. Дополнительно, внутри приложения для всех применяемых шаблонов, предусмотрен архив с документами, который может пополняться, либо изменяться, в зависимости от потребностей пользователя. Модуль обработки естественного языка представляет уже обученную нейронную сеть для распознавания текстовых выражений, из основных функций, которые используются для анализа текста - это раздел предложений на слова, наличие инструментов по классификации слов по их типу.

В процессе разработки были применены следующие технологические ресурсы. В качестве языка программирования использовался Python версии 3.5 из-за применяемости в плане разработки проектов, связанных с нейронными сетями. Разработка пользовательского интерфейса была осуществлена с применением фреймворка «pyqt5», для создания интуитивно понятной пользователю и удобной для взаимодействия с приложением системы.

В основе обработки текстовых данных используется библиотечный пакет «Natasha», который зарекомендовал себя как с точки зрения оптимального использования аппаратных ресурсов, так и в плане применимости для обработки русскоязычных текстов. Разбор технических преимуществ для анализа русскоязычных предложений в своей статье рассмотрели Каспранская А.И., Сметанина О.Н в рамках задачи оценки принадлежности текстов сравнивая две модели DeepPavlov и Natasha [4]. Для сбора ключевых слов в словарь, для определения отношения к тематическим разделам документа, использовался интернет-ресурс «Национальный корпус русского языка», в котором собрана информация по употребляемым фразам в русском языке на основе огромного количества текстов [5].

Для работы с текстовым документом формата ".docx" была выбрана библиотека «lxml», обеспечивающая эффективное и гибкое взаимодействие с данными.

В качестве системы управления базами данных было принято решение использовать общедоступный программный продукт «SQLite3», который предоставляет локальное хранение данных и обеспечивает быстрый доступ к ним. Описание данной программы приведено на интернет-ресурсе, посвященный настройке и конфигурации [6].

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

3 1

Рисунок 3. Интерфейс приложения.

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

Список литературы

  1. Российский архив государственных стандартов, а также строительных норм и правил (СНиП) и образцов юридических документов [Электронный ресурс]. URL: https://rags.ru/gosts/gost-map.htm (Дата обращения 06.04.2023).
  2. Сидорова Е.А., Гаранина Н.О., Кононенко И.C., Боровикова О.И. Семантические особенности технической документации: онтологический взгляд на проблемы корректности – Информационные и математические технологии в науке и управлении. 2018 №4 (12).
  3. Как превратить скрипт на Python в «настоящую» программу при помощи Docker [Электронный ресурс]. URL: https://habr.com/ru/companies/vdsina/articles/555540 (Дата обращения 28.03.2023).
  4. Каспранская А.И., Сметанина О.Н Программная реализация задачи оценки принадлежности текстов одной тематике – Современные наукоемкие технологии. – 2022. – № 8 – С. 58-64
  5. Национальный корпус русского языка [Электронный ресурс]. URL: https://ruscorpora.ru (Дата обращения 06.04.2023).
  6. Руководство по SQLite [Электронный ресурс]. URL: https://proglib.io/p/sqlite-tutorial (Дата обращения 05.04.2023).

Интересная статья? Поделись ей с другими: