Ivan Begtin
7.99K subscribers
1.88K photos
3 videos
101 files
4.58K links
I write about Open Data, Data Engineering, Government, Privacy, Digital Preservation and other gov related and tech stuff.

Founder of Dateno https://dateno.io

Telegram @ibegtin
Facebook - https://facebook.com/ibegtin
Secure contacts ivan@begtin.tech
Download Telegram
Один из самых простых внешне и сложных внутри общественно полезных проектов которыми я занимался - это "Простой русский язык" https://plainrussian.ru

Это сервис который проверяет текст на предмет его простоты и измеряет эту простоту в годах обучения и возрасте аудитории.

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

Поэтому много лет назад я потратил несколько месяцев на то чтобы такие формулы адаптировать под русский язык. В статье на Хабре "Что такое «Понятный русский язык» с точки зрения технологий. Заглянем в метрики удобочитаемости текстов" [1] в 2014 году я рассказывал как это делалось. Не имея возможности проверить эти формулы на разных аудиториях, я, по сути, на базе обучающей выборки из текстов внеклассного чтения методом грубого перебора коэффициентов подобрал такие их показатели при которых среднее отклонение расчётного и предобученного значений было минимальным.

Тогда же и появился сервис plainrussian.ru и тогда же было доступно его API [2]. И тогда же я выложил исходный код формул [3], каждый желающий может реализовать это в своём приложении.

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

Это один из тех проектов которые, на мой взгляд, могут быть исключительно некоммерческими. Многое можно ещё сделать к нему в довесок. Например, в телеграме @PlainRussianBot написан поверх этого API. Это наш внутренний бот в Инфокультуре для проверки текстов, но его можно использовать и извне. Он понимает команды /help, /url, /text и если ему переслать файл doc то он извлечет из него текст и измерит его сложность.

Ссылки:
[1] https://habr.com/company/infoculture/blog/238875/
[2] https://github.com/ivbeg/readability.io/wiki/API
[3] https://github.com/infoculture/plainrussian

#plainlanguage #plainrussian
August 10, 2018
Институт проблем правоприменения сделал очень познавательное исследование "Сложность правовых актов в России" [1], они упоминают и наш проект Инфокультуры "Простым языком" [2].

То что исследованы именно юридические тексты - это важно, огромногое количество законов, других НПА, судебных и иных решений порождаемых ежедневно являются просто неподъёмными для обычного человека. А их сложность лишь ухудшают эту ситуацию.

Ссылки:
[1] https://enforce.spb.ru/images/analit_zapiski/memo_readability_2018_web.pdf
[2] https://plainrussian.ru

#plainlanguage #plainrussian
December 7, 2018
March 5, 2021
В рубрике полезных наборов данных, набор данных для анализа простоты официального государственного языка созданный по результатам сбора новостей с официального сайта Правительства РФ [1]. В наборе 9823 текста новости, 558582 предложений за 9 лет (начиная с 2012 года), а по каждому тексту и по каждому предложению набор метрик измерения сложности текста. Для текстов есть расчёт показателей простоты текста, перечни сложных слов и лемм, частотности слов по числу слогов и так далее. Набор можно использовать для формирования словарей официальной лексики, анализа изменения официального языка с течением времени, измерения средней сложности официального языка и многого другого.

Например, 90.8% всех новостей на сайте правительства попадают в диапазон сложности текста от 10 до 24. Где цифра означает число необходимых лет обучения для понимания текста. 10 - это десять классов школы, а 24 - это аспирантура, второе высшее, иное узкоспециализированное знание.

А в целом сложность менее 18 (полное высшее образование) есть у 65% всех опубликованных текстов новостей.

И есть небольшое число текстов состоящих исключительно из длинных перечислений и сложность их текстов резко выше чем всех остальных.

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

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

Ссылки:
[1] https://ngodata.ru/dataset/plainlang-gov-news
[2] https://plainrussian.ru

