Способ и система для прогнозирования значений временного ряда с использованием искусственной нейронной сети Российский патент 2021 года по МПК G06N3/02 G06N20/00 G06N5/04 

Описание патента на изобретение RU2744041C1

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

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

В статье [7] обосновывается эффективность применения компонентов нейронных сетей - многослойных персептронов для аппроксимации и прогнозов функций нескольких переменных и их производных.

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

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

В патенте №2533321 С1 описаны способ адаптивного прогнозирования остаточного ресурса эксплуатации сложных объектов и устройство для его осуществления. В котором нейросетевую модель предполагалось использовать для оценки надежности эксплуатации объекта контроля. Использовалась трехслойная искусственная нейронная сеть прямого распространения. Обучение выполнялось с использованием скользящего окна по методу обратного распространения ошибки. На каждом шаге обучения берут k значений ряда (по размеру окна) и обучают сеть, предъявляя в качестве эталона на выходе ИНС (k+1) значение ряда. Затем окно перемещается на шаг вправо и цикл обучения возобновляется. Данный процесс повторяют, начиная с первой позиции окна, до тех пор, пока не будут получены приемлемые результаты по точности. При экстраполяции ряда более чем на один шаг используются данные, полученные в результате предшествующих этапов экстраполяции. ИНС обучалась на 20 измерениях, и определялся остаточный ресурс сложного технического объекта. Недостатком метода явилось наличие значительных ошибок в экстраполяции, которые позволили лишь определить тенденцию.

Наиболее близкой к настоящему изобретению является работа, изложенная в патенте RU 2600099 С1 Способ нейросетевого прогнозирования изменения значений функции с ее предварительной вейвлет-обработкой и устройство его осуществления устройство нейросетевого прогнозирования изменения значений функций, а также прогнозирования изменений значений временных рядов данных или дискретных отсчетов непрерывных функциональных зависимостей, содержащее блок формирования временного ряда x(k), с выхода которого через последовательно соединенные блок предварительной вейвлет-обработки, блок выделения аппроксимирующих коэффициентов m-го уровня Cm, а также блок формирования скользящего окна данных из n отсчетов аппроксимирующих коэффициентов с помощью n-разрядного сдвигового регистра, сигналы подаются на входы нейронной сети, построенной по схеме многослойного персептрона прямого распространения, с последующей итерационной процедурой обучения нейронной сети, в ходе которой осуществляется настройка весовых или синаптических коэффициентов по критерию минимизации ошибок прогноза. Обработанные детализирующие коэффициенты разложения di совместно с аппроксимирующими коэффициентами Cm подаются на вход блока восстановления временного ряда в реальном времени S(k) с пониженной погрешностью представления информации за счет его вейвлет-обработки.

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

Предложенные в настоящей работе Способ и система прогнозирования временного ряда с использованием искусственной нейронной сети (ИНС) включают в себя: способ создания продленных рядов - для извлечения максимума информации даже из коротких временных рядов известных значений исследуемой характеристики; способ шифрования данных для построения оптимальных выборок обучения ИНС - преобразующий известные значения исследуемой характеристики в набор зашифрованных метаданных; способ и подсистему обучения искусственной нейронной сети, позволяющий получить набор синаптических коэффициентов ИНС, обеспечивающих наиболее точный прогноз исследуемой характеристики; способ построения прогноза с использованием синаптических весов ИНС, прошедшей процедуру обучения. Рассмотрим способы и подсистемы подробно.

Способ по п. 2 изобретения - Способ создания продленных рядов, в котором для подготовки обучающей выборки искусственной нейронной сети (ИНС) создаются дополнительные разбиения исходной временной шкалы ряда на дополнительные временные интервалы различной длины. Разбиение производится следующим образом: На первом этапе, момент времени 1-го известного значения временного ряда - принимается за начало нового интервала, а в качестве длины нового интервала берется сумма длин первого и последующего временных интервалов между известными значениями исходного временного ряда прогнозируемой характеристики. Следующий интервальный отрезок строится путем сдвига начала нового интервала на один старый интервал вправо по временной шкале, т.е. на один шаг исходного временного ряда. Длина его также будет составлять два старых интервала - 2-й и 3-й. Новые отрезки строятся, пока концом последнего отрезка не окажется момент времени последнего известного значения. На втором этапе строятся интервальные отрезки, где длина отрезка еще увеличивается на длину одного старого интервала. Длина новых отрезков будет составлять уже 3 исходных интервала (3 шага ряда). Второй и последующие отрезки второго этапа строятся также длиной в 3 старых интервала путем сдвига на один старый интервал. Сдвиги повторяются вплоть до момента достижения концом последнего нового отрезка момента времени последнего известного значения временного ряда. Этапы построения отрезков продолжаются, пока на последнем этапе не будет построен отрезок длиной в интервал времени между 1-ми последним известным значением исходного временного ряда. Таим образом, в нашем распоряжении оказывается построено интервальных отрезков. Например, для имеющегося временного ряда длинной в 31 известное значение, может быть построено 465 интервалов, для которых могут быть построены ряды метаданных, эффективно используемых при построении прогноза. Описанная процедура программно реализована в блоке 201 Создания продленных рядов Подсистемы 104.

Способ по п. 3 изобретения - Способ шифрования данных для построения оптимальных выборок обучения ИНС программно реализован в блоке 103 Системы прогнозирования значений временного ряда. Для всех значений рядов данных M(t,j), где t - значение моментов времени, j - номер ряда поступивших в блок 103 из блока Записи данных 101 Системы прогнозирования значений временного ряда определяется минимальное по модулю значение. Далее умножают все ряды на константу D - в этой реализации изобретения, при которой это выбранное минимальное значение становится больше 1, либо используют другие способы в других реализациях изобретения для приведения всех значений временных рядов к значениям больше 2. Далее выбирают максимальное по модулю из всех значений временных рядов поступивших в Блок 103, умноженных на D. Далее берут десятичный логарифм и определяют константу DD, при делении на которую значение десятичного логарифма от выбранного значения оказывается не более значения порога Р, которое должно быть меньше единицы. В данной реализации изобретения значение Р выбиралось = 0,6 и может быть выбрано любым, желательно близким к 0.5, но заведомо меньшего 1 в других реализациях изобретения. Далее формируют ряды Ms(t,j), состоящие из функции sign(знака) каждого из значений рядов, находящихся в блоке 103. Далее - значение каждого ряда M(t,j), умножается на соответствующее значение рядов знака Ms(t,j), образуя ряды только положительных значений Mp(t,j), далее - от каждого значения рядов Mp(t,j), умноженных на D берется десятичный логарифм, делится на константу DD, и затем снова умножается на соответствующее значение рядов знака Ms(t,j), образуя ряды зашифрованных метаданных Mm(t,j), имеющих как положительный, так и отрицательный знаки, не превышающие по модулю значение порога Р, меньшее единицы, подготовленных для эффективного использования нейросетью. Полученные ряды метаданных записываются в блок шифрования метаданных 103 Системы прогнозирования значений временного ряда (фиг. 1). Для минимизации ошибки прогноза в качестве сигналов входа ИНС в режиме обучения лучше всего использовать выборки, значения которых на следующем шаге случайным образом отличаются от значений на предыдущем шаге. Для этого в блоке 103 с помощью генератора случайных чисел генерируется ряд RD, равный по длине ранее записанным рядам Mm(t,j). Далее производится одновременная сортировка всех рядов Mm(t,j), и RD таким образом, чтобы значения RD встали в порядке возрастания - так производится случайное одновременное перемешивание рядов метаданных Mm(t,j). Новые ряды перезаписываются в блок 103 Системы прогнозирования значений временного ряда.

Система прогнозирования значений временного ряда интересующей характеристики Система состоит Блока 101 записи данных (Фиг. 1), записывающего в память временной ряд исходных данных, выделяя отдельно ряд значений исследуемой характеристики и ряд моментов времени, соответствующих известным значениям этой характеристики, Блока 102 Записи и вывода результата прогнозирования, Блока 103 шифрования данных, реализующего шифрование и пересортировку данных обучающей и контрольных выборок в наиболее удобный формат для обучения ИНС, а также двух подсистем:

