Дружественное руководство по машинному обучению для новичков

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

Начнем !!.

В современном мире создается много данных. Как мы можем получить полезную информацию из данных? Могут ли люди изучить эти огромные данные?, Как насчет обучения компьютера этой работе? Вот где приходит машинное обучение в. Это буквально выкапывает ЗОЛОТО из данных. Давайте разберемся в машинном обучении. 💻

ЧТО ТАКОЕ ОБУЧЕНИЕ МАШИНА?

ОПРЕДЕЛЕНИЕ УЧЕБНИКА: Машинное обучение - это приложение искусственного интеллекта (ИИ), которое дает системам возможность автоматически учиться и совершенствоваться на основе опыта без явного программирования. Машинное обучение нацелено на разработку компьютерных программ, которые могут получать доступ к данным и использовать их для обучения.

Хорошо, я понимаю, кто до сих пор заучивает концепции из учебника? 😅

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

Аналогия прояснит концепцию. Ребенок пытается выучить таблицы умножения, Учитель учит его / ее во время обучения. Вскоре после изучения математики, лежащей в основе умножения, Он / она может ответить вам даже за 1987 * 262354, Надеюсь, у вас есть возможности машинного обучения

РАЗНИЦА МЕЖДУ ОБЫЧНЫМ ПРОГРАММИРОВАНИЕМ И МАШИННЫМ ОБУЧЕНИЕМ

ОБЫЧНОЕ ПРОГРАММИРОВАНИЕ: в обычном программировании вы явно определяете правило, компьютер генерирует вывод на основе данного правила для всех вводов. номер входа. Это обычное программирование.

МАШИННОЕ ОБУЧЕНИЕ: в программировании с машинным обучением вы обучаете свой компьютер как входам, так и выходам, и ваш компьютер сообщает вам, какое правило существует между входами и выходами. Это еще один угол, чтобы взглянуть на концепцию машинного обучения.

ПРИМЕНЕНИЕ МАШИННОГО ОБУЧЕНИЯ

  1. Индустрия здравоохранения: ML используется в онкологии для обучения алгоритмов, которые могут идентифицировать раковые ткани на микроскопическом уровне с той же точностью, что и обученные врачи.
  2. Системы рекомендаций: в электронной коммерции, такой как Amazon, Flip kart, мы можем видеть рекомендации, основанные на наших предыдущих поисках.
  3. Банковское дело: при определении того, будет ли клиент неплательщиком ссуды.
  4. Телекоммуникации: чтобы определить, уходит ли клиент из компании или нет.
  5. Прогноз цены дома: чтобы оценить стоимость покупки дома на основе многих характеристик, таких как пин-код, количество спален, возраст дома, размер дома и т. Д., Все эти характеристики определяют цену дома. … !!

Список можно продолжать и продолжать ... Давайте двигаться вперед

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

Он состоит из множества «столбцов», которые будут называться «Особенности» и «Строки», которые с этого момента будут называться «Наблюдения». Интересующий элемент называется «Зависимый элемент» или «Целевой элемент», а остальные функции называются «независимыми функциями». Соглашение об именах легко понять, если вы просто задумаетесь об этом. Компьютер приобретает опыт, определяя скрытые шаблоны и правила, существующие между независимыми и зависимыми функциями.

ТИПИЧНЫЙ ПОТОК МОДЕЛИ МАШИННОГО ОБУЧЕНИЯ

  1. Подготовка данных: получение набора данных, понимание каждой функции и ее типа данных (непрерывный или дискретный)
  2. Исследовательский анализ данных (EDA): выяснение того, как каждая функция распределяется по набору данных, и выявление полезной взаимосвязи между функциями. Например, зарплата увеличивается с опытом. Все полезные идеи видны через визуализацию данных, потому что мы люди лучше визуализируют, чем понимают что-либо более глубокое.
  3. Моделирование: это этап обучения и тестирования машинного обучения. Компьютер обучен предоставлять опыт, а также тестируется на его опыте, а затем, если он точно предсказывает значения во время тестирования, модель передается бизнес-драйверам компании.

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

Шаги, связанные с EDA:

  1. Определение проблемы
  2. Идентификация метаданных (словарь данных)
  3. Описательная статистика (среднее, стандартное отклонение, медиана, мода, перекос)
  4. Дедупликация (удаление повторяющихся наблюдений в наборе данных)
  5. Обработка пропущенных значений (много раз набор данных содержит пропущенные значения, с ними нужно обращаться осторожно)
  6. Обработка выбросов (набор данных может содержать некоторые необычные точки данных, которые необходимо удалить. Например, в классе, где все получают от 60 до 70 баллов, кроме двух учеников, один из которых набрал 95, а другой - 10, тогда оба ученика считается выбросом)
  7. Разработка и преобразование функций (создание новых функций из существующих)
  8. Визуализация данных (для получения полезной информации из набора данных)

Вот некоторые из графиков, которые очень полезны при визуализации данных:

Сюжетов много, но упомянув несколько из них

МОДЕЛИРОВАНИЕ

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

Иерархия машинного обучения:

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

Контролируемое обучение

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

Обучение модели:

При обучении модели данные обычно разделяются в соотношении 80:20, т. Е. 80% как данные обучения, а остальные как данные тестирования. В обучающих данных мы подаем как входные, так и выходные данные для 80% данных. Модель учится только на обучающих данных. Мы используем различные алгоритмы машинного обучения (которые мы подробно обсудим в следующих разделах) для построения нашей модели. Под обучением это означает, что модель построит некоторую собственную логику / правило.
Как только модель будет готова, ее можно протестировать. Во время тестирования на вход поступают оставшиеся 20% данных, которые модель никогда раньше не видела, модель предсказывает какое-то значение, и мы сравним его с фактическим выходом и рассчитаем точность.

Различные алгоритмы машинного обучения для контролируемого обучения:

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

Некоторые примеры регрессии:

  1. Линейная регрессия
  2. Случайная лесная регрессия
  3. XG-буст Регрессия
  4. Машина опорных векторов и т. Д.

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

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

2. Классификация: если целевая функция имеет дискретный тип, то алгоритм, используемый для контролируемого обучения, называется «классификацией». Целью здесь также является прогнозирование значения, максимально приближенное к фактическому выходному значению, насколько это возможно в нашей модели, а затем оценка выполняется путем вычисления значения ошибки. Чем меньше ошибка, тем выше точность нашей регрессионной модели. Например, в приведенном ниже наборе данных нам нужно предсказать, будет ли предмет куплен (1) или не куплен (0), в зависимости от пола, возраста и пола.

Некоторые примеры классификации:

  1. Логистическая регрессия
  2. KNN (k-ближайшие соседи)
  3. Классификация случайных лесов
  4. Деревья решений

Просто погуглите эти алгоритмы, чтобы узнать о них больше ..

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

Неконтролируемое обучение

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

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

Алгоритм, используемый в обучении без учителя:

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

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

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

Пример кластеризации:

  1. К-означает кластеризацию

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

Вуаля !!, вот и мы….

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

  1. Python
  2. R

Сферы машинного обучения, в которых будет развиваться:

  1. Основы математики
  2. Статистика и теория вероятностей
  3. Логарифмы и интегральное исчисление
  4. программирование на Python

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

начните изучение машинного обучения.

Спасибо,

Баладжи Иллур

студент CMRIT