官术网_书友最值得收藏!

Convolutional neural networks

Using backpropagation, we are now able to train large networks automatically. This has led to the development of increasingly complex neural network architectures. One example is the convolutional neural network (CNN). There are mainly three types of layers in a CNN: the convolutional layer, the pooling layer, and the fully-connected layer. The fully-connected layer is identical to the standard neural network discussed previously. In the convolutional layer, weights are part of convolutional kernels. Convolution on a two-dimensional array of image pixels is defined as the following:

Where f(u, v) is the pixel intensity of the input at coordinate (u, v), and g(x-u, y-v) is the weight of the convolutional kernel at that location.

A convolutional layer comprises a stack of convolutional kernels; hence the weights of a convolutional layer can be visualized as a three-dimensional box as opposed to the two-dimensional array that we defined for fully-connected layers. The output of a single convolutional kernel applied to an input is also a two-dimensional mapping, which we call a filter. Because there are multiple kernels, the output of a convolutional layer is again a three-dimensional box, which can be referred to as a volume.

Finally, the pooling layer reduces the size of the input by taking m*m local patches of pixels and outputting a scalar. The max-pooling layer takes m*m patches and outputs the greatest value among the patch of pixels.

Given an input volume of the (32, 32, 3) shape—corresponding to height, width, and depth (channels)—a max-pooling layer with a pooling size of 2x2 will output a volume of the (16, 16, 3) shape. The input to the CNN are usually images, which can also be viewed as volumes where the depth corresponds to RGB channels.

The following is a depiction of a typical convolutional neural network:

Figure 7: An example convolutional neural network
主站蜘蛛池模板: 自贡市| 遵义县| 陇川县| 伊春市| 微山县| 新宁县| 平果县| 慈溪市| 灯塔市| 武安市| 银川市| 洛浦县| 万盛区| 耒阳市| 肃南| 乡城县| 乐昌市| 葵青区| 兴宁市| 塘沽区| 盐亭县| 托克托县| 乌兰县| 清新县| 商洛市| 西畴县| 新干县| 临澧县| 惠州市| 道孚县| 临泉县| 清新县| 黔江区| 万宁市| 延川县| 通渭县| 太白县| 永清县| 吴桥县| 繁峙县| 保山市|