Подсистема обучения искусственной нейронной сети для прогнозирования значений временного ряда-104 на (Фиг. 2), состоящая из Блока присваивания начальных значений синаптическим весам 200, в котором генерируется массив начальных синаптических весовых коэффициентов, Блока 201 Создания продленных рядов метаданных, реализующего разбиение на временные интервалы согласно Способу по п 2 настоящего изобретения, на основании которых будут строится обучающая (входных значений ИНС) и контрольная(контрольных значений ИНС)выборки для обучения ИНС. Также состоящей из блока 202 Формирования входных сигналов, в который из блока 103 Системы прогнозирования значений временного ряда, зависимости от заданных параметров L1 и L2 поступают часть значений из рядов Mm(t,j1), где параметр времени t ограничен нижней границей L1 и верхней границей L2, а индекс j1 - означает, что ряды относятся к рядам обучающих выборок. Блок 202 в зависимости от управляющих параметров Q и W Подсистемы 104 отправляет в различной последовательности элементы рядов обучающих выборок, относящихся к одному моменту времени t, на входные нейроны Блока Прямого распространения сигнала в ИНС 204 Подсистемы 104. Также состоящей из Блока контрольных обучающих сигналов 203 (фиг. 2), в который из блока 103, зависимости от заданных параметров L1 и L2 поступают часть значений из рядов Mm(t,j2), где параметр времени t ограничен нижней границей L1 и верхней границей L2, а индекс j2 - означает, что ряды относятся к рядам Контрольных выборок. Блок 203 в зависимости от управляющих параметров Q и W Подсистемы 104 отправляет в различной последовательности элементы рядов Контрольных выборок, относящихся к одному моменту времени t, на Блок Оценки ошибки 205 Подсистемы 104. Также состоящая из блока прямого распространения сигнала искусственной нейронной сети (ИНС) 204 (фиг. 2), основу которого составляет ИНС прямого распространения, состоящая в настоящей реализации из трех слоев, (или - более трех слоев в других реализациях) - одного входного, одного скрытого и одного выходного слоев, содержащих в данной реализации 23 нейрона входного слоя, 23 нейрона скрытого слоя, 1 нейрона выходного слоя и содержащего другое количество нейронов в слоях в других реализациях данного изобретения, но не менее 2х нейронов во входном слое. Под искусственным нейроном понимается конструкция, состоящая из сумматора входных сигналов от нейронов предыдущего слоя или сигналов входа (для нейронов входного слоя), передающий суммированный сигнал через функцию активации, представляющую из себя гиперболический тангенс для нейронов скрытого и выходного слоев и константу = 1 для нейронов входного слоя в настоящей реализации изобретения и возможные другие функции активации в других реализациях данного изобретения, на все нейроны следующего слоя. Переход выходных сигналов с нейронов одного слоя на нейроны следующего слоя происходит через синаптические связи между нейронами соседних слоев, которые на практике реализуются путем умножения выходного сигнала с i-го нейрона, направленного на k-й нейрон следующего слоя на коэффициент синаптической связи bi,k (фиг. 4),

Таким образом, обозначив входной слой индексом j=0, скрытый слой индексом j=1, выходной слой индексом j=2, имеем формулу для расчета выходного сигнала всех нейронов скрытого слоя OUTi,1 и единственного нейрона выходного слоя OUT0,2 в виде:

где индекс i - показывает номер нейрона j-го слоя (j=1, 2), причем для j=2 индекс i принимает единственное значение i=0. Данный выходной сигнал получен суммированием выходов k-х нейронов предыдущего слоя, умноженных на веса синапсов k-х нейронов предыдущего слоя ведущих к данному i-му нейрону и прошедшего через функцию активации - гиперболический тангенс.

В состав Подсистемы 104 также входит блок Оценки ошибки 205 (фиг. 2), в котором происходит определение разности между выходными сигналами блока Прямого распространения сигнала 204 и контрольными сигналами от блока 202 блока Контрольных обучающих сигналов. При достижении установленной точности соответствия выходных сигналов контрольному, блок оценки ошибки останавливает процесс обучения. В состав Подсистемы 104 также входит блок 206 Обратного распространения ошибки, основу которого составляет расчетный модуль, работающий на известном методе обратного распространения ошибки, изложенного, например в [3, 5, 6] Конечным результатом работы Подсистемы 104 обучения ИНС является полный набор весовых синаптических коэффициентов (bi,k)j входного и скрытого слоев, (j=0 - для входного слоя и j=1 - для скрытого слоя), т.к у нейрона выходного слоя нет синапсов исходящей связи, которые блок 206 на каждом шаге обучения передает на Подсистему 105 работы ИНС в режиме прогноза.

Подсистема построения прогноза, называемая далее «Подсистема105» состоящая из блока 301 Модерации входных данных Подсистемы 105 в который подаются временные ряды из Блока Записи данных 101 Системы прогнозирования значений временного ряда, из которых в соответствии со Способом по п. 5 настоящего изобретения, подготавливаются выборка входного сигнала, который шифруется в метаданные в блоке Шифрования данных 103 Системы прогнозирования значений временного ряда в соответствии со Способом по п. 3 изобретения и поступает на блок прямого распространения сигнала ИНС 302 Подсистемы 105, который по своим функциям и программному решению полностью аналогичен Блоку 204 Подсистемы 104 и работает с ним одновременно, используя одинаковый набор весов (bi,k)j но используя свой набор входных данных, взятых как из временного диапазона, соответствующего обучению, так и временного диапазона, на котором необходимо построение прогноза. Выходные значения блока 302 Подсистемы 2 подаются наблок Дешифрования данных 303 Подсистемы 105, который переводит прогнозные метаданные в реальные цифровые значения методом, обратным методу шифрования в блоке 103 Системы, Дешифрованные данные подаются на блок Записи и вывода результата прогноза 102 Системы прогнозирования значений временного ряда с использованием искусственной нейронной сети, который осуществляет цифровой и графический вывод результата прогноза и на блок 304 Контроля ошибки прогноза Подсистем в 105, который сравнивает полученные прогнозные значения на входных данных диапазона обучения с известными значениями исследуемой характеристики. В случае выполнения критерия установленной минимальной ошибки прогноза на диапазоне обучения, Блок 304 передает сигнал о остановке обучения на Подсистему 104 Обучения искусственной нейронной сети. В этом случае, Подсистема может прекратить обучение, но может и продолжить обучение до выполнения ее внутреннего критерия прекращения обучения. Решение определяется установкой приоритета одного из критериев над другим перед началом обучения ИНС.

Способ по п 4 изобретения - Способ обучения искусственной нейронной сети заключающийся в том, что в данной реализации изобретения на первом этапе в блоке 200 Подсистемы 104 создаются начальные синаптические веса (b0i,k)j генератором случайных чисел в диапазоне от -0.5 до 0.5. В других реализациях - возможно присвоение других значений начальным синаптическим весам). Затем, блок 101 Системы прогнозирования значений временного ряда передает в блок Создания продленных рядов 201 Подсистемы 4 ряд моментов времени соответствующих исходному ряду известных значений прогнозируемой характеристики для генерации продленных рядов согласно Способу по п. 2 изобретения. Затем, по построенным в блоке 201 новым интервальным отрезкам строятся 3 ряда: Ряд значения момента времени конца отрезка - в виде ряда ММ0, приращение времени - как разница между значениями времени конца и начала интервального отрезка - в виде ряда MD0 и приращение самих известных значений временного ряда прогнозируемой характеристики на этом интервальном отрезке, как разница между ее значениями в моменты времени, соответствующие концу и началу интервального отрезка- в виде ряда MD1.

