Вы тоже постоянно думаете, чему научиться дальше? Пусть ISLR станет следующим учебником, который вы прочитаете, - обзором и советами по изучению.

Пару месяцев назад я почувствовал, что мои основы машинного обучения слишком шаткие. Я хотел запустить Kaggle, но был слишком запуган всеми доступными методами. Я хотел изменить это как можно эффективнее и нашел хорошее решение. Я рада поделиться им с вами сейчас!

В этой статье я расскажу вам о своем опыте работы с учебником Введение в статистическое обучение в R (сокращенно ISLR). Я надеюсь, что это поможет вам понять, стоит ли вам также заняться этим, и я также поделюсь некоторыми советами, которые сделают вашу учебу более эффективной.

Почему я выбрал ISLR

Я начал свой путь к машинному обучению около года назад - когда мне стало скучно, я прошел знаменитый Курс машинного обучения на Coursera Эндрю Нг. Хотя мне понравился курс и он дал мне основу для работы, я чувствовал, что мне нужна дополнительная помощь и руководство, чтобы использовать полученные знания на практике. Я хотел изучить больше техник, таких как случайные леса, получить больше информации о том, когда использовать какой алгоритм и как на самом деле реализовать их в Python. Я хотел запустить Kaggle, поэтому решил пройти курсы Kaggle Learn. Я довольно быстро разочаровался, когда одно из первых руководств Kaggle Learn было о реализации дерева решений, но не объяснило, что это такое и как оно работает под капотом. . После получаса лихорадочного поиска и чтения множества сообщений в блогах, которые на самом деле ничего не объясняют, я решил, что мне нужно что-то, где знания были бы более подробными и организованными, - учебник.

Выбирая учебник, я искал следующее:

  • Уровень вводного / бакалавриата, легкий для понимания и не предназначенный для аспирантов
  • Подробно разбирается в математике, но также объясняет интуицию.
  • Знакомит с множеством различных техник машинного обучения, которые Нг не охватил
  • Практичный, содержит упражнения по программированию, чтобы реализовать то, что я узнал
  • Срок выполнения - 2–3 месяца.

После нескольких глубоких погружений в Reddit (присоединяйтесь к r / learnmachinelearning) я обнаружил, что наиболее рекомендуемая книга вводного уровня кажется ISLR. Он также удовлетворял всем требованиям, которые я искал, поэтому я попробовал.

Все о ISLR

Эта книга хороша тем, что она бесплатно для загрузки с авторского сайта. Вы можете просто взглянуть и решить, нравится вам это или нет, прежде чем посвятить себя дорогому учебнику. Тем не менее, я рекомендую получить физическую копию для работы с ним.

Как сказано в названии, ISLR знакомит с методами статистического обучения с примерами и упражнениями на R. Но что такое статическое обучение? Книга определяет его как обширный набор инструментов для понимания данных «В общем, между Статистикой и ML идет борьба, об этом читайте в« очень занимательном посте . Что касается этой книги, есть небольшое культурное отличие от обычных ресурсов машинного обучения, иногда другая терминология (например, лассо / гребень вместо L1 / L2), некоторые акценты на классических концепциях статистики (например, p-значения и проверка гипотез), но в основном он объясняет методы, которые обычно можно классифицировать как алгоритмы машинного обучения, такие как регрессия, SVM, древовидные методы и концепции обучения без учителя.

Эта книга была разработана, чтобы быть доступной для людей из разных сфер деятельности и разного уровня подготовки, которым необходимо работать с данными в своей профессии, не имея при этом математического образования университетского уровня. Книга не предполагает более обширной математической подготовки, чем вводный курс математики , в ней не используются матрицы или векторы. обозначение для простоты. Он также не предполагает наличия предыдущего опыта работы с R и подробно объясняет каждую строку кода, включая написание функций и построение графиков.

ISLR разделен на 10 глав, начиная с вводной главы, объясняющей нотацию, компромисс смещения / дисперсии, и вводя R. После первой главы все последующие главы посвящены выбранной технике , постепенно переходя от линейной регрессии к более сложным концепциям, таким как случайные леса и иерархическая кластеризация. В конце каждой главы есть лабораторные работы, которые проведут вас через применение методов, описанных в главе, а также дальнейшие концептуальные упражнения и упражнения по кодированию, чтобы углубить ваше понимание.

В каждой главе основное внимание уделяется высокоуровневому пониманию концепции и хорошей интуиции. Я обнаружил, что количества деталей было достаточно для того, для чего мне была нужна книга, чтобы уверенно использовать реализацию метода в моих собственных проектах. В нем сравниваются похожие методы, перечисляются плюсы и минусы, а также приводятся примеры, когда один метод лучше другого. Авторы иллюстрируют каждый метод простыми наборами данных и правдоподобными примерами из реальной жизни, что еще больше помогает интуиции. Мне особенно понравились красочные графики и графики почти на каждой странице - всякий раз, когда объясняется что-то новое, есть график для иллюстрации концепции на основе данных.

