На чём вузы и онлайн-школы учат специалистов по ML. 4 основных продукта
Узнали у вузов и EdTech-проектов, как они учат студентов на курсах по машинному обучению. Рассказываем про главные инструменты, которые нужно освоить, если вы хотите стать специалистом по ML.
Что говорят преподаватели
Мы опросили восемь представителей разных учебных заведений. Сервисов для практических занятий много, но среди них нет универсальных и всеобъемлющих. Поэтому преподаватели комбинируют разные решения, и у каждого свой рецепт.
Программный директор профессии «Аналитик данных» Skillbox Максим Кулаев рассказал, что особую роль в обучении будущих IT-специалистов играют опенсорс-решения. «Все они требуют от учащихся разной предварительной подготовки. Благодаря разнообразию удаётся плавно переходить от простого к более сложному», — отметил он.
Авторам курсов по ML важно, чтобы студенты учились в тех же средах, в которых им предстоит работать, — это учитывается при выборе инструментов. Собеседники назвали около десятка разных сервисов, которыми они пользуются, но самыми популярными оказались четыре.
1. Jupyter Notebook
Это по-прежнему базовый инструмент для дата-сайентистов. Его полюбили за саму концепцию ноутбуков — формата работы с исходным кодом. Он позволяет запускать разные фрагменты кода без компиляции и деплоя, то есть без развёртывания на доступной для пользователя платформе.Это оказалось особенно полезно для специалистов по ML. Jupyter позволяет им проводить эксперименты быстро и без лишних этапов. Можно обучить модель на небольшой выборке и сразу посмотреть результат, затем поменять параметры и провести новый эксперимент — и так до оптимального итога.
Но у такого подхода есть и обратная сторона.
Jupyter, как правило, работает локально, то есть его устанавливают на лабораторные компьютеры и ноутбуки или студенты загружают его на свои машины.
2. Google Сolab и Kaggle
Google Сolab — это облачная среда для работы с кодом. Она поддерживает актуальные версии библиотек и окружений, так что подходит практически для любых действий по обучению моделей.
Главный плюс этого инструмента — он бесплатный. Также его хвалят за заранее собранное окружение, которое подойдёт для большинства задач. Среди минусов — отсутствие файловой системы (вместо неё Google предлагает Диск) и ограниченная функциональность.
Интерфейс Google Сolab
В паре с Сolab часто используют другую часть экосистемы Google — сервис Kaggle. Это платформа для соревнований между дата-сайентистами. Там организуют конкурсы по исследованию данных. Также это своего рода социальная сеть для специалистов по обработке данных и машинному обучению.
Например, в Институте информационных технологий и интеллектуальных систем Казанского федерального университета (ИТИС КФУ) на Kaggle разбирают материалы образовательных курсов. По словам преподавателей, там собраны отличные практики решения задач в рамках ML-проектов и методы объяснения моделей.
О той же проблеме говорят и в других вузах.
3. DataProc и Apache Spark
Для машинного обучения специалистам нужно обрабатывать большие объёмы данных — до десятков терабайт. Чтобы прогнать их все через одну машину, нужно несколько дней.
Всё меняет модель MapReduce, когда объём данных делится между кластером машин и все они выполняют свой кусок работы параллельно с другими. Тогда на всё уйдёт пара часов. Сделать это можно в сервисах DataProc и Spark.
Инструменты типа DataProc и Apache Spark считаются продвинутыми — часто для машинного обучения просто не требуется такой большой объём данных. Но профи, конечно, такими инструментами владеть должны.
4. Yandex DataSphere
Мы в Yandex Cloud тоже создаём собственные сервисы для ML-разработки. Основная особенность DataSphere в том, что сервис работает по serverless-технологии: он обеспечивает близкую к 100 % утилизацию железа. То есть пользователь платит только за время вычислений, а оборудование никогда не стоит без дела.
Другой плюс — интеграция с другими инструментами, важными для ML-разработки. В частности, с тем же DataProc.
Кроме того, в DataSphere удобно работать командам: гибкая модель сущностей позволяет настроить контекст как для команды разработки, так и для студенческой группы. Дальше можно настраивать видимость ещё детализированнее, например выкладывать общие задания для всех студентов, но скрыть их проекты друг от друга.
Антон Наумов из ШАДа отметил, что большой плюс DataSphere — собственная файловая система. Благодаря этому можно сохранять результаты вычислений и проект в целом. Так что не приходится каждый раз настраивать окружение — в отличие, например, от Colab, где проект нужно всегда разворачивать на новом железе.
Есть и недостатки. Антон рассказал, что иногда в сервис сложно добавить необходимые для работы пакеты, — приходится придумывать обходные пути. По его словам, бывали и проблемы с доступом к машинкам, когда много людей одновременно выполняли задание. Мы уже работаем над тем, чтобы новые машины выделялись быстрее, а ещё упрощаем сборку среды.
Комментарии от команды Yandex Cloud
По мнению наших специалистов, получившийся набор из четырёх сервисов выглядит логичным и сбалансированным.
Представитель МФТИ и ШАДа Никита Волков рассказывал, что в его вузе хотели воспользоваться DataSphere, чтобы предоставить студентам доступ к GPU, но инструмент был слишком дорогим. С такой проблемой столкнулись не только в МФТИ, и мы придумали, как её решить.
Подписывайтесь на блог Yandex Cloud, чтобы узнавать еще больше новостей и историй об IT и бизнесе.
Другие истории наших партнеров и клиентов, которые активно читают наши подписчики:
Комментарий удален модератором