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

Код документа: RU2459254C2

Чертежи

Показать все 11 чертежа(ей)

Описание

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

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

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

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

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

Эта задача решается независимыми пунктами формулы изобретения. Предпочтительные варианты осуществления изобретения определены в зависимых пунктах формулы изобретения.

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

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

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

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

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

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

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

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

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

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

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

вычисление скорости изменения упомянутых первых значений, генерируя при этом временной ряд вторых значений;

разложение временного ряда упомянутых вторых значений методом Разложения по Эмпирическим Модам, получая в результате несколько мод, причем каждая мода является временным рядом значений мод;

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

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

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

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

Фиг.1 - два варианта осуществления нейронных сетей, которые могут использоваться в способе, соответствующем изобретению;

Фиг.2 - две диаграммы, иллюстрирующие метод Разложения по Эмпирическим Модам, используемый согласно изобретению;

Фиг.3 - три диаграммы, иллюстрирующие состав сигнала, подлежащего Разложению по Эмпирическим Модам;

Фиг.4 - несколько диаграмм, иллюстрирующих результат Разложения по Эмпирическим Модам, выполненного над составным сигналом, показанным на фиг.3;

Фиг.5 - временной ряд значений, используемых для тестирования способа, соответствующего изобретению;

Фиг.6 - диаграмма, показывающая моды, выделенные методом Разложения по Эмпирическим Модам из временного ряда по фиг.5;

Фиг.7 - диаграмма, показывающая значения производных временного ряда по фиг.5;

Фиг.8 - диаграмма, показывающая значения мод, выделенные методом Разложения по Эмпирическим Модам из значений производных по фиг.7;

Фиг.9 - диаграмма, показывающая ошибку между суммой мод, показанных на фиг.8, и исходным сигналом, соответствующим производным, как показано на диаграмме на фиг.7;

Фиг.10 - диаграмма, показывающая входы, использованные в нейронной сети согласно одному варианту осуществления изобретения;

Фиг.11 - диаграмма, сравнивающая результаты прогнозирования согласно одному варианту осуществления изобретения с исходным сигналом; и

Фиг.12 - таблица, сравнивающая качество прогнозирования согласно варианту осуществления изобретения с качеством прогнозирования согласно способу из предшествующего уровня техники.

Согласно изобретению метод Разложения по Эмпирическим Модам комбинируется с искусственными нейронными сетями. В принципе, нейронные сети пригодны для различных задач. Эти задачи могут быть разделены на два класса, а именно аппроксимация и классификация. Как описано ниже, нейронные сети будут использоваться для прогнозирования временного ряда данных. В частности, финансовые данные, взятые из индекса Dow Jones, были использованы для испытания варианта осуществления изобретения. Проблема, возникающая при использовании таких данных, заключается в фильтрации сигнала, обеспечиваемого данными. Для того чтобы послать такие данные в нейронную сеть, будет генерироваться сигнал в «сыром» виде, то есть статистическое качество нейронного прогноза будет относительно низким. Хотя характер «шума» не известен в финансовых данных, необходимо осуществить поиск фильтра, который является адаптивным. Поэтому было использовано разложение сигнала методом Разложения по Эмпирическим Модам на функции эмпирических мод, как описано более детально ниже. Этот метод может интерпретироваться как фильтр, который обрабатывает привлекательные свойства при использовании в комбинации с искусственными нейронными сетями, а именно аддитивность и ортогональность генерируемых мод. Хотя способ, соответствующий изобретению, был тестирован с использование финансовых данных, этот способ в принципе применим к любому виду временного ряда данных, в частности данных, относящихся к техническим системам, таким как диагностика вибраций в технической системе.

