Pooling processing method and system applied to convolutional neural network
AssigneeTencent Technology (Shenzhen) Company Limited
InventorsXiaoyu Yu, Yuwei Wang, Bo Zhang, Lixin Zhang
Life of this patent
Estimating the term…
Loading patent…
AssigneeTencent Technology (Shenzhen) Company Limited
InventorsXiaoyu Yu, Yuwei Wang, Bo Zhang, Lixin Zhang
Estimating the term…
This application discloses a pooling processing method, applied to a pooling processing system of a convolutional neural network. The pooling processing system includes a first storage device, a data region, a pooling computation kernel, and a pooling controller. The method includes: reading, by the pooling controller, k pieces of feature data from the first storage device in each reading cycle, the k pieces of feature data being components in a feature map generated by a convolution operation of the convolutional neural network, and k being an integer greater than 1; writing, by the pooling controller, the k pieces of feature data read from the first storage device into the data region, wherein the k pieces of feature data form one group among n groups of k pieces of data with each group arranged in a first dimension and the n groups arranged in a second dimension, wherein the n groups of k pieces of data are written into the data region in an updating cycle, wherein a duration of the updating cycle is n times a duration of the reading cycle, and wherein n cis an integer greater than 1; and transmitting, after the updating cycle is ended, data in the data region to the pooling computation kernel to perform a pooling operation, wherein the data in the data region comprises the n groups of k pieces of data and last m groups of data from a previous updating cycle with each group along the second dimension, wherein the last m groups of data are temporarily stored in the data region for use in pooling calculation by the pooling computation kernel in a next updating cycle. The technical solution in this application reduces the number of storage, numbers of reading and writing due to data reuses, and improves the efficiency of pooling processing.
A pooling processing method applied to a convolutional neural network, the method being performed by a pooling processing system of the convolutional neural network, the pooling processing system comprising a first storage device, a data region, a pooling computation kernel, and a pooling controller, the pooling processing method comprising:
A pooling processing system of a convolutional neural network, the pooling processing system comprising
A computer device of a convolutional neural network, comprising a processor, a memory, and a field programmable gate array (FPGA) circuit, the FPGA circuit comprising a pooling apparatus, the pooling apparatus being part of a pooling processing system, the pooling processing system comprising a pooling controller, the pooling apparatus comprising a data region and a pooling computation kernel, the memory comprises a first storage device and another storage device, the another storage device storing at least one instruction, and the instruction being loaded and executed by the FPGA circuit to implement following operations:
Dependencies are inferred from the claim text.