Использование нейронных сетей в задаче прогнозирования закупок товаров | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 4 мая, печатный экземпляр отправим 8 мая.

Опубликовать статью в журнале

Авторы: , , ,

Рубрика: Информационные технологии

Опубликовано в Молодой учёный №27 (317) июль 2020 г.

Дата публикации: 04.07.2020

Статья просмотрена: 668 раз

Библиографическое описание:

Балавнев, Д. А. Использование нейронных сетей в задаче прогнозирования закупок товаров / Д. А. Балавнев, М. Л. Киндулов, Б. Р. Горелов, Т. О. Шергин. — Текст : непосредственный // Молодой ученый. — 2020. — № 27 (317). — С. 30-32. — URL: https://moluch.ru/archive/317/72326/ (дата обращения: 25.04.2024).



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

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

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

Нейронная сеть

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

При использовании сетей прямого распространения подразумевается, что все входы и выходы независимы [1], но для задачи прогнозирования временного ряда это не подходит. Рекуррентные нейронные сети (RNN), называются рекуррентными, потому что они имеют обратные связи и выполняют одну и ту же задачу для каждого элемента последовательности и выход зависит от предыдущих вычислений [2]. Каждый нейрон может использовать свою внутреннюю память для хранения информации о предыдущем состоянии сети. RNN имеет обратные связи, которые позволяют передавать информацию от одного шага сети к следующему. Однако, фундаментальная проблема использования простых рекуррентных сетей заключается в том, что они способны обнаруживать только краткосрочные зависимости. Причиной этого является проблема отсутствия долгосрочной памяти. В простых RNN нейроны хорошо «помнят» недавно полученную информацию, но не имеют возможности надолго сохранить информацию в памяти.

Нейронные сети с долгой краткосрочной памятью (LSTM) [3] представляют собой особый тип RNN, которые имеют более длинную «память», чем их предшественники, и способны изучать долгосрочные зависимости. В LSTM блок работает как обычный рекуррентный блок, но имеет дополнительную ячейку памяти и различные фильтры, обычно называемые вентилями. Вентили помогают определить долгосрочные зависимости, управляя потоком данных внутри блока. Ячейка дает сети своего рода память и сохраняет долгосрочные зависимости. Процесс обучения и обратного распространения здесь работает так же, как и в обычной RNN, но с добавлением, что вентили также имеют веса. Таким образом, модель становится лучше в определении правильной информации, что приводит к хорошим прогнозам. Поэтому использовалась архитектура на основе LSTM-ячеек.

Обучение и тестирование

Для разработки и тестирования нейронной сети была взята двухгодичная база данных продаж онлайн магазина содержащая в себе 1 400 000 записей. Компания специализируется на продаже сувенирной продукции.

Для повышения качества работы нейронной сети были выделены следующие признаки:

– Время совершения продажи.

– Был ли в этот день праздник.

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

– Общий тренд. Изменение средней цены товара в зависимости от времени, цена постепенно повышается или понижается.

При составлении прогноза закупок важно не допустить дефицита товара на складе. Небольшие излишки товара можно назвать страховым запасом, а отсутствие необходимого товара при обращении клиента несет, как минимум — потерю выручки, а как максимум — ущерб имиджу компании. Чтобы учесть этот фактор при обучении, в качестве функции ошибки будем использовать асимметричную квадратичную ошибку (1), которая обеспечивает более высокое значение ошибки, когда модель предсказывает значение ниже реального [4].

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

Для того, чтобы проверить качество разработанной нейронной сети, была использована отложенная выборка. Выборку разбили на две части, 80 % использовались для обучения, а 20 % данных были отложены для тестирования. Ниже (табл.1 и рис.1) представлены результаты тестирования.

Таблица 1

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

train

valid

test

Средняя абсолютная ошибка

33.97396061691954

35.91977171419663

37.123308042252916

Средняя квадратичная ошибка

1154.23

1290.23

1378.14

Ассиметричная квадратичная ошибка

1466.56

1722.0

1879.34

Предсказание для всех товаров

Рис.1. Предсказание для всех товаров

Литература:

  1. С. Хайкин, Нейронные сети: полный курс, 2-е изд., испр.: Пер. с англ. — М.: ООО «И. Д. Вильямс», 2006, 1104 стр.
  2. Introduction to Recurrent Neural Network [Электрон.ресурс] — URL: www.geeksforgeeks.org/introduction-to-recurrent-neural-network/
  3. Essentials of Deep Learning: Introduction to Long Short Term Memory [Электрон.ресурс] — URL: www.analyticsvidhya.com/blog/2017/12/fundamentals-of-deep-learning-introduction-to-lstm
  4. Kevin Aretz, Söhnke M, «Асимметричные функции потерь и рациональность ожидаемой доходности фонда». Международный журнал по прогнозированию.
  5. A Beginner's Guide to LSTMs and Recurrent Neural Networks [Электрон.ресурс] — URL: www.pathmind.com/wiki/lstm