В настоящей реализации изобретения 2 первых ряда ММ0 и MD0 используются как ряды обучающей выборки, а 3-й ряд - MD1 как ряд значений контрольной выборки. В других реализациях изобретения Обучающая и Контрольная выборки могут формироваться другим способом. Далее - в блок Шифрования данных 103 Системы прогнозирования значений временного ряда (фиг. 1) поступают все 3 ряда - ММ0, MD0, и MD1. Согласно способу по п. 3 настоящего изобретения значения рядов ММ0, MD0, и MD1 шифруются в ряды метаданных MMm0, MDm0, и MDm1 затем, в соответствии с параметрами Подсистемы 104 L1 и L2 - блоком Формирования входного сигнала 202 Подсистемы 104 и блоком Контрольных обучающих сигналов 203 Подсистемы 104 подаются, соответственно, входной сигнал на 204 Блок Прямого распространения сигнала в ИНС Подсистемы 104 и контрольный сигнал на блок Оценки ошибки 205 Подсистемы 104. Далее, после прохождения входного сигнала через ИНС прямого распространения блока 204, с ее выходного нейрона снимается выходной сигнал, который поступает в блок Оценки ошибки 205 Подсистемы 104. Далее блоком 205 вычисляется разность между выходным сигналом блока 204 и контрольным сигналом от блока 203. Данная разность отправляется на блок Обратного распространения ошибки 206 Подсистемы 104. Обучение - корректировка полного набора синаптических коэффициентов (весов) ИНС производится с помощью расчетного модуля блока 206. На следующем этапе Блок 206 Подсистемы 104 транслирует в качестве сигнала ошибку, полученную из блока 205 на все нейроны скрытого слоя, а затем от них - на все нейроны входного слоя, где методом оптимизации, известный как метод градиентного спуска в настоящей реализации изобретения, или - другим известным методом в других реализациях изобретения производится корректировка весовых синаптических коэффициентов (bi,k)j Данный способ обучения является стандартным способом обучения ИНС и описан, например в [3, 5, 6]. Параметром скорости обучения является константа SPEED, значение которой задается оператором произвольно из диапазона (0,1). После первого цикла обратного распространения сигнала и первой корректировки синаптических коэффициентов (bi,k)j значения весов отправляются в блок 302 Прямого распространения ИНС где строится верификационный прогноз, который дешифровывается в блоке 303 и поступает на блок 304 оценки точности прогноза, где сравнивается с известными значениями исходного временного ряда. В случае, если в блоке 304 выполнен критерий точности прогноза, то блок 304 отправляет сигнал остановки обучения на блок 206 Подсистемы 105. Подсистема 104 может прекратить обучение, но может и продолжить обучение до получения сигнала только от своего блока 205 о прекращения обучения. Решение о прекращении обучения определяется параметрической установкой приоритета одного из критериев над другим перед началом обучения ИНС.

Если сигналов на остановку обучения не поступало, то ИНС работает в соответствии с заданными значениями параметров блока 206 Q и W. Если Q>1, то происходит повтор процедуры обучения (корректировки весов (bi,k)j - т.е. повторение прямого прохода без изменения значений входного и контрольного сигналов, поступающих на блоки 204 и 205 соответственно с блоков 202 и 203. Повторяется вычисление ошибки блоком 205 и процедура обратного прохода сигнала ошибки, выполняемая блоком 206, в результате которого на блоке 206 заново рассчитывается корректировка весов (bi,k)j. Таких циклов обучения производится либо Q раз, либо до получения сигнала остановки, поступившего от блока оценки ошибки 205, либо-блока 304, свидетельствующего о достижении заданной точности обучения. Если число циклов обучения достигло параметра Q и обучение остановлено не было, то происходит переход на новые значения входных данных и контрольного значения, поступающих из блоков 202 и 203 и являющимися следующими по порядку значениями рядов MM0m, MD0m, MD1m. С этими входными данными так же, как и ранее - Q или менее раз проводится процедура обучения сети (корректировка тех же весовых синаптических коэффициентов) методом обратного распространения ошибки. Далее вводятся все новые и новые данные путем сдвига рядов MM0m, MD0m, MD1m каждый раз на один шаг с каждым разом выполняя корректировку коэффициентов (bi,k)j. При достижении блоками 202 и 203 числа сдвигов = L2-L1 - т.е. достижения конца поданных на обучение выборок из рядов MM0m, MD0m, MD1m при значении параметра W>1 производится повтор всех предыдущих операций (новая эпоха обучения). Операции продолжаются до тех пор, пока число новых эпох не достигнет заданного ранее параметра W, либо не поступит сигнал от блоков 205 или 304, свидетельствующих о достижении успеха в обучении. Блок оценки ошибки 205 как и блок 304 позволяет производить визуализацию достигнутой точности обучения в виде вывода значения ошибки, как в цифровом виде в форме значения среднеквадратичного отклонения выходного сигнала блока от тестовых значений так и в графическом виде. Если после прохождения всех заданных параметрами Q и W числа циклов приемлемое качество достигнуто не было, то необходимо провести корректировку параметров SPEED, Q и W. Результатом использования Способа обучения ИНС по данному пункту изобретения является полный набор весовых синаптических коэффициентов (bi,k)j

Способ по п. 5 изобретения - способ построения прогноза с использованием синаптических весов ИНС, прошедшей процедуру обучения. Способ по данному пункту изобретения заключается в рандомизации длин интервальных отрезков, параметры которых, а именно - параметр значения времени, соответствующего концу интервального отрезка - величина, представляющая собой сигнал, подаваемый на вход 1 блока 302 Подсистемы 105 и длина самого интервального отрезка в качестве приращения параметра времени - величина, представляющая собой сигнал, подаваемый на вход 2 блока 302 Подсистемы 105, используются для построения прогноза. Процедура производится из соображения, что зачастую сложно получить идеальное обучение ИНС-часто разные уровни сигналов входа дают разные уровни ошибок, даже если в среднем ошибка была засчитана как соответствующая критерию окончания обучения. Таким образом, для минимизации ошибки прогноза в качестве сигналов входа необходимо использовать выборки, значения которых на следующем шаге отличаются от значений на предыдущем шаге. Для этого блоком 301 формирования случайных длин отрезков Подсистемы 105 формируется ряд, квази-случайных временных параметров AS - в этой реализации изобретения по формуле, где AS - параметр времени конца i-го временного интервала, а второе слагаемое - является длиной i-го временного интервального отрезка, и рассчитывается как верхняя граница от частного случайного числа, распределенного от 0 до 6 и другого случайного числа распределенного от 0 до 6 плюс 1. В других реализациях данного изобретения расчет длин интервальных отрезков для прове6дения процедуры прогнозирования может быть рассчитан другим способом. Далее формируются соответствующие построенным отрезкам параметры, которые проходят процедуру форматирования и шифрования в блоке 103 Системы прогнозирования значений временного ряда, затем подаются на входы блока 302 Подсистемы 105, в который загружены параметры bi,j прошедших полную процедуру обучения (корректировки) согласно Способу п. 3 настоящего изобретения. Далее - выходной сигнал из блока 302 Подсистемы 105 поступает на вход блока 303 Расшифровки метаданных Подсистемы 105, где проходит расшифровку и перевод из метаданных в реальные прогнозные приращения характеристики значения. Далее в блоке Записи и вывода результата 102 Системы прогнозирования значений временного ряда, согласно данной реализации изобретения восстанавливаются прогнозные значения характеристики на основе полученных прогнозных данных приращения этой характеристики. Результат прогнозирования выводятся в виде временного ряда, а также - графически.

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

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

Пусть у нас имеется временной ряд значений K(t) с известными значениями на отрезке t=[0,30], с дискретностью = 1.

Пусть K зависит от t через функцию x(x), представляющую из себя комбинацию тренда, гармонической функции случайного шума: Пусть зависимость K от x имеет следующий вид:

Графически зависимость K(t) представлена на Фиг. 5а). Будем считать то значения К при t>30 нам уже не известны На первом этапе строим ряды метаданных по Способу п. 2

