Main Content

encode

クラス: Autoencoder

入力データの符号化

説明

Z = encode(autoenc,Xnew) は、自己符号化器 autoenc を使用して、入力データ Xnew符号化したデータ Z を返します。

入力引数

すべて展開する

学習済みの自己符号化器。Autoencoder クラスのオブジェクトとして返されます。

入力データ。標本の行列、イメージ データの cell 配列、または 1 つのイメージ データの配列として指定します。

各列が 1 つの標本を表す行列に対して自己符号化器 autoenc に学習させる場合、Xnew は各列が 1 つの標本を表す行列でなければなりません。

イメージの cell 配列に対して自己符号化器 autoenc に学習させる場合、Xnew はイメージ データの cell 配列または 1 つのイメージ データの配列でなければなりません。

データ型: single | double | cell

出力引数

すべて展開する

autoenc で符号化されたデータ。行列として指定します。Z の各列は符号化された標本 (観測値) を表します。

データ型: single | double

すべて展開する

標本データを読み込みます。

X = digitTrainCellArrayData;

X は 1 行 5000 列の cell 配列です。各セルには、手書きの数字の合成イメージを表す 28 行 28 列の行列が含まれます。

学習データを使用して、隠れサイズが 50 の自己符号化器に学習させます。

autoenc = trainAutoencoder(X,50);

新しいイメージ データの復号化されたデータを符号化します。

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

Xnew は 1 行 5000 列の cell 配列です。Z は 50 行 5000 列の行列で、各列は新しいデータ Xnew にある 1 つの手書き数字のイメージ データを表します。

アルゴリズム

自己符号化器への入力がベクトル 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) はバイアス ベクトルです。

バージョン履歴

R2015b で導入