Кому рекомендуется ISLR?

Я думаю, вы определенно получите много пользы от чтения книги, если применимо любое из следующего:

  • вам нужен единый источник информации для объяснения основ наиболее популярных методов машинного обучения вместо того, чтобы тратить уйму времени на поиск соответствующих статей и руководств разного качества.
  • вы хотите использовать Kaggle, но вас пугают все доступные методы машинного обучения для использования с вашими данными
  • вы знаете, как работают алгоритмы в теории, но не знаете, как их реализовать
  • вам нужен подготовительный учебник, объясняющий интуицию, прежде чем переходить к тяжелым учебникам по математике для выпускников
  • вы хотите напомнить себе о математике, лежащей в основе алгоритмов, перед собеседованием по Data Science. По словам некоторых моих друзей, материал в этой книге был очень полезен (и достаточен) для нескольких онлайн-собеседований с выпускниками Data Scientist.

Несколько советов

Перенос ISLR на Python

Эта книга написана на языке R, и многие люди (включая меня) не используют R в своих проектах по науке о данных. Однако, если вы, как и я, являетесь членом команды Python, эта книга по-прежнему великолепна. Вы можете прочитать его и принять вызов: решите лабораторные работы на Python вместо R.

Это дает вам основу для практики теоретических концепций, следуя упражнениям, но с меньшим количеством рук: вы не можете просто повторно ввести код R для выполнения лабораторных работ, вы должны сначала выяснить, как их выполнять. Это будет означать углубление в документацию библиотек Numpy, scikit-learn и StatsModels и понимание параметров в каждой функции, чтобы получить то же поведение, что и в R. Честно говоря, это дало мне по крайней мере столько же преимуществ, сколько читал книгу.

Хорошо то, что если вы застряли, вы всегда можете просто найти решение другого, поскольку многие люди уже это сделали. (Вот мой репозиторий GitHub с лабораториями Python, но вы всегда можете просто погуглить ISLR in Python и найти с десяток других репозиториев.)

Сертифицированный онлайн-курс + видео

Я предпочитаю книги видео, но мы все разные. Если вы лучше учитесь по видео, вам не о чем беспокоиться - авторы записали курс на основе этой книги, чтобы дополнить ваше чтение. Ссылка на 15-часовой плейлист Youtube находится здесь.
Если вы получите больше мотивации, работая над сертификатом, вы можете купить, чтобы показать это в своем резюме, такая возможность также существует. Стэнфорд предлагает курс здесь, на edX с дополнительными упражнениями и отзывами, если вы решите приобрести сертификат.

Период времени

Если вы хотите держать себя подотчетным, вот примерное решение, которое вы можете поставить перед собой, чтобы дочитать книгу:

  • По моим оценкам, книгу можно закончить за 10 недель, с примерно 5–6 часами работы в неделю (8–10, если вы переносите на Python самостоятельно).
  • Просмотр текста главы занимает около 2 часов, если вы делаете заметки, полчаса на концептуальные упражнения, один час на лабораторную работу на R (или до 4 часов на Python для меня) и 1-2 часа на упражнения по кодированию. Конечно, есть главы короче и длиннее, но это моя приблизительная средняя оценка.

Работа с учебником в одиночку может немного демотивировать - никаких напоминаний и красных всплывающих окон, как на онлайн-курсах. Я рекомендую вам поставить себе цель закончить каждую главу к определенной дате, чтобы сохранить мотивацию. Это настолько популярная книга, что вы, вероятно, сможете найти на Reddit некоторых друзей по подотчетности.

Что делать дальше?

Если вы прочитали книгу, вам будет удобнее применять методы машинного обучения для решения выбранных вами задач. Вы, вероятно, готовы начать экспериментировать с наборами данных и практиковаться в Kaggle, если вам интересно. Я рекомендую начать с Табличных игровых площадок, если вы хотите получить легкое соревнование. С этими наборами данных легко работать, они не требуют много вычислительных ресурсов и идеально подходят для опробования различных простых моделей. Я искренне рекомендую статью Постепенное приближение к Kaggle от Рохана Рао, если вы хотите узнать больше об этом.

Если вам просто не хватает математики, которую вы изучили в ISLR, и у вас есть прочный фундамент по линейной алгебре и исчислению, я рекомендую вам пойти и проверить Элементы статистического обучения (ESL) . ISLR технически является вводной книгой в ESL, которая намного больше включает в себя математику, и предназначена больше как справочник для аспирантов и исследователей, чем то, что вы только что прочитали.

Что бы вы ни решили делать дальше, я надеюсь, что этот обзор был вам полезен, и желаю удачи в вашем пути к машинному обучению!

Первоначально опубликовано на https://alexandrasouly.github.io 25 апреля 2021 г.