How do I find the features extracted from input data set using auto encoder?
11 ビュー (過去 30 日間)
古いコメントを表示
Input data has 34 features
I have used trainAutoencoder function to train the network
I used hidden layer of 10 neurons
I have used encode function to retrieve encoded data from input
But I am unable to map the 10 features in hidden layer to any of the 34 features in input because the encoder part of autoencoder has encoded the input
I need to identify which of the 10 features out of total of 34 features have been extracted. Please advise regarding how to proceed.
0 件のコメント
採用された回答
Pratyush Roy
2022 年 1 月 5 日
Hi Kusal,
In my understanding, you want to identify which of the input features has been extracted during the encoding process in an autoencoder.
Currently there might be no direct way to extract this information. However, as a workaorund you can consider exracting the encoder weights and biases using the EncoderWeights and EncoderBiases properties of the AutoEncoder object obtained afetr training the model.
The following code snippet might demonstrates how to obtain the biases and weights
autoenc = trainAutoencoder(X);
W = autoenc.EncoderWeights;
b = autoenc.EncoderBiases;
h = autoenc.EncoderTransferFunction;
The input(X) and the encoded vector(Z) are related to each other through the following relation:
This can help us to understand which of the input vector components have been extracted as part of the hidden output.
Hope this helps!
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Pattern Recognition and Classification についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!