Далее - готовим обучающую выборку для ИНС. В качестве входа на обучение ИНС пойдут зашифрованные по Способу п. 3 значения моментов времени (t), соответствующие концам новых интервальных отрезков MM0s, и длины этих отрезков MD0s в качестве значений приращений времени. И в качестве контрольного обучающего сигнала при обучении ИНС пойдут зашифрованные значения приращения характеристики К за временные интервалы, равные длинам новых отрезков - MD1s. Эти метаданные выглядят так:

Согласно Способу по п. 3 начинаем обучение ИНС. Пусть в нашем случае используется близкое к предельному количество новых отрезков. Для интервала t=[0,30] число отрезков будет равно 465. Берем L1=0, L2=462. Тогда пошаговая процедура ввода параметров обучения на ИНС начнется с нулевого индекса рядов MM0m, MD0m, MD1m.

В настоящей реализации изобретения рекомендуется начинать процесс обучения, с относительно больших значений параметра SPEED - из диапазона[0,1, 0,5] - и малых значений параметров Q и W.

Пусть SPEED=0.5, Q=2, W=2. Согласно этим параметрам каждая тройка из 462 значений рядов MM0m, MD0m, MD1m поучаствует в двойных циклах обучения - коррекции синаптических весов, а затем - дождавшись своей очереди после окончания двойных циклов для каждого из 462 других членов своего ряда, снова поучаствует в двойном обратном проходе ошибки.

Коррекция синаптических весов i-го нейрона скрытого слоя рассчитывается по формуле: , где g - индекс значений обучающих метаданных (от 0 до 462) и, OUT - значение выходного сигнала снятого с единственного (нулевого) нейрона выходного слоя для расположенных на g - м месте в своих рядах пары значений метаданных MM0m, MD0m, подающихся на вход ИНС.

В свою очередь,

где (OUT0,nj) - MD0mg как раз и представляет собой ошибку обучения, приходящую от блока 205, транслирующуюся от выходного нейрона к нейронам входного слоя через нейроны скрытого слоя.

Результат такого обучения в виде значений выходного сигнала, прошедшей 1-е тестовое обучение ИНС для каждого индекса входных параметров g - лежащего в пределах от 0 до 462, представлен на Фиг. 5б).

Выходной сигнал «мечется» от значений -1 до +1, Что означает полное «переобучение» ИНС из-за слишком большого параметра SPEED. Следующий подход необходимо сделать уменьшив SPPED в 10 раз. Для параметров:

(где QQ - соответствует Q).

Наблюдается картина, отраженная на Фиг 5.в): что означает сильное «недообучение» ИНС. Уровень выходного сигнала (красная кривая) очень сильно слабее контрольного (синего). Это значит, что входной сигнал проходя через синаптические связи ИНС очень слабо «регулирует» выход. Необходима очередная коррекция параметров обучения.

В этом случае рекомендуется в 10 раз увеличить параметр W

Результат (Фиг. 5г) лучше не стал. До сих пор - недообучение. Увеличиваем W еще на 25%, a Q - в 2 раза. Такую комбинацию параметров ноутбук с процессором AMD-RYZEN 5 с частотой 2000 МГЦ просчитывал порядка 4 минут.

Новая комбинация параметров

На Фиг. 5д), е) Показан как результат обучения ИНС - Фиг. 5д), так и прогноза: Фиг. 5 е) мы «проскочили» точку «равновесия» - сеть несильно, но переобучена, отклик превосходит контрольный сигнал, прогноз устремился в бесконечность. Тем не менее видно, что параметры Q и W подобраны почти корректно.

Вручную прощупаем точку равновесия: снизив на 1 значение W:

Результат - на - (Фиг. 6а), б). Уже - переобучение!

Значит фиксируем параметры Q и W на заданном уровне - Q=4 и W=24 и начинаем автоматический подъем по параметру SPEED с дискретностью 0.0001.

Блок контроля ошибки прогноза 304 Подсистемы 105 предлагает нам остановится уже на 2-й итерации при параметрах:

Результат показан на - Фиг. 6в), г).

На (Фиг. 6,г) видно, что линия нейросетевого прогноза - дает хорошую прогнозную экстраполяцию даже на интервалах - существенно превышающих отрезок обучения t=[0,30]

Найти положение равновесия можно и на других комбинациях параметров, например:

Результат показан на - Фиг. 6д), е).

Основной вывод о процессе обучения: Процесс обучения не может быть полностью автоматизирован, т.к. оператор вручную должен провести «грубую» совместную настройку 3-х параметров - SPEED, Q и W. Нащупать факт прохождения «равновесия» а затем - тонкую настройку по одному из трех параметров проводить уже автоматически, пользуясь критерием остановки обучения с блока 205 Подситемы 104 или блока 304 Подсистемы 105. На приведенных примерах демонстрировалась регрессия временного ряда по временной шкале t с введением плавающих длин отрезков. Задача существенно упрощается, если требуется провести регрессию характеристики K по переменной х, не линейно зависящей от t. Ниже дана иллюстрация высочайшей точности прогноза параметра K не по известным значениям t, а по известным значениям X(t).

Тестирование алгоритма проводится на сравнении с результатами, полученными аппроксимацией полиномиальными/экспоненциальными функциями, построенными по алгоритму оптимизации Левенберга - Марквардта.

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

Ниже проиллюстрировано качество прогноза нейросети из трех слоев (входной-скрытый-выходной) длиной слоя 5 нейронов и параметрами

где QQ=1 - параметр «пакетности», W - число эпох, L2-L1=30 - длина временного отрезка обучения.

Результат показан на Фиг. 7.

Данная сеть очень хорошо аппроксимировала характеристику К в диапазоне 30-60, т.е. за пределами диапазона обучения - t=(0-30) (синие точки) Ей конкурировали - регрессионные аппроксимации, построенные по данным участка 0-30 с помощью полиномов 2-й степени (зеленая линия) - с помощью полиномов 3-й степени (фиолетовая линия) методом наименьших квадратов. Видно, что после выхода за пределы отрезка обучения - t=(0-30) прогнозы по полиномиальной регрессии начинают сильно терять точность. Более высокие порядки полиномов начинали терять точность с ужасающей скоростью. Более продвинутый конкурирующий метод прогнозирования с помощью степенных функций вида, f(x,b,c):=b⋅xc.

В котором параметры модели b,c находятся по алгоритму оптимизации Левенберга - Марквардта [4] показали более точный результат, чем полиномиальная аппроксимация, однако Прогноз, построенный по описанному в работе методу изобретения с использованием обученной согласно методу изобретения ИНС, оказался точнее.

В способе одним из самых важных моментов является способ обучения искусственной нейронной сети (ИНС), при котором производится корректировка набора весовых коэффициентов, характеризующих синоптические связи между нейронами разных слоев ИНС. Особенностью данного способа является уникальность подбора сигналов, как входных, подающихся на входные нейроны ИНС, так и контрольного - необходимого для оценки ошибки. Для формирования конечных сигналов начальные данные предварительно шифруются способом, описание которого будет приведено ниже. Также ниже будет подробно описан способ разбиения исходного временного ряда на временные интервальные отрезки различной длинны - формирование временной шкалы ряда. Согласно Способу по данному пункту изобретения на первый нейрон входного слоя ИНС подается зашифрованное значение моментов времени построенной, описанным ниже способом, временной шкалы ряда, соответствующее концу интервального отрезка для определенного шага временного ряда. На второй нейрон входного слоя ИНС подается зашифрованное значение, соответствующее длине интервального отрезка данного шага временной шкалы ряда, характеризующее приращение параметра времени. Контрольным сигналом является зашифрованное значение приращения прогнозируемой характеристики на временном интервале, с начальным и конечным моментами времени, соответствующих интервальному отрезку данного шага временной шкалы ряда. В процессе обучения будут использованы три основные параметра: скорость обучения SPEED, число циклов обучения с одинаковыми входным и контрольным сигналами - Q и число эпох - W, представляющее из себя число повторяющихся «проходов» по всей длине подготовленной для обучения ИНС выборки комбинаций входных и контрольного сигналов.