На фиг.1 схематично показаны два варианта искусственных нейронных сетей, которые могут использоваться в способе, соответствующем изобретению. С левой стороны фиг.1 показан простой перцептрон 11, содержащий несколько входов х1, х2, …, xn, связанных через синоптические веса с нейронами 1, 2 и 3. Связи показаны линиями между входами и нейронами, и для иллюстративных целей некоторые линии обозначены соответствующими весами w11, w12, w13, wn1, wn2 и wn3. Кроме того, каждый нейрон 1, 2 и 3 ассоциирован с выходом у1, у2 и у3 соответственно. Сеть 11 является очень простой сетью, имеющей только один слой нейронов. Согласно изобретению могут быть использованы намного более сложные нейронные сети, имеющие несколько слоев нейронов. Эти сети называются сетями прямого распространения или многослойными перцептронами.

С правой сторона на фиг.1 показан другой тип сети 12, которая может использоваться во взаимосвязи с изобретением. Эта сеть 12 является рекуррентной нейронной сетью. Структура сети сходна структуре сети 11. В частности, сеть 12 имеет входы х1, х2, …, xn, три нейрона 1, 2, 3, связанные через веса с входами, и выходы у1, у2 и у3, каждый из которых ассоциирован с одним из нейронов 1, 2 и 3. Различие между сетью 11 и 12 заключается в наличии цепи обратной связи, обозначенной как 101 для нейрона 1, 102 для нейрона 2 и 103 для нейрона 3. Вследствие этого выход подается назад на вход каждого нейрона, и эта обратная связь приводит к наличию памяти в рекуррентной сети. Подобно сети 11, рекуррентная сеть 12 является очень простой сетью, и намного более сложные сети, имеющие несколько слоев, могут использоваться в описанном изобретении. В варианте осуществления, описанном ниже, используется специальная версия рекуррентной сети, а именно сеть Элмана. Эта сеть известна и поэтому детально не описывается.

В соответствии с изобретением хорошо известный метод Разложения по Эмпирическим Модам (также обозначаемый как EMD) был использован для генерации входа для нейронной сети. Для пояснения, описание этого метода представлено ниже. Метод Разложения по Эмпирическим Модам является адаптивным представлением нестационарных сигналов как суммы с нулевым средним компонент АМ-FM (АМ - амплитудно-модулированная, FM - частотно-модулированная). В соответствии с этим методом рассматриваются осцилляции в сигнале на локальном уровне. Для этого оценивается высокочастотная компонента в данном сигнале x(t) между двумя экстремумами, например между двумя минимумами t- и t+. Эта высокочастотная компонента, обозначенная как {d(t), t-≤t≤t+}, представляет так называемую локальную деталь, которая отвечает за осцилляцию, замыкающуюся на двух минимумах и проходящую через максимум, который всегда существует между двумя минимумами. Помимо высокочастотной компоненты d(t), исходный сигнал x(t) также содержит низкочастотную компоненту m(t) (также называемую «тренд») по отношению к высокочастотной компоненте. Следовательно, исходный сигнал x(t) может быть представлен как сумма высокочастотной и низкочастотной компонент в следующем виде:

x(t)=m(t)+d(t); t-≤t≤t+.

Для того чтобы извлечь моду методом Разложения по Эмпирическим Модам (EMD), извлечение высокочастотной компоненты применяется итеративным способом к детали d(t) до тех пор, пока сигнал m(t) не будет иметь нулевое среднее или среднее, близкое к нулю в соответствии с некоторым остановочным критерием. Таким образом, алгоритм извлечения моды заключается в следующем.

Определяются локальные экстремумы в исходном сигнале x(t), и вычисляются огибающие между минимумами и максимумами. Это этап показан на диаграмме 201 по фиг.2. Эта диаграмма показывает временной ряд периодического сигнала 202. На диаграмме 201, а также на диаграмме 202 абсцисса представляет время, а ордината представляет амплитуду сигнала. Определяются максимумы сигналов, причем некоторые из этих максимумов обозначены для иллюстративных целей как 203 на диаграмме 201. Аналогичным образом, определяются минимумы сигналов, причем некоторые из этих минимумов обозначены для иллюстративных целей как 204. Экстремумы должны извлекаться очень точно, и это приводит к передискретизации. Должны учитываться граничные эффекты, чтобы минимизировать ошибку на концах временного ряда, которая проявляется ввиду конечного числа отсчетов во временном ряде. Для снижения граничных эффектов добавляются несуществующие экстремумы. Этот метод добавления экстремумов хорошо известен в уровне техники и детально не будет описываться.

