DataScience SG x ODSC Meetup - Applying ML to Healthcare
Юджин Ян (Eugene Yan) рассказывает о своём выступлении на митапе DataScience SG x ODSC, посвящённом применению машинного обучения в здравоохранении. Он делится кейсом стартапа uCare.ai, который построил ML-систему для крупнейшей в Юго-Восточной Азии медицинской группы Parkway Pantai: система оценивает итоговый счёт пациента ещё на этапе предварительной госпитализации, повышая прозрачность для пациентов и снижая проблемы с оплатой при выписке. Новая система уменьшила среднюю абсолютную ошибку на 55% и среднеквадратичную ошибку на 60%, а её внедрение было незаметным для конечных пользователей. Главный вывод: ML составляет лишь около 20% усилий, тогда как правильная постановка задачи и инженерия (развёртывание и эксплуатация) важнее. Автор также критикует чрезмерный фокус на Kaggle-подобных решениях, оторванных от реальности продакшн-систем.
DataScience SG x ODSC Meetup — Применение ML в здравоохранении
[ machinelearning production ] · 4 мин чтения
Проработав почти полтора года в healthtech-стартапе, я уже давно был должен выступить на каком-нибудь митапе. Ранее я делился этим на конференции DataX в Сингапуре и хотел рассказать об этом на митапе, куда мог бы прийти любой желающий.
О чём этот доклад?
Доклад охватывает архитектуру и сквозной процесс, которые мы использовали для построения системы машинного обучения, развёрнутой сейчас в крупнейшей в Юго-Восточной Азии больничной группе (Parkway Pantai).
Для этого я рассказал кейс о том, как uCare.ai помогла разработать систему машинного обучения для Parkway Pantai Group (крупнейшей медицинской группы в Юго-Восточной Азии), которая оценивает итоговый счёт пациента на этапе предварительной госпитализации.
Это обеспечивает большую прозрачность для пациентов, помогая снизить потенциальные сложности с оплатой при выписке. Это также выгодно медицинским учреждениям: повышенная прозрачность улучшает опыт пациентов и их удержание. Наконец, это требование Министерства здравоохранения Сингапура.
Цель доклада
В докладе я хотел рассказать о том, как нам удалось улучшить существующую систему Parkway, вдвое снизив ошибку прогноза. Доклад вдавался в мельчайшие детали, включая общую архитектуру, организацию кода, а также подробные шаги, в число которых входили:
Валидация и приём данных; Подготовка данных; Инженерия признаков; Валидация модели перед развёртыванием; Машинное обучение; Развёртывание
Результаты
В целом система снизила среднюю абсолютную ошибку на 55%, а среднеквадратичную ошибку — на 60%. Она также уменьшила долю занижений (одной из ключевых целей было смещение в сторону завышения, чтобы лучше управлять ожиданиями пациентов).
Выкатка прошла легко и незаметно для конечных пользователей — фронтенд остался прежним, а бэкенд был обновлён для вызова нашего API, — и они продолжили пользоваться привычным интерфейсом.
С момента выкатки администраторы больниц отмечают, что жалоб от персонала и пациентов практически не было — это серьёзное улучшение по сравнению с предыдущей системой.
Ключевые выводы
Было несколько ключевых выводов, на которых я сделал акцент для аудитории.
Во-первых, создание полезных продуктов на данных — это командная работа. Глядя на диаграмму архитектуры выше, можно увидеть, что data science — лишь её часть. Дата-инженеры помогли с шифрованием, передачей данных и ETL. DevOps помог взять упакованные модели (например, pickle-файлы, docker-образы) и развернуть их. Инфраструктурная команда помогла настроить необходимые облачные ресурсы (например, хранилище, вычисления, сети).
С учётом сказанного должно быть очевидно, что машинное обучение составило лишь небольшую долю усилий — примерно ~20%. Это противоположно тому, что думают многие непрофессионалы, академики или новички в data science, — что машинное обучение составляет 80%. Я надеялся, что доклад показал: методология (то есть как сформулировать задачу для машинного обучения) и грамотная инженерия (то есть для развёртывания и эксплуатационного сопровождения) на самом деле важнее.
Заключение
С технической точки зрения, частая ошибка, которую я вижу в стартапах (и даже в некоторых средних компаниях), — слишком сильно фокусироваться на применении машинного обучения к каким-то пакетным данным, обычно CSV-файлам, чтобы добиться некоего (искусственно) сильного результата, который, скорее всего, переобучен и не воспроизводим в продакшене.
Kaggle — отличный пример этого, где победные решения состоят из сложных ансамблей, обучение которых занимает дни. Я не говорю, что Kaggle — это плохо: это отличное место, чтобы исследовать разные решения на чистых наборах данных в разных предметных областях. Тем не менее это довольно далеко от реальности продакшн-систем машинного обучения.
Надеюсь, доклад помог глубже понять процесс разработки систем машинного обучения промышленного уровня и что организации в Юго-Восточной Азии будут делать это эффективнее.
Вот слайды для тех, кому интересно.
Если вам это было полезно, пожалуйста, цитируйте этот материал так:
Yan, Ziyou. (Oct 2019). DataScience SG x ODSC Meetup - Applying ML to Healthcare. eugeneyan.com. https://eugeneyan.com/speaking/machine-learning-in-production-for-healthcare-talk/.
или
@article{yan2019healthtech, title = {DataScience SG x ODSC Meetup - Applying ML to Healthcare}, author = {Yan, Ziyou}, journal = {eugeneyan.com}, year = {2019}, month = {Oct}, url = {https://eugeneyan.com/speaking/machine-learning-in-production-for-healthcare-talk/} }
Присоединяйтесь к 11 800+ читателям, получающим обновления о машинном обучении, RecSys, LLM и инженерии.