Рассмотрим этапы реализации способа обучения ИНС: на первом этапе строится искусственная нейронная сеть (ИНС) прямого распространения, содержащая входной слой нейронов, как минимум один скрытый слой нейронов, и выходной слой нейронов с начальным набором весовых синаптических коэффициентов заданных генератором случайных чисел в диапазоне от -0.5 до 0.5. В других реализациях - возможно присвоение других значений начальным синаптическим весам. Затем создаются разбиения исходной временной шкалы временного ряда интересующей характеристики на временные интервальные отрезки различной длины, например в соответствии со способом, который будет описан ниже, и строятся 3 новых ряда: ряд значения момента времени конца отрезка-в виде ряда MM0, приращение времени - как разница между значениями времени конца и начала интервального отрезка - в виде ряда MD0 и приращение самих известных значений временного ряда прогнозируемой характеристики на этом интервальном отрезке, как разница между ее значениями в моменты времени, соответствующие концу и началу интервального отрезка - в виде ряда MD1.

В настоящей реализации изобретения 2 первых ряда MM0 и MD0 используются как ряды обучающей выборки, а 3-й ряд - MD1 как ряд значений контрольной выборки. Затем все 3 ряда - MM0, MD0 и MD11 шифруются, например, способом, описание которого будет дано ниже, в ряды метаданных MMm0, MDm0 и MDm1. Ряды MMm0, MDm0 подаются на 1-й и 2-й нейроны входного слоя ИНС в качестве входного сигнала. После прохождения входного сигнала через ИНС прямого распространения с ее выходного нейрона для каждого шага рядов MMm0, MDm0 снимается выходной сигнал, используемый для вычисления разности между ним и, выступающим контрольным сигналом, значением ряда MDm1 на том же шаге. Данная разность является сигналом ошибки, используемая в процедуре обучения. Сигнал ошибки подается на все нейроны скрытого слоя, а затем от них - на все нейроны входного слоя, где стандартным методом обратного распространения ошибки, с использованием, например, оптимизации по методу «градиентного спуска», описанному в [3,5,6] в настоящей реализации изобретения, или другим известным методом в других реализациях изобретения, производится корректировка весовых синаптических коэффициентов Параметром скорости обучения является константа SPEED, значение которой на первом этапе задается произвольно из диапазона (0,1). После первого цикла обратного распространения сигнала и первой корректировки синаптических коэффициентов значения весов используются для построения верификационного прогноза. Входной сигнал использующий значения рядов MMm0 ,MDm0 того же шага временного ряда, как и до этого, снова проходит через ИНС с обновленными коэффициентами. Выходной сигнал с единственного нейрона выходного слоя после дешифровки используется в оценки точности прогноза, сравниваясь с известными значениями исходного временного ряда. В случае, если выполнен критерий точности обучения, например расхождение выходного и контрольного значения менее 1%, то обучение на данном шаге может быть остановлено и начата новая эпоха.

Если критерий точности обучения не выполнен, то обучение ИНС продолжается в соответствии с заданными значениями параметров Q - числа циклов обучения с одинаковыми входным и контрольным сигналами заданного числа эпох - W, представляющее из себя число повторяющихся «проходов» по всей длине подготовленной для обучения ИНС выборки комбинаций входных и контрольного сигналов. Если Q>1, то происходит повтор процедуры обучения (корректировки весов), т.е. повторение прямых проходов без изменения значений входного и контрольного сигналов, с изменением набора весов после каждого прохода методом обратного распространения ошибки - в данной реализации изобретения- с использованием оптимизации по методу «градиентного спуска». Таких циклов обучения производится либо Q раз, либо до достижения заданной точности обучения. Если число циклов обучения достигло параметра Q и обучение остановлено не было, то происходит переход на новые значения входных данных и контрольного значения, являющимися следующими по порядку значениями рядов MM0m, MD0m, MD1m. С этими входными данными так же, как и ранее - Q или менее раз проводится процедура обучения сети (корректировка тех же весовых синаптических коэффициентов) методом обратного распространения ошибки. Далее вводятся все новые и новые данные путем сдвига рядов MM0m, MD0m, MD1m каждый раз на один шаг с каждым разом выполняя корректировку коэффициентов. При достижении конца поданных на обучение выборок из рядов MM0m, MD0m, MD1m при значении параметра W>1 производится повтор всех предыдущих операций (новая эпоха обучения). Операции продолжаются до тех пор, пока число новых эпох не достигнет заданного ранее параметра W, либо не поступит сигнал свидетельствующий о достижении успеха в обучении. Если после прохождения всех заданных параметрами: Q - числом «проходов» на одном шаге, числом шагов по временным интервалам выборок, а также числом эпох W - общего числа циклов приемлемое точность обучения достигнуто не было, то необходимо провести корректировку параметров SPEED, Q и W.

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

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

Для подготовки обучающей выборки искусственной нейронной сети (ИНС) создаются дополнительные разбиения исходной временной шкалы ряда на дополнительные временные интервалы различной длины. Разбиение производится следующим образом.

На первом этапе, момент времени 1-го известного значения временного ряда - принимается за начало нового интервала, а в качестве длины нового интервала берется сумма длин первого и последующего временных интервалов между известными значениями исходного временного ряда прогнозируемой характеристики. Следующий интервальный отрезок строится путем сдвига начала нового интервала на один старый интервал вправо по временной шкале, т.е. на один шаг исходного временного ряда. Длина его также будет составлять два старых интервала - 2-й и 3-й. Новые отрезки строятся, пока концом последнего отрезка не окажется момент времени последнего известного значения. На втором этапе строятся интервальные отрезки, где длина отрезка еще увеличивается на длину одного старого интервала. Длина новых отрезков будет составлять уже 3 исходных интервала (3 шага ряда). Второй и последующие отрезки второго этапа строятся так же длиной в 3 старых интервала путем сдвига на один старый интервал. Сдвиги повторяются вплоть до момента достижения концом последнего нового отрезка момента времени последнего известного значения временного ряда. Этапы построения отрезков продолжаются, пока на последнем этапе не будет построен отрезок длиной в интервал времени между 1-м и последним известным значением исходного временного ряда. Таим образом, в нашем распоряжении оказывается построено интервальных отрезков. Например, для имеющегося временного ряда длинной в 31 известное значение, может быть построено 465 интервалов, для которых могут быть построены ряды метаданных, эффективно используемых при построении прогноза. Описанная процедура программно реализована в блоке 201 Создания продленных рядов Подсистемы 104.Системы прогнозирования значений временного ряда интересующей характеристики.

Кроме того, для построения прогноза производится рандомизация длин интервальных отрезков, программно реализованная в блоке 301 формирования случайных длин отрезков Подсистемы105, параметры которых, а именно - параметр значения времени, соответствующего концу интервального отрезка - величина, представляющая собой сигнал, подаваемый на первый нейрон входного слоя ИНС и длина самого интервального отрезка в качестве приращения параметра времени - величина, представляющая собой сигнал, подаваемый второй нейрон входного слоя ИНС. Процедура производится из соображения, что зачастую сложно получить идеальное обучение ИНС - часто разные уровни сигналов входа дают разные уровни ошибок, даже если в среднем ошибка была засчитана как соответствующая критерию окончания обучения. Таким образом, для минимизации ошибки прогноза в качестве сигналов входа необходимо использовать выборки, значения которых на следующем шаге отличаются от значений на предыдущем шаге. Для этого формируется ряд, квази-случайных временных параметров AS -в этой реализации изобретения по формуле, где AS- параметр времени конца i-го временного интервала, а второе слагаемое - является длиной i-го временного интервального отрезка, и рассчитывается как верхняя граница от частного случайного числа, распределенного от 0 до 6 и другого случайного числа распределённого от 0 до 6 плюс 1.В других реализациях данного изобретения расчет длин интервальных отрезков для проведения процедуры прогнозирования может быть рассчитан другим способом. Далее формируются соответствующие построенным отрезкам параметры, которые после прохождения процедуры форматирования и шифрования подаются на 1й и 2й входные нейроны обученной ИНС. Далее -выходной сигнал - с нейрона выходного слоя ИНС проходит расшифровку и перевод из метаданных в реальные прогнозные приращения значений исследуемой характеристики. Далее -восстанавливаются прогнозные значения характеристики. Результат прогнозирования выводятся в виде временного ряда, а также графически.