Основные термины (генерируются автоматически): RNN, LSTM, нейронная сеть, сеть, зависимость, квадратичная ошибка, обучение, результат тестирования.


Ключевые слова

прогнозирование временных рядов, LSTM-сети, рекуррентные нейронные сети

Похожие статьи

GRU и LSTM: современные рекуррентные нейронные сети

нейронная сеть, слой, карт признаков, изображение, результат работы сети, машинное

Обучение нейронной сети (Training) — поиск такого набора весовых коэффициентов, при

Известно, что есть ошибка и известно её значение. GRU и LSTM: современные рекуррентные...

Идентификация осложнений и неисправностей погружного...

Основные термины (генерируются автоматически): нейронная сеть, LSTM, сеть, слой, CNN, RNN, разработка модели, результат селекции

Теперь о самих нейронных сетях. Нейронная сеть— это последовательность нейронов. Проведя обучение нейронной сети были получены...

Прогноз дальности видимости в аэропорту Манас с применением...

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

Обзор методов распознавания изображений | Статья в сборнике...

Основные термины (генерируются автоматически): сеть, HOG, LSTM-RNN, нейронная сеть

Теперь о самих нейронных сетях. Нейронная сеть— это последовательность нейронов.

Проведя обучение нейронной сети были получены следующие результаты — обучаемость...

Модель математической нейронной сети | Статья в журнале...

При инициализации нейронной сети эта величина устанавливается в 0 и имеет потолок

Чем больше эпоха, тем лучше натренирована сеть и соответственно, ее результат.

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

Механизмы работы нейронных сетей | Статья в журнале...

Сети LSTM обучаются с использованием алгоритма обратного распространения ошибок во времени (backpropagation through time), идея которого заключается в том, чтобы расширить график вычислений во времени. Из сетей LSTM можно строить многослойные нейронные сети...

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

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

Распознавание английского текста сверточной нейронной сетью

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

Использование Join-layer neural networks для решения задачи...

В статье описан метод извлечения ключевых фраз из постов социальной сети «Твиттер», основанный на построении и обучении нейронной сети с архитектурой Joint-layer. Ключевые слова:обработка естественного языка, нейронные сети, ключевые слова, ключевые фразы.

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

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

Для проведения эксперимента была обучена нейронная сеть, которая

Для обучения был использован датасет Fashion MNIST, содержащий размеченные изображения размером 28x28.

Похожие статьи

GRU и LSTM: современные рекуррентные нейронные сети

нейронная сеть, слой, карт признаков, изображение, результат работы сети, машинное

Обучение нейронной сети (Training) — поиск такого набора весовых коэффициентов, при

Известно, что есть ошибка и известно её значение. GRU и LSTM: современные рекуррентные...

Идентификация осложнений и неисправностей погружного...

Основные термины (генерируются автоматически): нейронная сеть, LSTM, сеть, слой, CNN, RNN, разработка модели, результат селекции

Теперь о самих нейронных сетях. Нейронная сеть— это последовательность нейронов. Проведя обучение нейронной сети были получены...

Прогноз дальности видимости в аэропорту Манас с применением...

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

Обзор методов распознавания изображений | Статья в сборнике...

Основные термины (генерируются автоматически): сеть, HOG, LSTM-RNN, нейронная сеть

Теперь о самих нейронных сетях. Нейронная сеть— это последовательность нейронов.

Проведя обучение нейронной сети были получены следующие результаты — обучаемость...

Модель математической нейронной сети | Статья в журнале...

При инициализации нейронной сети эта величина устанавливается в 0 и имеет потолок

Чем больше эпоха, тем лучше натренирована сеть и соответственно, ее результат.

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

Механизмы работы нейронных сетей | Статья в журнале...

Сети LSTM обучаются с использованием алгоритма обратного распространения ошибок во времени (backpropagation through time), идея которого заключается в том, чтобы расширить график вычислений во времени. Из сетей LSTM можно строить многослойные нейронные сети...

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

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

Распознавание английского текста сверточной нейронной сетью

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

Использование Join-layer neural networks для решения задачи...

В статье описан метод извлечения ключевых фраз из постов социальной сети «Твиттер», основанный на построении и обучении нейронной сети с архитектурой Joint-layer. Ключевые слова:обработка естественного языка, нейронные сети, ключевые слова, ключевые фразы.

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

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

Для проведения эксперимента была обучена нейронная сеть, которая

Для обучения был использован датасет Fashion MNIST, содержащий размеченные изображения размером 28x28.

Задать вопрос