Понимание алгоритмов машинного обучения Подробный обзор

Обзор алгоритмов машинного обучения

 

Машинное обучение. Довольно впечатляющая группа слов, не так ли? Поскольку искусственный интеллект и его инструменты, такие как ChatGPT и Bard, сейчас на пике популярности, пришло время погрузиться глубже и изучить основы.

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

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

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

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

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

Но, конечно же, как можно выбрать лучший алгоритм, который будет соответствовать вашим потребностям? Конечно, понимание таких концепций, как “понимание данных” или “определение вашей проблемы”, поможет вам справиться с возможными проблемами и преградами в вашем проекте.

Давайте начнем путешествие в мире машинного обучения!

 

Категории машинного обучения

 

Когда мы исследуем машинное обучение, мы видим, что существуют три основные категории, которые формируют его основу.

  • Обучение с учителем
  • Обучение без учителя
  • Обучение с подкреплением.

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

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

Представьте себя, учащимся без наставника; это должно быть пугающе. Методы обучения без учителя особенно это делают, делая предсказания без меток.

Они смело идут в неизведанное, открывая скрытые закономерности и структуры в немаркированных данных, подобно исследователям, обнаруживающим потерянные артефакты.

Примерами обучения без учителя являются понимание генетической структуры в биологии и сегментация клиентов в маркетинге.

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

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

 

Типы машинного обучения

 

Здесь мы разделим алгоритмы машинного обучения на три подраздела. Эти подразделы – классификация, регрессия и кластеризация.

 

Классификация

 

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

 

Регрессия

 

Регрессия – следующий шаг; думайте о нем как о попытке предсказать числовые переменные.

Цель в этой ситуации – предсказать определенную переменную, такую как стоимость недвижимости, учитывая ее характеристики (количество комнат, местоположение и т. д.).

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

 

Кластеризация

 

Теперь мы подходим к кластеризации, которая сравнима с организацией неупорядоченной одежды. Даже если у вас нет заранее заданных категорий (или меток), вы все равно объединяете родственные объекты.

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

Давайте рассмотрим некоторые популярные алгоритмы, выполняющие эти задачи, потому что есть еще много интересного для исследования!

 

Популярные алгоритмы машинного обучения

 

Здесь мы подробнее рассмотрим популярные алгоритмы машинного обучения, такие как Деревья решений, Метод опорных векторов, Метод ближайших соседей и Линейная регрессия.

 

A. Дерево решений

 

 

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

Метод дерева решений в области машинного обучения задает серию бинарных вопросов о данных (например, “Идет ли дождь?”), пока не будет принято решение (продолжить сбор данных или остановить его). Этот метод очень полезен, когда нам нужно понять логику предсказания.

Если вы хотите узнать больше о деревьях решений, вы можете прочитать статью “Деревья решений и алгоритм случайного леса” (практически дерево решений на стероидах).

 

B. Метод опорных векторов (SVM)

 

 

Представьте себе ситуацию, похожую на Дикий Запад, где целью является разделение двух враждующих групп.

Чтобы избежать конфликтов, мы выбрали бы самую большую практическую границу; именно это делают методы опорных векторов (SVM).

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

Здесь вы можете найти больше информации о SVM.

 

C. Метод ближайших соседей (KNN)

 

 

Далее идет дружелюбный и общительный алгоритм – Метод ближайших соседей (KNN).

Представьте, что вы переехали в новый город и пытаетесь понять, насколько он тихий или оживленный.

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

Аналогично этому, Метод ближайших соседей классифицирует новые данные в соответствии с аргументами, такими как k, его ближайших соседей в наборе данных.

Здесь вы можете узнать больше о KNN.

 

D. Линейная регрессия

 

 

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

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

Это предпочтительный подход для прогнозирования числовых значений, таких как стоимость недвижимости или значения на фондовом рынке.

Чтобы узнать больше о линейной регрессии, вы можете прочитать эту статью.

 

Выбор правильной модели машинного обучения

 

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

 

A. Понимание ваших данных

 

Рассмотрите ваши данные как карту сокровищ, которая содержит подсказки о лучшем алгоритме.

  • Есть ли метки на ваших данных? (Обучение с учителем или без учителя)
  • Сколько функций они включают? (Нужно ли сокращение размерности?)
  • Они категориальные или числовые? (Классификация или Регрессия?)

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

 

B. Определите свою проблему

 

Представьте себе, что вы пытаетесь забить гвоздь отверткой; не очень эффективно, не так ли? 

Правильный “инструмент” или алгоритм можно выбрать, четко определив свою проблему. Ваша цель – выявить скрытые закономерности (кластеризация), прогнозировать категорию (классификация) или метрику (регрессия)?

Для каждого типа задачи существуют совместимые алгоритмы.

 

C. Учтите практические аспекты

 

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

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

 

D. Никогда не недооценивайте оценку

 

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

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

 

Вывод

 

Мы преодолели довольно длинный путь, не так ли?

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

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

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

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

Помните, что учиться, экспериментировать и совершенствоваться важнее, чем всегда делать все правильно с первого раза.

Поэтому готовьтесь, надевайте шляпу дата-сайентиста и отправляйтесь в свое собственное приключение в области машинного обучения!     Nate Rosidi – это дата-сайентист и стратег в области продуктов. Он также является преподавателем, преподающим аналитику, и основателем StrataScratch, платформы, помогающей дата-сайентистам подготовиться к собеседованиям с реальными вопросами от ведущих компаний. Свяжитесь с ним в Twitter: StrataScratch или LinkedIn.