Методика расчета индекса синтаксической сложности основана на результатах исследования НИУ ВШЭ по анализу синтаксической сложности российских законодательных актов, проведенного в 2019 году. В рамках данного исследования был проведен эксперимент по выявлению негативных практик, усложняющих восприятие текста законодательного акта. В эксперименте участвовали 2 группы юристов. Первую группу составляли начинающие юристы, уже получившие юридическое образование, но пока не имеющих опыта практической работы или имеющих незначительный опыт работы (20 выпускников бакалавриата и студентов магистратуры юридических факультетов МГУ и НИУ ВШЭ). Вторую группу составляли практикующие юристы и представители юридической науки, включая специалистов со ученой степенью кандидата и доктора юридических наук (21 человек).
Каждый участник прочитывал по 10 фрагментов законодательных актов. Эти фрагменты были подобраны таким образом, чтобы в них один из показателей синтаксической сложности текста (например, доля глаголов или количество слов в субстантивном именном словосочетании) значительным образом отличалась от среднего значения данного показателя по всему корпусу законодательных актов в 2018 году.
После прочтения текстов производилась оценка сложности каждого фрагмента для восприятия с использованием методов объективной и субъективной оценки. Объективная оценка осуществлялась через фиксацию количества времени, затраченного на прочтение фрагмента, а также через анализ ответов участников на вопросы о содержании прочитанного фрагмента. Данные ответы показывали, правильно ли участник понял прочитанный текст. Субъективная оценка базировалась на том, как сами участники оценивали сложность прочитанного текста.
По результатам эксперимента были выявлены параметры сложности текста законодательного акта и соответствующие каждому параметру негативные практики, а также подсчитан вклад каждого параметра (каждой негативной практики) в усложнение текста. Исходя из этого каждому параметру сложности был присвоен коэффициент значимости (доля в усложнении текста законодательного акта):
- доля глаголов в оцениваемом тексте (ГЛ) — 18%;
- количество слов в субстантивных именных словосочетаниях в каждом предложении оцениваемого текста (СИС) — 16%;
- количество слов в абзацах (ПР) — 15%;
- расстояние между зависимыми словами в оцениваемом тексте (РЗС) — 15%;
- количество причастных оборотов, расположенных после определяемого слова, приходящихся на 1 предложение оцениваемого текста (ПО) — 14%;
- количество слов в предложении в каждом предложении оцениваемого текста (СП) — 11%;
- количество грамматических основ (предикативных основ, предикативных ядер) предложения (подлежащее – сказуемое или одно из них) в каждом предложении оцениваемого текста (ГО) — 11%.
Для параметра «доля глаголов в оцениваемом тексте» применяется правило «чем меньше, тем хуже», для остальных параметров – «чем больше, тем хуже».
На основании коэффициентов значимости параметров была выведена формула расчёта Индекса синтаксической сложности законодательных актов (далее – ИСЗ, индекс сложности законов).
Впоследствии расчет ИСЗ был адоптирован для текстов иной стилистической направленности.
Расчёт ИСЗ проводится для текста с учетом его структуры. Индекс учитывает (а) средние значения параметра по всему тексту и (б) средние значения исходя из максимальных значений параметра в каждом структурном элементе текста (глава, раздел, статья и прочее). Последнее было введено по следующие причинам. На практике встречаются ситуации, в которых основная доля текста имеет невысокий уровень синтаксической сложности и довольно проста для восприятия читателем. Однако небольшая часть структурных элеменнтов в таком законе может быть очень сложной. Очевидно, что в такой ситуации средние значения параметров в расчете по всему тексту будут показывать довольной низкий уровень сложности, однако для полного понимания текста необходимо прочитать его целиком и, соответственно, прочитать структурные элементы, синтаксическая сложность которых значительно отличается от среднего уровня. Следовательно, такой текст будет гораздо сложней, чем это могло бы показаться исходя их средних показателей по всему тексту. Такое усложнение можно уловить и оценить, если измерить максимальные значения параметров в каждом структурном элементе и рассчитать средний показатель от этих максимальных значений.
Исходя из всего вышеизложенного, расчет ИСЗ производится по следующей формуле:
ИСЗ = | (normГЛ × 0,18 + normСИСсредн × 0,08+ normСИСмакс × 0,08 + normПРсредн × 0,075 + normПРмакс × 0,075 + normРЗСсредн × 0,075 + normРЗСмакс × 0,075 + normПОсредн × 0,07 + normПОмакс × 0,07 + normСПсредн × 0,055 + normСПмакс × 0,055 + normГОсредн × 0,055 + normГОмакс× 0,055) × 100 |
где:
normГЛ | – | нормированное значение доли глаголов от общего количества слов в тексте |
normСИСсредн | – | нормированное значение среднего количества слов в субстантивных именных словосочетаниях в тексте |
normСИСмакс | – | нормированное значение среднего из максимальных значений количества слов в субстантивных именных словосочетаниях в структурных элементах текста |
normПРсредн | – | нормированное значение среднего количество слов в абзацах по тексту |
normПРмакс | – | нормированное значение среднего из максимальных значений количества слов в абзацах в структурных элементах текста |
normРЗСсредн | – | нормированное значение среднего расстояния между зависимыми словами в предложении в тексте |
normРЗСмакс | – | нормированное значение среднего из максимальных значений расстояния между зависимыми словами в предложении в структурных элементах текста |
normПОсредн | – | нормированное значение среднего количества причастных оборотов в тексте |
normПОмакс | – | нормированное значение среднего из максимальных значений количества причастных оборотов в структурных элементах текста |
normСПсредн | – | нормированное значение среднего количества слов в предложениях в тексте |
normСПмакс | – | нормированное значение среднего из максимальных значений количества слов в предложениях в структурных элементах текста |
normГОсредн | – | нормированное значение среднего количества грамматических основ в предложениях по тексту |
normГОмакс | – | нормированное значение среднего из максимальных значений количества грамматических основ в предложениях по структурным элементам текста |
Как видно из формулы, для расчета ИСЗ определяются нормированные (norm) значения оцениваемых параметров. Общая стандартная формула нормализации того или иного параметра выглядит следующим образом:
normПСКI = (ПСКIоцен / ПСКImax) × 100,
где:
normПСКI - нормированное (norm) значение того или иного показателя синтаксических конструкций (ПСК): количество слов в словосочетании, в абзаце и т.д.;
ПСКIоцен – значение конкретного показателя синтаксических конструкций для оцениваемого текста;
ПСКImax – наибольшее значение соответствующего показателя синтаксических конструкций в корпусе законодательства, действующего на конец 2018 год.
Данная формула учитывает ситуацию: чем выше показатель, тем выше синтаксическая сложность закона. Однако это верно в отношении всех параметров сложности, за исключением показателя «доля глаголов», для которого ситуация обратная: чем ближе показатель к нулю, тем сложнее текст (чем больше показатель, тем проще текст).
В связи с этим формула нормализации параметра «доля глаголов» выглядит следующим образом:
normГЛ = (1 - (ГЛоцен / ГЛmax)) × 100,
где:
normГЛ - нормированное (norm) значение показателя «Доля глаголов от общего количества слов в тексте»;
ГЛоцен – значение показателя «Доля глаголов от общего количества слов в тексте» для оцениваемого текста;
ГЛmax – наибольшее значение показателя «Доля глаголов от общего количества слов в тексте» в корпусе законодательства, действующего на конец 2018 год.
Максимальные значения показателей, зафиксированные в корпусе законов по состоянию на 2018 год и используемые для нормализации, представлены в таблице 1.
Таблица 1 – Максимальные значения показателей синтаксической сложности текста, зафиксированные в корпусе законов по состоянию на 2018 год и используемые для нормализации
№ | Наименование параметра (в скобках - техническое обозначение, используемые в алгоритме) |
Значение |
1 | Доля глаголов от общего количества слов (verb) | 0,097561 |
2 | Среднее количество слов в субстантивных именных словосочетаниях (meanDependentCount) | 6,796971 |
3 | Среднее количество причастных оборотов в тексте (meanPartcp) | 2,285714 |
4 | Среднее количество слов в предложениях (meanWordInSent) | 109,3333 |
5 | Среднее расстояние между зависимыми словами в предложении (meanDepLen) | 4,680927 |
6 | Среднее количество грамматических основ в предложениях (meanPredicCount) | 2,428571 |
7 | Среднее количество слов в абзацах (meanWordInParagraph) | 109,3333 |
8 | Среднее от максимальных значений количества слов в субстантивных именных словосочетаниях в статьях законодательных актов (maxDependentCount_article_mean) | 12,3371 |
9 | Среднее от максимальных значений количества причастных оборотов в статьях законодательных актов (maxPartcp_article_mean) | 4,333333 |
10 | Среднее от максимальных значений количества слов в предложениях в статьях законодательных актов (maxWordInSent_article_mean) | 145,5 |
11 | Среднее от максимальных значений расстояния между зависимыми словами в предложении в статьях законодательных актов (maxDepLen_article_mean) | 77 |
12 | Среднее от максимальных значений количества грамматических основ в предложениях по статьям законодательных актов (maxPredicCount_article_mean) | 4 |
13 | Среднее от максимальных значений количества слов в абзацах в статьях законодательных актов (maxWordInParagraph_article_mean) | 152,1667 |
Сервис написан на языке программирования Python и оформлен в виде docker-контейнеров для удобного разворачивания и масштабирования. Использовались следующие технические инструменты:
- фреймворк Django для создания интерфейса;
- готовое решение MyStem для морфологического анализа;
- синтаксический парсер MaltParser;
- синтаксический парсер ru-syntax (разработан выпускниками магистерской программы компьютерной лингвистики НИУ ВШЭ Никитой Медянкиным и Кирой Дрогановой под руководством профессора Школы лингвистики НИУ ВШЭ О.Н. Ляшевской).