Feature extraction using convolution

From Ufldl

Jump to: navigation, search
(Convolutions)
(Convolutions)
Line 86: Line 86:
Formally, given some large <math>r \times c</math> images <math>x_{large}</math>, we first train a sparse autoencoder on small <math>a \times b</math> patches <math>x_{small}</math> sampled from these images, learning <math>k</math> features <math>f = \sigma(W^{(1)}x_{small} + b^{(1)})</math> (where <math>\sigma</math> is the sigmoid function), given by the weights <math>W^{(1)}</math> and biases <math>b^{(1)}</math> from the visible units to the hidden units. For every <math>a \times b</math> patch <math>x_s</math> in the large image, we compute <math>f_s = \sigma(W^{(1)}x_s + b^{(1)})</math>, giving us <math>f_{convolved}</math>, a <math>k \times (r - a + 1) \times (c - b + 1)</math> array of convolved features.  
Formally, given some large <math>r \times c</math> images <math>x_{large}</math>, we first train a sparse autoencoder on small <math>a \times b</math> patches <math>x_{small}</math> sampled from these images, learning <math>k</math> features <math>f = \sigma(W^{(1)}x_{small} + b^{(1)})</math> (where <math>\sigma</math> is the sigmoid function), given by the weights <math>W^{(1)}</math> and biases <math>b^{(1)}</math> from the visible units to the hidden units. For every <math>a \times b</math> patch <math>x_s</math> in the large image, we compute <math>f_s = \sigma(W^{(1)}x_s + b^{(1)})</math>, giving us <math>f_{convolved}</math>, a <math>k \times (r - a + 1) \times (c - b + 1)</math> array of convolved features.  
 +
 +
【初译】
 +
 +
如果给出了大尺寸的<math>r \times c</math>的图像,定义为<math>x_{large}</math>,我们首先会把一个稀疏自编码训练加载到从大尺寸图像中抽取<math>a \times b</math>的小尺寸图像<math>x_{small}</math>的样本上,学习到<math>k</math>个特征,<math>f = \sigma(W^{(1)}x_{small} + b^{(1)})</math>, 这里<math>\sigma</math>是一个sigmoid型函数(''*译者按:即f(x)=1/(1+e-x),是神经元的非线性作用函数,参见人工神经网络的学习算法:BP算法''*),其中权重<math>W^{(1)}</math>和偏差<math>b^{(1)}</math>来自于可见单元和隐含单元(''*译者按:学习就是逐渐调整权值和偏差值使得实际输出与期望输出一致,当输入层有N个神经元,隐含层有K个神经元,输出层有M个神经元,则Xj是输入层神经单元j的输入,Hj是隐含层神经元j的输出,Fj为输出层神经元j的实际输出,Rj为输出层神经元j的期望输出,前一层的输出即为后一层的输入。参考[http://www.edatech.com/files/file8.htm] ,这里Wji是可见层神经元i与隐含层神经元j之间的连接权值,bji是可见层神经元i与隐含层神经元j之间的连接的实际输出和期望输出之间的偏差。*'')对于每一个<math>a \times b</math>大小的小图像<math>x_s</math>,我们可以计算出对应的值<math>f_s = \sigma(W^{(1)}x_s + b^{(1)})</math>,对这些<math>f_{convolved}</math>值做卷积,就可以得到<math>k \times (r - a + 1) \times (c - b + 1)</math>个卷积后的特征的矩阵。
 +
 +
【一审】
 +
 +
假设给定了<math>r \times c</math>的大尺寸图像,将其定义为<math>x_{large}</math>。首先通过从大尺寸图像中抽取的<math>a \times b</math>的小尺寸图像样本<math>x_{small}</math>训练稀疏自编码,计算<math>f = \sigma(W^{(1)}x_{small} + b^{(1)})</math>(<math>\sigma</math>是一个sigmoid型函数)得到了<math>k</math>个特征, 其中<math>W^{(1)}</math>和<math>b^{(1)}</math>是可视层单元和隐含单元之间的权重和偏差值。对于每一个<math>a \times b</math>大小的小图像<math>x_s</math>,计算出对应的值<math>f_s = \sigma(W^{(1)}x_s + b^{(1)})</math>,对这些<math>f_{convolved}</math>值做卷积,就可以得到<math>k \times (r - a + 1) \times (c - b + 1)</math>个卷积后的特征的矩阵。

Revision as of 03:20, 9 March 2013

Personal tools