Специалисты «Сбера» и ИТМО создали один из первых отечественных инструментов для федеративного обучения моделей искусственного интеллекта.
Новый инструмент позволяет обучать модели искусственного интеллекта и делать прогнозы с использованием данных, которые хранятся на различных устройствах и принадлежат разным владельцам. Сведения при этом не объединяются и надёжно защищены от утечек. Stalactite — один из первых отечественных инструментов для федеративного обучения. Он создан по федеральному проекту «Искусственный интеллект».
Глеб Гусев, руководитель лаборатории искусственного интеллекта Сбербанка, сказал: «Эта разработка продолжает наше многолетнее сотрудничество с передовыми исследовательскими институтами России в области совместного создания и улучшения инструментов для дата-сайентистов. В этом году мы опубликовали несколько научных работ на топовых конференциях по искусственному интеллекту, и часть из них также касалась федеративного обучения. Разработанный фреймворк может применяться в том числе для улучшения рекомендательных систем различных организаций. В результате дата-сайентисты смогут тестировать разнообразные алгоритмы вертикального федеративного обучения в области рекомендаций для безопасного обучения моделей в различных доменах без прямого обмена чувствительными данными».
Николай Бутаков, старший научный сотрудник исследовательского центра «Сильный ИИ в промышленности» ИТМО, отметил: «Сейчас многие организации достигли предела, когда собственные данные для машинного обучения уже не повышают точность предсказаний. Для этого требуются полезные сведения из сторонних источников. Но если речь идёт, например, о финансовых и медицинских учреждениях, то делиться такой информацией они не могут вследствие законодательства. Для таких задач китайские и американские компании последние два года используют вертикальное федеративное обучение. В России Stalactite стал, насколько нам известно, одним из первых подобных проектов. Его также можно использовать для предсказания финансовых показателей различных подразделений организаций, которые владеют чувствительными данными и не могут ими обмениваться».
Инструмент реализован на языке Python. Сетевой уровень (коммуникация между разными площадками хранения данных) построен на технологии Protobuf, которая позволяет гибко передавать данные без сложной синхронизации. Stalactite включает несколько популярных алгоритмов машинного обучения для работы с табличными данными и изображениями в задачах регрессии и классификации, но может применяться и для задачи рекомендаций. Средства мониторинга результатов и производительности дают возможность использовать решение для отладки, подбора параметров и настроек среды, например в тестовой эксплуатации.
В первую очередь Stalactite предназначен для прикладных разработчиков ИИ-систем на данных, которые могут с его помощью адаптировать собственный алгоритм для работы в режиме вертикального федеративного обучения. Однако в процессе разработки был создан удобный консольный (командный) интерфейс, который позволяет с помощью всего нескольких команд запустить из терминала готовый алгоритм и поставить модель обучаться. Благодаря этому инструмент могут использовать эксперты даже с минимальными навыками работы с терминалом.