В Альфа-Банке создали автоматическую систему переобучения ИИ-моделей
Вот как она работает.
Когда-то банки ассоциировались с отделениями, кассирами, хранилищами с массивными дверями для наличных денег и золотых слитков. Сегодня банк — это в первую очередь приложение в смартфоне и огромные потоки данных. Для их обработки используются модели машинного обучения. Они предсказывают множество вещей — от мошеннических операций до потребности клиентов в кредитных картах. Чем точнее работают модели, тем лучше сервис, выше безопасность, надёжнее работа банка.
Однако со временем способности моделей ухудшаются. Их требуется обучать заново. Процесс этот трудоёмкий, требует активного вовлечения аналитиков данных для решения рутинных задач. Оказалось, его можно автоматизировать. В Альфа-Банке создали первую в России полностью автоматическую систему переобучения внедрённых в эксплуатацию моделей — Retrainable AutoML Framework. Рассказываем, почему это важно, и как это удалось.
Почему модели машинного обучения требуется переобучать
Любой современный банк — это IT-инфраструктура. Помимо традиционных информационных систем, сейчас всё более интенсивно внедряются различные модели искусственного интеллекта. Так, в Альфа-Банке в 2021 году их применялось всего 50, в 2022-м — уже 112, а в 2023-м — 386.
Созданием и обслуживанием таких моделей занимаются аналитики данных. Обычно их работа состоит из нескольких последовательных этапов:
- постановка бизнес-задачи — как модель поможет банку в бизнесе;
- работа с данными — подготовка датасета для обучения модели;
- моделирование — подбор алгоритма и гиперпараметров;
- тренировка модели — обучение алгоритма на подготовленном датасете;
- оценка модели — насколько эффективно она решает свою задачу;
- внедрение модели — интеграция в бизнес-систему банка.
Рассмотрим на примере. Банк хочет предложить клиентам кредитную карту, которая позволит посещать бизнес-залы аэропортов, но за её обслуживание придётся платить. Необходимо понять, кому именно лучше всего предложить данный продукт. Иными словами, создать модель склонности к потреблению.
В качестве данных выступят социо-демографические характеристики клиентов (пол, возраст и т.п.), а также ведущие категории расходов по картам. Здесь аналитику необходимо будет сконструировать правильные фичи (feature). Так называют определённые признаки, которые можно извлечь из сырых данных для решения поставленной задачи. Например, в данном случае — частота покупки клиентами авиабилетов, заказа такси до аэропорта, бронирования гостиниц в разных городах, расходов в магазинах duty free и т.д.
Для простоты представим, что нам необходимо разделить потребителей на два типа: склонных приобрести карту с привилегиями и несклонных. Отсюда следует, что аналитик может выбрать алгоритм бинарной классификации. С его помощью можно поделить всех клиентов банка строго на две категории. В этом и будет состоять целевая функция модели (target) — правильная классификация клиента в каждом конкретном случае на основе имеющихся о нём данных.
После подбора алгоритма и обучения модели, аналитик получит инференс — результат её работы. Если он будет удовлетворительным, скажем, модель в 85% случаев правильно указывает потребителя, склонного к покупке карты с привилегиями, то далее начнётся процесс её промышленного внедрения. Модель начнут применять маркетологи и менеджеры банка.
И вот тут возникает новая проблема: любая, даже очень хорошая модель со временем начинает «стареть» и деградировать. Качество её работы в промышленной эксплуатации неуклонно ухудшается по сравнению с полученной после обучения точностью инференса. С 85% всего за год она падает до 70% и ниже.
Чаще всего показатели модели «проседают» из-за изменения потока данных. Скажем, раньше клиентская база состояла на 40% из мужчин и на 60% из женщин, а потом их соотношение резко изменилось, стало 70% на 30%. Модель привыкла «видеть» одну картину, но теперь она изменилась, и точность прогнозов «поплыла». Такие показатели становятся неприемлемыми, а значит модель надо переобучать — вновь проходить все описанные выше этапы и тратить огромное количество дорогостоящего времени аналитиков.
Зачем автоматизировать переобучение моделей?
В 2023 году на обновление моделей уходило до 10% бюджета времени наших датасайнтистов. А по прогнозу, с ростом парка моделей и без внедрения автоматизации, в 2024-м мы затрачивали бы уже до 35%, а в 2025-м — до 55%.
Хорошие аналитики данных — специалисты штучные и высокооплачиваемые. Они призваны в большей степени исследовать, искать новые возможности для извлечения пользы из данных, нежели рутинно заниматься обслуживанием ранее созданных моделей. Естественно, возникла идея автоматизировать этот процесс. Однако до определённого момента это было невозможно.
В течение 2022-2023 годов в Альфа-Банке появилась новая инфраструктура для машинного обучения. Во-первых, единая Среда исполнения моделей (СИМ), облегчающая их внедрение. Во-вторых, платформа для разработки моделей (Model Development Platform, MDP). Но самое главное, в связи с резким ростом источников и количества данных в Альфе создали автоматическую систему их поставки.
В ней есть две важных подсистемы, без которых никакая автоматизация переобучения в принципе невозможна. Это Feature Store, где все поступающие данные автоматически обрабатываются и из них выделяется список фичей. Всего их сейчас около 12 000. Фичи организованы в лонглисты по группам клиентов (например, лонглист для юридических лиц содержит свыше 3000 фичей). И любая модель может «заглянуть» в соответствующий список при необходимости переобучения.
Вторая подсистема — Target Store. В ней аккумулируются все возможные целевые события, то есть, что именно той или иной модели необходимо предсказать (как в примере выше — склонность клиента к приобретению карты с привилегией посещать бизнес-лаунжи аэропортов). Соответственно, здесь модель «уточняет» свою задачу при переобучении.
Кроме того, параллельно команда собрала и обработала экспертизу аналитиков данных банка. Ведь до сих пор машинное обучение в большей степени искусство, чем наука. Благодаря этому удалось выработать общие критерии — когда и в каких случаях модель нужно отправлять на переобучение? На ухудшение каких метрик её работы следует обращать внимание? Какое их падение является критическим? И так далее.
Как устроена система автоматического переобучения моделей в Альфа-Банке
Чтобы понять, что происходит с моделью, как она себя «чувствует», необходимо регулярно мониторить эффективность её работы. Специалисты Альфа-Банка построили систему, которая на постоянной основе собирает прогнозы большинства работающих моделей и сравнивает их с фактическим положением вещей.
Возвращаясь к нашему примеру, на протяжении полугода модель точно определяет 8-9 из 10 потенциальных покупателей кредитных карт с привилегиями. Однако в какой-то момент показатель падает до 7-8, а затем и вовсе до 6-7 из 10. Ключевая метрика отклонилась от заданного показателя — система мониторинга фиксирует деградацию модели. Далее включается петля обратной связи.
Петля обратной связи — центральное понятие кибернетики, разработанное её основоположником Норбертом Винером. Это информация, полученная внутри системы для изменения её поведения.
На этом принципе работают даже кондиционеры у нас дома. Например, мы хотим, чтобы температура была 20 градусов по Цельсию. Поэтому в жаркий полдень включаем кондиционер. Термометр внутри него сообщает процессору, что температура в комнате 28 градусов. Он начинает интенсивно охлаждать воздух, пока температура не упадет до требуемых 20 градусов, после чего замедляет работу. Когда температура вновь начинает подниматься, кондиционер опять принимается за работу. И так весь день.
Иными словами, охлаждение запускается не по заранее заданной программе и не из-за изменения внешних условий, а при условии разности между желаемым и действительным значением температуры в комнате. Поведение кондиционера адаптивно и управляется постоянной обратной связью.
Точно так же работает особый алгоритм-контроллер. Получив от системы мониторинга предупреждение о снижении эффективности модели, он оценивает — насколько критично оно упало. Если показатель неприемлем, то запускается цикл автоматического переобучения.
В этот момент подключаются другие алгоритмы, которые забирают новые данные из Feature Store и необходимое целевое событие из Target Store. После чего модель обучается на этих данных и выявляет новые закономерности. Далее запускается инференс модели и проверяется её работоспособность. Здесь в Альфа-Банке применяют решения с открытым исходным кодом с рынка — AutoGluon.
В этот момент в системе присутствует одновременно две модели — старая и новая. Если насчёт первой система точно знает, что её качество неудовлетворительно, то работу второй ещё требуется оценить. Для это существует отдельная программа «Врата качества» (quality gate). Она сравнивает показатели эффективности обоих вариантов модели.
Если качество новой модели оказывается выше, то она уходит на исполнение, а старая откатывается в архив. Однако так происходит не всегда. Бывают случаи, что после переобучения показатели не меняются, а иногда даже становятся хуже, чем у старой модели. В этом случае уже требуется привлечение аналитика данных. Он получает на почту предупреждение и начинает «расследование». Чаще всего причина отсутствия улучшений в сильно изменившихся данных, либо в неправильно установленном целевом событии.
В чём уникальность системы автоматического переобучения в Альфа-Банке
Retrainable AutoML Framework имеет три уникальных характеристики, которых нет среди других решений по автоматизации машинного обучения в России. Во-первых, это система постоянного мониторинга моделей, работающих в промышленных системах и обратной связи.
Во-вторых, это сквозной процесс автоматизации — от выделения фичей до бесшовной замены старой модели на новую в работающей бизнес-системе. Плюс минимальное участие человека в принятии решений.
Но самое главное, переобученная модель сразу выкатывается в промышленную систему. Теперь нет необходимости возвращать её в среду разработки и заново проходить все этапы.
Нам пришлось сильно постараться, чтобы поменять регламент в банке. Убедить всех в необходимости такой системы. Но в итоге нам удалось создать, как мы его называем, “Пайплайн 3.0”. Суть в том, что раньше мы собирали образ модели в среде разработки, отправляли его в хранилище образов, извлекали для каждого этапа, и вновь пересобрать его можно было только в среде разработки. А теперь у нас есть отдельно универсальный образ, есть сама модель и есть архив с окружением (Python-библиотеки и их зависимости). Поэтому прямо в промышленной системе в процессе исполнения мы собираем образ для инференса и можем подменить старую модель на новую.
Что получили
Внедрение Retrainable AutoML Framework повысило среднегодовое качество моделей на 5-7%. Без использования переобучения точность прогнозов моделей начинает радикально падать через полгода использования. Регулярный мониторинг и своевременное переобучение возвращает метрики на исходный уровень. Обычно требуется две-три таких процедуры в год. Прогнозируемый финансовый эффект на 2024 год — экономия 200 млн рублей.
Кроме того, удалось высвободить значительные бюджеты времени аналитиков данных и инженеров машинного обучения. А это, в свою очередь, помогло расширить число и спектр решаемых ими задач, ускорить многие процессы.
Ну а для клиентов хорошая работа моделей банка проявляется в соответствующем сервисе. Они получают необходимые услуги, интересующие именно их предложения, надёжную защиту средств на своих счетах.
Система уже отлично зарекомендовала себя. Поэтому сейчас мы масштабируем её применение в банке. Основная цель — перевести к первому кварталу 2025 года на автоматическое переобучение до 70% всех работающих моделей машинного обучения в банке.
Сейчас уже даже ИИ переучивают, а я до сих пор встречаю людей в своей профессии давно отставших от современных тенденций)
Важно постоянно развиваться и адаптироваться под рынок, иначе конкуренты просто сметут! Странно что многие это не осознают
Когда-то банки ассоциировались с отделениями, кассирами, хранилищами с массивными дверями для наличных денег и золотых слитков.Ассоциации с детством... Система конечно изменилась до неузнаваемости, сейчас весь банк в телефоне
Так и хочется написать "до чего техника дошла". Большинство айти специалистов знакомых работают именно в банках, а не в каких-то технических компаниях
С точки зрения технического прогресса компании это мощный рывок. От банка впервые о таком читаю
Создали это давно и не в Альфа банке, альфа банк просто наконец-то начал это делать, какой громкий заголовок и как обычно неочемная статья
В очередной раз убедился, что чем больше айтишников, тем больше айти продуктов. Следовательно, никто без работы не останется. Всегда найдется что автоматизировать, что доработать и привести в лучшую форму