data science обучение с трудоустройством
Data Science: лучшие учебные курсы и программы сертификации
Можно получить два-три десятка Data Science-сертификатов, но по-настоящему стоящих программ сертификации из сферы науки о данных, по моему мнению, не так уж и много. Я хочу рассказать о нескольких таких программах, поддерживаемых авторитетными организациями. Эти программы я оцениваю по разным признакам. В частности — по объёму рассматриваемых в их рамках тем, по их «весу» в глазах потенциального работодателя, по репутации организации, реализующей программу. В последние несколько лет я являюсь и специалистом по анализу данных, и дата-сайентистом. Всё это время у меня формировалось понимание того, что сильнее всего влияет на успех человека в сфере Data Science (DS).
Здесь я рассмотрю ведущие программы Data Science-сертификации, входящие в список, собранный ресурсом Indeed. Из этого списка я выбрал четыре, которые кажутся мне наиболее достойными. Им и посвящён этот материал.
Google Certified Professional Data Engineer
Возможно, эта программа сертификации, которую я рассматриваю первой, кого-то удивит, так как она относится к сфере, отличной от Data Science. Но, несмотря на это, я уверен в том, что навыки и обязанности дата-инженера похожи на те, что характерны для дата-сайентистов. Ещё я думаю, что прохождение подобной сертификации может стать конкурентным преимуществом на рынке труда, так как дата-сайентист, получивший подобный сертификат, сможет эффективно работать не только в сфере науки о данных, но и в сфере инжиниринга данных.
Вот некоторые темы, знание которых проверяется на экзамене:
Общие сведения об экзамене:
Google Data Machine Learning Engineer
Это — ещё одна программа сертификации, которую тоже нельзя назвать программой, нацеленной исключительно на Data Science. Она, скорее, направлена на достаточно узкую тему, находящуюся в пределах науки о данных. Речь идёт о машинном обучении. Многие дата-сайентисты могут настолько привыкнуть к работе в Jupyter Notebook (ведь именно этому учат на большинстве DS-курсов), что необходимость вывода моделей в продакшн, необходимость их развёртывания на веб-сайте или в мобильной среде может вызвать у них серьёзные сложности. Поэтому тем, кто работает в сфере Data Science, весьма полезно будет ознакомиться и с вопросами практического применения моделей, что расширит их кругозор и сделает их работу эффективнее.
Вот темы, которые поднимаются на экзамене:
Общие сведения об экзамене:
IBM Data Science Professional Certificate
Это — уже не просто программа сертификации. Тут речь идёт о наборе учебных курсов, на которых можно изучить то, что проверяется во время прохождения испытаний. Эта программа сертификации, в отличие от предыдущих, ориентирована исключительно на саму науку о данных. А это, безусловно, именно та тема, которая нам особенно интересна. Ещё одной ценной особенностью этой программы является тот факт, что она подготовлена IBM, а пройти её можно на платформе Coursera. Обе эти компании известны и имеют хорошую репутацию.
Вот — 10 курсов, которые входят в состав учебной программы:
Общие сведения о программе учебных курсов:
Microsoft Certified Azure Data Scientist Associate
Как видите, в этом обзоре представлены программы сертификации от ведущих игроков IT-рынка. В их число входит и Microsoft. Если поучиться, поработать, пройти тестирование в любой из подобных компаний — это может пойти на пользу карьере дата-сайентиста. Представленная здесь программа напоминает смесь тех программ, о которых мы говорили выше. Это, с одной стороны, сертификация, но с другой — перед сертификацией тут же можно и подучиться, либо самостоятельно и бесплатно, либо — с инструктором и за деньги.
Вот темы, которые поднимаются на экзамене:
Итоги
В итоге скажу, что если вы сможете пройти все вышеописанные программы сертификации — полагаю, что вы будете более чем готовы к работе дата-сайентиста. Эти сертификации направлены на проверку знаний по популярным платформам и инструментам, а также — на проверку навыков, связанных с практическим использованием моделей. В частности, речь идёт о работе с бизнес-задачами, об анализе данных, о моделировании, о создании и развёртывании моделей. Конечно, если вы попробуете найти работу в компании, проводящей сертификацию, наличие сертификата повысит ваши шансы на успех. Подбирая себе программу сертификации учитывайте то, что те, о которых шла тут речь, я, руководствуясь собственным видением ситуации, выбрал из списка программ с ресурса Indeed. Есть ещё множество подобных программ. Вам, вполне возможно, подойдёт что-то совсем другое.
Как вы посоветовали бы учиться и сертифицироваться тому, кто хочет работать в сфере Data Science?
Самообучение в Data science, с нуля до Senior за два года
Хочу поделиться методами освоения Data science с нуля человеком из другой ИТ специальности. Цель: дать понять, подходит ли Вам эта специальность в принципе, и рассказать про эффективные подходы к самообучению, которые мне помогли (отдельно планирую потом детальные статьи по отдельным темам).
Отличные материалы уже существуют по большинству конкретных тем, я сам по ним учился.
Думаю, многим будут полезны «мета» материалы о том, как выбирать курсы и статьи, по которым учиться. Например, я пересмотрел десятки статей и книг, пробовал много разных он-лайн курсов, но полезной оказалась лишь малая часть всего доступного. Надеюсь, что смогу серьезно сэкономить вам время и помочь достигнуть большего, показав более эффективный путь самообучения.
И важно сказать сразу: я верю, что любой человек с аналитическими способностями и структурным мышлением может стать специалистом по машинному обучению/data science. Еще 4 года назад я сомневался, потеряв веру в свои математические способности из-за преподавателей университета. Теперь верю: основы машинного обучения и минимально необходимую математику сможет выучить любой сильно замотивированный человек.
Когда я понял, что скоро мне стукнет 30 лет, решил уйти в другую сферу и переехать из РФ. В своей сфере (1С) я был карьерно успешен, но стало ясно, что дальнейший рост очень затруднителен и требует выполнять работу, которая мне неинтересна и почти противна.
Через полгода перебора вариантов решил, что Data science мне интереснее всего.
Ещё через год имел достаточную квалификацию и прошёл собеседование на работу в Чехии (оговорка: у меня еще до этого было неплохое знание английского).
Ещё через год стал Senior Data scientist в Vodafone (мой LinkedIn).
Мне помогло то, что до этого я сформировал привычки к самообразованию, а экономность не позволила мне пойти по самому простому пути: найти онлайн курс с именитыми преподами, заплатить им много денег и довериться, что они всему научат лучше всего. В итоге я перебирал много бесплатно доступных книг и курсов (книги часто были найдены на b-ok.org). Из всех курсов и книг отбирал самые лучшие, забрасывая то, что казалось слишком теоретизированными или плохо структурированным.
На основе этих десятков книг и курсов я и сформировал то мнение, которым хочу поделить. Вероятно, существует еще более эффективный и быстрый способ научится этому всему. То, как учился я, было всего-лишь быстрее большинства платных программ, которые я видел, и заодно бесплатным (на многие лучшие англоязычные курсы всегда можно записаться бесплатно; покупал я только книги русских авторов и пару книг, которые иначе не смог найти).
Сначала надо понять, что такое Data science/машинное обучение и подойдет ли оно вам
Потому что если это просто модное слово и вы хотите получать много денег или работать в Гугл, то легче заработать на позиции маркетолога или веб-аналитика, и это тоже достаточно аналитичная работа.
Если вы человек творческий, возможно, разработка интерфейсов (фронтенд, мобильные приложения) вам подойдёт больше.
Если вы от природы аналитик и любите разбираться в данных, но программирование вас не заинтересует, а на изучение всей математики вам не хватает времени, стоит выбрать тот же самый учебный путь! Просто сделать акцент на мнее математических задачах, и не лезть в программироване сложных систем. Аналитики, знающие основы data science, тоже нужны в компаниях.
Важно, чтобы работа зажигала. Без искреннего интереса «грызть» Data science будет тяжело, потому что надо разобраться в куче нюансов, особенно если у вас нет за плечами хороших знаний в статистике, линейной алгебре и мат.анализе.
Как понять, будет ли вам интересно заниматься именно data science?
Мне кажется, что идеально эту роль выполняет книга Datasmart (выше писал сайт, на котором я нашёл её бесплатно). На русский она тоже переведена: «Много цифр. Анализ больших данных при помощи Excel, Джон Форман». Хотя, если вы хотите работать в data science, знание английского необходимо (технический английский выучить намного легче разговорного, и это будет очень полезно для любой работы в ИТ).
Эта книга показывет многие из технических методов Data science на уровне интуиции и даёт сразу достаточно детальное представление о решаемых задачах и где в бизнесе можно применить данные модели.
Если эта книга не вызовет интерес разобраться во всех указанных алгоритмах детальнее, вероятно, работа в data science не для вас.
Если книга интересн вызовет, но вам также хочется больше программировать, скорее всего, вам интересно будет стать machine learning engineer. Разница между data scientist и machine learning engineer в том, что первый должен общаться с людьми и понимать, какую задачу имеет смысл решать, а второй должен уметь состыковать программы с «искусственным интеллектом» с другими ИТ системами, мобильными телефонами или требованиями обрабатывать огромные объемы данных.
Что учить
Если вы решили, что готовы «грызть гранит науки», то в образовании специалиста data science есть два кита:
Непосредственные методы Data science, которые стоят на трёх математических черепахах: теории вероятностей и статистике, линейной алгебре и основах мат.анализа (только основах, там требуется минимум сверх школьного курса «алегбра и начало анализа»). Кстати, вся эта математика далеко не так сложна. Проблема в том, что её плохо и неинтересно объясняют во многих вузах. Позже поделюсь советами, как её можно легче освоить.
Программирование на Python (+SQL и подобные), которое позволит применить все изученные методы с помощью логичных и простых в своей сути библиотек готовых функций.
Даже примерный учебный план для изучения методов Data science требует отдельного поста. Ниже напишу чуть подробнее про Python и SQL
Английский необходим!
Принципы эффективного обучения
Программирование: что и как учить?
Что такое SQL и зачем его учить?
SQL является стандартом для получения данных в нужном виде из разных баз данных. Это тоже своеобразный язык программирования, который дополнительно к своему основному языку используют многие программисты. Большинство самых разных баз данных использует один и тот же язык с относительно небольшими вариациями.
Как учить SQL:
Наберите в Гугле «sql tutorial» и начните учиться по первой же ссылке. Если она вдруг окажется платной, выберете другую. По SQL полно качественных бесплатных курсов.
На русском языке тоже полно курсов. Выбирайте бесплатные.
На изучение достаточно всего лишь от 10 часов (общее понимание), до 20 часов (уверенное владение большей частью всего необходимого).
Почему именно Python?
У всех других языков программирования какие-либо специализированные библиотеки для машинного обучения есть только в зачаточном состоянии.
Как учить Python
Прочитать основы и пройти все упражнения с этого сайта можно за 5-40 часов, в зависимости от вашего предыдущего опыта.
После этого варианты (все эти книги есть и на русском):
Learning Python, by Mark Lutz (5 издание). Существует и на русском.
Есть много книг, которые сразу обучают использованию языка в практических задачах, но не дают полного представления о детальных возможностях языка.
Эта книга, наоборот, разбирает Python досконально. Поэтому по началу её чтение будет идти медленнее, чем аналоги. Но зато, прочтя её, вы будете способны разобраться во всём.
Я прочёл её почти целиком в поездах в метро за месяц. А потом сразу был готов писать целые программы, потому что самые основы были заложены в pythontutor.ru, а эта книга детально разжевывает всё.
В качестве практики берите, что угодно, когда дочитаете эту книгу до 32 главы, и решайте реальные примеры (кстати, главы 21-31 не надо стараться с первого раза запоминать детально. Просто пробежите глазами, чтобы вы понимали что вообще Python умеет).
Не надо эту книгу (и никакую другую) стараться вызубрить и запомнить все детали сразу. Просто позже держите её под рукой и обращайтесь к ней при необходимости.
Прочитав эту книгу, и придя на первую работу с кучей опытных коллег, я обнаружил, что некоторые вещи знаю лучше них.
Python Crash Course, by Eric Matthes
Automate the Boring Stuff with Python
Книга хороша примерами того, что можно делать с помощью Python. Рекомендую просмотреть их все, т.к. они уже похожи на реальные задачи, с которыми приходится сталкиваться на практике, в том числе специалисту по анализу данных.
Какие трудозатраты?
Путь с нуля до уровня владения Python, на котором я что-то уже мог, занял порядка 100ч. Через 200ч я уже чувствовал себя уверенно и мог работать над проектом вместе с коллегами.
Следующие статьи по данной теме
Для желающих могу выступить в роли ментора
Опыт обучения в Яндекс.Практикум. Можно ли вкатиться в Data Science за 8 месяцев
Недавно я завершил прохождение специализации Data Science на платформе Яндекс.Практикум и хочу написать, текст, который был бы полезен мне самому 8 месяцев назад, то есть — обзор учебной программы того, что понравилось или напротив не оправдало моих ожиданий, а также поделиться некоторыми приемами, которые могут сделать обучение эффективнее.
Почему Data Science?
Если вы читаете это, то наверняка для себя уже ответили на этот вопрос. Мне же сфера DS представляется таким глобальным конвейером по автоматизации применения научного метода — то есть по сбору наблюдений и получению из них моделей с предсказательной силой. И то, насколько Data Science изменил и еще изменит наш мир, думаю, можно сравнить изменениями, которые принесла автоматизация ручного труда. И когда эти мысли пришли мне в голову, то я решил, что очень хочу быть активным участником этих преобразований.
Бэкграунд
Мой опыт в онлайн обучении начался осенью 2018 года с попытки пройти специализацию “Машинное обучение и анализ данных” от МФТИ и Яндеса (https://datasciencecourse.ru/). Тогда, только загоревшись идеей изучить эту “чертову ИИ магию”, я решил, что вполне осилю учебу параллельно с моей текущей работой SMM менеджера. Но курс оказался мне не по зубам, думаю тут сказалась и моя низкая математическая подготовка и нулевой опыт в программировании.
Тогда я понял, что для начала необходимо подтянуть математику я взялся за прохождение онлайн курса “Современная комбинаторика” от МФТИ на Coursera (https://www.coursera.org/learn/modern-combinatorics/home/info) с замечательным харизматичным лектором Андреем Райгородским. Впервые в жизни я понял, как можно получать удовольствие от решения математических задач и кайфовать от красоты доказательств, которые можешь понять.
После этого был курс по теории вероятностей на Stepik от Computer Science Center с лектором Александром Храбровым (https://stepik.org/course/3089/syllabus). Курс тоже очень понравился, много интересных задач, решение которых отпечатывает в голове некоторое понимание того, как работают такие часто контринтуитивные штуки, как случайные величины и их распределения. И параллельно практиковался в Python по записям курса для студентов МФТИ “Алгоритмы и структуры данных на Python” от еще одного прекрасного лектора Константина Хирьянова (https://www.youtube.com/playlist?list=PLRDzFCPr95fK7tr47883DFUbm4GeOjjc0)
Заниматься удавалось в основном по вечерам и обучение шло чрезвычайно медленно, например прохождение курса по теории вероятностей, в описании которого указано 37 часов, у меня заняло около четырех месяцев. И спустя два года такого фонового обучения я начал понимать, что быстрее состарюсь чем как-то серьезно продвинусь к своей цели.
Тут, по совпадению, начало сворачиваться финансирование проекта, где я был SMM. И тогда я решил пока не искать новую работу, а снять свои накопления, которых хватало примерно на год оплаты аренды жилья и обеспечения базовых потребностей и поступить на платную специализацию по Data Science стоимостью в районе 100 тысяч рублей, с реальными преподавателями, однокурсниками и дедлайнами, чтобы уже не оставить себе вариантов отлынивать от учебы и сдавать все вовремя.
С выбором специализации я определился примерно за неделю, на самом деле подобных программ на рынке сейчас всего около трех или четырех, с примерно похожим набором курсов, но по срокам и сумме мне подходил больше всего Практикум, ну и еще подкупило то, что к подготовке программы приложила руку ШАД (Школа Анализа Данных), а это уже определенный знак качества.
Структура программы Яндекс.Практикум
Сначала в общих чертах опишу базовые единицы из которых строится курс, а потом более подробнее остановлюсь на некоторых моментах. Общая структура Специализации выглядит примерно так:
На момент моего поступления в программе было три модуля, содержащих в общей сложности: 15 курсов, 2 сборных проекта и один финальный проект. Один курс соответствует какому-то определенному навыку, которым должен обладать средний джуниор дата-сайентист. Тема — это раздел внутри курса. Каждая тема в свою очередь разбита на несколько уроков.
Например: Курс — Статистический анализ, тема — Описательная статистика, урок — Гистограммы частот.
Урок — элементарная частица специализации, состоит из теории и закрепляющей практики. Теория представляет собой пару страниц текста с примерами кода, иллюстрациями и поясняющими схемами.
В качестве практики необходимо выполнить задание в онлайн-тренажере, который представляет собой окошко с интерпретатором Python открытое в левой части того же экрана, где перед глазами находится задание и теория.
Рабочее пространство студента. Пунктирная разметка добавлена для пояснения.
В конце каждого курса необходимо выполнить самостоятельный проект в котором студент демонстрирует полученные за курс навыки и знания. Технически проект представляет собой тетрадку Jupyter Notebook, запущенную через JupyterHub развернутом на сервере Яндекса, в которой студент пишет код решения, поставленной задачи. Как правило, задача по проекту состоит из некоторого набора данных и описания того что необходимо получить в качестве результата.
Интерфейс Jupyterhub при выполнении проекта
После выполнения задания, по нажатию соответствующей кнопки тетрадка с проектом отправляется к ревьюеру, который смотрит твой код, проверяет выполнены ли задачи в полном объеме и (иногда) дает полезные рекомендации и замечания по улучшению кода.
Организация учебного процесса
Прохождение курса и выполнение проекта составляет один спринт. Чаще всего на один спринт отводится две недели — неделя на теорию и практику в тренажере и еще неделя на выполнение проекта.
Сам термин «спринт» похоже пришел из методологии разработки, таких как Agile и иже с ними. Да и в целом, насколько я могу судить, весь учебный процесс постарались завернуть в нечто приближенное к разработке продукта в IT.
Основное взаимодействие с командой программы происходит, через корпоративный мессенджер Slack, который, представляет собой что-то вроде гибрида мессенджера и классического форума, с возможностью интеграции с планировщиками заданий и прочими сервисами. При записи на программу выдается приглашение в рабочее пространство Slack для студентов потока, в рабочем пространстве созданы несколько постоянных веток:
с общей информацией по программе от команды Практикума
для обмена литературой и ссылками на материалы,
для неформального общения между студентами.
Также при открытии нового спринта создаются временные ветки по каждому курсу для обсуждений касающихся заданий в тренажёре и текущего проекта.
Cтудентов нашего потока сопровождала команда состоящая из:
Куратора, которая занималась всеми организационными вопросами;
Двух наставников — состоявшихся экспертов в предметной области, делятся опытом, проводят групповые онлайн семинары, можно сравнить с научным руководителем;
Двух преподавателей — также опытных DS специалистов, которые отвечают на вопросы по проектам и тренажеру;
Старшего студента — студента из предыдущего потока, который берет на себя часть работы по ответам на текущие вопросы;
Ревьюеров — проверяющих самостоятельные проекты
Что было круто
Подача материала. На всем протяжении программы не перестаешь ей радоваться. Сразу видно, что над контентом работала большая команда профессионалов, которые не просто дают хороший учебный материал, но еще и думаю о том, чтобы сделать его живым и человечным. Тут и забавные персонажи в иллюстрациях и тонкий юмор, как в самих заданиях, так в и текстах, которые появляются после их успешного выполнения. Надо сказать, что Практикум сделал беспроигрышную ставку, с момента прохождения бесплатной части в такую подачу влюбляешься сразу и стиль повествования ничуть не разочаровывает на протяжении всей остальной программы.
Пример иллюстрации переобученной модели к теме метрик классификации.
Данные. В каждом проекте используются реальные наборы данных, которые действительно интересно изучать, никаких тебе Титаников и набивших оскомину ирисов 🙂 Некоторые данные предоставлены партнерами Практикума, или даже собраны из данных сервисов Яндекса.
Атмосфера. Также стоит отметить непринужденный стиль всех коммуникаций начиная от Куратора до ревьюера — тут не душно 🙂
Какие ожидания не оправдались
Признаюсь, что ожидал от курса, что он будет чем-то вроде научно-популярного изложения лекций Константина Воронцова в ШАД (плэй-лист на YouTube), так чтобы основные методы машинного обучения были разобраны с нуля, с наглядными иллюстрациями и популярным языком, а в идеале мы бы еще и написали их реализации самостоятельно на Python, что называется from scratch. Сейчас я конечно понимаю, что за срок отведенный на всю программу, реализовать такое, чуть менее фантастично, чем загрузка всех знаний DS напрямую в голову через порт, как в фильме Матрица. И конечно, с такими завышенными ожиданиями некоторое разочарование меня и еще нескольких студентов моего потока таки постигло.
Тем не менее, как мне показалось, 70% из описанного ребятам из Практикума удалось. Первые два модуля практически полностью соответствовали моим ожиданиям. До какого-то момента изложение шло так, что пришедший с нуля человек, мог бы не просто научится мастерски владеть fit-predict, но еще и понимать, что там происходит внутри, просто посвящая учебе 2-3 часа в день.
В этом плане особенно понравился курс по линейной алгебре, там было даже написание модели линейной регрессии с нуля. Курс по численным методам, также продолжал держать марку, довольно подробно разобраны методы градиентного спуска и градиентного бустинга.
Но начиная с середины последнего модуля, примерно с курса Анализ временных рядов, по моим ощущениям, глубина погружения стала заметно мельчать. Наиболее поверхностно, на мой взгляд, были изложены “state of the art” — штуки, типа трансформеров и Bert моделей в обработке естественного языка и глубоких свёрточных сетей типа ResNet. Что в целом логично, материала в каждой из этих тем на отдельный модуль, если не на специализацию.
Тем не менее, на групповых зумах в онлайн-консультациях с наставниками всегда можно было задать вопрос и мы часто разбирали сложные моменты которые выходили за рамки программы. Благодаря этому задел на будущее оставался и интереса разбираться подробнее только прибавлялось.
Сейчас я немного изменил свое мнение и считаю, что в некоторых случаях, может быть не слишком плохо сначала научится применять какой-то метод, имея поверхностное представление о том, как он работает, но впоследствии разбираясь в подробнее, если это понадобится. Ведь область знаний Data Sciense настолько обширна, что пытаясь разобраться во всем с самых основ можно просто никуда не продвинуться и растратить весь энтузиазм.
Что с трудоустройством
За пару недель до конца программы студентов подключают к программе акселерации, на которой дают практические советы по тому, как составлять резюме, натаскивают на основные вопросы на собеседованиях, учат обращаться с github и писать сопроводительные письма.
Плюсы программы в том, что к проверке резюме привлекаются действующие HR специалисты, имеющие опыт в рекрутинге в области DS.
Мне удалось оценить только рекомендации по составлению резюме на HeadHunter. В ожидании финального спринта я решил параллельно начать движение в сторону трудоустройства и создав резюме в качестве теста откликнулся примерно на 10 вакансий. Основная часть компаний выслала отказ в приглашении на собеседование, но также было несколько звонков от HR, а одна компания выслала тестовое задание.
Тестовое оказалось интересным и довольно объемным. В нем был датасет из 185 таблиц без особого описания данных, а только с указанием, что это параметры оборудования и необходимо научится прогнозировать значения столбца target, обозначающего тип аварии на оборудовании. Нужно было самостоятельно разобраться с правильной постановкой задачи, выбрать метрику и учесть специфику временных рядов при формировании выборки. Задание увлекло настолько, что я уже начал опаздывать по финальному проекту в Практикуме, но спортивный азарт и пара литров кофе помогли мне справиться в срок.
В итоге по результатам тестового я попал на собеседование и нечаянно получил офер на позицию джуниора в компанию, занимающуюся IT интеграцией в нефтяной отрасли. Сложно сказать насколько этот опыт отражает, качество программы акселерации, возможно это просто некоторый выброс, но как мне показалось спрос на специалистов в DS существует, по крайней мере в Москве и если вы готовы некоторое время поработать на начальной позиции, то устроится вполне реально.
Как сделать обучение более эффективным
В направлении психологии, занимающейся изучением памяти и обучения людей есть такое понятие — желаемые трудности (https://en.wikipedia.org/wiki/Desirable_difficulty), суть феномена состоит в том, что при создании усложнений в процессе обучения материал может усваиваться лучше.
Например можно увеличивать интервалы между повторением материала и решением задачи или, например, подталкивать обучающихся к самостоятельному выводу теоремы, вместо заучивания готовых правил, работает даже написание заданий менее читаемым шрифтом. Но тут главное соблюсти баланс и не превратить свою учебу в адский стресс, ведь тогда мотивация и продуктивность могут только просесть.
В своем обучении я тоже старался применять эти техники, например:
Не смотрел подсказки к заданиям, пока не переберу все варианты, до которых могу додуматься;
Не копировал код из примеров, а старался запоминать и писать по памяти;
Не смотрел разборы сложных моментов в проектах и старался не читать спойлеры в групповом чате до отправки решения;
Для каждого курса создавал отдельный юпитер ноутбук и вел в нем полный конспект с решением задач. Это оказалось удобно еще и потому, что позволяло сэкономить кучу времени, быстро проверяя выполняется ли код, не ожидая по нескольку секунд ответа тренажера. Еще по таким конспектам бывает очень удобно освежить тему в памяти, но конечно если придерживаться метода желаемых трудностей, то лучше также стараться вспоминать все самому.
Решал проекты на локальной машине. Хотя Яндекс и предоставляет все необходимое окружение для выполнения каждого проекта, но бывает полезнее все потрогать своими руками и научится устанавливать все самому. Так, например, проходя курс по SQL я научился устанавливать spark под windows, а в курсе по компьютерному зрению сначала хорошенько попрыгал с бубном заставляя свой ноутбук использовать для вычислений графический процессор, чтобы не ждать очередь на сервер Яндекса, а потом и вовсе пришлось освоить облачный сервис Google Collaboratory который предоставляет GPU для вычислений.
Общее впечатление
Специализация по Data Science Яндекс.Практикум позиционируется как кузница джуниор дата-сайентистов, которые после прохождения могут сразу идти решать пусть и не самые сложные, но реальные задачи по извлечению добавленной стоимости из данных. По моим впечатлениям, это довольно близко к истине, но при соблюдении главного условия — параллельно с программой придется многое изучать самостоятельно и разбираться в том что кажется непонятным. Если изначально подходить к этой программе с таким настроем, и закладывать время на дополнительные занятия и эксперименты, то можно максимизировать пользу от обучения и избежать разочарований.
Вот и все, что хотел рассказать про свои впечатления о Практикуме, надеюсь что кому-то этот текст будет полезен. А если интересно продолжение, как будет складываться мой дальнейший путь в DS, то подпишитесь на меня тут, это замотивирует меня почаще что-нибудь публиковать. И главное, не бойтесь сложностей и ошибок, ведь они добавляют разметку жизненного опыта в датасет, на котором обучаются нейронные сети вашего мозга.