Описание Способа по п.3 формулы изобретения, в котором для наиболее эффективного обучения ИНС и построения прогноза данные проходят процедуру шифрования.

Данный способ программно реализован в блоке 103 Системы прогнозирования значений временного ряда. Для всех значений рядов данных M(t,j), где t-значение моментов времени, j - номер ряда, поступивших в блок 103 из блока Записи данных 101 Системы прогнозирования значений временного ряда определяется минимальное по модулю значение. Далее умножают все ряды на константу D - в этой реализации изобретения, при которой это выбранное минимальное значение становится больше 1, либо используют другие способы в других реализациях изобретения для приведения всех значений временных рядов к значениям больше 2. Далее выбирают максимальное по модулю из всех значений временных рядов поступивших в Блок 103, умноженных на D. Далее берут десятичный логарифм и определяют константу DD, при делении на которую значение десятичного логарифма от выбранного значения оказывается не более значения порога Р, которое должно быть меньше единицы. В данной реализации изобретения значение Р выбиралось =0,6 и может быть выбрано любым, желательно близким к 0.5, но заведомо меньшего 1 в других реализациях изобретения. Далее формируют ряды Ms(t,j), состоящие из функции sign(знака) каждого из значений рядов, находящихся в блоке 103. Далее значение каждого ряда M(t,j), умножается на соответствующее значение рядов знака Ms(t,j), образуя ряды только положительных значений Mp(t,j), далее от каждого значения рядов Mp(t,j), умноженных на D берется десятичный логарифм, делится на константу DD, и затем снова умножается на соответствующее значение рядов знака Ms(t,j), образуя ряды зашифрованных метаданных Mm(t,j), имеющих как положительный, так и отрицательный знаки, не превышающие по модулю значение порога Р, меньшее единицы, подготовленных для эффективного использования нейросетью. Полученные ряды метаданных записываются в блок шифрования метаданных 103 Системы прогнозирования значений временного ряда(фиг.1). Для минимизации ошибки прогноза в качестве сигналов входа ИНС в режиме обучения лучше всего использовать выборки, значения которых на следующем шаге случайным образом отличаются от значений на предыдущем шаге. Для этого в блоке 103 с помощью генератора случайных чисел генерируется ряд RD, равный по длине ранее записанным рядам Mm(t,j). Далее производится одновременная сортировка всех рядов Mm(t,j), и RD таким образом, чтобы значения RD встали в порядке возрастания - так производится случайное одновременное перемешивание рядов метаданных Mm(t,j). Новые ряды перезаписываются в блок 103 Системы прогнозирования значений временного ряда.

Описание Способа по п.4 формулы изобретения: Способ по п.1 изобретения в котором для остановки обучения ИНС используют в качестве критерия качества обучения ИНС не внутренний критерий Подсистемы 104 обучения ИНС, а критерий верификации качества прогноза Подсистемы 105.

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

Описание по п.5 формулы изобретения. Система прогнозирования значений временного ряда интересующей характеристики

Система прогнозирования значений временного ряда интересующей характеристики состоит из Блока 101 записи данных (Фиг .1), записывающего в память временной ряд исходных данных, выделяя отдельно ряд значений исследуемой характеристики и ряд моментов времени, соответствующих известным значениям этой характеристики, Блока 102 Записи и вывода результата прогнозирования, Блока 103 шифрования данных, реализующего шифрование и пересортировку данных обучающей и контрольных выборок в наиболее удобный формат для обучения ИНС, а также двух подсистем:

Подсистема обучения искусственной нейронной сети для прогнозирования значений временного ряда 104 на (Фиг.2), состоящая из Блока присваивания начальных значений синаптическим весам 200, в котором генерируется массив начальных синаптических весовых коэффициентов, Блока 201 Создания продленных рядов метаданных, реализующего разбиение на временные интервалы согласно Способу по п 2 настоящего изобретения, на основании которых будут строится обучающая (входных значений ИНС ) и контрольная (контрольных значений ИНС) выборки для обучения ИНС.

Также состоящей из блока 202Формирования входных сигналов, в который из блока 103 Системы прогнозирования значений временного ряда, зависимости от заданных параметров L1 и L2 поступают часть значений из рядов Mm(t,j1), где параметр времени t ограничен нижней границей L1 и верхней границей L2, а индекс j1 означает, что ряды относятся к рядам обучающих выборок. Блок 202 в зависимости от управляющих параметров Q и W Подсистемы104 отправляет в различной последовательности элементы рядов обучающих выборок, относящихся к одному моменту времени t, на входные нейроны Блока Прямого распространения сигнала в ИНС 204 Подсистемы104. Также состоящей из Блока контрольных обучающих сигналов 203 (фиг.2), в который из блока 103 , зависимости от заданных параметров L1 и L2 поступают часть значений из рядов Mm(t,j2), где параметр времени t ограничен нижней границей L1 и верхней границей L2, а индекс j2–означает, что ряды относятся к рядам Контрольных выборок. Блок 203 в зависимости от управляющих параметров Q и W Подсистемы 104 отправляет в различной последовательности элементы рядов Контрольных выборок, относящихся к одному моменту времени t, на Блок Оценки ошибки 205 Подсистемы 104. Также состоящая из блока прямого распространения сигнала искусственной нейронной сети (ИНС) 204 (фиг.2), основу которого составляет ИНС прямого распространения, состоящая в настоящей реализации из трех слоев (или более трех слоев в других реализациях) - одного входного, одного скрытого и одного выходного слоев, содержащих в данной реализации 23 нейрона входного слоя, 23 нейрона скрытого слоя, 1 нейрона выходного слоя и содержащего другое количество нейронов в слоях в других реализациях данного изобретения, но не менее 2-х нейронов во входном слое. Под искусственным нейроном понимается конструкция, состоящая из сумматора входных сигналов от нейронов предыдущего слоя или сигналов входа (для нейронов входного слоя), передающий суммированный сигнал через функцию активации, представляющую из себя гиперболический тангенс для нейронов скрытого и выходного слоев и константу=1 для нейронов входного слоя в настоящей реализации изобретения и возможные другие функции активации в других реализациях данного изобретения, на все нейроны следующего слоя. Переход выходных сигналов с нейронов одного слоя на нейроны следующего слоя происходит через синаптические связи между нейронами соседних слоев, которые на практике реализуются путём умножения выходного сигнала с i-го нейрона, направленного на k-й нейрон следующего слоя на коэффициент синаптической связи (фиг.4),

Таким образом, обозначив входной слой индексом j=0, скрытый слой индексом j=1, выходной слой индексом j=2,имеем формулу для расчета выходного сигнала всех нейронов скрытого слоя и единственного нейрона выходного слоя в виде:

где индекс i-показывает номер нейрона j-го слоя (j=1,2), причем для j=2 индекс i принимает единственное значение i=0. Данный выходной сигнал получен суммированием выходов k-х нейронов предыдущего слоя, умноженных на веса синапсов k-х нейронов предыдущего слоя ведущих к данному i-му нейрону и прошедшего через функцию активации – гиперболический тангенс.