После определения максимумов и минимумов вычисляется огибающая 205, соединяющая соседние максимумы, и огибающая 206, соединяющая соседние минимумы. Это вычисление может выполняться методом аппроксимации, предпочтительно для аппроксимации используются кубические сплайны. В результате получается функция emin(t) для огибающей 206 минимумов и функция emax(t) для огибающей 205 максимумов. Затем вычисляется среднее между emin(t) и emax(t), то есть вычисляется следующая функция:

http://finance.yahoo.com

m(t) обозначено как функция 209 на диаграмме 201. На следующем этапе вычисляется деталь d(t)=x(t)-m(t). Этот остаток показан на диаграмме 207 по отношению к сигналу 202 и обозначен как 208. Вышеописанный способ повторяется на следующем шаге итерации с остатком 208, то есть вновь определяются огибающие, вычисляется среднее этих огибающих, и извлекается деталь путем определения разности между функцией 208 и средним. Как отмечено выше, итерации повторяются до тех пор, пока среднее m(t) не станет нулем или не будет находиться в окрестности нуля в соответствии с некоторым остановочным критерием. В результате извлекается первая «Intrinsic Mode Function» (далее ИМФ, важная функция) в форме остатка, существующего в конце итераций.

Функция ИМФ вычитается из исходного сигнала x(t), и вышеописанные итерации аналогичным образом выполняются для этого нового сигнала. В конце итераций извлекается вторая мода. Эти итерации могут повторяться несколько раз над разностью между исходным сигналом в начале извлечения предыдущей моды и предыдущей извлеченной функцией ИМФ, чтобы извлечь следующие моды. В конце метода EMD из исходного сигнала x(t) извлечено конечное число мод. Вышеописанный метод EMD является полностью автоматическим и адаптивным. Следует отметить, что в случае гармонических осцилляций, включающих высокую частоту и низкую частоту, метод EMD должен использоваться в локальном масштабе и не соответствует предопределенному фильтрованию полосы.

На фиг.3 показаны три диаграммы 301, 302 и 303, где абсцисса представляет время, а ордината - амплитуду сигнала. Диаграмма 301 показывает тональный сигнал с низкой частотой, диаграмма 302 показывает частотно-модулированный сигнал 305, представляющий шум, и диаграмма 303 представляет составной сигнал 306, полученный суммированием частотно-модулированного сигнала 305 с тональным сигналом 304. Результат применения Разложения по Эмпирическим Модам к сигналу 306 показан на фиг.4. В частности, фиг.4 показывает семь диаграмм, где на каждой диаграмме абсцисса представляет время, а ордината - амплитуду сигнала. Диаграммы, показанные на фиг.4, обозначены как 401, 492, 403, 404, 405, 406 и 407. Диаграммы с 401 по 406 относятся к модам, извлеченным методом Разложения по Эмпирическим Модам, а диаграмма 407 показывает остаток сигнала, остающийся в конце Разложения по Эмпирическим Модам. Как можно видеть из фиг.4, сигнал содержит две важные моды 401 и 402, а остальные моды с 403 по 406 могут рассматриваться как равные нулю. Очевидно, что исходный тональный сигнал 304 может быть извлечен как мода 402, а исходный частотно-модулированный сигнал 305 может быть извлечен как мода 401 из составного сигнала 306.

