mapstd

Матрицы процесса путем отображения средних значений каждой строки с 0 и отклонений к 1

Синтаксис

[Y,PS] = mapstd(X,ymean,ystd)
[Y,PS] = mapstd(X,FP)
Y = mapstd('apply',X,PS)
X = mapstd('reverse',Y,PS)
dx_dy = mapstd('dx_dy',X,Y,PS)

Описание

Матрицы процессов mapstd путем преобразования среднего и стандартного отклонения каждой строки к ymean и ystd.

[Y,PS] = mapstd(X,ymean,ystd) берет X и дополнительные параметры,

X

N-by-Q матрица

ymean

Среднее значение для каждой строки Y (значение по умолчанию 0),

ystd

Стандартное отклонение для каждой строки Y (значение по умолчанию равняется 1),

и возвращается

Y

N-by-Q матрица

PS

Настройки процесса, которые позволяют сопоставимую обработку значений

[Y,PS] = mapstd(X,FP) берет параметры в качестве struct: FP.ymean, FP.ystd.

Y = mapstd('apply',X,PS) возвращает Y, учитывая X и настройки PS.

X = mapstd('reverse',Y,PS) возвращает X, учитывая Y и настройки PS.

dx_dy = mapstd('dx_dy',X,Y,PS) возвращает противоположную производную.

Примеры

Здесь вы форматируете матрицу так, чтобы минимальные и максимальные значения каждой строки были сопоставлены со средним значением по умолчанию и STD 0 и 1.

x1 = [1 2 4; 1 1 1; 3 2 2; 0 0 0]
[y1,PS] = mapstd(x1)

Затем, примените те же настройки обработки к новым значениям.

x2 = [5 2 3; 1 1 1; 6 7 3; 0 0 0]
y2 = mapstd('apply',x2,PS)

Инвертируйте обработку y1, чтобы получить x1 снова.

x1_again = mapstd('reverse',y1,PS)

Больше о

свернуть все

Нормируйте сетевые входные параметры и цели Используя mapstd

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

[pn,ps] = mapstd(p);
[tn,ts] = mapstd(t);

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

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

an = sim(net,pn);
a = mapstd('reverse',an,ts);

Сетевой вывод an соответствует нормированным целям tn. Ненормированный сетевой вывод a находится в тех же модулях как исходные цели t.

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

pnewn = mapstd('apply',pnew,ps);
anewn = sim(net,pnewn);
anew = mapstd('reverse',anewn,ts);

Для большинства сетей, включая feedforwardnet, эти шаги выполнены автоматически, так, чтобы вы только использовали команду sim.

Алгоритмы

Это принято, что X имеет только конечные действительные значения, и что элементы каждой строки не все равны.

y = (x-xmean)*(ystd/xstd) + ymean;

Смотрите также

| |

Представленный в R2006a

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