Understanding Convolutions/理解卷积(2)

    随着分布式的交叉变小将收缩。

   通过在动画中利用这一技巧,的确可以可视化的理解积。

   使用这个方式,很多事情变得直观。

 让我们考虑一个非概率的问题。卷积有时用在音频处理。比如可能使用带有连个尖峰,其他地方是零的函数来制造一个回声些效果。当有两个尖峰的函数滑动,第一个峰尖第一次到达,将添加到输出信号,紧跟者添加第二个到达的峰到输出信号。

 更高维度的卷积

 卷积是一个非常普遍的方法。我们可以在更多的维度使用它。

 咱们再来考虑丢球的例子。现在,当它落下的时候,它的维度不在是一个而是两个。

 

 卷积和上面的一样:
                                                                            (f*g)(c) = \sum_{a+b=c}^{ } f(a).g(c-a)

 此外,a,b是向量。更简洁的:
                    (f*g)(c1,c2) = \sum_{a1+b1=c1, a2+b2=c2}^{ } f(a1,a2).g(b1,b2)

 或者标准的定义:
                 (f*g)(c1,c2) = \sum_{a1,a2}^{ } f(a1,a2).g(c1-a1,c2-a2)

   像之前的一维卷积,我们可以设想一个二维卷积为一个函数在另一个上面滑动,进行相乘和相加。

 对于这个比较普遍的应用是图像处理。我们可以设想一个图片是二维函数。许多重要的图片转换就是依赖一个本地称为“kernel”的函数进行卷积卷积。

核心函数滑动到图片的每个位置,计算出所浮动区域的加权值作为新的像素。

比如,通过平均一个3x3的像素区域可以模糊话模糊化一个图片。为做到这一点,我们的kernel函数在每个像素上去值的1/9。

    可以通过在邻元素取1,-1的值其他区域取0来区分边界。

卷积神经网络 

    那卷及和卷及神经网络什么联系呢?

    设想有{x_n}输入和{{y_n}}输出,正像上面讨论的一样:
 

 正像我们观察的,我们可以根据输入来表示输出:
                 σσ(w_0 * x_0 + w_1 * x_1 + ....+b)(w_0 * x_0 + w_1 * x_1 + ....+b)

    这里x_0,x_1,x_2是输入。权重w_0 ,w_1表示神经网络如何和输入联系的。负值意味着一直神经元的触发,正的则是刺激神经元。权重是神经元的核心,控制神经的行为.3 也就是说多个神经元行为相同的话,也就是他们的权重相同。

 正是因为神经元的结构,权重描述和如上说的相同的特点,卷积能帮够处理这些。

 经典的,我们一次性的在一层表示所有的神经元.这个技巧的关键点是有个W矩阵:
                                                                  y=σ(Wx+b)
 例如,我们可以得到:
                 y_0 = \delta (w_0_,_0 * x_0 + w_0_,_1 * x_1 +w_0_,_2 * x_2 ....)

                                                             y_1 = \delta (w_1_,_0 * x_0 + w_1_,_1 * x_1 +w_1_,_2 * x_2 ....)

   矩阵的每一行表示一个神经元与它的输入联系的权重。

   回到卷积层,但是,因为是多个复制的相同神经元权重重复出现在多个位置。

   /**空间不足,接下**/

猜你喜欢

转载自blog.csdn.net/liubin192837/article/details/81171059
今日推荐