#opendata #plainlanguage #datasets
March 27, 2021
Алексей Лукацкий проверил регуляторные документы по инфобезу через наш сервис Простой язык [1] и отметил наиболее сложную нормативку. А я со своей стороны расскажу что когда-то простой русский язык я сделал после того как потратил несколько месяцев на то чтобы адаптировать формулы английского языка под русский. Это было непросто и делал я это, Вы не поверите, брут-форсным перебором нескольких миллионов комбинаций коэффициентов.

Потому что самое главное в этих формулах - это привязка значений к годам обучения. Если формула выдаёт 10 - это означает что 10 лет надо учиться чтобы понять этот текст (примерно 9-11 классы школы), а сложность в 18 означает что учиться надо 18 лет (а то есть 11 классов школы + 5 лет ВУЗа + ещё чему-то, например, в аспирантуре) ну и так далее.

Дело в том что формулы читабельности основаны на нескольких параметрах сложности текста таких как:
- среднее число слов на предложение
- среднее число слогов в словах
- среднее число слогов на предложение
- число сложных слов на предложение
и так далее.

Есть корреляция между сложностью текста и этими и другими параметрами, но как эту корреляцию переложить в формулу? И вот для этого я собирал кучу текстов для внеклассного чтения где были рекомендации для возраста и адаптировал формулы под поиск наименьшего среднего отклонения и наименьшего максимального отклонения. Иначе говоря, если если коэффициенты у формулы должны давать результат при котором максимально допустимое отклонение в оценки сложности текста не более 2, то есть если текст для внеклассного чтения для 9-го класса то алгоритм не может ошибаться в его отношении в пределах 9-11, но не более. А среднее отклонение по всей обучающей выборке должно быть как можно ниже.

Дальше чтобы не вдаваться в сложную математику я просто перебрал все коэффициенты с шагом в 0.01 для всех формул и это заняло около месяца на нескольких домашних компьютерах.
Самой точной оказывалась формула SMOG (Simple Measure of Gobbledygook) с адаптированными коэффициентами поэтому она и является базовой в оценке plainrussian.ru.

Всё это было более 7 лет назад, сам код можно увидеть по ссылке на Github [2]. Сейчас его надо переработать чтобы лучше учитывать определение предложений, лучше понимать бюрократические тексты (нужна отдельная шкала) и ещё многое другое до чего постепенно "доходят руки".

Ссылки:
[1] https://plainrussian.ru
[2] https://github.com/infoculture/plainrussian

#plainlanguage #plainrussian
March 29, 2021
April 26, 2021
В Высшей школе экономики разместили в открытом доступе сервис "Оценка синтаксической сложности нормативных текстов" для проверки языка нормативных документов [1]. Сервис, безусловно, полезный, надеюсь он будет активно применяться российскими нормотворцами, а у каждого законопроекта будет автоматическая оценка его сложности. Ко всему прочему результаты проекта также весьма интересны по оценке сложности российских законов [2] и открытые данные в виде корпуса российских законов [3].

Из пожеланий, сервису нехватает API и подробностей методологии, но и в таком виде он будет полезен.

А я напомню что ещё много лет назад в @infoculture мы создали сервис "Простой русский язык" который даёт оценку сложности любого текста [4]. Этот сервис не так сложно устроен как сервис от НИУ ВШЭ и он не затачивался под законы, а скорее на общедоступные простые тексты. Главное что его код открыт [5] включая все формулы используемые для расчёта. Подробнее о том как он создавался я писал на Хабре несколько лет назад [6]

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

Так что надеюсь проект который делает команда НИУ ВШЭ будет развиваться и применяться на практике.

Ссылка:
[1] https://lawreadability.hse.ru
[2] https://lawreadability.hse.ru/project-results/
[3] https://lawreadability.hse.ru/data-sources/
[4] https://plainrussian.ru/
[5] https://github.com/infoculture/plainrussian
[6] https://habr.com/ru/post/239511/

#opendata #plainrussian #plainlanguage
June 11, 2021
Среди приложений по улучшению написанных текстов много лет выделялся Grammarly [1], стартап основанный в кремниевой долине в 2009 году несколькими выходцами из Украины и поднявший 200М инвестиций за эти 12 лет. Его особенность была в понимании контекста и эффективных подсказках по замене слов, конструкций, замене пунктуации под разные стили написания текстов и даже виды английского языка.

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