На фиг.5 показан временной ряд, использованный в одном варианте осуществления изобретения для прогнозирования будущих значений в этом временном ряду. В частности, на фиг.5 показано поведение финансового инструмента компании ALTRIA GROUP INC (обозначенного МО). Абсцисса на фиг.5 показывает время в сутках, а ордината указывает значение этого финансового инструмента. В соответствии с известным методом для нейронного прогнозирования запаздывающие во времени (лаговые) значения временного ряда использовались для предсказания будущих значений. Этот метод основан на реконструкции фазового аттрактора динамической системы внутри нейронной сети, тем самым извлечении закономерности развития системы во времени.

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

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

Это иллюстрируется на фиг.6. Абсцисса на этой диаграмме показывает номера мод от 1 до 10, а ордината относится к значениям мод, причем для каждой моды показана эволюция во времени значения моды в предварительно определенном временном окне. Эти моды извлечены из исходного сигнала, показанного на фиг.5. Мода с самой низкой частотой, т.е. мода с номером 10, имеющая частотный период длиннее, чем временное окно, имеет наивысшие значения, лежащие в пределах от 20 до примерно 60, как показано на фиг.6. В противоположность этому, значения мод для других мод намного ниже, т.е. максимальные значения мод для всех других мод с 1 по 9 намного меньше чем 10.

Кроме того, низкочастотные компоненты в сигнале по фиг.5 образуют тренд временного ряда, причем этот тренд не может быть удален посредством разложения, поскольку это повлияет на граничные эффекты, а также на другие эффекты, которыми нельзя пренебречь. Более того, вычитание мод приводит к сильным граничным эффектам, и, следовательно, прогноз даже на один день становится невозможным. Таким образом, изобретателями установлено, что невозможно прогнозировать временной ряд, оказывая влияние на исходный сигнал искусственным образом. Тем не менее, для того чтобы получить хорошие результаты, все входы должны иметь одни и те же значения в среднем. Для достижения этого метод Разложения по Эмпирическим Модам, выполняемый в соответствии с изобретением, применяется не к исходному сигналу, а к производной сигнала, то есть вычисляется скорость изменения во времени исходного сигнала. Это новое представление временного ряда позволяет снизить влияние низкочастотных компонент и дает в результате входные значения для нейронной сети одного и того же порядка.

На фиг.7 показана диаграмма, на которой абсцисса показывает время в сутках, а ордината соответствует значениям производной исходного сигнала, показанного на фиг.5. Сигнал, показанный на фиг.7, соответствует сигналу, над которым производится Разложение по Эмпирическим Модам. В результате Разложения по Эмпирическим Модам получают моды, показанные на фиг.8. Аналогично фиг.6, по оси абсцисс показаны разные моды от 1 до 10, а по оси ординат показаны значения мод. Как можно видеть из фиг.8, большинство мод имеют тот же самый порядок, и больше нет доминирующей низкочастотной моды.

Фиг.9 иллюстрирует ошибку вычислений метода Разложения по Эмпирическим Модам, примененного к значениям производных по фиг.7. Для получения ошибки вычислена сумма всех мод, и полученная сумма вычтена из сигнала по фиг.7. На графике, представленном на фиг.9, по оси абсцисс указано время в сутках, и для каждого дня представлена ошибка на шкале 10-16. Можно видеть, что ошибка очень мала и ею можно пренебречь. Следует отметить, что в случае если к временному ряду будут добавлены новые отсчеты, то единственность разложения нарушается, так как моды становятся другими, таким образом, необходимо переучивать искусственную нейронную сеть, получающую моды в качестве входов, каждый раз, как только получено новое значение ряда. Время переобучения сети на компьютере в среде Matlab (CPU: Celeron 1.3 RAM: DDR2 2 Гб) занимает 5 минут, а разложение сигнала на моды занимает 30 секунд. Следовательно, для оперативного прогнозирования на один день это время обучения не критично.

