Обзор курса: Машинное обучение AZ - Практический Python и R в области науки о данных

Предисловие Каждый день мы сталкиваемся с постоянными инновациями во многих областях, и стремительный рост в области вычислений предлагает нам различные технологии. Мы генерируем более 2 эксабайт данных каждый день, что слишком сложно для обработки одними лишь человеческими усилиями. Инженеры всего мира разработали средства автоматизации для выполнения таких упражнений. Следующим шагом в этом процессе является машинное обучение, которое позволяет компьютерным алгоритмам принимать решения

Предисловие

Каждый день мы сталкиваемся с постоянными инновациями во многих областях, и огромный рост в области вычислений предлагает нам различные технологии. Мы генерируем более 2 эксабайт данных каждый день, что слишком сложно для обработки одними лишь человеческими усилиями. Инженеры всего мира разработали средства автоматизации для выполнения таких упражнений. Следующим шагом в этом процессе является машинное обучение, которое позволяет компьютерным алгоритмам принимать обоснованные решения в определенных сценариях.

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

Просматривая существующие учебные материалы по машинному обучению и его приложениям, я наткнулся на отличный онлайн-курс по Udemy: Machine Learning AZ: практический Python и R в науке о данных,{.udemy-link} подготовленный Кириллом Еременко и Хаделин де Понтевес.

Инструкторы

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

Кирилл Еременко

Кирилл Еременко,{.udemy-link} эксперт в области анализа данных и форекс-трейдинга, имеет более чем 5-летний опыт работы в различных отраслях, включая финансы, розничную торговлю и транспорт. Он также хорошо разбирается в больших данных, работает консультантом и проводит курсы по Udemy через SuperDataScience Team{.udemy-link} .

Получив диплом по физико-математическим наукам, Кирилл сочетает свой профессиональный опыт с академическим образованием и предлагает отличные курсы для энтузиастов обучения. В последнее десятилетие он также увлекается торговлей на валютном рынке, поскольку это дает ему чувство личной и финансовой независимости. Это в сочетании со знанием науки о данных дает ему преимущество в области алгоритмической торговли. Как аналитик, он хорошо разбирается в закономерностях в процессах и человеческом поведении. Для этого он использует различные технологии, такие как создание сценариев, Java и MQL4.

Хаделин де Понтевес

Увлеченный искусственным интеллектом, Хаделин де Понтевес{.udemy-link} любит проводить курсы по таким темам, как машинное обучение, глубокое обучение и искусственный интеллект. Он имеет степень магистра в области науки о данных и большой опыт в области машинного обучения. Он работал с командой ИИ в Google над внедрением моделей машинного обучения для бизнес-аналитики.

В настоящее время он посвящает все свое время проведению различных курсов для учащихся и делится знаниями, которые он получил благодаря своему опыту. Он обладает уникальным сочетанием аналитических навыков и творческих способностей, что проявляется в его курсах. К тому же, как говорится в подкасте курса, он спит всего 3 часа в день, и он делал это последние 3 года! Вы встречали кого-нибудь еще, кто это делает? Поговорим о страсти к своей работе!

Обзор

Курс охватывает 285 лекций, а его продолжительность составляет около 41 часа. Целевая аудитория включает учащихся всех уровней, от новичка до продвинутого. На момент написания этой статьи более 290 тысяч студентов прошли курс по Udemy,{.udemy-link} что обеспечивает достоверность его содержания.

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

Чтобы понять и реализовать модели машинного обучения, инструкторы используют Python и R, два популярных языка программирования, обычно используемых в области науки о данных. Учащиеся могут выбрать язык по своему выбору и пропустить другой, либо они могут попробовать оба. В результате преподаватели не только вместе с учащимися знакомятся с концепциями машинного обучения, но и с этими языками программирования. Требуется много обучения!

Контур

Преподаватели стараются сделать курс увлекательным для учащихся. Курс начинается с вводного занятия, на котором объясняются приложения машинного обучения, а затем переходит к установке сред выполнения Python и R. IDE, выбранные для курса, - это Anaconda для Python и R Studio для программирования R. Последние версии используются для всех установок.

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

Часть 1 - Предварительная обработка данных

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

Преподаватели также изучают некоторые основы Python при условии, что учащиеся не имеют предварительных знаний о языке.

В курсе организованы необходимые библиотеки для импорта для Python и R по отдельности. Однако наборы данных являются общими для обоих языков.

Часть 2 - Регресс

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

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

Часть 3 - Классификация

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

