DocAnalyzer

Заказчик:
Сбер
Руководитель проекта со стороны заказчика
Поставщик
Сбер (собственная разработка)
Год завершения проекта
2022
Сроки выполнения проекта
Ноябрь, 2021 - Сентябрь, 2022
Масштаб проекта
1200 человеко-часов
Цели


  • Ускорение процесса рассмотрения договоров с контрагентами, повышение числа договоров, которые прошли анализ;

  • Снижение влияния человеческого фактора при поиске киберрисков в договорах с контрагентами.

Уникальность проекта

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

К одному из главных уникальных решений проекта относится модуль для работы с docx-файлами, благодаря которому система имеет возможность вносить в документы правки в режиме рецензирования, оставлять комментарии, работать с метаданными, читать файл в трех разных режимах отображения исправлений и т.д. На языке программирования Python нет более полного решения для данных задач.

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

Тот факт, что система анализирует договоры, комбинируя разные подходы, позволяет достичь положительного результата: сокращение трудозатрат при анализе договоров и снижение влияния человеческого фактора.
Использованное ПО

Основные модули для языка Python:

  1. scikit-learn – модуль для разработки моделей машинного обучения;
  2. natasha – модуль NLP для русского языка, решающий проблемы токенизации, сегментации предложений, лемматизации и т.д.;
  3. fuzzywuzzy – модуль, используемый для нечеткого сравнения (используется расстояние Левенштейна);
  4. lxml – модуль для работы с гипертекстом, используя который, было реализовано взаимодействие с docx-файлами для ряда задач;
  5. python-docx – модуль для работы с docx-файлами;
  6. docxcompose – модель для слияния пары docx-файлов в один документ.

При разработке разных моделей и подходов использовались AutoNer и PyTorch. Обучение происходило на GRU.

Для развертывания системы используется серверное оборудование с OS RedHat.

Сложность реализации

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

Проектирование этой библиотеки резко повысило сложность реализации проекта. Кроме того, данные договоров и их разметка, нехватка данных для обучения — все это стало причиной того, что сложным моделям, типа LSTM или BERT, было тяжело обучиться, выявлять необходимые зависимости и показать приемлемое качество, не переобучившись.

Описание проекта

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

Поэтому важно фиксировать в договорах требования кибербезопасности к контрагентам. К их числу относятся:

- Требования к обеспечению конфиденциальности информации;

- Требования кибербезопасности при подключении контрагента к инфраструктуре банка;

- Другие.

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

Всего на согласование в кибербезопасность попадает около 3000 договоров в год. Ранее контракты анализировались вручную, и анализ одного контракта занимал в среднем 3,5 часа. Для автоматизации анализа и принятия решений по заключению договоров мы разработали продукт DocAnalyzer.DocAnalyzer – система, автоматизирующая процесс анализа нетиповых договоров с контрагентами Сбера (поставщиками, вендорами, клиентами) на соответствие требованиям кибербезопасности.

В среднем в год в банке заключается порядка 3000 контрактов, требующих анализа и обнаружения возможных рисков кибербезопасности. Проводимый вручную, анализ одного контракта раньше занимал в среднем 3,5 часа — DocAnalyzer сократил время оценки вдвое и исключил ошибки, обусловленные человеческим фактором. Проверка реализуется как алгоритмическим путем (по ключевым словам, через сравнение с эталонной формой контракта), так и с помощью AI-моделей.

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

Как происходит анализ текста

DocAnalyzer обрабатывает договоры, представленные в docx-формате. Сначала договор разбивается на главы, каждая из которых имеет свой определенный сценарий анализа. Система анализирует главы и их содержание, проверяет наличие обязательных пунктов и приложений к документу.

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

Поиск по ключевым словам – одна из особенностей системы. Наши эксперты составили перечень слов и словосочетаний, которые обычно свидетельствуют об ошибке, допущенной контрагентом. Они делятся на типы: в некоторых случаях важно только первое включение слова или фразы в договор, в других – важны все включения. Если система находит такое слово или фразу, она оставляет комментарий в режиме рецензирования. В планах добавить AI-модель, которая будет классифицировать контекст ключевых слов, отвечая на вопрос: «В данном случае следует оставить комментарий или нет?»

Стоит отметить, что тексты договоров анализируется не только по строгим, заранее настроенным правилам, но и с помощью AI-модели. Она рассчитывает вероятность наличия киберрисков для каждого предложения анализируемого ею текста. Если этот показатель превышает установленный порог, текст договора подсвечивается красным или желтым цветом в зависимости от степени вероятности киберриска.

Мы провели множество экспериментов, где данные по-разному обрабатывались, перемешивались, выбиралась разная длина контекста и разные архитектуры моделей, например, GRU, LSTM и BERT. Опытным путем мы пришли к выводу, что наилучшее качество показывает модель TF-IDF с логистической регрессией.

В завершении анализа и внесения всех необходимых правок в договор система возвращает его скорректированный вариант сотруднику.

Пример работы системы 1

Пример работы системы 1.PNG

Пример работы системы 2

Пример работы системы 2.PNG

Пример работы системы 3

Пример работы системы 3.PNG

География проекта
Российская Федерация
Коментарии: 2

Комментировать могут только авторизованные пользователи.
Предлагаем Вам в систему или зарегистрироваться.

  • Максим Часовиков
    Рейтинг: 4135
    Центр цифровой экономики МГУ
    Ведущий специалист
    03.01.2023 19:02

    Добрый день, а разве у вас договоры не стандартизированные? в чем именно тогда необходимость такого анализа? И каков примерно процент ошибок пропускает система анализа текста?

  • Сергей Кузнецов
    Рейтинг: 1013
    Лебер
    Директор по управлению цепями поставок
    05.01.2023 22:10

    Ольга, добрый день.
    Покажите пожалуйста итоговые результаты в % по целям проекта:
    "Ускорение процесса рассмотрения договоров с контрагентами, повышение числа договоров" - какая динамика в %?
    "Снижение влияния человеческого фактора при поиске киберрисков в договорах с контрагентами." - как данное измерялось?

Год
Предметная область
Отрасль
Управление
Мы используем файлы cookie в аналитических целях и для того, чтобы обеспечить вам наилучшие впечатления от работы с нашим сайтом. Заходя на сайт, вы соглашаетесь с Политикой использования файлов cookie.