approximateEntropy

Мера регулярности нелинейных временных рядов

Описание

пример

approxEnt = approximateEntropy(X) оценивает приблизительную энтропию равномерно дискретизированного сигнала временной области X путем восстановления пространства фаз. Аппроксимация энтропии является мерой для количественного определения количества регулярности и непредсказуемости колебаний во временных рядах.

пример

approxEnt = approximateEntropy(X,lag) оценивает приблизительную энтропию для временной задержки lag.

пример

approxEnt = approximateEntropy(X,[],dim) оценивает приблизительную энтропию для размерности вложения dim.

пример

approxEnt = approximateEntropy(X,lag,dim) оценивает приблизительную энтропию для временной задержки lag и размерность встраивания dim.

пример

approxEnt = approximateEntropy(___,Name,Value) оценивает приблизительную энтропию с дополнительными опциями, заданными одним или несколькими Name,Value аргументы в виде пар.

Примеры

свернуть все

В данном примере сгенерируйте два сигнала для сравнения - случайный сигнал xRand и совершенно регулярный сигнал xReg. Set rng на default для воспроизводимости случайного сигнала.

rng('default');
xRand = double(randn(100,1)>0);
xReg = repmat([1;0],50,1);

Визуализируйте случайные и регулярные сигналы.

figure;
subplot(2,1,1);
plot(xRand);
title('Random signal');
subplot(2,1,2);
plot(xReg);
title('Perfectly regular signal');

Figure contains 2 axes. Axes 1 with title Random signal contains an object of type line. Axes 2 with title Perfectly regular signal contains an object of type line.

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

Найдите приблизительную энтропию двух сигналов.

valueReg = approximateEntropy(xReg)
valueReg = 5.1016e-05
valueIrreg = approximateEntropy(xRand)
valueIrreg = 0.6849

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

В этом примере рассмотрим данные о положении квадрокоптера, следующего по круговому пути. Файл uavPositionData.mat содержит данные о положении x, y и z-направления, пройденные коптером.

Загрузите набор данных и визуализируйте путь квадрокоптера в 3D.

load('uavPositionData.mat','xv','yv','zv');
plot3(xv,yv,zv);

Figure contains an axes. The axes contains an object of type line.

В данном примере для расчета используйте только данные о положении в направлении X. Начиная с Lag неизвестно, оцените задержку используя phaseSpaceReconstruction. Задайте 'Dimension' по 3. The Dimension и Lag параметры требуются для вычисления приблизительной энтропии данных.

dim = 3;
[~,lag] = phaseSpaceReconstruction(xv,[],dim)
lag = 10

Найдите приблизительную энтропию с помощью Lag значение, полученное на предыдущем этапе.

approxEnt = approximateEntropy(xv,lag,dim)
approxEnt = 0.0386

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

Входные параметры

свернуть все

Равномерно дискретизированный сигнал временной области, заданный как вектор, массив или timetable. Если X имеет несколько столбцов, approximateEntropy вычисляет приблизительную энтропию путем лечения X как многомерный сигнал.

Если X задается как вектор-строка, approximateEntropy рассматривает его как одномерный сигнал.

Вложение размерности, заданное как скаляр или вектор. dim эквивалентно 'Dimension'пара "имя-значение".

Задержка, заданная в виде скаляра или вектора. lag эквивалентно 'Lag'пара "имя-значение".

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: ...,'Dimension',3

Размерность встраивания, заданная как разделенная разделенными запятой парами, состоящая из 'Dimension'и скаляром или вектором. Когда Dimension скаляром, каждый столбец в X реконструируется с помощью Dimension. Когда Dimension - вектор, имеющий ту же длину, что и количество столбцов в X, размерность восстановления для столбца i является Dimension(i).

Задайте Dimension на основе размерности системы. Для получения дополнительной информации о внедрении размерности см. phaseSpaceReconstruction.

Задержка в реконструкции пространства фаз, заданная как разделенная разделенными запятой парами, состоящая из 'Lag'и скаляром. Когда Lag скаляром, каждый столбец в X реконструируется с помощью Lag. Когда Lag - вектор, имеющий ту же длину, что и количество столбцов в Xзадержка восстановления для столбца i является Lag(i).

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

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

Значение по умолчанию Radius является,

  • 0,2 * отклонение (X), если X имеет один столбец.

  • 0,2 * sqrt (трассировка (cov (X))), если X имеет несколько столбцов.

Выходные аргументы

свернуть все

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

Для примера рассмотрим два двоичных сигнала S1 и S2,

S1 = [0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1];

S2 = [1 1 0 1 1 1 1 0 1 0 1 0 0 0 0 1];

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

Использование approximateEntropy как мера регулярности для количественного определения уровней сложности во временных рядах. Способность различать уровни сложности в наборах данных полезна в области техники для оценки отказа компонента путем изучения их вибрации и акустических сигналов или в клинической области, где, для образца, вероятность судорог предсказывается путем наблюдения шаблонов электроэнцефалографии (ЭЭГ).[2][3]

Алгоритмы

Аппроксимация энтропии вычисляется следующим образом,

  1. The approximateEntropy функция сначала генерирует Y1:N задержки восстановления для N точек данных с внедрением размерных m и задержкой τ.

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

    Ni=i=1,ikN1(YiYk<R)

    где 1 - функция индикации, а R - радиус подобия.

  3. Аппроксимация энтропии затем вычисляется как approxEnt=ΦmΦm+1 где,

    Φm=(Nm+1)1i=1Nm+1log(Ni)

Ссылки

[1] Pincus, Steven M. «Приблизительная энтропия как мера сложности системы». Труды Национальной академии наук. 1991 88 (6) 2297-2301; doi: 10.1073/pnas.88.6.2297.

[2] U. Rajendra Acharya, Filippo Molinari, S. Vinitha Sree, Subhagata Chattopadhyay, Kwan-Hoong Ng, Jasjit S. Suri. Автоматическая диагностика эпилептических ЭЭГ с помощью энтропий. Том 7, Выпуск 4, 2012, Страницы 401-408, ISSN 1746-8094.

[3] Caesarendra, Wahyu & Kosasih, P & Tieu, Kiet & Moodie, Craig. «Применение нелинейной экстракции признаков - пример исследования для низкоскоростного поворота подшипника условия мониторинга и прогноза». Международная конференция IEEE/ASME по передовой интеллектуальной мехатронике: мехатроника для благополучия человека, AIM 2013.1713-1718. 10.1109/AIM.2013.6584344.

[4] Канц, Х. и Шрайбер, Т. Нелинейные Временные ряды анализ. Кембридж: Cambridge University Press, 2003.

Введенный в R2018a