このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
predict
クラス: Autoencoder
学習済みの自己符号化器を使用した入力の再構成
入力引数
autoenc
— 学習済みの自己符号化器
Autoencoder
オブジェクト
学習済みの自己符号化器。Autoencoder
クラスのオブジェクトとして返されます。
Xnew
— 入力データ
行列 | イメージ データの cell 配列 | 1 つのイメージ データの配列
入力データ。サンプルの行列、イメージ データの cell 配列、または 1 つのイメージ データの配列として指定します。
各列が 1 つのサンプルを表す行列に対して自己符号化器 autoenc
に学習させる場合、Xnew
は各列が 1 つのサンプルを表す行列でなければなりません。
イメージの cell 配列に対して自己符号化器 autoenc
に学習させる場合、Xnew
はイメージ データの cell 配列または 1 つのイメージ データの配列でなければなりません。
データ型: single
| double
| cell
出力引数
Y
— 入力データ Xnew
の予測
行列 | イメージ データの cell 配列 | 1 つのイメージ データの配列
入力データ Xnew
の予測。イメージ データの行列または cell 配列として返されます。
Xnew
が行列の場合、Y
も行列になります。ここで、各列は 1 つのサンプル (観測値または例) に対応します。Xnew
がイメージ データの cell 配列の場合、Y
もイメージ データの cell 配列になります。各セルには 1 つのイメージのデータが含まれます。Xnew
が 1 つのイメージ データの配列の場合、Y
も 1 つのイメージ データの配列になります。
例
学習済みの自己符号化器を使用した連続的な測定値の予測
学習データを読み込みます。
X = iris_dataset;
学習データには、アヤメの花に関する次の 4 つの属性の測定値が含まれています。がく片の長さ、萼片の幅、花弁の長さ、花弁の幅。
符号化器の正の飽和線形伝達関数および複号化器の線形伝達関数を使用して、学習データに対して自己符号化器に学習させます。
autoenc = trainAutoencoder(X,'EncoderTransferFunction',... 'satlin','DecoderTransferFunction','purelin');
学習済みのネットワーク autoenc
を使用して測定値を再構成します。
xReconstructed = predict(autoenc,X);
予測した測定値を学習データセットの実際の値と共にプロットします。
for i = 1:4 h(i) = subplot(1,4,i); plot(X(i,:),'r.'); hold on plot(xReconstructed(i,:),'go'); hold off; end title(h(1),{'Sepal';'Length'}); title(h(2),{'Sepal';'Width'}); title(h(3),{'Petal';'Length'}); title(h(4),{'Petal';'Width'});
赤い点は学習データ、緑の円は再構成されたデータを表します。
スパース自己符号化器を使用した手書きの数字イメージの再構成
学習データを読み込みます。
XTrain = digitTrainCellArrayData;
学習データは 1 行 5000 列の cell 配列です。各セルには、手書きの数字の合成イメージを表す 28 行 28 列の行列が含まれます。
25 個のニューロンが含まれる隠れ層を使用して自己符号化器に学習させます。
hiddenSize = 25; autoenc = trainAutoencoder(XTrain,hiddenSize,... 'L2WeightRegularization',0.004,... 'SparsityRegularization',4,... 'SparsityProportion',0.15);
テスト データを読み込みます。
XTest = digitTestCellArrayData;
テスト データは 1 行 5000 列の cell 配列です。各セルには、手書きの数字の合成イメージを表す 28 行 28 列の行列が含まれます。
学習済みの自己符号化器 autoenc
を使用してテスト イメージ データを再構成します。
xReconstructed = predict(autoenc,XTest);
実際のテスト データを表示します。
figure; for i = 1:20 subplot(4,5,i); imshow(XTest{i}); end
再構成されたテスト データを表示します。
figure; for i = 1:20 subplot(4,5,i); imshow(xReconstructed{i}); end
バージョン履歴
R2015b で導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)