decode

Класс: Автоэнкодер

Декодируйте закодированные данные

Синтаксис

Описание

пример

Y = decode(autoenc,Z)возвращает декодированные данные Y, с использованием автоэнкодера autoenc.

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

расширить все

Обученный автоэнкодер, возвращенный trainAutoencoder функционирует как объект Autoencoder класс.

Данные, закодированные autoenc, заданный как матрица. Каждый столбец Z представляет закодированную выборку (наблюдение).

Типы данных: single | double

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

расширить все

Декодированные данные, возвращенные в виде матрицы или массива ячеек данных изображения.

Если автоэнкодер autoenc был обучен на массиве ячеек с данными изображений, затем Y также является массивом ячеек изображений.

Если автоэнкодер autoenc был обучен на матрице, затем Y также является матрицей, где каждый столбец Y соответствует одной выборке или наблюдению.

Примеры

расширить все

Загрузите обучающие данные.

X = digitTrainCellArrayData;

X представляет собой массив ячеек 1 на 5000, где каждая камера содержит матрицу 28 на 28, представляющую синтетическое изображение рукописной цифры.

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

hiddenSize = 15;
autoenc = trainAutoencoder(X,hiddenSize);

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

Xnew = digitTestCellArrayData;
features = encode(autoenc,Xnew);

Декодируйте закодированные данные с автоэнкодера.

Y = decode(autoenc,features);

Y представляет собой массив ячеек 1 на 5000, где каждая камера содержит матрицу 28 на 28, представляющую синтетическое изображение рукописной цифры.

Алгоритмы

Если вход автоэнкодера является вектором xDx, затем энкодер преобразует вектор x в другой вектор zD(1) следующим образом:

z=h(1)(W(1)x+b(1)),

где верхний индекс (1) указывает на первый слой. h(1):D(1)D(1) является передаточной функцией для энкодера, W(1)D(1)×Dx является весовой матрицей, и b(1)D(1) является вектором смещения. Затем декодер преобразует закодированное представление z назад в оценку исходного входного вектора, x, следующим образом:

x^=h(2)(W(2)z+b(2)),

где верхний индекс (2) представляет второй слой. h(2):DxDx - передаточная функция для декодера,W(1)Dx×D(1) является весовой матрицей, и b(2)Dx является вектором смещения.

См. также

|

Введенный в R2015b