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

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

Алгоритм машинного обучения и глубокого обучения

  • Наконец-то меня приняли в монахи-исследователи искусственного интеллекта. Я не знаю разницы между машинным обучением и глубоким обучением. Я чувствую, что все есть глубокое обучение.
  • Покопавшись, я слышал, что старший настроил параметры за 10 месяцев и собирается выпустить модель T9 Kaitian Thunderbolt с параметрами 200 млрд. Я хочу настроить параметры и отправить T10, чтобы получить Best Paper

AI系统——机器学习和深度学习算法流程

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

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

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

AI系统——机器学习和深度学习算法流程

1. Алгоритм потока машинного обучения

На самом деле исследования машинного обучения — это наука о данных (звучит немного скучно), следующий основной процесс алгоритма машинного обучения: в основном из 1) подготовки набора данных, 2) исследовательского анализа данных, 3) предварительной обработки данных, 4) Сегментация данных , 5) Моделирование алгоритмов машинного обучения, 6) Выбор задач машинного обучения и, конечно же, в конце оценка того, насколько хорошо алгоритмы машинного обучения применимы к реальным данным.

AI系统——机器学习和深度学习算法流程

1.1 Набор данных

Первое, что мы хотим изучить, — это проблема данных, набор данных — это отправная точка процесса построения модели машинного обучения. Проще говоря, набор данных представляет собой матрицу M×N, где M обозначает столбцы (признаки), а N обозначает строки (выборки).

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

AI系统——机器学习和深度学习算法流程

1.2 Анализ данных

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

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

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

  • описательная статистика: среднее, медиана, мода, стандартное отклонение.

AI系统——机器学习和深度学习算法流程

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

AI系统——机器学习和深度学习算法流程

  • формирование данных: сводные, групповые, фильтрующие и т. д. данные.

AI系统——机器学习和深度学习算法流程

1.3 Предварительная обработка данных

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

Например, измените размер изображения до одинакового размера или разрешения.

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

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

1.4 Сегментация данных

тренировочный набор и тестовый набор

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

Первая часть представляет собой большее подмножество данных, используемое в качестве обучающего набора (например, 80% исходных данных); вторая часть обычно представляет собой меньшее подмножество, используемое в качестве тестового набора (оставшиеся 20% данных). ).

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

AI系统——机器学习和深度学习算法流程

набор для обучения и набор для проверки и набор для тестирования

Другой распространенный метод разделения данных состоит в том, чтобы разделить данные на 3 части: 1) обучающий набор, 2) проверочный набор и 3) тестовый набор.

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

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

AI系统——机器学习和深度学习算法流程

Перекрестная проверка

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

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

AI系统——机器学习和深度学习算法流程

1.5 Моделирование алгоритмов машинного обучения

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

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

Алгоритмы машинного обучения можно разделить на три типа:

  • контролируемое обучение: это задача машинного обучения, которая устанавливает математическую (отображающую) связь между входными X и выходными переменными Y. Такие пары (X, Y) представляют собой размеченные данные, используемые для построения модели, чтобы научиться предсказывать выходные данные на основе входных данных.
  • неконтролируемое обучение: это задача машинного обучения, в которой используются только входные переменные X. Переменные X являются немаркируемыми данными, а алгоритм обучения моделируется при моделировании данных.
  • обучение с подкреплением: это задача машинного обучения, которая определяет следующий курс действий, и делает это путем проб и ошибок, стремясь максимизировать вознаграждение.

Настройка параметров

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

Возьмем случайный лес в качестве примера. При использовании randomForest обычно оптимизируются два общих гиперпараметра, включая параметры mtry и ntree. mtry(maxfeatures) представляет количество переменных, выбранных случайным образом в качестве кандидатов при каждом разбиении, а ntree(nestimators) представляет количество деревьев, которые необходимо вырастить.

Еще один алгоритм машинного обучения, который еще 10 лет назад был очень популярен, — это машины опорных векторов (SVM). Гиперпараметрами, которые необходимо оптимизировать, являются параметр C и параметр гаммы ядра радиальной базисной функции (RBF). Параметр C является штрафным термином, который ограничивает переоснащение, в то время как параметр gamma управляет шириной ядра RBF.

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

Выбор функций

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

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

AI系统——机器学习和深度学习算法流程

1.6 Задачи машинного обучения

В обучении с учителем две общие задачи машинного обучения включают классификацию и регрессию.

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

Обученная модель классификации принимает набор переменных в качестве входных данных и предсказывает метку класса выходных данных. На изображении ниже показаны три класса, представленные разными цветами и метками. Каждая маленькая цветная сфера представляет образец данных. Отображение трех типов выборок данных в двух измерениях.Эту визуализацию можно создать, выполнив анализ PCA и отобразив первые два основных компонента (PC); в качестве альтернативы можно выбрать простую визуализацию диаграммы рассеяния двух переменных.

AI系统——机器学习和深度学习算法流程

Представление

Как узнать, хорошо или плохо работает обученная модель машинного обучения? Это использование индикаторов оценки эффективности (метрик).Некоторые общие индикаторы для оценки эффективности классификации включают точность (AC), чувствительность (SN), специфичность (SP) и коэффициент корреляции Мэтью (MCC).

возвращение

Простейшая регрессионная модель, которую можно хорошо описать следующим простым уравнением: Y = f(X). Среди них Y соответствует квантованной выходной переменной, X относится к входной переменной, а f относится к функции отображения, которая вычисляет выходное значение как входной признак (полученный из модели машинного обучения). Суть приведенной выше формулы примера регрессии заключается в том, что если X известно, Y может быть получено. После того как Y рассчитан (прогнозирован), популярным способом его визуализации является создание простой диаграммы рассеяния фактического и прогнозируемого значений, как показано на изображении ниже.

AI系统——机器学习和深度学习算法流程

Производительность регрессионной модели оценивается, чтобы оценить, насколько хорошо подобранная модель может точно предсказывать значения входных данных. Распространенным показателем для оценки эффективности регрессионных моделей является коэффициент детерминации (R²). Кроме того, среднеквадратическая ошибка (MSE) и среднеквадратическая ошибка (RMSE) также часто используются для измерения остаточной ошибки или ошибки прогноза.

2. Процесс алгоритма глубокого обучения

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

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

AI系统——机器学习和深度学习算法流程

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

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

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

использованная литература