Что такое ИИ?
AI (искусственный интеллект) - это отрасль компьютерных наук, в которой машины программируются и получают когнитивные способности думать и имитировать действия, подобные людям и животным. Эталоном для искусственного интеллекта является человеческий интеллект в отношении рассуждений, речи, обучения, видения и решения проблем, а это далеко в будущем.
AI имеет три разных уровня:
- Узкий ИИ : считается, что искусственный интеллект узок, если машина может выполнять конкретную задачу лучше, чем человек. Текущее исследование ИИ уже здесь
- Общий ИИ : искусственный интеллект достигает общего состояния, когда он может выполнять любую интеллектуальную задачу с тем же уровнем точности, что и человек.
- Активный ИИ : ИИ активен, когда он может победить людей во многих задачах.
Ранние системы искусственного интеллекта использовали сопоставление с образцом и экспертные системы.
В этом руководстве вы узнаете:
- Что такое ИИ?
- Что такое ML?
- Что такое глубокое обучение?
- Машинное обучение
- Процесс глубокого обучения
- Автоматическое извлечение признаков с помощью DL
- Разница между машинным обучением и глубоким обучением
- Когда использовать ML или DL?
Что такое ML?
ML (машинное обучение) - это тип ИИ, в котором компьютер обучается автоматизировать задачи, которые являются исчерпывающими или невозможными для человека. Это лучший инструмент для анализа, понимания и выявления закономерностей в данных на основе изучения компьютерных алгоритмов. Машинное обучение может принимать решения с минимальным вмешательством человека.
Сравнивая искусственный интеллект и машинное обучение, машинное обучение использует данные для подачи в алгоритм, который может понять взаимосвязь между входными и выходными данными. Когда машина закончит обучение, она может предсказать значение или класс новой точки данных.
Что такое глубокое обучение?
Глубокое обучение - это компьютерное программное обеспечение, которое имитирует сеть нейронов в головном мозге. Это подмножество машинного обучения, которое называется глубоким обучением, потому что в нем используются глубокие нейронные сети. Машина использует разные уровни для изучения данных. Глубина модели представлена количеством слоев в модели. Глубокое обучение - это новое слово в искусстве искусственного интеллекта. В глубоком обучении этап обучения выполняется через нейронную сеть. Нейронная сеть - это архитектура, в которой слои накладываются друг на друга.
Машинное обучение
Представьте, что вам нужно создать программу, распознающую объекты. Для обучения модели воспользуемся классификатором . Классификатор использует характеристики объекта, чтобы попытаться определить класс, к которому он принадлежит.
В этом примере классификатор будет обучен определять, является ли изображение:
- Велосипед
- Лодка
- Машина
- Самолет
Четыре вышеперечисленных объекта - это класс, который классификатор должен распознать. Чтобы построить классификатор, вам нужно иметь некоторые данные в качестве входных и присвоить им метку. Алгоритм возьмет эти данные, найдет шаблон и затем классифицирует его по соответствующему классу.
Эта задача называется обучением с учителем. При обучении с учителем обучающие данные, которые вы вводите в алгоритм, включают метку.
Для обучения алгоритму необходимо выполнить несколько стандартных шагов:
- Соберите данные
- Обучить классификатор
- Делать предсказания
Первый шаг необходим, выбор правильных данных приведет к успеху алгоритма или к провалу. Данные, которые вы выбираете для обучения модели, называются функцией. В примере объекта характеристиками являются пиксели изображений.
Каждое изображение - это строка в данных, а каждый пиксель - это столбец. Если ваше изображение имеет размер 28x28, набор данных содержит 784 столбца (28x28). На рисунке ниже каждое изображение преобразовано в вектор признаков. Этикетка сообщает компьютеру, какой объект находится на изображении.
Цель состоит в том, чтобы использовать эти обучающие данные для классификации типа объекта. Первый шаг состоит в создании столбцов функций. Затем на втором этапе выбирается алгоритм для обучения модели. По окончании обучения модель предскажет, какая картинка какому объекту соответствует.
После этого модель легко использовать для прогнозирования новых изображений. Для каждого нового изображения, загружаемого в модель, машина предсказывает, к какому классу оно принадлежит. Например, через модель проходит совершенно новое изображение без надписи. Для человека визуализировать изображение в виде автомобиля - тривиальная задача. Машина использует свои предыдущие знания, чтобы предсказать изображение автомобиля.
Процесс глубокого обучения
В глубоком обучении этап обучения выполняется через нейронную сеть. Нейронная сеть - это архитектура, в которой слои накладываются друг на друга.
Рассмотрим тот же пример изображения выше. Обучающий набор будет передан в нейронную сеть.
Каждый вход поступает в нейрон и умножается на вес. Результат умножения переходит на следующий уровень и становится входом. Этот процесс повторяется для каждого уровня сети. Последний слой называется выходным слоем; он предоставляет фактическое значение для задачи регрессии и вероятность каждого класса для задачи классификации. Нейронная сеть использует математический алгоритм для обновления весов всех нейронов. Нейронная сеть полностью обучена, когда значение весов дает результат, близкий к реальному. Например, хорошо обученная нейронная сеть может распознать объект на картинке с большей точностью, чем традиционная нейронная сеть.
Автоматическое извлечение признаков с помощью DL
Набор данных может содержать от дюжины до сотен объектов. Система узнает об актуальности этих функций. Однако не все функции имеют значение для алгоритма. Важнейшая часть машинного обучения - найти соответствующий набор функций, чтобы система чему-то училась.
Один из способов выполнить эту часть в машинном обучении - использовать извлечение признаков. Извлечение функций объединяет существующие функции для создания более релевантного набора функций. Это можно сделать с помощью PCA, T-SNE или любых других алгоритмов уменьшения размерности.
Например, при обработке изображений практикующему специалисту необходимо вручную выделить такие особенности изображения, как глаза, нос, губы и т. Д. Эти извлеченные признаки передаются в модель классификации.
Глубокое обучение решает эту проблему, особенно для сверточной нейронной сети. Первый слой нейронной сети будет узнавать мелкие детали из картинки; следующие слои объединят предыдущие знания для создания более сложной информации. В сверточной нейронной сети выделение признаков выполняется с помощью фильтра. Сеть применяет фильтр к изображению, чтобы увидеть, есть ли совпадение, т. Е. Форма объекта идентична части изображения. Если есть совпадение, сеть будет использовать этот фильтр. Таким образом, процесс извлечения признаков выполняется автоматически.
Разница между машинным обучением и глубоким обучением
Ниже приведено ключевое различие между глубоким обучением и машинным обучением.
Машинное обучение |
Глубокое обучение |
|
Зависимости данных |
Отличная производительность на небольшом / среднем наборе данных |
Отличная производительность на большом наборе данных |
Зависимости от оборудования |
Работайте на младшей машине. |
Требуется мощная машина, желательно с графическим процессором: DL выполняет значительное умножение матриц. |
Функциональная инженерия |
Необходимо понимать особенности, которые представляют данные |
Нет необходимости понимать, какая функция лучше всего представляет данные. |
Время исполнения |
От нескольких минут до часов |
До недель. Нейронной сети необходимо вычислить значительное количество весов |
Интерпретируемость |
Некоторые алгоритмы легко интерпретировать (логистика, дерево решений), некоторые практически невозможны (SVM, XGBoost) |
Сложно или невозможно |
Когда использовать ML или DL?
В таблице ниже мы суммируем разницу между машинным обучением и глубоким обучением с примерами.
Машинное обучение | Глубокое обучение | |
Набор данных для обучения | Маленький | Большой |
Выберите особенности | да | Нет |
Количество алгоритмов | Много | Несколько |
Тренировочное время | короткий | Длинный |
При машинном обучении для обучения алгоритма требуется меньше данных, чем при глубоком обучении. Для глубокого обучения требуется обширный и разнообразный набор данных для определения базовой структуры. Кроме того, машинное обучение обеспечивает более быструю обучаемую модель. Обучение самой продвинутой архитектуре глубокого обучения может занять от нескольких дней до недели. Преимущество глубокого обучения перед машинным в высокой точности. Вам не нужно понимать, какие функции лучше всего представляют данные; нейронная сеть научилась выбирать критические особенности. В машинном обучении вам нужно выбрать для себя, какие функции включить в модель.
Резюме
Искусственный интеллект наделяет машину когнитивными способностями. Сравнивая ИИ и машинное обучение, ранние системы ИИ использовали сопоставление с образцом и экспертные системы.
Идея машинного обучения заключается в том, что машина может обучаться без вмешательства человека. Машине нужно найти способ научиться решать задачу с учетом данных.
Глубокое обучение - это прорыв в области искусственного интеллекта. Когда данных достаточно для обучения, глубокое обучение дает впечатляющие результаты, особенно для распознавания изображений и перевода текста. Основная причина заключается в том, что извлечение признаков выполняется автоматически на разных уровнях сети.