Модель нейронной сети в Excel: графики и таблицы с данными регрессии.

«Рождественский календарь» по машинному обучению, день 17: Регрессор нейронной сети в Excel.

Создание регрессора нейронной сети с обратным распространением ошибки в Excel

Делиться

f50dbe5de9450e995b8e7b058052f6f2

Нейронные сети часто представляют в виде «черных ящиков».

Слои, активации, градиенты, обратное распространение ошибки… это может показаться сложным, особенно когда всё скрыто за функцией model.fit().

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

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

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

Вы увидите, что нейронная сеть — это не новый объект. Это естественное расширение этих моделей.

Как обычно, мы будем следовать этим шагам:

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

1. Прямое распространение

В этой части мы определим нашу модель, а затем реализуем её в Excel, чтобы посмотреть, как работает прогнозирование.

1.1 Простой набор данных

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

Как видите, целевая переменная имеет нелинейную зависимость от x.

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

8a1824665f31da47ea61b38118317699

1.2 Структура нейронной сети

В нашем примере нейронной сети есть:

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

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

Скрытый слой:

  • a11: вес от x к скрытому нейрону 1
  • b11: смещение скрытого нейрона 1
  • a12: вес от x к скрытому нейрону 2
  • b12: смещение скрытого нейрона 2

Выходной слой:

  • a2​1: вес от скрытого нейрона 1 к выходу
  • a22: вес от скрытого нейрона 2 к выходу
  • b2: смещение выходного сигнала

По своей сути, нейронная сеть — это просто функция. Составная функция.

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

6a378a722252e6b1fe17babd42611fe6

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

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

4ca0b9380eaa4234eb4ce6be6d36c352

Зачем нужна эта функция?

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

Путем линейного комбинирования этих элементов сеть может аппроксимировать плавные нелинейные кривые.

Поэтому для этого набора данных двух нейронов уже достаточно . Но сможете ли вы найти набор данных, для которого такая структура не подходит?

1.3 Реализация функции в Excel

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

Для визуализации нейронной сети мы можем использовать новые непрерывные значения x в диапазоне от -2 до 2 с шагом 0,02.

Вот скриншот, и мы видим, что итоговая функция довольно хорошо соответствует форме входных данных.

8185f09f65cd2134b3dc2d1a85b505ab

2. Обратное распространение ошибки (градиентный спуск)

На данном этапе модель полностью определена.

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

Теперь нам нужно найти 7 параметров, которые минимизируют среднеквадратичную ошибку (MSE).

2.1 Подробности алгоритма обратного распространения ошибки

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

Я не буду явно выводить все 7 частных производных. Я просто приведу результаты.

4e4e33c057620c5e239f342ecbb57e92

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

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

2.2 Инициализация

Начнём с того, что представим входной набор данных в столбцовом формате, что упростит внедрение формул в Excel.

554854158e7d10df1e1990025862cc4a

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

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

bd7185df7806bd922ae8cb0a525071b0

2.3 Прямое распространение

В столбцах от AG до BP мы выполняем фазу прямого распространения. Сначала вычисляем A1 и A2, а затем выходные данные. Это те же формулы, которые использовались в предыдущей части прямого распространения.

Для упрощения вычислений и повышения их управляемости мы выполняем расчеты для каждого наблюдения отдельно. Это означает, что у нас есть 12 столбцов для каждого скрытого слоя (A1 и A2) и выходного слоя. Вместо использования формулы суммирования мы вычисляем значения для каждого наблюдения индивидуально.

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

f4abc2280672843374d461e3215427e2

2.4 Ошибки и функция стоимости

В столбцах от BQ до CN теперь можно вычислить значения функции стоимости.

775f43a6d0209bd56dbef010dc5f8288

2.5 Частные производные

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

1e921bc6ffd61f958630e3c881602790

Итак, начнём с выходного слоя, где будут указаны параметры: a21, a22 и b2. Их можно найти в столбцах от CO до DX.