В соответствии с изобретением должно учитываться, что временной ряд обычно не является чисто Марковским, так что необходимо включать в качестве входов в нейронную сеть один или более лаговых векторов, т.е. одно или более значений производных в данное время и несколько более ранних временных шагов. Таким образом, вход в нейронную сеть включает моды для данного временного шага, т.е. в текущий день, а также набор лаговых векторов, которые являются значениями производных более ранних временных шагов. Фиг.10 показывает график, иллюстрирующий входы, используемые для нейронной сети, в соответствии с изобретением. По оси абсцисс на графике, представленном на фиг.10, показаны 15 различных входов для нейронной сети. Ордината указывает значение для каждого входа для данного временного окна. Первые входы с 1 по 9 являются модами, извлеченными из значений производных исходного сигнала. Входы с 10 по 15 являются лаговыми векторами, т.е. значениями производных для текущего временного шага и пяти более ранних временных шагов.

Как упомянуто выше, способ, соответствующий изобретению, был применен к временному ряду, показанному на фиг.5, который представляет значения финансового инструмента компании ALTRIA GROUP INC из индекса Dow Jones. Данные взяты с сайта. Данные показывают значение финансового инструмента для периода времени с 3 января 1995 по 17 апреля 2007 г. Нейронная сеть обучалась на тренировочном множестве, содержащем первые 2500 значений набора данных. Тестовое множество или проверочное множество содержало 400 значений с 2501 по 2900. Остальные 180 значений использовались как производственное множество (множество обобщения) для формирования прогноза.

Для проведения эксперимента использовалась нейронная сеть в форме комитета из рекуррентных сетей Элмана и результаты по комитету усреднялись по выходам всех сетей. Каждая сеть Элмана состояла из двух слоев нейронов, причем каждый слой имел десять нейронов. В качестве метода тренировки (оптимизации) для рекуррентной сети Элмана применялся метод оптимизации весов, в частности метод оптимизации весов под названием BFGS (Broyden-Fletcher-Goldfarb-Shanno). В качестве функций активации нейронной сети использовались тангенциальные функции. Как описано выше, входы сети являлись модами, извлеченными методом Разложения по Эмпирическим Модам из значений производных сигнала по фиг.5, а также некоторыми лаговыми значениями производных.

Результат способа прогнозирования на основе нейронных сетей в соответствии с изобретением представлен на диаграмме, показанной на фиг.11. Абсцисса на этом графике показывает 180 временных шагов производственного множества, упомянутого выше. Ордината показывает значения производных на каждом временном шаге. Диаграмма показывает полезный сигнал, т.е. исходные значения производных, подлежащие прогнозированию, линией 501, в то время как линия 502 показывает значения, полученные прогнозированием согласно способу, соответствующему изобретению. Как видно из фиг.11, имеет место хорошее совпадение между действительными значениями согласно линии 501 и прогнозированными значениями согласно линии 502.

Кроме того, было проведено сравнение нового способа, соответствующего изобретению, с традиционным способом прогнозирования на основе лаговых векторов. Оба способа были применены к производственному множеству данных. Для сравнения обоих способов для каждого способа вычислялись коэффициент детерминации, коэффициент корреляции, а также среднеквадратичная ошибка. Наивысшее значение коэффициента детерминации и коэффициента корреляции равно 1, и способ тем лучше, чем выше значения коэффициентов. В таблице на фиг.12 в столбце 601 показаны значения коэффициентов детерминации и корреляции и среднеквадратичная ошибка для нового способа, а в столбце 602 показаны соответствующие значения для традиционного способа на основе лаговых векторов. В строке 603 показаны соответствующие коэффициенты детерминации. В строке 604 показаны соответствующие коэффициенты корреляции. В строке 605 показана среднеквадратичная ошибка. Очевидно, что способ, соответствующий изобретению, лучше, чем традиционный способ. В частности, коэффициент детерминации способа, соответствующего изобретению, равен 0,92 по сравнению с значением 0,7 для способа лаговых векторов. Коэффициент корреляции нового способа, имеющий значение 0,95, также лучше, чем в традиционном способе, имеющем коэффициент 0,92. Кроме того, среднеквадратичная ошибка меньше при использовании способа, соответствующего изобретению. Ошибка в способе, соответствующем изобретению, имеет значение 0,08, в то время как традиционный способ имеет значение ошибки 0,13.

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