И вот 2020 году появился стартап Writer.com [2], со многими похожими на Grammarly свойствами, опять же заточенный под английский язык и в буквально совсем недавно они получили второй раунд финансирования в 20 миллионов долларов [3] под автоматизацию проверки текстов по корпоративным руководствам стилей адаптированным под их бренды. Идея, с одной стороны оригинальная, а с другой как раз под ожидания клиентов и адаптацию практики аутсорсинга подготовки пресс-релизов, контента для сайтов и много чего ещё связанного с текстами. Крупные компании отдают пресс-релизы на аутсорс, но хотят контролировать их качество, гендерную нейтральность и ещё много чего, актуального как минимум в США.

Впрочем Writer.com появился не на пустом месте, до него основатели делали стартап Qordoba в котором совмещали сервисы управления контентом, перевода и упрощения языка. Далее, по видимому, упрощение языка оказалось наиболее перспективной темой для развития и инвестиций.

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

Ссылки:
[1] https://www.crunchbase.com/organization/grammarly
[2] https://www.crunchbase.com/organization/writer
[3] https://techcrunch.com/2021/11/15/writers-automated-style-guide-for-web-based-publishing-brings-in-21m-a-round/

#plainlanguage #startups #language
November 15, 2021
October 22, 2022
October 26, 2022
Собрал свои публичные презентации по нескольким темам и понял что получится большой пост если перечислять все. Вот тут самые основные:

Открытые данные
-
Раскрытие данных о госфинансах как часть государственной политики - про проекты открытости госфинансов и их значимости
- Открытые данные как основа госполитики - о том как устроены открытые данные в мире
- Как искать данные с помощью каталогов данных. Проект Datacatalogs.ru - об одном из первых каталогов-каталогов данных
- Sharing Data for Disaster Response and Recovery Programs - об открытых данных в вопросах чрезвычайных ситуаций и восстановления
- Открытость информационных систем нормотворчества - об открытости/закрытости систем нормотворчества в России

Data engineering
-
Dateno. Global Data Discovery search engine - презентация проекта поиска по данным Dateno
-
Datacrafter. Каталог и озеро данных на базе MongoDB - презентация для выступления на конференции SmartData, о внутренностях продукта Datacrafter и куча технических подробностей

Open Data Armenia
-
Open Finances. International and Armenia overview - обзор проектов по открытости госфинансов в мире и в Армении
- Open Data, Open Code, Open Licenses - о разных компонентах открытости

Открытый код
- Открытый код в других странах - Как и в каком объёме и кто именно публикует открытый код, почему это важно и почему это становится всё более популярным

Приватность
-
Слежка через государственные мобильные приложения - о том как государственные органы следят за гражданами с помощью мобильных приложений и сливают информацию о их передвижении и действиях коммерческим компаниям
- Термины и объекты регулирования: ADM-системы - о том что такое системы для автоматического принятия решения и как они описываются в разных странах
- О необходимости контроля и аудита ADM- систем - о том как регулировать ИИ используемый для автоматического принятия решений

Веб архивация
- Организация веб-архивов - о том как устроены современные интернет архивы и Национальный цифровой архив (ruarxive.org)
- Дата инженерия и цифровая гуманитаристика - о том какие большие цифровые гуманитарные проекты есть в мире и про Национальный цифровой архив

Понятный язык
- Простой и понятный русский язык - о простоте русского языка и её измерении
- Простота нормативно-правового языка - о подходах к оценке нормативно-правовых текстов

P.S. Всего у меня 200+ неразобранных презентаций за последние 15 лет, в онлайне не больше 30. Что-то устаревает, что-то нельзя публиковать, что-то бессмысленно без самого выступления, но, по мере разбора завалов, буду выкладывать дальше.

#opendata #opensource #plainlanguage #webarchives #digitalpreservation #dataengineering #armenia
June 9