05d5e164eec816377d675246decf9f83

Затем параметры a11 и a12 можно найти в столбцах DY–EV:

cd1d56d2e6d81f29c747ec87e83ecac2

И наконец, для параметров смещения b11 и b12 мы используем столбцы EW–FT.

2684ddcfdb4786450c7c0dec4f12c3a4

В завершение мы суммируем все частные производные по 12 наблюдениям. Эти агрегированные градиенты аккуратно располагаются в столбцах от Z до AF . Затем обновления параметров выполняются в столбцах от R до X , используя эти значения.

9e85cb7cb7b1cd679374be3f3d76ce15

2.6 Визуализация сходимости

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

02c88c57efb761d09cf8d025bbe2ee5c

Заключение

Регрессор на основе нейронной сети — это не волшебство.

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

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

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

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

Если вы поймете это таким образом, нейронные сети перестанут быть «черными ящиками».

Источник: towardsdatascience.com

✅ Найденные теги: «Рождественский, Excel, машинное обучение, Нейронная Сеть, новости, Регрессор, Рождественский Календарь

ОСТАВЬТЕ СВОЙ КОММЕНТАРИЙ

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

галерея

Футуристический 3D-анализ почвы с деревьями в цифровом пространстве.
Смартфон Google Pixel синего цвета, вид сбоку.
Мем со сценой из "Властелина колец" и упоминанием "Звезды смерти" из "Звездных войн".
Сравнение понятия равенства и эквивалентности на примере цветных кругов.
Мужчина с бородой в инвалидной коляске улыбается на улице возле дома.
Человек держит мощную микросхему графического ускорителя серверного уровня.
Человек с телефоном в шоке от полученных сообщений, включающих символы молнии и какашки.
Hisense: глобальный лидер в продажах 100-дюймовых и лазерных телевизоров.
Российские ученые разгадали тайну образования магнитной аномалии в Антарктиде
Image Not Found
Футуристический 3D-анализ почвы с деревьями в цифровом пространстве.

Нефть — новая цифра. Почему современная нефтяная вышка больше похожа на дата-центр

Почему современная нефтяная вышка больше похожа на дата-центр Вместо суровых пейзажей — суперкомпьютеры. Вместо контурных карт и геологической «миллиметровки» — спутниковые снимки и огромные массивы данных. Более половины месторождений в мире уже управляются с использованием ИИ и продвинутых…

Мар 5, 2026
Смартфон Google Pixel синего цвета, вид сбоку.

Google официально анонсировал Pixel 10a — смартфон стартует от 500 долларов

Источник: Google Google полноценно анонсировала свой новый бюджетный смартфон Pixel 10a. Его цена начнётся от 500 долларов — как и в предыдущих бюджетниках компании. Внешне смартфон тоже фактически не изменился. Pixel 10a будет иметь стекло Corning Gorilla…

Мар 5, 2026
Мем со сценой из "Властелина колец" и упоминанием "Звезды смерти" из "Звездных войн".

Мир, которого нет. «Палантир» показал нам всем ужасное будущее

На первый взгляд, ажиотаж вокруг заявления Кима Доткома странен. Взламывают всех, а уж частные компании — тем более. Но речь — не просто о частной компании. Ее владельцу — Питеру Тилю — во многом обязан своим вторым…

Мар 4, 2026
Человек держит мощную микросхему графического ускорителя серверного уровня.

NVIDIA снижает спецификацию памяти HBM4 на платформе Vera Rubin до 20 Тбайт/с

В скором времени NVIDIA проведёт очередную конференцию GTC, в рамках которой планирует рассказать о новых ускорителях искусственного интеллекта с наивысшей производительностью Feynman. Вот только сейчас компания до сих пор не может определиться с характеристиками подсистемы памяти Vera…

Мар 4, 2026

Впишите свой почтовый адрес и мы будем присылать вам на почту самые свежие новости в числе самых первых