Чтобы понять вариант использования каждой модели, в конце части суммируются плюсы и минусы каждой схемы классификации.

Часть 4 - Кластеризация

Как следует из названия, кластеризация выполняет группировку набора данных на основе различных параметров.

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

Часть 5 - Изучение правил ассоциации

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

Часть 6 - Обучение с подкреплением

Также известное как онлайн-обучение, обучение с подкреплением наблюдает за данными до определенного интервала времени и определяет курс действий на следующий.

Метод RL, особенно используемый в ИИ для тренировочных машин, представляет собой метод проб и ошибок, который награждает ИИ за желаемые результаты, а в противном случае наказывает. Это достигается с помощью моделей верхней границы достоверности и выборки Томпсона.

Часть 7 - Обработка естественного языка

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

Под капотом алгоритмы НЛП представляют собой не что иное, как модели классификации, такие как логистическая регрессия, наивный байесовский анализ, тележка и максимальная энтропия (связанные с деревьями решений) и скрытые марковские модели.

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

Часть 8 - Глубокое обучение

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

Раздел охватывает искусственные и сверточные нейронные сети.

Часть 9 - Уменьшение размерности

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

Существует 2 типа визуализаций уменьшения размерности: выбор признаков и извлечение признаков. Выбор функций включает в себя такие методы, как обратное исключение, прямой выбор, сравнение оценок и многое другое. Поскольку они уже описаны в разделе «Регрессия», этот конкретный раздел посвящен методологиям извлечения признаков, таким как анализ основных компонентов , лунный дискриминантный анализ, ядерный PCA и квадратичный DA.

Часть 10 - Выбор модели и улучшение

Изучив все эти модели в предыдущих разделах, вполне можно запутаться в выборе конкретной модели для той или иной ситуации. В этом разделе обсуждаются методы выбора модели, такие как перекрестная проверка в k-кратном размере, настройка параметров и поиск по сетке .

Кроме того, курс завершается бонусным разделом, посвященным одной из мощных и популярных моделей машинного обучения - XGBoost .

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

Курс также предоставляет учащимся дополнительные наборы данных и шаблоны кода для игры - создавайте свои собственные модели машинного обучения!

Что сработало хорошо

Вот некоторые положительные моменты в этом курсе:

  • Знакомство с инструкторами: Курс отличается тем, что иногда Кирилл и Хаделин проводят интервью со студентами через подкаст. Они изучают свой опыт и общий обзор курса. Кто хочет больше узнать о предложениях курса, я полагаю, что подкаст станет хорошей отправной точкой. Кроме того, это довольно неформальный характер, поскольку они также рассказывают о проектах, которыми они сейчас занимаются, и других курсах, проводимых ими, таких как Deep Learning AZ: практические искусственные нейронные сети{.udemy-link} .

  • Интерактивные упражнения. Еще один интересный аспект курса: упражнения предназначены не только для того, чтобы учащиеся закончили и забыли. Ожидается, что они опубликуют свое решение инструкторам через раздел вопросов и ответов или в личном кабинете, в основном инициируя канал разговора, где решение будет не только оценено, но и обсуждено.

  • Комплексный раздел вопросов и ответов: поскольку многие люди уже прошли этот курс, в разделе вопросов и ответов рассматриваются наиболее часто встречающиеся проблемы. Я сам смог решить проблему, возникшую во время установки, выполнив действия, указанные в разделе «Вопросы и ответы»!

Что можно улучшить

Что касается всего, у курса есть несколько направлений для улучшения:

  • Поскольку концепции машинного обучения, как правило, носят в основном технический характер, некоторым из учащихся кривая обучения может показаться слишком крутой, особенно для первых нескольких разделов. Хотя в этом больше обвиняют ML как область, а не курс, предварительные условия просто говорят о математике на уровне средней школы, поэтому новички могут быть немного ошеломлены широтой и глубиной понятий. Курс может либо предполагать, что учащиеся заранее освежат некоторые из требуемых концепций, либо начальные разделы могут быть разделены на подразделы, чтобы учащимся было легче усвоить концепции.

Резюме

В заключение, курс проливает свет на большинство концепций машинного обучения и знакомит учащихся с необходимой инфраструктурой, чтобы самостоятельно исследовать эту область. Плюсы машинного обучения AZ: практический Python и R в науке о данных{.udemy-link} перевешивают незначительные улучшения, и я, несомненно, порекомендую курс для учащихся, интересующихся областью машинного обучения.

comments powered by Disqus