В состав Подсистемы 104 также входит блок Оценки ошибки 205 (фиг.2), в котором происходит определение разности между выходными сигналами блока Прямого распространения сигнала 204 и контрольными сигналами от блока 202 блока Контрольных обучающих сигналов. При достижении установленной точности соответствия выходных сигналов контрольному, блок оценки ошибки останавливает процесс обучения. В состав Подсистемы 104 также входит блок 206 Обратного распространения ошибки, основу которого составляет расчётный модуль, работающий на известном методе обратного распространения ошибки, изложенном, например, в [3,5,6]. Конечным результатом работы Подсистемы 104 обучения ИНС является полный набор весовых синаптических коэффициентов входного и скрытого слоев, (j=0 - для входного слоя и j=1 - для скрытого слоя), т.к. у нейрона выходного слоя нет синапсов исходящей связи, которые блок 206 на каждом шаге обучения передает на Подсистему 105 работы ИНС в режиме прогноза.

Подсистема построения прогноза, называемая далее «Подсистема 105» состоящая из блока 301 Модерации входных данных Подсистемы105 в который подаются временные ряды из Блока Записи данных 101Системы прогнозирования значений временного ряда, из которых в соответствии со Способом по п.2 настоящего изобретения, подготавливаются выборка входного сигнала, который шифруется в метаданные в блоке Шифрования данных 103Системы прогнозирования значений временного ряда в соответствии со Способом по п.3 изобретения и поступает на блок прямого распространения сигнала ИНС 302 Подсистемы 105, который по своим функциям и программному решению полностью аналогичен Блоку 204 Подсистемы 104 и работает с ним одновременно, используя одинаковый набор весов но используя свой набор входных данных, взятых как из временного диапазона, соответствующего обучению, так и временного диапазона, на котором необходимо построение прогноза. Выходные значения блока 302 Подсистемы 2 подаются на блок Дешифрования данных303 Подсистемы105, который переводит прогнозные метаданные в реальные цифровые значения методом, обратным методу шифрования в блоке 103 Системы, Дешифрованные данные подаются на блок Записи и вывода результата прогноза 102 Системы прогнозирования значений временного ряда с использованием искусственной нейронной сети, который осуществляет цифровой и графический вывод результата прогноза и на блок 304 Контроля ошибки прогноза Подсистемв 105, который сравнивает полученные прогнозные значения на входных данных диапазона обучения с известными значениями исследуемой характеристики. В случае выполнения критерия установленной минимальной ошибки прогноза на диапазоне обучения, Блок 304 передает сигнал о остановке обучения на Подсистему 104Обучения искусственной нейронной сети. В этом случае, Подсистема может прекратить обучение, но может и продолжить обучение до выполнения ее внутреннего критерия прекращения обучения. Решение определяется установкой приоритета одного из критериев над другим перед началом обучения ИНС.

Похожие патенты RU2744041C1

название год авторы номер документа
Способ и устройство восстановления вектора кажущейся скорости ансамблем искусственных нейронных сетей 2021
  • Шилоносов Артем Владимирович
RU2792685C1
СПОСОБ ДИАГНОСТИРОВАНИЯ ИНФОРМАЦИОННО-ПРЕОБРАЗУЮЩИХ ЭЛЕМЕНТОВ БОРТОВОГО ОБОРУДОВАНИЯ ВОЗДУШНОГО СУДНА НА ОСНОВЕ МАШИННОГО ОБУЧЕНИЯ 2022
  • Букирёв Александр Сергеевич
  • Ипполитов Сергей Викторович
  • Крячков Вячеслав Николаевич
  • Савченко Андрей Юрьевич
RU2802976C1
МЕТОД РЕЗЕРВИРОВАНИЯ КАНАЛОВ КОНСТРУКТИВНО-ФУНКЦИОНАЛЬНЫХ МОДУЛЕЙ БОРТОВЫХ ЦИФРОВЫХ ВЫЧИСЛИТЕЛЕЙ ЛЕТАТЕЛЬНЫХ АППАРАТОВ НА ОСНОВЕ ИНТЕЛЛЕКТУАЛЬНОЙ ДИАГНОСТИЧЕСКОЙ СИСТЕМЫ В УСЛОВИЯХ ИНТЕГРИРОВАННОЙ МОДУЛЬНОЙ АВИОНИКИ 2021
  • Букирёв Александр Сергеевич
RU2778366C1
ЭКСПРЕСС-СПОСОБ ПРОГНОЗИРОВАНИЯ ПОЖАРООПАСНЫХ СВОЙСТВ АНТРАХИНОНА И КРАСИТЕЛЕЙ НА ЕГО ОСНОВЕ С ИСПОЛЬЗОВАНИЕМ МОЛЕКУЛЯРНЫХ ДЕСКРИПТОРОВ И ИСКУССТВЕННЫХ НЕЙРОННЫХ СЕТЕЙ 2018
  • Королев Денис Сергеевич
RU2692241C1
СПОСОБ ОБЕСПЕЧЕНИЯ УСТОЙЧИВОСТИ СЕТЕЙ СВЯЗИ В УСЛОВИЯХ ВНЕШНИХ ДЕСТРУКТИВНЫХ ВОЗДЕЙСТВИЙ 2008
  • Стародубцев Юрий Иванович
  • Гречишников Евгений Владимирович
  • Комолов Дмитрий Викторович
RU2379753C1
ЭКСПРЕСС-СПОСОБ ПРОГНОЗИРОВАНИЯ ПОЖАРООПАСНЫХ СВОЙСТВ ПРЕДЕЛЬНЫХ АЛЬДЕГИДОВ С ИСПОЛЬЗОВАНИЕМ МОЛЕКУЛЯРНЫХ ДЕСКРИПТОРОВ И ИСКУССТВЕННЫХ НЕЙРОННЫХ СЕТЕЙ 2018
  • Королев Денис Сергеевич
RU2672268C1
СПОСОБ НЕЙРОСЕТЕВОГО ПРОГНОЗИРОВАНИЯ ИЗМЕНЕНИЯ ЗНАЧЕНИЙ ФУНКЦИИ С ЕЁ ПРЕДВАРИТЕЛЬНОЙ ВЕЙВЛЕТ-ОБРАБОТКОЙ И УСТРОЙСТВО ЕГО ОСУЩЕСТВЛЕНИЯ 2015
  • Белов Алексей Анатольевич
  • Ермолаев Валерий Андреевич
  • Кропотов Юрий Анатольевич
  • Проскуряков Александр Юрьевич
RU2600099C1
СПОСОБ ДИАГНОСТИКИ ТЕХНИЧЕСКОГО СОСТОЯНИЯ И ОЦЕНКИ ОСТАТОЧНОГО РЕСУРСА ЭЛЕКТРОМЕХАНИЧЕСКОГО АГРЕГАТА С АСИНХРОННЫМ ДВИГАТЕЛЕМ 2016
  • Жуковский Юрий Леонидович
  • Бабанова Ирина Сергеевна
  • Королёв Николай Александрович
RU2626231C1
Система и способ определения источника аномалии в кибер-физической системе, обладающей определенными характеристиками 2018
  • Лаврентьев Андрей Борисович
  • Воронцов Артем Михайлович
  • Филонов Павел Владимирович
  • Шалыга Дмитрий Константинович
  • Шкулев Вячеслав Игоревич
  • Демидов Николай Николаевич
  • Иванов Дмитрий Александрович
RU2724075C1
Способ обучения искусственной нейронной сети 2019
  • Аверьянова Юлия Александровна
  • Сташенко Вячеслав Владимирович
  • Строцев Андрей Анатольевич
RU2723270C1

Иллюстрации к изобретению RU 2 744 041 C1

Реферат патента 2021 года Способ и система для прогнозирования значений временного ряда с использованием искусственной нейронной сети

