Себастьян Рашка, известный преподаватель и исследователь в области искусственного интеллекта, стал гостем подкаста The TWIML AI Podcast. В интервью с ведущим Сэмом Черрингтоном он подробно рассказал о своем видении современного ИТ-образования, балансе между математической теорией и практическим программированием, а также о прорывных разработках своей исследовательской группы в области ординальной регрессии для глубоких нейросетей.
🎓 Путь в индустрию и философия преподавания 0:04
Себастьян Рашка начинал свой академический путь в аспирантуре, изучая вычислительную биологию. По совету своего научного руководителя он посетил междисциплинарный курс по статистическому распознаванию паттернов на факультете компьютерных наук, посвященный байесовским методам. По воспоминаниям исследователя, этот опыт полностью изменил траекторию его карьеры: его увлекла возможность обучать компьютеры самостоятельному поиску закономерностей в данных. В 2015 году он обобщил свои знания, написав книгу «Python Machine Learning», а позже занял позицию доцента статистики в Университете Висконсин-Мэдисон.
В своей преподавательской деятельности Себастьян Рашка стремится объединить академический подход «снизу вверх» (от математической базы к коду) и практический метод «сверху вниз», популяризируемый такими специалистами, как Джереми Ховард. Гость признается, что сам предпочитает учиться на практических примерах, поскольку долгое созерцание сухих математических формул на лекциях утомляет даже его.
По мнению исследователя, эффективная педагогическая стратегия должна строиться по следующему принципу:
- Демонстрация возможностей: Сначала студентам показывают вдохновляющие примеры работающих приложений.
- Формирование мотивации: Увидев пользу от практического применения алгоритмов, учащиеся получают внутренний стимул глубже погружаться в nitty-gritty — сложные математические детали и тонкие настройки.
- Опора на интуицию: Рашка подчеркивает, что при разработке структуры курсов он руководствуется преимущественно собственным «чутьем» и личным опытом освоения информации, а не строгой педагогической литературой.
🛠️ Проектное обучение: преодоление барьеров и скрытые вызовы 5:19
В рамках университетского курса Себастьян Рашка активно внедряет командную работу над реальными проектами. В середине семестра группы из трех человек отправляют двухстраничное проектное предложение (proposal) по любой интересующей их теме, связанной с машинным или глубоким обучением, а в конце семестра презентуют результаты и оформляют их в виде полноценной 8-страничной научной статьи. Студенты могут добровольно опубликовать свои репозитории на GitHub, что, по наблюдениям преподавателя, серьезно повышает их шансы на трудоустройство, предоставляя будущим работодателям осязаемое портфолио.
Тем не менее, гость открыто выделяет несколько критических проблем и ограничений проектного подхода:
- Проблема раннего планирования. В середине семестра студенты еще не знакомы со всеми продвинутыми методами ML, из-за чего им трудно оценить техническую осуществимость своих идей.
- Сложность инфраструктуры. Обилие современных библиотек и инструментов глубокого обучения пугает новичков. Для решения этой проблемы Рашка предоставляет студентам готовые шаблоны (templates) самодостаточного рабочего кода, удаляя из них лишь ключевые логические блоки — например, функцию активации.
- Ограничения масштабирования. Проверка открытых студенческих проектов требует колоссальных временных затрат. Проверка предложений и финальных статей для потока из 70 студентов (около 23–24 групп) балансирует на грани физических возможностей преподавателя.
📊 Классический машинный анализ против нейросетей 10:36
Для начинающих специалистов главной трудностью, по словам Себастьяна Рашки, становится вовсе не выбор архитектуры модели, а первичная подготовка и форматирование данных (data wrangling). Именно поэтому в своей книге и учебных курсах он сознательно уделяет первую половину материалов классическим подходам на базе библиотеки scikit-learn и только в 11-й или 12-й главе переходит к реализации нейросетей с нуля на NumPy.
Гость констатирует, что на фоне колоссального хайпа вокруг глубокого обучения инженеры часто забывают о существовании традиционных алгоритмов. По мнению Рашки, классический ML по-прежнему незаменим в качестве надежного бэйзлайна (точки отсчета). В качестве подтверждения этого тезиса он приводит в пример платформу Kaggle, где большинство соревнований по анализу табличных данных до сих пор выигрываются с помощью градиентного бустинга XGBoost, а не нейронных сетей.
В вопросе выбора инструментов Себастьян Рашка высказывает следующие соображения:
- Языковая экосистема: Несмотря на сильные позиции языка R на кафедрах статистики, Python сегодня безоговорочно доминирует, покрывая около 95% всех реальных задач в индустрии.
- Проблема Julia: Коллеги исследователя, использующие язык Julia, хвалят его архитектуру, однако для глубокого обучения он пока не подходит из-за эффекта «курицы и яйца» — отсутствие широкого сообщества тормозит развитие зрелых библиотек. Из-за этого ученым на Julia крайне трудно сопоставлять свои результаты с референсными моделями, написанными для других экосистем.
⚡ Эволюция экосистемы Deep Learning и феномен PyTorch Lightning 15:42
Вспоминая историю развития фреймворков глубокого обучения, Рашка отмечает невероятную скорость их смены. Начиная с пионерской библиотеки Theano в 2015 году, индустрия пережила взлет TensorFlow в 2015–2016 годах, появление MXNet и Chainer, пока в 2017 году не дебютировал PyTorch. Сегодня, опираясь на статистику портала Papers with Code, исследователь оценивает долю PyTorch в научных публикациях примерно в 80%.
По признанию гостя, PyTorch может показаться более многословным (verbose) по сравнению с Keras, но для исследовательской работы он идеален, так как обеспечивает гибкий контроль при создании кастомных слоев или функций потерь. При этом для оптимизации рутинных процессов сам Рашка недавно перешел на использование PyTorch Lightning, характеризуя его не просто как фреймворк, а как полноценную платформу-надстройку.
PyTorch Lightning решает проблему «грязного» исследовательского кода. Рашке больше не нужно писать собственные циклы обучения, функции вычисления точности на тестовой выборке или интеграции с логгерами вроде Weights & Biases и TensorBoard. Код оборачивается в стандартизированный модуль LightningModule, сохраняя исходную гибкость PyTorch, но позволяя одной строчкой в Trainer задействовать параллельное обучение на нескольких GPU.
Что касается промышленной эксплуатации (deployment), Себастьян Рашка признает, что в коммерческом секторе до сих пор сильны позиции TensorFlow. Тем не менее, по его мнению, технологических барьеров для внедрения PyTorch в продакшн больше не существует. Последние обновления фреймворка, компиляция статических графов через TorchScript, использование легковесного C++ API (libtorch), механизмы квантования моделей и экспорт в универсальный формат ONNX сделали PyTorch полностью готовым к серьезному индустриальному и мобильному деплою.
🔬 Фронтир исследований: ординальная регрессия и алгоритмы CORAL / CORN 30:51
Значительная часть беседы была посвящена личной научной работе Себастьяна Рашки в области ординальной регрессии. Данный тип задач находится на стыке классической классификации и регрессии. Он применяется в ситуациях, когда целевые метки классов имеют под собой четкий естественный порядок, но расстояние между ними невозможно строго измерить в числовом эквиваленте.
В качестве примеров таких задач исследователь называет:
- Рейтинги удовлетворенности пользователей (от 1 до 5 звезд) на Amazon.
- Медицинские стадии прогрессирования заболеваний (отсутствует, умеренная, тяжелая степень).
- Оценку масштаба разрушений зданий страховыми компаниями.
Рашка объясняет, почему стандартная регрессия здесь работает неидеально, на примере разработанной его группой модели предсказания возраста по фотографии (70 классов, от 1 до 70 лет). С биологической точки зрения пятилетний интервал между 10 и 15 годами заполнен бурными изменениями в структуре костей и росте, тогда как тот же пятилетний интервал между 80 и 85 годами характеризуется лишь постепенным изменением текстуры кожи. Расстояния между классами неравномерны, и чистая регрессия сопряжена с системными искажениями. В то же время обычная мультиклассовая классификация полностью игнорирует информацию о порядке классов (ошибка между 10 и 11 годами штрафуется так же, как между 10 и 50 годами).
До недавнего времени математический аппарат ординальной регрессии был хорошо развит в классической статистике, но практически отсутствовал в практических руководствах по Deep Learning. Группа Рашки сосредоточилась на создании легких надстроек над популярными нейросетевыми архитектурами, которые программист может внедрить за 5 минут, изменив всего несколько строк кода.
В 2016 году исследователи Нью и др. (Niu et al., CVPR) предложили метод Ordinal Regression Network, который разбивал задачу на расширенную цепочку бинарных классификаций (отвечая на последовательные вопросы: «Возраст старше 1 года?», «Старше 2 лет?» и т.д.). Однако у этого метода обнаружился критический изъян — ранговая противоречивость (rank inconsistency). Модель могла выдать абсурдный ответ, заявив, что человек с высокой вероятностью старше 43 лет, но при этом не старше 42.
Для устранения этой аномалии Себастьян Рашка и его команда разработали метод CORAL (Consistent Rank Logits). С помощью введения математического ограничения на разделение весов (weight sharing constraint) в последнем слое нейросети им удалось полностью исключить вероятность возникновения ранговых противоречий, что существенно повысило точность предсказаний. Сейчас данное решение доступно в виде готового open source пакета для PyTorch. Последней же разработкой команды стал алгоритм CORN (Conditional Ordinal Regression Network), который предлагает еще более гибкую условную архитектуру и демонстрирует превосходящую эффективность, хотя, как предупреждает исследователь, требует от инженера аккуратности из-за повышенного риска переобучения (overfitting).
🚀 Новые горизонты: бесплатное образование для глобального ИТ-сообщества 40:03
В финале встречи Себастьян Рашка поделился планами, связанными с его новой ролью ведущего преподавателя в Grid AI (компании, созданной авторами PyTorch Lightning и специализирующейся на масштабировании вычислений).
Оставив часть университетской рутины, исследователь намерен направить всю свою творческую энергию на создание глобального образовательного продукта. Его ключевая цель — разработка и выпуск абсолютно бесплатного, общедоступного интерактивного онлайн-курса по машинному и глубокому обучению, который будет базироваться на экосистеме PyTorch и PyTorch Lightning. Гость рассчитывает опубликовать первые материалы курса до конца текущего года, сделав особый упор на проработку качественных практических упражнений с кодом, поскольку твердо убежден: по-настоящему освоить ИИ можно только через действие.