- Select any layer from CNN architecture, preferably select the last layer before MLP. Since the layer closer to the output typically captures high-level, abstract features. This layer is often considered to have learnt the "latent representation" of the input data.
- Now you can apply any dimensionality reduction technique to reduce the dimensions of selected layer output to your desirable output.
Feature Extraction using pretrained CNN
8 次查看(过去 30 天)
显示 更早的评论
Hi there.
With the help of a pre-trained CNN, can we extract a certain number of features from an image dataset?
For example by using SqueezeNet,extract only 100 features from image dataset.
My point is that while there is a layer with a defined number of units, how can we extract a desirable(100) number of features from that layer?
I know we can change the layer's detail easily, but the reassembling of the network may result in an error due to the empty weights of some layers.
0 个评论
回答(1 个)
Jayanti
2024-8-27
编辑:Jayanti
2024-8-27
Yes, you can extract a specific number of features from an image dataset using a pre-trained CNN like “SqueezeNet”. But if you directly modify any layer to output a specific number of features (like 100) it can lead to issues.
Rather than changing the network architecture, you can use dimensionality reduction techniques like “PCA” and “t-sne”.
You can follow the below mentioned steps to extract the desirable features:
Hope it helps!
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Deep Learning Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!