Изобретение относится к прогнозированию значений временного ряда с использованием искусственной нейронной сети (ИНС). Изобретение может быть использовано для решения широкого ряда задач, где требуется предсказание новых значений исследуемой характеристики по ее известным значениям в прошлом. Техническим результатом является повышение точности прогнозирования значений временных рядов произвольных характеристик. Способ и система прогнозирования временного ряда с использованием искусственной нейронной сети включают в себя: способ создания продленных рядов метаданных, способ шифрования данных для построения оптимальных выборок обучения ИНС, способ и подсистему обучения искусственной нейронной сети, подсистему работы ИНС в режиме прогноза, способ построения прогноза с использованием ИНС, прошедшей процедуру обучения. 2 н. и 3 з.п. ф-лы, 7 ил.

Формула изобретения RU 2 744 041 C1

1. Способ прогнозирования значений временного ряда интересующей характеристики, основанный на использовании предварительно обучаемой искусственной нейронной сети (ИНС) прямого распространения, содержащей входной слой нейронов, как минимум один скрытый слой нейронов, и выходной слой нейронов, для обучения которой записывают временной ряд исходных данных, выделяя отдельно ряд значений исследуемой характеристики и ряд моментов времени, строят искусственную нейронную сеть с начальным набором весовых синаптических коэффициентов, при этом для подготовки обучающей выборки искусственной нейронной сети (ИНС) создаются разбиения исходной временной шкалы ряда на временные интервальные отрезки различной длины, при этом для обучения ИНС используют три ряда: ряд значений момента времени конца отрезка, ряд приращений времени как разница между значениями времени конца и начала интервального отрезка и ряд приращений самих известных значений временного ряда прогнозируемой характеристики на этом интервальном отрезке как разница между ее значениями в моменты времени, соответствующие концу и началу интервального отрезка, причем в настоящей реализации изобретения 2 первых ряда используются как ряды обучающей выборки, а 3-й ряд - как ряд значений контрольной выборки, при этом после прохождения процедуры шифрования и преобразования в ряды метаданных, в соответствии с параметрами формирования входного сигнала ряды обучающей выборки, или их части, подаются в качестве входного сигнала прямого распространения при процедуре обучения ИНС, причем на первый нейрон входного слоя ИНС подается зашифрованное значение временной шкалы - моментов времени исходного временного ряда, соответствующее концу интервального отрезка определенного шага, а на второй нейрон входного слоя ИНС подается зашифрованное значение, соответствующее длине интервального отрезка, данного шага временного ряда, характеризующее приращение параметра времени, при этом контрольным сигналом является зашифрованное значение приращения прогнозируемой характеристики на временном интервале, с начальным и конечным моментами времени, соответствующих интервальному отрезку данного шага временного ряда, затем, после прохождения входного сигнала через ИНС прямого распространения, с ее выходного нейрона снимается выходной сигнал, вычисляется разность между выходным сигналом и контрольным сигналом, далее методом обратного распространения ошибки с использованием стандартного метода оптимизации, известного на данном уровне техники как метод градиентного спуска, производится корректировка весовых синаптических коэффициентов - обучение ИНС; далее с использованием трех основных параметров обучения, таких как скорость обучения, число циклов обучения с одинаковыми входным и контрольным сигналами и число эпох, представляющее из себя число повторяющихся «проходов» по всей длине подготовленной для обучения ИНС выборки комбинаций входных и контрольного сигналов, на ИНС вводятся все новые и новые данные путем сдвига двух первых рядов обучающей выборки и ряда контрольной выборки каждый раз на один шаг временного ряда, с каждым разом выполняя корректировку синаптических коэффициентов, что позволяет в результате получить корректировку набора синаптических весовых коэффициентов ИНС, обеспечивающих наиболее точный прогноз исследуемой характеристики; при этом для построения наиболее точного прогноза от обученной ИНС производят деление общего временного интервала, на котором требуются построение прогноза, на отрезки случайной длины, затем подаются зашифрованные значения моментов времени, соответствующие концам построенных интервальных отрезков случайной длины и зашифрованные значения длин самих интервальных отрезков в качестве приращения параметра времени - как сигналы входа ИНС, т.е. значениями, подающимися на первый и второй нейроны входного слоя обученной ИНС для построения прогноза, далее выходной сигнал ИНС с ее единственного выходного нейрона проходит расшифровку и перевод из метаданных в прогнозные значения характеристики на основе полученных прогнозных данных приращения этой характеристики.

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

3. Способ по п.1 изобретения, в котором для наиболее эффективного обучения ИНС и построения прогноза данные проходят процедуру шифрования.

4. Способ по п.1 изобретения, в котором для остановки обучения ИНС используют в качестве критерия качества обучения ИНС не внутренний критерий Подсистемы 104 обучения ИНС, а критерий верификации качества прогноза Подсистемы 105.

5. Система прогнозирования значений временного ряда интересующей характеристики, состоящая из связанных между собой блоков и подсистем: Блока 101 записи данных, записывающего в память временной ряд исходных данных, выделяя отдельно ряд значений исследуемой характеристики и ряд моментов времени, соответствующих известным значениям этой характеристики, а также моментов времени, на которых требуется построение прогноза по рассматриваемой характеристике, и из которого данные передаются в Блок 103 шифрования данных, реализующего шифрование и пересортировку данных обучающей и контрольных выборок, из которого данные в свою очередь передаются на подсистемы: Подсистему 104 Обучения ИНС и Подсистему 105 Работы ИНС в режиме прогноза, причем особенностью Подсистемы 104 Обучения ИНС является наличие блока формирования входных сигналов ИНС 202, состоящего из 2-х подблоков, на первый из которых может подаваться сигнал в виде значений временной шкалы исходного временного ряда, на второй из которых может подаваться сигнал в виде значений, соответствующих длине временного интервала, а также блока контрольного сигнала 203, на который может подаваться сигнал в виде значений приращения известных значений прогнозируемой характеристики; также данные из Блока 103 шифрования данных передаются на Подсистему 105 Работы ИНС в режиме прогноза с возможностью трансляции от Подсистемы 104 полного набора весовых синаптических коэффициентов в процессе их корректировки и возможностью трансляции на Подсистему 104 сигнала о достижении критерия точности прогноза и остановки обучения; причем после окончания процедуры обучения от Подсистемы105 Работы ИНС в режиме прогноза выходные данные передаются на Блок 102 Записи и вывода результата прогнозирования.

Документы, цитированные в отчете о поиске Патент 2021 года RU2744041C1

Способ приготовления лака 1924
  • Петров Г.С.
SU2011A1
US 6611726 B1, 26.08.2003
СПОСОБ КОМПЬЮТЕРИЗОВАННОГО ОБУЧЕНИЯ ОДНОЙ ИЛИ БОЛЕЕ НЕЙРОННЫХ СЕТЕЙ 2007
  • Минин Алексей
  • Мохов Илья
RU2459254C2
СПОСОБ НЕЙРОСЕТЕВОГО ПРОГНОЗИРОВАНИЯ ИЗМЕНЕНИЯ ЗНАЧЕНИЙ ФУНКЦИИ С ЕЁ ПРЕДВАРИТЕЛЬНОЙ ВЕЙВЛЕТ-ОБРАБОТКОЙ И УСТРОЙСТВО ЕГО ОСУЩЕСТВЛЕНИЯ 2015
  • Белов Алексей Анатольевич
  • Ермолаев Валерий Андреевич
  • Кропотов Юрий Анатольевич
  • Проскуряков Александр Юрьевич
RU2600099C1
СПОСОБ АДАПТИВНОГО ПРОГНОЗИРОВАНИЯ ОСТАТОЧНОГО РЕСУРСА ЭКСПЛУАТАЦИИ СЛОЖНЫХ ОБЪЕКТОВ И УСТРОЙСТВО ДЛЯ ЕГО ОСУЩЕСТВЛЕНИЯ 2013
  • Бекаревич Антон Андреевич
  • Будадин Олег Николаевич
  • Морозова Татьяна Юрьевна
  • Топоров Виктор Иванович
RU2533321C1

RU 2 744 041 C1

Авторы

Чернышев Леонид Сергеевич

Даты

2021-03-02Публикация

2019-09-10Подача