Учебники

4) Машинное обучение против глубокого обучения

Что такое ИИ?

Искусственный интеллект передает когнитивные способности машине. Ориентиром для ИИ является человеческий интеллект в отношении рассуждений, речи и видения. Этот ориентир далек в будущем.

ИИ имеет три разных уровня:

  1. Узкий ИИ : искусственный интеллект считается узким, когда машина может выполнять определенную задачу лучше, чем человек. Текущее исследование ИИ уже здесь
  2. Общий ИИ : Искусственный интеллект достигает общего состояния, когда он может выполнять любую интеллектуальную задачу с тем же уровнем точности, что и человек.
  3. Активный ИИ : ИИ активен, когда он может побить людей во многих задачах.

Ранние системы ИИ использовали сопоставление с образцом и экспертные системы.

В этом уроке вы узнаете

Что такое ML?

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

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

Что такое глубокое обучение?

Глубокое обучение — это компьютерная программа, которая имитирует сеть нейронов в мозге. Это подмножество машинного обучения и называется глубоким обучением, потому что оно использует глубокие нейронные сети. Машина использует разные слои для изучения данных. Глубина модели представлена ​​количеством слоев в модели. Глубокое обучение — это новое состояние с точки зрения ИИ. В глубоком обучении этап обучения осуществляется через нейронную сеть. Нейронная сеть — это архитектура, в которой слои расположены друг над другом

Процесс машинного обучения

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

В этом примере классификатор будет обучен определять, является ли изображение:

  • велосипед
  • Лодка
  • Машина
  • Самолет

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

Эта задача называется контролируемым обучением. В контролируемом обучении данные обучения, которые вы вводите в алгоритм, содержат метку.

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

  • Собирать данные
  • Тренируй классификатор
  • Делать предсказания

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

Каждое изображение представляет собой строку в данных, а каждый пиксель представляет собой столбец. Если ваше изображение имеет размер 28×28, набор данных содержит 784 столбца (28×28). На рисунке ниже каждое изображение было преобразовано в вектор признаков. Метка сообщает компьютеру, какой объект находится на изображении.

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

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

Глубокий учебный процесс

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

Рассмотрим тот же пример изображения выше. Учебный набор будет подан в нейронную сеть

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

Автоматизация извлечения объектов с использованием DL

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

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

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

Глубокое обучение решает эту проблему, особенно для сверточной нейронной сети. Первый слой нейронной сети изучит мелкие детали из картинки; следующие слои будут объединять предыдущие знания, чтобы сделать более сложную информацию. В сверточной нейронной сети извлечение признаков выполняется с использованием фильтра. Сеть применяет фильтр к изображению, чтобы увидеть, есть ли совпадение, т. Е. Форма объекта идентична части изображения. Если есть совпадение, сеть будет использовать этот фильтр. Поэтому процесс извлечения признаков выполняется автоматически.

Разница между машинным обучением и глубоким обучением

Машинное обучение

Глубокое обучение

Зависимости данных

Превосходные характеристики для небольшого / среднего набора данных

Отличная производительность на большом наборе данных

Аппаратные зависимости

Работа на бюджетной машине.

Требуется мощный компьютер, желательно с графическим процессором: DL выполняет значительное количество умножения матриц

Характеристика техники

Необходимо понимать особенности, которые представляют данные

Не нужно понимать лучшую функцию, которая представляет данные

Время исполнения

От нескольких минут до часов

До недели. Нейронная сеть должна вычислить значительное количество весов

Интерпретируемость

Некоторые алгоритмы легко интерпретировать (логистика, дерево решений), некоторые почти невозможно (SVM, XGBoost)

Трудно невозможно

Когда использовать ML или DL?

В таблице ниже мы суммируем разницу между машинным обучением и глубоким обучением.

Машинное обучение Глубокое обучение
Учебный набор данных Маленький большой
Выберите функции да нет
Количество алгоритмов Многие Несколько
Время обучения короткий Длинный

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

Резюме

Искусственный интеллект передает когнитивные способности машине. Ранние системы ИИ использовали сопоставление с образцом и экспертные системы.

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

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