Искусственный интеллект (AI) и Машинное обучение (ML) - одни из самых горячих тем в настоящее время. Но большинство людей этого не понимают. Но в этой статье я опишу простейшее описание глубокого обучения. Основная идея - сделать эту статью максимально простой, чтобы читатель получил общее представление о принципе работы глубокого обучения. Есть несколько основных терминов, которые нам нужно понять в первую очередь.

Искусственный интеллект: ИИ - это копирование человеческого интеллекта в компьютерах.

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

AI в основном использует глубокое обучение, которое может автоматически извлекать функции, тогда как в машинном обучении программист / исследователь должен предоставлять функции вручную, то есть мы должны решить, какая функция даст лучший результат. Помимо этого, машинное обучение включает в себя выбор хорошего классификатора. В отличие от машинного обучения, ИИ обладает высокой точностью. Если учесть время вычисления модели глубокого обучения, то она требует больших вычислительных ресурсов, то есть обучение или моделирование может занять от нескольких минут до одного месяца или более, но в случае машинного обучения результаты могут быть получены с очень меньшим периодом времени. Мы можем использовать как ЦП, так и графический процессор для глубокого обучения и машинного обучения. GPU предпочтительнее в случае глубокого обучения.

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

Когда данные помечены, мы называем это контролируемым обучением.

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

Обучение без учителя:

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

Принципы работы глубокого обучения:

Давайте углубимся в глубокое обучение…

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

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

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

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

Затем идет скрытый слой, в котором много узлов, и все узлы связаны друг с другом. Чем больше идет, тем глубже сеть может извлекать более сложные шаблоны из входных данных. Таким образом, это проблема - определить количество скрытых слоев и узлов внутри скрытого слоя, чтобы получить наилучший результат. Он выполняет все математические вычисления, регулирует веса и смещение и, наконец, подключается к выходному слою. У каждого узла есть своя функция активации. Существуют различные типы функций активации, такие как сигмовидная, relu, tanh и т. Д. Использование функции активации зависит от типа постановки задачи.

relu: a = max (a, z) …………………………… .. ………. (1)

сигмовидная: a = 1 / (1 + e ^ -z) ………………. ……. ……… (2)

tanh: (e ^ z + e ^ -z) / (e ^ z -e ^ -z) ……………. ……… (3)

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

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

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

Функция гипотезы: y_hat = hθ (x) = θ1 + θ (x) ………. (4)

Где hθ (x) - функция гипотезы

Функция затрат: j (θ1, θ2) = 1 / 2m Σi = от 1 до m (y_hat -y) ² .. (5)

y-hat - это прогнозируемое значение, а y - фактическое значение. Функция стоимости также называется функцией квадратичной ошибки.

Градиентный спуск: θj- α ∂ / ∂ θj (θ0, θ1) ………………… .. (6)

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

Существует множество предварительно обученных моделей, специально разработанных для выполнения определенных задач. Вы можете использовать их предварительно натренированные веса и повысить точность. Такой метод обучения называется трансферным обучением. ResNet, GoogleNet, VGGNet - вот некоторые из примеров предварительно обученной модели.

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

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

Примечания:

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

Калян Моханти

COE-AI (CET-BBSR) - Инициатива CET-BBSR, Tech Mahindra и BPUT по обеспечению решений реальных проблем с помощью машинного обучения и Интернета вещей.

Www.coeaibbsr.in

источник: deeplearning.ai