Реферат

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

Формула

1. Способ компьютеризованного обучения одной или более нейронных сетей на основе временного ряда данных, содержащего первые значения на последовательных временных шагах, причем временные ряды данных содержат данные, измеренные в технической системе, причем данные, измеренные в упомянутой технической системе, представляют собой данные вибрации, причем способ заключается в том, что:
генерируют временной ряд вторых значений, вычисляя скорость изменения упомянутых первых значений временного ряда данных;
подвергают Разложению по Эмпирическим Модам временной ряд упомянутых вторых значений, приводящему в результате к нескольким модам, причем каждая мода является временным рядом значений мод;
обучают одну или более нейронных сетей, причем каждая нейронная сеть содержит один или более искусственных нейронов, связанных
с одним или более первых входов для каждой моды для ввода значения моды на заданном временном шаге и одним или более вторых входов для ввода вторых значений на упомянутом заданном временном шаге и/или на одном или более временных шагах перед упомянутым заданным временным шагом;
по меньшей мере, с одним выходом для вывода второго значения на временном шаге после упомянутого заданного временного шага.
2. Способ по п.1, в котором упомянутые одна или более нейронных сетей содержат одну или более рекуррентных нейронных сетей.
3. Способ по п.2, в котором упомянутые одна или более рекуррентных нейронных сетей содержат рекуррентные сети Элмана.
4. Способ по любому из предыдущих пунктов, в котором упомянутые одна или более нейронных сетей содержат один или более перцептронов.
5. Способ по п.1, в котором упомянутую одну или более нейронных сетей обучают методом оптимизации весов, в частности методом Broyden-Fletcher-Goldfarb-Shanno.
6. Способ по п.1, в котором упомянутые одна или более нейронных сетей содержат множество нейронных сетей, имеющих общий выход, для вывода усредненного выхода упомянутого, по меньшей мере, одного выхода упомянутого множества нейронных сетей.
7. Способ по п.1, в котором в упомянутом методе Разложения по Эмпирическим Модам огибающую максимумов вторых значений и огибающую минимумов вторых значений аппроксимируют кубическими сплайнами.
8. Способ компьютеризованного прогнозирования значений временного ряда на основе одной или более нейронных сетей, обучаемых способом по любому из предыдущих пунктов, причем временные ряды данных содержат данные, измеренные в технической системе, причем данные, измеренные в технической системе, представляют собой данные вибрации, причем способ заключается в том, что:
генерируют временной ряд вторых значений, вычисляя скорость изменения упомянутых первых значений;
подвергают временной ряд упомянутых вторых значений Разложению по Эмпирическим Модам, получая в результате несколько мод, причем каждая мода является временным рядом значений мод;
вводят значения упомянутых мод на заданном временном шаге на упомянутые один или более первых входов упомянутой одной или более нейронных сетей и вводят одно или более вторых значений на заданном временном шаге и/или на одном или более временных шагов перед упомянутым заданным временным шагом на упомянутые один или более вторых входов упомянутой одной или более нейронных сетей, получая в результате, по меньшей мере, одно второе значение на временном шаге после упомянутого заданного временного шага на упомянутом, по меньшей мере, одном выходе упомянутой одной или более нейронных сетей.
9. Машиночитаемый носитель, содержащий части программного кода для выполнения способа по одному из предыдущих пунктов, когда упомянутые части программного кода исполняются на компьютере.

Авторы

Патентообладатели

Заявители

Публикация: 2012-08-20

Дата подачи заявки: 2007-04-27

0
0
0
0
Невозможно загрузить содержимое всплывающей подсказки.
Поиск по товарам