Feature extraction using convolution

From Ufldl

Jump to: navigation, search
m (Fast Feature Learning and Extraction)
Line 23: Line 23:
While in principle one can learn feature convolutionally over the entire image, the learning procedure becomes more complicated to implement and often takes longer to execute.  
While in principle one can learn feature convolutionally over the entire image, the learning procedure becomes more complicated to implement and often takes longer to execute.  
-
Hence, in practice, it is sometimes easier to learn features heuristically and simply extract convolutionally thereafter.  
+
Hence, in practice, it is faster and easier to learn features heuristically and simply extract convolutionally thereafter.  
The idea is to first learn some features on smaller patches (say 8x8 patches) sampled from the large image, and then to convolve these features with the larger image to get the feature activations at various points in the image. Convolution then corresponds precisely to the intuitive notion of translating the features. To give a concrete example, suppose you have learned features on 8x8 patches sampled from a 96x96 image. To get the convolved features, for every 8x8 region of the 96x96 image, that is, the 8x8 regions starting at <math>(1, 1), (1, 2), \ldots (89, 89)</math>, you would extract the 8x8 patch, and run it through your trained sparse autoencoder to get the feature activations. This would result in a set of 100 89x89 convolved features. These convolved features can later be '''[[#pooling | pooled]]''' together to produce a smaller set of pooled features, which can then be used for classification.  
The idea is to first learn some features on smaller patches (say 8x8 patches) sampled from the large image, and then to convolve these features with the larger image to get the feature activations at various points in the image. Convolution then corresponds precisely to the intuitive notion of translating the features. To give a concrete example, suppose you have learned features on 8x8 patches sampled from a 96x96 image. To get the convolved features, for every 8x8 region of the 96x96 image, that is, the 8x8 regions starting at <math>(1, 1), (1, 2), \ldots (89, 89)</math>, you would extract the 8x8 patch, and run it through your trained sparse autoencoder to get the feature activations. This would result in a set of 100 89x89 convolved features. These convolved features can later be '''[[#pooling | pooled]]''' together to produce a smaller set of pooled features, which can then be used for classification.  

Revision as of 11:40, 21 May 2011

Personal tools