Data identification, model building and training, feature extraction methods, systems and equipment

By introducing sequence structure and feature graph group division methods into the neural network model, the problem of low prediction accuracy of lightweight neural networks on mobile devices is solved, and efficient deployment and accuracy improvement are achieved on resource-limited devices.

CN112446459BActive Publication Date: 2025-09-16ALIBABA GROUP HOLDING LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN201910801297.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2019-08-28
Publication Date
2025-09-16
Estimated Expiration
2039-08-28

AI Technical Summary

Technical Problem

When existing lightweight neural networks are deployed on mobile devices, the network structure design is complex and inflexible, resulting in low prediction accuracy and making it difficult to meet application scenarios with limited resources and low latency requirements.

Method used

By introducing a sequence structure into the neural network model, the multiple feature maps output by the first network block are divided according to the number of groups, and the feature map groups are assigned to subsequent network blocks respectively. Flexible feature map group relationships are designed to meet the needs of different feature extraction stages.

Benefits of technology

The prediction accuracy of the neural network model is improved and the computational complexity is reduced, making it suitable for mobile devices with limited resources and achieving efficient deployment under low latency requirements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112446459B_ABST
    Figure CN112446459B_ABST
Patent Text Reader

Abstract

The embodiment of the present application provides a method, system and device for data identification, model construction and training, and feature extraction. The method includes: obtaining data to be processed; inputting the data to be processed into a trained neural network model to obtain an identification result; the neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model is used to: obtain the number of groups corresponding to the first network block; according to the number of groups, divide the multiple feature maps output by the first network block to obtain multiple feature map groups; assign the multiple feature map groups to the corresponding network blocks in the at least one second network block as components of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block. The technical solution provided by the embodiment of the present application can improve the flexibility of network design, and can also be flexibly designed according to the characteristics of each feature extraction stage to improve prediction accuracy.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a method, system and device for data identification, model building and training, and feature extraction. Background Art

[0002] With the development of deep learning technology, artificial intelligence technology has gradually moved from the Internet to traditional industries such as retail, automobiles, banking, home furnishings, real estate, and education.

[0003] Currently, most neural networks can only be applied on powerful servers due to their large computational load and long computation time. They are difficult to apply to resource-limited smart devices with low latency requirements. However, with the widespread adoption of smart devices, such as mobile devices, and the increasing demand for deploying neural networks on these devices, research is underway on effective deep learning architectures.

[0004] In order to deploy neural networks on mobile devices, a lightweight neural network has been proposed. Although this neural network can reduce the amount of network computation and computing time, its network structure design is complex and not flexible enough, resulting in only the same design being used in the entire network structure, which in turn leads to low prediction accuracy. Summary of the Invention

[0005] In view of the above problems, the present application is proposed to provide a data identification, model construction and training, feature extraction method, system and equipment that solve the above problems or at least partially solve the above problems.

[0006] Therefore, in one embodiment of the present application, a data identification method is provided. The method includes:

[0007] Get the data to be processed;

[0008] Inputting the data to be processed into a trained neural network model to obtain a recognition result;

[0009] In which, the neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; assign the multiple feature map groups to the corresponding network blocks in the at least one second network block, respectively, as part of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block.

[0010] In another embodiment of the present application, a model building method is provided. The method includes:

[0011] Acquire a sequence; the sequence includes a first network block and at least one second network block located after the first network block;

[0012] Constructing a neural network model for data recognition according to the sequence;

[0013] Among them, the constructed neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; assign the multiple feature map groups to the corresponding network blocks in the at least one second network block respectively as part of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block.

[0014] In another embodiment of the present application, a model training method is provided. The method includes:

[0015] Input the sample data into the neural network model to obtain the recognition results;

[0016] Optimizing the neural network model based on the recognition result and the expected recognition result of the sample data;

[0017] In which, the neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; assign the multiple feature map groups to the corresponding network blocks in the at least one second network block, respectively, as part of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block.

[0018] In another embodiment of the present application, a neural network system is provided. The system is used to identify data to be processed to obtain an identification result; the system includes: a sequence and a splitting module; the sequence includes a first network block and at least one second network block located after the first network block;

[0019] The splitting module is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; and assign the multiple feature map groups to the corresponding network blocks in the at least one second network block as components of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block.

[0020] In another embodiment of the present application, a feature extraction method is provided. The method includes:

[0021] Get the data to be processed;

[0022] Inputting the data to be processed into a trained neural network model to extract features of the data to be processed;

[0023] In which, the neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; assign the multiple feature map groups to the corresponding network blocks in the at least one second network block, respectively, as part of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block.

[0024] In another embodiment of the present application, an electronic device is provided. The device includes: a memory and a processor, wherein:

[0025] The memory is used to store programs;

[0026] The processor is coupled to the memory and is configured to execute the program stored in the memory to:

[0027] Get the data to be processed;

[0028] Inputting the data to be processed into a trained neural network model to obtain a recognition result;

[0029] In which, the neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; assign the multiple feature map groups to the corresponding network blocks in the at least one second network block, respectively, as part of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block.

[0030] In another embodiment of the present application, an electronic device is provided. The device includes: a memory and a processor, wherein:

[0031] The memory is used to store programs;

[0032] The processor is coupled to the memory and is configured to execute the program stored in the memory to:

[0033] Acquire a sequence; the sequence includes a first network block and at least one second network block located after the first network block;

[0034] Constructing a neural network model for data recognition according to the sequence;

[0035] Among them, the constructed neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; assign the multiple feature map groups to the corresponding network blocks in the at least one second network block respectively as part of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block.

[0036] In another embodiment of the present application, an electronic device is provided. The device includes: a memory and a processor, wherein:

[0037] The memory is used to store programs;

[0038] The processor is coupled to the memory and is configured to execute the program stored in the memory to:

[0039] Input the sample data into the neural network model to obtain the recognition results;

[0040] Optimizing the neural network model based on the recognition result and the expected recognition result of the sample data;

[0041] In which, the neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; assign the multiple feature map groups to the corresponding network blocks in the at least one second network block, respectively, as part of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block.

[0042] In another embodiment of the present application, an electronic device is provided. The device includes: a memory and a processor, wherein:

[0043] The memory is used to store programs;

[0044] The processor is coupled to the memory and is configured to execute the program stored in the memory to:

[0045] Get the data to be processed;

[0046] Inputting the data to be processed into a trained neural network model to extract features of the data to be processed;

[0047] In which, the neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; assign the multiple feature map groups to the corresponding network blocks in the at least one second network block, respectively, as part of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block.

[0048] The technical solution provided in the embodiment of the present application divides the multiple feature maps output by the first network block according to the number of groups related to the number of at least one second network block located after the first network block, thereby obtaining multiple feature map groups at one time. The multiple feature map groups are sequentially assigned to at least one second network block located after the first network block. In the technical solution provided in the embodiment of the present application, the network structure design is simple, and the relationship between the number of feature maps in each feature map group can be conveniently designed according to actual needs. In other words, it is convenient to design the relationship between the number of feature maps allocated to each second network block from the first network block, thereby improving the flexibility of network design. In this way, the relationship between the number of feature maps in each feature map group can be flexibly designed according to the characteristics of each feature extraction stage in the neural network model to improve prediction accuracy. In addition, in the embodiment of the present application, the multiple feature maps output by each network block are grouped and assigned to other subsequent network blocks for use. Each feature map output by each network block is subsequently used only once, without duplication, and the computational complexity is very small. It can be deployed on mobile devices with limited resources and low latency requirements. BRIEF DESCRIPTION OF THE DRAWINGS

[0049] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, a brief introduction will be given below to the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.

[0050] Figure 1a A schematic diagram of data identification provided in one embodiment of the present application;

[0051] Figure 1b A schematic diagram of a multi-layer feature joint sharing method provided in one embodiment of the present application;

[0052] Figure 2 A flowchart of a data identification method provided in one embodiment of the present application;

[0053] Figure 3A schematic diagram of the internal structure of a downsampling block provided in one embodiment of the present application;

[0054] Figure 4 A schematic diagram of the internal structure of a scale-invariant convolution block provided in one embodiment of the present application;

[0055] Figure 5 A schematic diagram of the internal structure of a residual block provided in one embodiment of the present application;

[0056] Figure 6 A schematic diagram of the internal structure of a neural network model provided in one embodiment of the present application;

[0057] Figure 7 A flow chart of the model building method provided in the embodiment of the present application;

[0058] Figure 8 A flowchart of the model training method provided in the embodiment of the present application;

[0059] Figure 9 A schematic diagram of a flow chart of a feature extraction method provided in an embodiment of the present application;

[0060] Figure 10 A structural block diagram of a data identification device provided in one embodiment of the present application;

[0061] Figure 11 A structural block diagram of a model building device provided in one embodiment of the present application;

[0062] Figure 12 A structural block diagram of a model training device provided in one embodiment of the present application;

[0063] Figure 13 A structural block diagram of a feature extraction device provided in one embodiment of the present application;

[0064] Figure 14 This is a structural block diagram of an electronic device provided in another embodiment of the present application. DETAILED DESCRIPTION

[0065] In the existing technology, the basic unit in ShuffleNet v2 is improved based on the residual unit.

[0066] The residual unit is composed of a convolution block, a short-circuit connection, and an element-wise addition operation. The residual unit inputs the unit input into the convolution block for convolution processing to obtain the convolution output, and then adds the convolution output to the unit input directly transmitted through the short-circuit connection element-wise to obtain the final output of the residual unit. The existence of element-wise addition operations in the residual unit will increase the amount of calculation and consume more time. Therefore, the proposer of ShuffleNet v2 proposed the following basic unit: the input of the basic unit is evenly divided into two groups through the channel splitting operation. One group is used as the input of the convolution block and the convolution output is obtained through convolution processing; the other group is directly spliced ​​with the convolution output in the channel dimension, and then the channel uniform cross shuffle (Channel Shuffle) operation is performed to obtain the unit output, thus avoiding the element-wise addition operation. For example: the convolution output is a feature arranged in order. Figure 2 ,feature Figure 3 ,feature Figure 4 ,feature Figure 5 , the other group is the feature map a, feature map b, feature map c, feature map d arranged in order; after splicing, we get: the feature map arranged in order Figure 2 ,feature Figure 3 ,feature Figure 4 ,feature Figure 5 , feature map a, feature map b, feature map c, feature map d; after the channel uniform cross shuffle (ChannelShuffle) operation, the features obtained are arranged in order Figure 2 , Feature map a, Features Figure 3 , feature map b, features Figure 4 , feature map c, features Figure 5 , feature map d. The purpose of evenly cross-shuffling the channels is to ensure that each group contains both the convolved and unconvolved feature maps when the next two groups are divided.

[0067] The ShuffleNet v2 network consists of multiple repeatedly stacked basic units. An analysis of the ShuffleNet v2 network reveals that the number of feature maps obtained by the convolutional blocks in subsequent basic units from the convolutional blocks in the previous basic unit decreases in geometric proportion. For example, the convolutional block in the second basic unit obtains 8 feature maps from the convolutional block in the first basic unit; the convolutional block in the third basic unit obtains 4 feature maps from the convolutional block in the first basic unit; the convolutional block in the fourth basic unit obtains 2 feature maps from the convolutional block in the first basic unit; and the convolutional block in the fifth basic unit obtains 1 feature map from the convolutional block in the first basic unit. The numbers 8, 4, 2, and 1 decrease in geometric proportion.

[0068] From the above analysis, it can be seen that the overall network design in the existing technology is complex and not flexible enough.

[0069] Moreover, the inventors have found through research that the requirements for the passage of high-frequency information are different in different feature extraction stages of the network. For example, in the low-level feature extraction stage, the main task is to extract low-level features, such as the edges, gradients, and textures of objects. These information belong to high-frequency signals, so the passage rate of high-frequency information needs to be increased in the low-level feature extraction stage; in the mid-level feature extraction stage, the neural network mainly extracts some abstract concepts. These abstract concepts contain certain high-frequency components but not as many high-frequency components as the low-level ones. Therefore, the passage rate of high-frequency information needs to be slightly reduced in the mid-level feature extraction stage compared to the low-level feature extraction stage; in the high-level feature extraction stage, the neural network has extracted various high-level abstract concepts. These concepts need to be linearly separable in the vector space where the output of the neural network is located. That is, the signal at this level should not contain complex high-frequency components. Therefore, it is necessary to suppress the passage of high-frequency information as much as possible in the high-level feature extraction stage.

[0070] However, due to the design of the basic unit in ShuffleNet v2, the different feature extraction stages in the entire network have to be divided in a geometric attenuation manner, ignoring the characteristics of different feature extraction stages of the network, which seriously affects the prediction accuracy of the network.

[0071] The embodiments of the present application provide a lightweight neural network model with a simple network structure and flexible design. This allows the relationship between the number of feature graphs in each of the multiple feature graph groups to be flexibly designed based on the characteristics of each feature extraction stage in the neural network model to improve prediction accuracy.

[0072] In order to enable those skilled in the art to better understand the present invention, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments in the present invention, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present invention.

[0073] In addition, some of the processes described in the specification, claims and the above-mentioned figures of this application include multiple operations that appear in a specific order. These operations may not be executed in the order in which they appear in this document or may be executed in parallel. The serial numbers of the operations, such as 101, 102, etc., are only used to distinguish between different operations, and the serial numbers themselves do not represent any order of execution. In addition, these processes may include more or fewer operations, and these operations may be executed in sequence or in parallel. It should be noted that the descriptions of "first", "second", etc. in this document are used to distinguish different messages, devices, network blocks, etc., and do not represent the order of precedence, nor do they limit "first" and "second" to be different types.

[0074] Figure 2 FIG. 1 shows a flow chart of a data identification method provided by an embodiment of the present application. Figure 2 As shown, the method includes:

[0075] 101. Get the data to be processed.

[0076] 102. Input the data to be processed into a trained neural network model to obtain a recognition result.

[0077] In practical applications, the data to be processed may be an image to be processed, a video to be processed, or an audio to be processed. When the data to be processed is a video to be processed, the video frames in the video to be processed may be input into the trained neural network model in a sequence. When the data to be processed is audio to be processed, the audio frames in the audio to be processed may be input into the trained neural network model in a sequence.

[0078] It should be noted that in practical applications, the audio to be processed may be sampled to obtain multiple audio frames. For example, the audio to be processed may be sampled at equal or unequal time intervals to obtain multiple audio frames. Specific sampling techniques can be found in the prior art and will not be described in detail here.

[0079] Furthermore, in one embodiment, when the data to be processed is audio, speech signal analysis can be performed on each frame of the audio to be processed before inputting the audio to be processed into the trained neural network model to obtain a time-frequency spectrum corresponding to each frame of audio. The time-frequency spectrum corresponding to multiple frames of the audio to be processed is then input into the neural network model, so that the neural network model processes the time-frequency spectrum as if it were an image frame.

[0080] When the data to be processed is an image to be processed, the recognition result may be an image classification result, an object detection result, an image segmentation result, etc. When the data to be processed is a video to be recognized, the recognition result may be a video classification result, an object tracking result, etc. When the data to be processed is audio to be processed, the recognition result may be an audio classification result.

[0081] In which, the neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; assign the multiple feature map groups to the corresponding network blocks in the at least one second network block, respectively, as part of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block.

[0082] The sequence is formed by connecting multiple network blocks in sequence. The first network block and the second network block are both composed of at least one neural network layer, and the neural network layer may include: a convolution layer. In one example, each network block in the sequence performs convolution processing on its input to obtain its output. The sequence may include a first downsampling block and multiple scale-invariant convolution blocks arranged in sequence, and the first downsampling block is ranked first in the sequence. The number of scale-invariant convolution blocks in the sequence can be determined according to the feature extraction stage of the sequence in the neural network model and the application requirements. The specific structure of the first downsampling block can be found in Figure 3 ; The specific structure of the scale-invariant convolution block can be found in Figure 4 The first downsampling block reduces the feature map size, while the scale-invariant convolution block does not change the feature map size.

[0083] like Figure 3 As shown in the figure, the first downsampling block includes two branches. The left branch is composed of a 5x5 depthwise convolution layer and a 1x1 convolution layer. The right branch is composed of a 1x1 convolution layer, a 5x5 depthwise convolution layer and a 1x1 convolution layer. Finally, the outputs of the two branches are added together to obtain the output of the entire structure.

[0084] like Figure 4 As shown in the figure, the scale-invariant convolution block is composed of a 1x1 convolution layer, a 3x3 depthwise convolution layer (depthwise conv) and a 1x1 convolution layer.

[0085] In actual applications, the division method can be uniform division or non-uniform division, which can be set according to the depth (i.e. stage) of the sequence in the network and the specific task requirements or the hardware environment of the deployment. In most cases, uniform division is more hardware-friendly than non-uniform division. In addition, when dividing multiple feature maps, continuous division is not required, and non-continuous jump division can also be used. It is only necessary to ensure that the multiple feature map groups obtained by division do not overlap with each other. Generally, continuous division is easier to implement in hardware.

[0086] In the sequence, the first network block is sequentially connected to at least one second network block. The number of groups corresponding to the first network block can be preconfigured or automatically determined during model execution. In one embodiment, when constructing the neural network model, the number of groups corresponding to the first network block configured by the user based on the number of at least one second network block is received and recorded. In another embodiment, during subsequent execution of the neural network model, the number of at least one second network block is obtained and the number of groups is automatically determined based on the number.

[0087] In practical applications, the number of groups can be equal to the number of the at least one second network block. In this way, the number of the plurality of feature graph groups obtained by division is consistent with the number of the at least one second network block, and each second network block is allocated one of the feature graph groups from the second network block. Alternatively, the difference between the number of groups and the number of the at least one second network block is a fixed value, for example, 1. In this way, the number of the plurality of feature graph groups obtained by division is one more than the number of the at least one second network block.

[0088] It should be noted that during the neural network model training and application stages, when dividing multiple feature maps, they need to be divided according to the division method configured for the first network block when the neural network model was built; and when allocating multiple feature map groups, they also need to be allocated according to the allocation rules configured for the first network block when the neural network model was built. This ensures that the division and allocation are not random, and through model training, it can be ensured that the second network block can allocate (i.e., share) the feature maps that are useful to it from the multiple feature maps output by the first network block.

[0089] Furthermore, in the embodiments of the present application, the relationship between the number of feature graphs in each of the multiple feature graph groups can be configured as needed during network construction, providing flexibility and convenience. For example, the number of feature graphs in each group can be equal, or the number of feature graphs can be geometrically or linearly attenuated. Specifically, the flexible configuration can be performed based on the characteristics of the feature extraction stage at which the sequence is located in the network.

[0090] The feature maps in the multiple feature map groups do not intersect with each other; and the union of the multiple feature map groups includes the multiple feature maps, which ensures that each feature map is utilized.

[0091] The technical solution provided in the embodiment of the present application divides the multiple feature maps output by the first network block according to the number of groups related to the number of at least one second network block located after the first network block to obtain multiple feature map groups. The multiple feature map groups are sequentially assigned to at least one second network block located after the first network block. In the technical solution provided in the embodiment of the present application, the network structure is simple in design, and it is convenient to design the relationship between the number of feature maps of each feature map group in the multiple feature map groups according to actual needs, that is, it is convenient to design the relationship between the number of feature maps shared by each second network block from the first network block, thereby improving flexibility. In this way, in the neural network model, different feature extraction stages can flexibly design the relationship between the number of feature maps of each feature map group in the multiple feature map groups according to the characteristics of each feature extraction stage to improve prediction accuracy.

[0092] It should be noted that in practical applications, the above method can be used to divide and allocate the output of each network block in the sequence to achieve multi-layer feature sharing. In this way, the input of each network block in the sequence is composed of the output of the network blocks preceding it in the sequence, achieving a high pass rate for high-frequency signals.

[0093] Specifically, the sequence includes the third network block and all network blocks preceding it. In the channel dimension, the input to the third network block is obtained by concatenating the feature map groups assigned to it from all network blocks preceding it in the sequence. The third network block refers to any network block in the sequence other than the first two network blocks. It should be noted that one feature map corresponds to one channel.

[0094] In addition, the channel graph group allocated to the second-ranked network block in the above sequence from the first-ranked network block is directly used as the input of the second-ranked network block in the above sequence.

[0095] In another example, the neural network model may further include a fifth network block connected to the last network block in the first sequence and located after the last network block. In this example, the number of multiple feature map groups obtained by dividing the multiple feature maps output by the first network block is one more than the number of at least one second network block. The neural network model is also used to: in the channel dimension, splice the multiple feature maps output by the last network block with the channel map groups allocated to the fifth network block from other network blocks to obtain the input of the fifth network block; wherein the other network blocks refer to all network blocks in the first sequence except the last network block. The fifth network block may also be composed of at least one neural network layer, for example: a convolutional layer. In one example, the fifth network block may perform convolution processing on its input to obtain its output.

[0096] Usually, in practical applications, the feature extraction network in the neural network model is divided into multiple feature extraction stages according to the size of the feature map, for example: Figure 6 The neural network model shown includes five feature extraction stages, and multiple feature extraction stages are connected in sequence. The size of the feature map output in each feature extraction stage remains unchanged, and the size of the feature map output by the subsequent feature extraction stage is smaller than the size of the feature map output by the previous feature extraction stage. The above sequence can be deployed in some of the feature extraction stages in these multiple feature extraction stages according to actual needs. The inventors have found that it is necessary to suppress the passage of high-frequency information in the high-level stages in multiple feature extraction stages, so the above sequence is not used in the high-level stages in multiple feature extraction stages, and the sequence is deployed in other feature extraction stages except the high-level stages in multiple feature extraction stages. Taking a neural network with five feature extraction stages as an example, the feature extraction stage ranked fifth among the five feature extraction stages is the high-level stage.

[0097] The inventors also discovered that in the initial stages of multiple feature extraction, feature maps are large in size. Using the multi-level feature sharing model described above can lead to a significant increase in computational complexity. Therefore, convolutional blocks are used to reduce feature map size in the initial stages without feature sharing. For example, a neural network model with five feature extraction stages, ranked first and second among the five, is considered the initial stage.

[0098] In one embodiment, the neural network model includes a first feature extraction stage and a second feature extraction stage located after the first feature extraction stage; the size of the feature map output in each of the first and second feature extraction stages remains constant, and each feature extraction stage includes one of the sequences; the size of the feature map output in the second feature extraction stage is smaller than the size of the feature map output in the first feature extraction stage. The first feature extraction stage is a low-level stage, and the second feature extraction stage is a mid-level stage.

[0099] For a neural network model with five feature extraction stages, the first feature extraction stage may be the third-ranked feature extraction stage among the five feature extraction stages; and the second feature extraction stage may be the fourth-ranked feature extraction stage among the five feature extraction stages.

[0100] The inventors have found that in order to increase the passing rate of high-frequency information at the low-level stage and to increase the connections between network blocks as much as possible at the low-level stage, the most effective solution is to use uniform division and connection at the low-level stage.

[0101] Therefore, when the sequence is within the first feature extraction stage, the aforementioned "dividing the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups" specifically includes: evenly dividing the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; wherein the number of feature maps in each of the multiple feature map groups is equal. The multiple feature map groups are then sequentially assigned to corresponding network blocks in at least one second network block.

[0102] It should be noted that to avoid the loss of high-frequency signals when crossing feature extraction stages, the feature maps output by the first network block in the first feature extraction stage need to be shared with the first-ranked network block in the second feature extraction stage. Therefore, the number of multiple feature map groups will be one more than the number of at least one second network block, so that the extra feature map groups can be shared with the next feature extraction stage.

[0103] The inventors found that at the middle-level stage, the neural network mainly extracts some abstract concepts. These abstract concepts contain certain high-frequency components but not as many high-frequency components as at the low-level stage. Therefore, the pass rate of high-frequency information needs to be slightly lowered at the middle-level stage compared to the low-level feature extraction stage.

[0104] Therefore, when the sequence is in the second feature extraction stage, the above-mentioned "dividing the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups" is specifically: performing attenuation division on the multiple feature maps output by the first network block according to the number of groups to obtain multiple first feature map groups; wherein, the number of feature maps of some feature map groups in the multiple feature map groups decreases successively; in any two adjacently sorted second network blocks in the at least one second network block, the number of feature maps of the feature map group allocated to the second network block sorted earlier from the some feature map groups is greater than the number of feature maps of the feature map group allocated to the second network block sorted later from the some feature map groups.

[0105] It should be noted that to avoid the loss of high-frequency signals when crossing feature extraction stages, the feature maps output by the first network block in the second feature extraction stage need to be shared with the first-ranked network block in the next feature extraction stage after the second feature extraction stage. In other words, the number of multiple feature map groups will be one greater than the number of at least one second network block, so that the feature map groups other than the aforementioned feature map groups can be shared with the next feature extraction stage.

[0106] In order to comply with the rule of reducing the pass rate of high-frequency information in the mid-level stage, the number of feature graphs in the multiple feature graph groups other than the above-mentioned partial feature graph groups may be smaller than or equal to the number of feature graphs in the feature graph group with the smallest number of feature graphs in the partial feature graph groups.

[0107] Through research, the inventors discovered that using exponential decay in the second feature extraction stage can achieve a good balance between computational effort and network prediction accuracy. Specifically, with the same computational effort, using exponential decay in the second feature extraction stage can achieve the best network prediction accuracy. Exponential decay refers to the process of increasing the number of feature maps in the partial feature map groups in a proportional manner.

[0108] Furthermore, the neural network model also includes a third feature extraction stage located after the second feature extraction stage; the size of the feature map output in the third feature extraction stage remains unchanged; the size of the feature map output in the third feature extraction stage is smaller than the size of the feature map output in the second feature extraction stage; and the third feature extraction stage includes at least one residual block connected in sequence.

[0109] Among them, the residual block consists of multiple convolutional layers, short-circuit links, and element-wise addition operations. The specific structure is as follows Figure 5 As shown in the figure, the residual block introduces a residual connection (resdual link) based on the size-invariant convolution block, adding the input and convolution output to obtain the output of the entire structure.

[0110] The third feature extraction stage is a high-level stage in the neural network model, and is also the last feature extraction stage. At this high-level stage, the neural network has extracted various high-level abstract concepts. These concepts need to be linearly separable in the vector space where the neural network output resides. In other words, the signal at this level should not contain complex high-frequency components. By not using feature sharing, high-frequency signals can be suppressed. In addition, the reason for using a residual structure is that this stage is at the very end of the neural network. During gradient descent, without a residual structure, the gradient is prone to exploding or vanishing when it propagates to the lowest layer according to the chain gradient rule. Using a residual structure can improve the effective propagation of gradients to a certain extent, thereby improving the training speed and accuracy of the model.

[0111] The technical solution of this application will be described in detail below with reference to the accompanying drawings:

[0112] Assume that the neural network model is in the first feature extraction stage, and the sequence includes only three network blocks. The multiple feature maps output by the first-ranked network block are called the first-layer features; the multiple feature maps output by the second-ranked network block are called the second-layer features, and the multiple feature maps output by the third-ranked network block are called the third-layer features. In addition, the third-ranked network block is connected to a network block that is ranked first in the second feature extraction stage. Figure 1b As shown,

[0113] (1) The number of network blocks n after the first-order network block is 2, so the number of groups is n+1, which is 3. The first-layer features are divided into three non-overlapping groups, which will be used by different subsequent network blocks.

[0114] (2) The second-ranked network block performs a convolution operation on the first group of features in the first layer of features to obtain the second layer of features.

[0115] (3) If the number of network blocks after the second-ranked network block is 1, the second-layer features output by the second-ranked network block are further divided into two non-overlapping groups. These two groups of features will also be used by subsequent different blocks.

[0116] (4) The second set of features in the first layer of features are concatenated with the first set of features in the second layer of feature maps, and used as the input of the third-ranked network block, which performs a convolution operation to obtain the third layer of features.

[0117] Since there is no network block after the third-ranked network block, the third-layer features are no longer split.

[0118] (5) The third set of features in the first layer and the second set of features in the second layer are concatenated and used as the input of the first-ranked network block in the second feature extraction stage, and the convolution operation is performed on the network block to obtain the features. The features can be further shared by multiple layers of features in the second feature extraction stage in the same way.

[0119] The embodiment of the present application constructs a complete lightweight convolutional neural network according to the above method and structure. Figure 6 As shown, the network includes:

[0120] (1) In the first two feature extraction stages, a 3x3 convolutional layer and a 3x3 max pooling layer are used to downsample the input twice before entering the subsequent feature joint sharing.

[0121] (2) Low-level Stage: This part is a combination of a reduction block and three normal blocks, and adopts a multi-layer feature sharing method. In this stage, the feature map is evenly split, that is, the number of feature maps shared by the current block to the subsequent blocks is equal.

[0122] (3) Mid-level Stage: This part is a combination of a reduction block and seven normal blocks, also using a multi-layer feature sharing approach. In this stage, the feature map is non-uniformly split. Specifically, the number of feature maps shared by the current block to the subsequent blocks is not equal, and the number of feature maps is proportionally reduced.

[0123] (4) In the high-level stage: a combination of a reduction block and three residual blocks. Unlike the low- and mid-level stages, this stage does not adopt the multi-layer feature joint sharing method.

[0124] (5) In the prediction stage: At the end of the network, a 1x1 convolutional layer and a global average pooling layer are used to map the features into a one-dimensional vector, and then enter the full connection layer for final classification.

[0125] In summary, using multi-layer feature sharing ensures that features are only used once, effectively reducing network computation and memory usage, and helping accelerate performance on mobile devices. Compared to the single feature sharing method used by ShuffleNetV2, this solution utilizes multiple different feature sharing methods within the overall network architecture, fully leveraging the characteristics of features extracted at different stages of the network and effectively improving accuracy without increasing network computation.

[0126] The lightweight convolutional neural network proposed in this application outperforms current mainstream networks in terms of prediction accuracy at the same computational load and can be easily deployed and run on mobile devices. The advantage is even more pronounced at smaller computational loads (40M), achieving nearly 2% higher accuracy than the best ShuffleNetV2. Furthermore, the multi-layer feature sharing approach used in this solution is computationally intensive at each stage, without excessive fragmentation, making it well-suited for implementation and operation on general-purpose hardware.

[0127] The following combination Figure 1a The data recognition method provided in the embodiment of the present application is described as follows: a user can input an image to be classified into the client input interface. In response to the user's input operation, the client can input the image to be classified into a trained neural network model to obtain a classification result: category X.

[0128] The neural network model includes a sequence; the sequence includes three network blocks. The neural network model also includes a network block connected to the sequence and located after the sequence. The feature graph a, feature graph b, and feature graph c output by the first-ranked network block are divided into three groups, each with one feature graph. Feature graph a is used as the input of the second-ranked network block; feature graph b is used as an input component of the third-ranked network block; and feature graph c is used as an input component of the network block located after the sequence.

[0129] The second-ranked network block performs convolution on its input, feature map a, and outputs feature map 1 and feature map Figure 2 . The feature map 1 and feature map 2 output by the second ranked network block Figure 2 Divide into two groups, each with a feature map. Figure 2 As the input component of the third network block in the sequence; feature map 1 is used as the input component of the network block located after the sequence.

[0130] The third network block is sorted into its input, i.e., feature Figure 2 The concatenated features of the feature map b are convolved to output the feature map A as an input component of the network block following the sequence.

[0131] The technical solution provided in the embodiments of this application features a simple network structure and can easily design the relationship between the number of feature graphs in each of the multiple feature graph groups based on actual needs, thereby increasing flexibility. This allows the relationship between the number of feature graphs in each of the multiple feature graph groups to be flexibly designed based on the characteristics of each feature extraction stage in the neural network model, thereby improving prediction accuracy.

[0132] It should be noted that in actual applications, existing neural network models can also be deployed on multiple clients (e.g., mobile clients). Although existing neural network models are computationally intensive, data recognition tasks can be divided into multiple subtasks. For example, multiple images in a family shared album can be divided into multiple subtasks, and each of these subtasks can be assigned to multiple clients. These clients can then use the neural network models deployed on them to simultaneously process their respective subtasks, significantly reducing task processing time and increasing task processing speed.

[0133] In addition, the first neural network model (i.e., the improved neural network model provided in the embodiment of the present application) and the second neural network model (i.e., the neural network model in the prior art) can be deployed simultaneously on the client (e.g., a mobile client) in advance. The client can determine whether to use the first neural network model or the second neural network model to process the data recognition task based on the current load of the terminal. Specifically: detect the current load of the terminal; when the current load of the terminal is greater than a preset threshold, select the first neural network model to process the data recognition task and obtain a recognition result; when the current load of the terminal is less than or equal to the preset threshold, select the second neural network model to process the data recognition task and obtain a recognition result. Among them, the data recognition task includes an image to be processed; the specific implementation of the first neural network model processing the image to be processed to obtain the recognition result can refer to the corresponding content in the above embodiments, which will not be repeated here; the specific implementation of the second neural network processing the image to be processed to obtain the recognition result can refer to the prior art, which will not be described in detail here.

[0134] Figure 7 FIG. 1 shows a flow chart of a method for constructing the above-mentioned model provided in another embodiment of the present application. Figure 7 As shown, the method includes:

[0135] 201. Get sequence.

[0136] 202. Construct a neural network model for data recognition based on the sequence.

[0137] The sequence includes a first network block and at least one second network block located after the first network block; the constructed neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; and assign the multiple feature map groups to the corresponding network blocks in the at least one second network block as components of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block.

[0138] In the above step 201, multiple network blocks may be created; each network block is composed of at least one neural network layer. The multiple network blocks are sequentially connected to obtain the sequence. The sequence may include: a first downsampling block and multiple scale-invariant convolution blocks.

[0139] In the above 202, the sequence can be connected with other sequences or network blocks to obtain a neural network model for data recognition.

[0140] The specific implementation of the steps executed by the above neural network model can be found in the corresponding content of the above embodiments, which will not be repeated here.

[0141] The technical solution provided in the embodiment of the present application divides the multiple feature maps output by the first network block according to the number of groups related to the number of at least one second network block located after the first network block to obtain multiple feature map groups. The multiple feature map groups are sequentially assigned to at least one second network block located after the first network block. In the technical solution provided in the embodiment of the present application, the network structure is simple in design, and it is convenient to design the relationship between the number of feature maps of each feature map group in the multiple feature map groups according to actual needs, that is, it is convenient to design the relationship between the number of feature maps shared by each second network block from the first network block, thereby improving flexibility. In this way, in the neural network model, different feature extraction stages can flexibly design the relationship between the number of feature maps of each feature map group in the multiple feature map groups according to the characteristics of each feature extraction stage to improve prediction accuracy.

[0142] Furthermore, the above method further includes:

[0143] 203. Construct the two sequences according to the multiple network blocks.

[0144] Accordingly, the above 202 specifically includes: sequentially connecting the two sequences to obtain a neural network model for data recognition;

[0145] Among them, the two sequences are respectively located in the first feature extraction stage of the constructed neural network model and the second feature extraction stage located after the first feature extraction stage; the size of the feature map output in each feature extraction stage in the first feature extraction stage and the second feature extraction stage remains unchanged; the size of the feature map output in the second feature extraction stage is smaller than the size of the feature map output in the first feature extraction stage.

[0146] Furthermore, the above method further includes:

[0147] 204. Construct at least one residual block.

[0148] Correspondingly, the above-mentioned “connecting the two sequences in sequence to obtain a neural network model for data recognition” is specifically: connecting the two sequences and the at least one residual block in sequence to obtain a neural network model for data recognition.

[0149] Among them, the at least one residual block is located in the third feature extraction stage in the neural network model; the third feature extraction stage is located after the second feature extraction stage; the size of the feature map output in the third feature extraction stage remains unchanged; the size of the feature map output in the third feature extraction stage is smaller than the size of the feature map output in the second feature extraction stage.

[0150] In practical applications, the sequence in the second stage is connected to at least one residual block in the third stage via a second downsampling block, and the second downsampling port is located in the third stage. The specific structure of the second downsampling block is as follows: Figure 3 As shown, it is the same as the first down-sampling block structure.

[0151] It should be noted here that: for the steps in the method provided in the embodiment of the present application (including the steps performed by the neural network model) and the contents of the neural network structure that are not fully described in detail, please refer to the corresponding contents in the above embodiments and will not be repeated here.

[0152] Figure 8 The flowchart of the training method of the above model provided in the embodiment of the present application is shown. Figure 8 As shown, the method includes:

[0153] 301. Input the sample data into the neural network model to obtain the recognition result.

[0154] 302. Optimize the neural network model according to the recognition result and the expected recognition result of the sample data.

[0155] The neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature graphs output by the first network block according to the number of groups to obtain multiple feature graph groups; and assign the multiple feature graph groups to corresponding network blocks in the at least one second network block as components of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block. The neural network model is used for data recognition.

[0156] In step 301 above, the sample data may be a sample image, a sample video, or a sample audio. When the sample data is a sample video, the video frames in the sample video may be input into the trained neural network model in a sequence. When the sample data is a sample audio, the audio frames in the sample audio may be input into the trained neural network model in a sequence.

[0157] The sampling method of the frame audio and the method of converting the frame audio into a time-frequency spectrum can be similarly referred to the corresponding contents in the above embodiments, and will not be repeated here.

[0158] The sample data is used as the input of the neural network model to obtain the recognition result. The specific implementation of the execution steps of the neural network model in this embodiment can be similarly referred to the corresponding contents in the above embodiments, and will not be described in detail here.

[0159] Among them, the initial value of each network parameter in the neural network model can be a random value.

[0160] In the above 302, after being trained, the neural network model is used to identify data to be processed.

[0161] Among them, according to the recognition result and the expected recognition result corresponding to the sample data, the parameter optimization of the neural network model can be specifically achieved by using a loss function. The loss function is used to estimate the degree of inconsistency between the recognition result of the model and the expected recognition result, and is usually a non-negative real-valued function.

[0162] Optionally, the loss function may be specifically a cross entropy loss.

[0163] Each time the parameters of the neural network model are optimized, the adjustment coefficients of the various model parameters in the neural network model can be obtained. The adjustment coefficients of the various model parameters are used to numerically adjust the various model parameters, and the model parameters of the neural network model can be obtained.

[0164] The method of using the loss function to optimize parameters is the same as the existing technology, and will not be described in detail here.

[0165] In a practical application, the expected recognition result can be the training label of the data. For example, in an image classification scenario, the training labels can be cat, dog, background, etc. The training samples for model training are the same as those in the prior art. The main difference lies in the different processing process of the training samples by the neural network model provided in the embodiment of the application.

[0166] The technical solution provided in the embodiment of the present application divides the multiple feature maps output by the first network block according to the number of groups related to the number of at least one second network block located after the first network block to obtain multiple feature map groups. The multiple feature map groups are sequentially assigned to at least one second network block located after the first network block. In the technical solution provided in the embodiment of the present application, the network structure is simple in design, and it is convenient to design the relationship between the number of feature maps of each feature map group in the multiple feature map groups according to actual needs, that is, it is convenient to design the relationship between the number of feature maps shared by each second network block from the first network block, thereby improving flexibility. In this way, in the neural network model, different feature extraction stages can flexibly design the relationship between the number of feature maps of each feature map group in the multiple feature map groups according to the characteristics of each feature extraction stage to improve prediction accuracy.

[0167] Furthermore, the neural network model includes a first feature extraction stage and a second feature extraction stage located after the first feature extraction stage; the size of the feature map output in each of the first feature extraction stage and the second feature extraction stage remains unchanged, and each feature extraction stage includes one of the sequences; the size of the feature map output in the second feature extraction stage is smaller than the size of the feature map output in the first feature extraction stage.

[0168] Furthermore, the neural network model also includes a third feature extraction stage located after the second feature extraction stage; the size of the feature map output in the third feature extraction stage remains unchanged; the size of the feature map output in the third feature extraction stage is smaller than the size of the feature map output in the second feature extraction stage; and the third feature extraction stage includes at least one residual block connected in sequence.

[0169] It should be noted here that: for the steps in the method provided in the embodiment of the present application (including the steps performed by the neural network model) and the contents of the neural network structure that are not fully described in detail, please refer to the corresponding contents in the above embodiments and will not be repeated here.

[0170] Another embodiment of the present application provides a neural network system. The system is used to identify data to be processed and obtain an identification result. The system includes: a sequence and a splitting module; the sequence includes a first network block and at least one second network block located after the first network block;

[0171] The splitting module is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; and assign the multiple feature map groups to the corresponding network blocks in the at least one second network block as components of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block.

[0172] The first network block and the second network block are both composed of at least one neural network layer, and the neural network layer may include a convolutional layer.

[0173] The specific implementation methods of the steps performed by the splitting module can be found in the corresponding contents of the above embodiments and will not be repeated here.

[0174] The technical solution provided in the embodiment of the present application divides the multiple feature maps output by the first network block according to the number of groups related to the number of at least one second network block located after the first network block to obtain multiple feature map groups. The multiple feature map groups are sequentially assigned to at least one second network block located after the first network block. In the technical solution provided in the embodiment of the present application, the network structure is simple in design, and it is convenient to design the relationship between the number of feature maps of each feature map group in the multiple feature map groups according to actual needs, that is, it is convenient to design the relationship between the number of feature maps shared by each second network block from the first network block, thereby improving flexibility. In this way, in the neural network model, different feature extraction stages can flexibly design the relationship between the number of feature maps of each feature map group in the multiple feature map groups according to the characteristics of each feature extraction stage to improve prediction accuracy.

[0175] Furthermore, the neural network system includes a first feature extraction stage and a second feature extraction stage located after the first feature extraction stage; the size of the feature map output in each of the first feature extraction stage and the second feature extraction stage remains unchanged, and each feature extraction stage includes one of the sequences; the size of the feature map output in the second feature extraction stage is smaller than the size of the feature map output in the first feature extraction stage.

[0176] Furthermore, the neural network system also includes a third feature extraction stage located after the second feature extraction stage; the size of the feature map output in the third feature extraction stage remains unchanged; the size of the feature map output in the third feature extraction stage is smaller than the size of the feature map output in the second feature extraction stage; and the third feature extraction stage includes at least one residual block connected in sequence.

[0177] It should be noted here that the steps performed by the splitting module in the system provided in the embodiment of the present application and the specific structure of each component can be found in the corresponding contents of the above embodiment and will not be repeated here.

[0178] Figure 9 FIG. 1 shows a flow chart of a feature extraction method provided by another embodiment of the present application. Figure 9 As shown, the method includes:

[0179] 401. Get data to be processed.

[0180] 402. Input the data to be processed into a trained neural network model to extract features of the data to be processed.

[0181] In which, the neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; assign the multiple feature map groups to the corresponding network blocks in the at least one second network block, respectively, as part of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block.

[0182] In practical applications, the data to be processed may be an image to be processed, a video to be processed, or an audio to be processed. When the data to be processed is a video to be processed, the video frames in the video to be processed may be input into the trained neural network model in a sequence. When the data to be processed is audio to be processed, the audio frames in the audio to be processed may be input into the trained neural network model in a sequence.

[0183] It should be noted that in practical applications, the audio to be processed may be sampled to obtain multiple audio frames. For example, the audio to be processed may be sampled at equal or unequal time intervals to obtain multiple audio frames. Specific sampling techniques can be found in the prior art and will not be described in detail here.

[0184] Furthermore, in one embodiment, when the data to be processed is audio, speech signal analysis can be performed on each frame of the audio to be processed before inputting the audio to be processed into the trained neural network model to obtain a time-frequency spectrum corresponding to each frame of audio. The time-frequency spectrum corresponding to multiple frames of the audio to be processed is then input into the neural network model, so that the neural network model processes the time-frequency spectrum as if it were an image frame.

[0185] The technical solution provided in the embodiment of the present application divides the multiple feature maps output by the first network block into multiple feature map groups according to the number of groups related to the number of at least one second network block located after the first network block. The multiple feature map groups are sequentially assigned to at least one second network block located after the first network block. In the technical solution provided in the embodiment of the present application, the network structure is simple in design, and it is convenient to design the relationship between the number of feature maps of each feature map group in the multiple feature map groups according to actual needs, that is, it is convenient to design the relationship between the number of feature maps shared by each second network block from the first network block, thereby improving flexibility. In this way, in the neural network model, different feature extraction stages can flexibly design the relationship between the number of feature maps of each feature map group in the multiple feature map groups according to the characteristics of each feature extraction stage to improve the effectiveness of feature extraction.

[0186] The specific implementation of the steps executed by the above-mentioned neural network model can be found in the corresponding contents of the above-mentioned embodiments, which will not be repeated here.

[0187] Figure 10 FIG. 1 shows a structural block diagram of a data identification device provided by an embodiment of the present application. Figure 10 As shown, the device includes: a first acquisition module 501 and a first input module 502.

[0188] A first acquisition module 501 is used to acquire data to be processed;

[0189] The first input module 502 is used to input the data to be processed into the trained neural network model to obtain a recognition result;

[0190] In which, the neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; assign the multiple feature map groups to the corresponding network blocks in the at least one second network block, respectively, as part of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block.

[0191] The technical solution provided in the embodiment of the present application divides the multiple feature maps output by the first network block according to the number of groups related to the number of at least one second network block located after the first network block to obtain multiple feature map groups. The multiple feature map groups are sequentially assigned to at least one second network block located after the first network block. In the technical solution provided in the embodiment of the present application, the network structure is simple in design, and it is convenient to design the relationship between the number of feature maps of each feature map group in the multiple feature map groups according to actual needs, that is, it is convenient to design the relationship between the number of feature maps shared by each second network block from the first network block, thereby improving flexibility. In this way, in the neural network model, different feature extraction stages can flexibly design the relationship between the number of feature maps of each feature map group in the multiple feature map groups according to the characteristics of each feature extraction stage to improve prediction accuracy.

[0192] Furthermore, the neural network model includes a first feature extraction stage and a second feature extraction stage located after the first feature extraction stage; the size of the feature map output in each of the first feature extraction stage and the second feature extraction stage remains unchanged, and each feature extraction stage includes one of the sequences; the size of the feature map output in the second feature extraction stage is smaller than the size of the feature map output in the first feature extraction stage.

[0193] Furthermore, when the sequence is in the first feature extraction stage, the step of dividing the multiple feature graphs output by the first network block according to the number of groups to obtain multiple feature graph groups includes:

[0194] Evenly dividing the plurality of feature maps output by the first network block according to the number of groups to obtain a plurality of feature map groups;

[0195] The number of feature maps in the multiple feature map groups is equal.

[0196] Furthermore, when the sequence is in the second feature extraction stage, the neural network model is specifically used to: perform attenuation division on the multiple feature maps output by the first network block according to the number of groups to obtain multiple first feature map groups;

[0197] wherein the number of feature graphs in some feature graph groups among the plurality of feature graph groups decreases in sequence;

[0198] Among any two adjacently ordered second network blocks in the at least one second network block, the number of feature graphs of the feature graph group allocated to the second network block ordered earlier from the partial feature graph group is greater than the number of feature graphs of the feature graph group allocated to the second network block ordered later from the partial feature graph group.

[0199] Furthermore, the number of feature maps in the partial feature map groups is in geometric proportion.

[0200] Furthermore, the neural network model further includes a third feature extraction stage located after the second feature extraction stage; the size of the feature map output in the third feature extraction stage remains unchanged; the size of the feature map output in the third feature extraction stage is smaller than the size of the feature map output in the second feature extraction stage;

[0201] The third feature extraction stage includes at least one residual block connected in sequence.

[0202] Furthermore, the feature maps in the multiple feature map groups do not intersect with each other; and the union of the multiple feature map groups includes the multiple feature maps.

[0203] It should be noted here that the data recognition device provided in the above embodiment can realize the technical solutions and technical effects described in the above corresponding method embodiments. The specific implementation and principles of the above modules or neural network models can refer to the corresponding contents in the above corresponding method embodiments, which will not be repeated here.

[0204] Figure 11 FIG. 1 shows a structural block diagram of a model building device provided by another embodiment of the present application. Figure 11 As shown, the device includes: a second acquisition module 601 and a first construction module 602.

[0205] A second acquisition module 601 is configured to acquire a sequence of modules; the sequence includes a first network block and at least one second network block located after the first network block;

[0206] A first construction module 602 is configured to construct a neural network model for data recognition based on the sequence;

[0207] Among them, the constructed neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; assign the multiple feature map groups to the corresponding network blocks in the at least one second network block respectively as part of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block.

[0208] The technical solution provided in the embodiment of the present application divides the multiple feature maps output by the first network block according to the number of groups related to the number of at least one second network block located after the first network block to obtain multiple feature map groups. The multiple feature map groups are sequentially assigned to at least one second network block located after the first network block. In the technical solution provided in the embodiment of the present application, the network structure is simple in design, and it is convenient to design the relationship between the number of feature maps of each feature map group in the multiple feature map groups according to actual needs, that is, it is convenient to design the relationship between the number of feature maps shared by each second network block from the first network block, thereby improving flexibility. In this way, in the neural network model, different feature extraction stages can flexibly design the relationship between the number of feature maps of each feature map group in the multiple feature map groups according to the characteristics of each feature extraction stage to improve prediction accuracy.

[0209] Furthermore, the first construction module 602 is further configured to: construct two of the sequences according to a plurality of network blocks;

[0210] The first construction module 602 is specifically configured to: sequentially connect the two sequences to obtain a neural network model for data recognition;

[0211] Among them, the two sequences are respectively located in the first feature extraction stage of the constructed neural network model and the second feature extraction stage located after the first feature extraction stage; the size of the feature map output in each feature extraction stage in the first feature extraction stage and the second feature extraction stage remains unchanged; the size of the feature map output in the second feature extraction stage is smaller than the size of the feature map output in the first feature extraction stage.

[0212] Furthermore, the first construction module is further configured to: construct at least one residual block;

[0213] The first construction module 602 is specifically configured to: sequentially connect the two sequences and the at least one residual block to obtain a neural network model for data recognition;

[0214] The at least one residual block is located in the third feature extraction stage in the neural network model; the third feature extraction stage is located after the second feature extraction stage; the size of the feature map output in the third feature extraction stage remains unchanged; the size of the feature map output in the third feature extraction stage is smaller than the size of the feature map output in the second feature extraction stage.

[0215] It should be noted here that the model building device provided in the above embodiment can realize the technical solutions and technical effects described in the above corresponding method embodiments. The specific implementation and principles of the above modules or neural network models can refer to the corresponding contents in the above corresponding method embodiments, which will not be repeated here.

[0216] Figure 12 FIG. 1 shows a structural block diagram of a model training device provided in another embodiment of the present application. Figure 12 As shown, the device comprises:

[0217] The second input module 701 is used to input sample data into the neural network model to obtain recognition results;

[0218] A first optimization module 702 is configured to optimize the neural network model based on the recognition result and the expected recognition result of the sample data;

[0219] In which, the neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; assign the multiple feature map groups to the corresponding network blocks in the at least one second network block, respectively, as part of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block.

[0220] The technical solution provided in the embodiment of the present application divides the multiple feature maps output by the first network block according to the number of groups related to the number of at least one second network block located after the first network block to obtain multiple feature map groups. The multiple feature map groups are sequentially assigned to at least one second network block located after the first network block. In the technical solution provided in the embodiment of the present application, the network structure is simple in design, and it is convenient to design the relationship between the number of feature maps of each feature map group in the multiple feature map groups according to actual needs, that is, it is convenient to design the relationship between the number of feature maps shared by each second network block from the first network block, thereby improving flexibility. In this way, in the neural network model, different feature extraction stages can flexibly design the relationship between the number of feature maps of each feature map group in the multiple feature map groups according to the characteristics of each feature extraction stage to improve prediction accuracy.

[0221] Furthermore, the neural network model includes a first feature extraction stage and a second feature extraction stage located after the first feature extraction stage; the size of the feature map output in each of the first feature extraction stage and the second feature extraction stage remains unchanged, and each feature extraction stage includes one of the sequences; the size of the feature map output in the second feature extraction stage is smaller than the size of the feature map output in the first feature extraction stage.

[0222] It should be noted here that the model training device provided in the above embodiment can realize the technical solutions and technical effects described in the above corresponding method embodiments. The specific implementation and principles of the above modules or neural network models can refer to the corresponding contents in the above corresponding method embodiments, which will not be repeated here.

[0223] Figure 13 FIG. 1 shows a structural block diagram of a feature extraction device provided by another embodiment of the present application. Figure 13 As shown, the device includes: a third acquisition module 801 and a third input module 802, wherein,

[0224] The third acquisition module 801 is used to acquire data to be processed;

[0225] The third input module 802 is used to input the data to be processed into the trained neural network model to extract the features of the data to be processed;

[0226] In which, the neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; assign the multiple feature map groups to the corresponding network blocks in the at least one second network block, respectively, as part of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block.

[0227] The technical solution provided in the embodiment of the present application divides the multiple feature maps output by the first network block into multiple feature map groups according to the number of groups related to the number of at least one second network block located after the first network block. The multiple feature map groups are sequentially assigned to at least one second network block located after the first network block. In the technical solution provided in the embodiment of the present application, the network structure is simple in design, and it is convenient to design the relationship between the number of feature maps of each feature map group in the multiple feature map groups according to actual needs, that is, it is convenient to design the relationship between the number of feature maps shared by each second network block from the first network block, thereby improving flexibility. In this way, in the neural network model, different feature extraction stages can flexibly design the relationship between the number of feature maps of each feature map group in the multiple feature map groups according to the characteristics of each feature extraction stage to improve the effectiveness of feature extraction.

[0228] It should be noted here that the feature extraction device provided in the above embodiment can realize the technical solutions and technical effects described in the above corresponding method embodiments. The specific implementation and principles of the above modules or neural network models can refer to the corresponding contents in the above corresponding method embodiments, which will not be repeated here.

[0229] Figure 14 FIG. 1 shows a schematic diagram of the structure of an electronic device provided by an embodiment of the present application. Figure 14 As shown, the electronic device includes a memory 1101 and a processor 1102. The memory 1101 can be configured to store various other data to support operations on the electronic device. Examples of such data include instructions for any application or method operating on the electronic device. The memory 1101 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.

[0230] The memory 1101 is used to store programs;

[0231] The processor 1102 is coupled to the memory 1101 and is configured to execute the program stored in the memory 1101 to:

[0232] Get the data to be processed;

[0233] Inputting the data to be processed into a trained neural network model to obtain a recognition result;

[0234] In which, the neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; assign the multiple feature map groups to the corresponding network blocks in the at least one second network block, respectively, as part of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block.

[0235] In particular, when the processor 1102 executes the program in the memory 1101, in addition to the above functions, it can also implement other functions. For details, please refer to the description of the previous embodiments.

[0236] Further, if Figure 14 As shown, the electronic device also includes: a communication component 1103, a display 1104, a power component 1105, an audio component 1106 and other components. Figure 14 Only some components are shown schematically, which does not mean that the electronic device only includes Figure 14 Components shown.

[0237] Accordingly, an embodiment of the present application further provides a computer-readable storage medium storing a computer program, which, when executed by a computer, can implement the data identification method steps or functions provided in the above-mentioned corresponding embodiments.

[0238] Figure 14 FIG. 1 shows a schematic diagram of the structure of an electronic device provided by an embodiment of the present application. Figure 14 As shown, the electronic device includes a memory 1101 and a processor 1102. The memory 1101 can be configured to store various other data to support operations on the electronic device. Examples of such data include instructions for any application or method operating on the electronic device. The memory 1101 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.

[0239] The memory 1101 is used to store programs;

[0240] The processor 1102 is coupled to the memory 1101 and is configured to execute the program stored in the memory 1101 to:

[0241] Acquire a sequence; the sequence includes a first network block and at least one second network block located after the first network block;

[0242] Constructing a neural network model for data recognition according to the sequence;

[0243] Among them, the constructed neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; assign the multiple feature map groups to the corresponding network blocks in the at least one second network block respectively as part of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block.

[0244] In particular, when the processor 1102 executes the program in the memory 1101, in addition to the above functions, it can also implement other functions. For details, please refer to the description of the previous embodiments.

[0245] Further, if Figure 14 As shown, the electronic device also includes: a communication component 1103, a display 1104, a power component 1105, an audio component 1106 and other components. Figure 14 Only some components are shown schematically, which does not mean that the electronic device only includes Figure 14 Components shown.

[0246] Accordingly, an embodiment of the present application also provides a computer-readable storage medium storing a computer program, which, when executed by a computer, can implement the model building method steps or functions provided in the above-mentioned corresponding embodiments.

[0247] Figure 14 FIG. 1 shows a schematic diagram of the structure of an electronic device provided by an embodiment of the present application. Figure 14As shown, the electronic device includes a memory 1101 and a processor 1102. The memory 1101 can be configured to store various other data to support operations on the electronic device. Examples of such data include instructions for any application or method operating on the electronic device. The memory 1101 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.

[0248] The memory 1101 is used to store programs;

[0249] The processor 1102 is coupled to the memory 1101 and is configured to execute the program stored in the memory 1101 to:

[0250] Input the sample data into the neural network model to obtain the recognition results;

[0251] Optimizing the neural network model based on the recognition result and the expected recognition result of the sample data;

[0252] In which, the neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; assign the multiple feature map groups to the corresponding network blocks in the at least one second network block, respectively, as part of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block.

[0253] In particular, when the processor 1102 executes the program in the memory 1101, in addition to the above functions, it can also implement other functions. For details, please refer to the description of the previous embodiments.

[0254] Further, if Figure 14 As shown, the electronic device also includes: a communication component 1103, a display 1104, a power component 1105, an audio component 1106 and other components. Figure 14 Only some components are shown schematically, which does not mean that the electronic device only includes Figure 14 Components shown.

[0255] Accordingly, an embodiment of the present application also provides a computer-readable storage medium storing a computer program, which, when executed by a computer, can implement the model training method steps or functions provided in the above-mentioned corresponding embodiments.

[0256] Figure 14 FIG. 1 shows a schematic diagram of the structure of an electronic device provided by an embodiment of the present application. Figure 14 As shown, the electronic device includes a memory 1101 and a processor 1102. The memory 1101 can be configured to store various other data to support operations on the electronic device. Examples of such data include instructions for any application or method operating on the electronic device. The memory 1101 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.

[0257] The memory 1101 is used to store programs;

[0258] The processor 1102 is coupled to the memory 1101 and is configured to execute the program stored in the memory 1101 to:

[0259] Get the data to be processed;

[0260] Inputting the data to be processed into a trained neural network model to extract features of the data to be processed;

[0261] In which, the neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; assign the multiple feature map groups to the corresponding network blocks in the at least one second network block, respectively, as part of the input of the corresponding network block; the number of groups is related to the number of the at least one second network block.

[0262] In particular, when the processor 1102 executes the program in the memory 1101, in addition to the above functions, it can also implement other functions. For details, please refer to the description of the previous embodiments.

[0263] Further, if Figure 14 As shown, the electronic device also includes: a communication component 1103, a display 1104, a power component 1105, an audio component 1106 and other components. Figure 14Only some components are shown schematically, which does not mean that the electronic device only includes Figure 14 Components shown.

[0264] Accordingly, an embodiment of the present application further provides a computer-readable storage medium storing a computer program, which, when executed by a computer, can implement the feature extraction method steps or functions provided in the above-mentioned corresponding embodiments.

[0265] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, i.e., they may be located in one location or distributed across multiple network units. Some or all of the network blocks may be selected based on actual needs to achieve the objectives of the present embodiment. Persons of ordinary skill in the art will be able to understand and implement the present invention without inventive effort.

[0266] Through the description of the above embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus a necessary general hardware platform, or of course, by hardware. Based on this understanding, the essence of the above technical solution or the part that contributes to the existing technology can be embodied in the form of a software product. The computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a magnetic disk, an optical disk, etc., and includes a number of instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or certain parts of the embodiments.

[0267] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application.

Claims

1. A data identification method, characterized in that: include: Acquiring data to be processed, wherein the data to be processed includes an image to be processed, a video to be processed, or an audio to be processed; Inputting the data to be processed into a trained neural network model to obtain a recognition result; In which, the neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model includes a first feature extraction stage and a second feature extraction stage located after the first feature extraction stage; the neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; allocate the multiple feature map groups to the corresponding network blocks in the at least one second network block respectively as components of the input of the corresponding network block; when the sequence is in the first feature extraction stage, the number of feature maps allocated to the at least one second network block from the multiple feature maps is equal; when the sequence is in the second feature extraction stage, in the at least one second network block, the number of feature maps allocated to the second network block ranked earlier from the multiple feature maps is greater than the number of feature maps allocated to the second network block ranked later from the multiple feature maps; the number of groups is related to the number of the at least one second network block.

2. The method according to claim 1, characterized in that The size of the feature map outputted in each of the first feature extraction stage and the second feature extraction stage remains unchanged, and each feature extraction stage includes one of the sequences; The size of the feature map output in the second feature extraction stage is smaller than the size of the feature map output in the first feature extraction stage.

3. The method according to claim 2, characterized in that When the sequence is in the first feature extraction stage, the step of dividing the multiple feature graphs output by the first network block according to the number of groups to obtain multiple feature graph groups includes: Evenly dividing the plurality of feature maps output by the first network block according to the number of groups to obtain a plurality of feature map groups; The number of feature maps in the multiple feature map groups is equal.

4. The method according to claim 3, characterized in that When the sequence is in the second feature extraction stage, the step of dividing the multiple feature graphs output by the first network block according to the number of groups to obtain multiple feature graph groups includes: Performing attenuation division on the plurality of feature maps output by the first network block according to the number of groups to obtain a plurality of first feature map groups; Among them, the number of feature graphs in some feature graph groups among the multiple feature graph groups decreases successively; among any two adjacently ordered second network blocks in the at least one second network block, the number of feature graphs of the feature graph group allocated to the first-order second network block from the said partial feature graph group is greater than the number of feature graphs of the feature graph group allocated to the second-order second network block from the said partial feature graph group.

5. The method according to claim 4, characterized in that The number of feature maps in the partial feature map groups is in geometric proportion.

6. The method according to any one of claims 2 to 5, characterized in that The neural network model further includes a third feature extraction stage located after the second feature extraction stage; the size of the feature map output in the third feature extraction stage remains unchanged; the size of the feature map output in the third feature extraction stage is smaller than the size of the feature map output in the second feature extraction stage; The third feature extraction stage includes at least one residual block connected in sequence.

7. The method according to any one of claims 1 to 5, characterized in that The feature maps in the plurality of feature map groups do not intersect with each other; and the union of the plurality of feature map groups includes the plurality of feature maps.

8. A model building method, characterized in that: include: Get sequence; The sequence includes a first network block and at least one second network block located after the first network block; Constructing a neural network model for identifying data to be processed according to the sequence, wherein the data to be processed includes an image to be processed, a video to be processed, or an audio to be processed; the neural network model includes a first feature extraction stage and a second feature extraction stage located after the first feature extraction stage; Among them, the constructed neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; respectively allocate the multiple feature map groups to the corresponding network blocks in the at least one second network block as components of the input of the corresponding network block; when the sequence is in the first feature extraction stage, the number of feature maps allocated to the at least one second network block from the multiple feature maps is equal; when the sequence is in the second feature extraction stage, in the at least one second network block, the number of feature maps allocated to the second network block ranked earlier from the multiple feature maps is greater than the number of feature maps allocated to the second network block ranked later from the multiple feature maps; the number of groups is related to the number of the at least one second network block.

9. The method according to claim 8, characterized in that Also includes: constructing two of the sequences according to a plurality of network blocks; According to the sequence, a neural network model for data recognition is constructed, including: Connecting the two sequences in sequence to obtain a neural network model for data recognition; Among them, the two sequences are respectively located in the first feature extraction stage of the constructed neural network model and the second feature extraction stage located after the first feature extraction stage; the size of the feature map output in each feature extraction stage in the first feature extraction stage and the second feature extraction stage remains unchanged; the size of the feature map output in the second feature extraction stage is smaller than the size of the feature map output in the first feature extraction stage.

10. The method according to claim 9, characterized in that Also includes: Construct at least one residual block; The two sequences are sequentially connected to obtain a neural network model for data recognition, comprising: sequentially connecting the two sequences and the at least one residual block to obtain a neural network model for data recognition; The at least one residual block is located in the third feature extraction stage in the neural network model; the third feature extraction stage is located after the second feature extraction stage; the size of the feature map output in the third feature extraction stage remains unchanged; the size of the feature map output in the third feature extraction stage is smaller than the size of the feature map output in the second feature extraction stage.

11. A model training method, characterized in that: include: Input the sample data into the neural network model to obtain the recognition results; Optimizing the neural network model based on the recognition result and the expected recognition result of the sample data; The neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model includes a first feature extraction stage and a second feature extraction stage located after the first feature extraction stage; the neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; allocate the multiple feature map groups to corresponding network blocks in the at least one second network block respectively as components of the input of the corresponding network block; when the sequence is in the first feature extraction stage, the number of feature maps allocated to the at least one second network block from the multiple feature maps is equal; when the sequence is in the second feature extraction stage, the number of feature maps allocated to the second network block ranked earlier from the multiple feature maps is greater than the number of feature maps allocated to the second network block ranked later from the multiple feature maps; the number of groups is related to the number of the at least one second network block; The neural network model is used to identify the data to be processed, and the data to be processed includes images to be processed, videos to be processed, or audio to be processed.

12. The method according to claim 11, characterized in that The neural network model includes a first feature extraction stage and a second feature extraction stage located after the first feature extraction stage; The size of the feature map outputted in each of the first feature extraction stage and the second feature extraction stage remains unchanged, and each feature extraction stage includes one of the sequences; The size of the feature map output in the second feature extraction stage is smaller than the size of the feature map output in the first feature extraction stage.

13. A neural network system, characterized in that The system is used to identify data to be processed and obtain an identification result, wherein the data to be processed includes an image to be processed, a video to be processed, or an audio to be processed; the system includes: a sequence and a splitting module; the sequence includes a first network block and at least one second network block located after the first network block; the neural network system includes a first feature extraction stage and a second feature extraction stage located after the first feature extraction stage; The splitting module is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; respectively allocate the multiple feature map groups to the corresponding network blocks in the at least one second network block as components of the input of the corresponding network block; when the sequence is in the first feature extraction stage, the number of feature maps allocated to the at least one second network block from the multiple feature maps is equal; when the sequence is in the second feature extraction stage, in the at least one second network block, the number of feature maps allocated to the second network block ranked earlier from the multiple feature maps is greater than the number of feature maps allocated to the second network block ranked later from the multiple feature maps; the number of groups is related to the number of the at least one second network block.

14. The system according to claim 13, wherein: The neural network system includes a first feature extraction stage and a second feature extraction stage located after the first feature extraction stage; The size of the feature map outputted in each of the first feature extraction stage and the second feature extraction stage remains unchanged, and each feature extraction stage includes one of the sequences; The size of the feature map output in the second feature extraction stage is smaller than the size of the feature map output in the first feature extraction stage.

15. The system according to claim 14, wherein: The neural network system further includes a third feature extraction stage located after the second feature extraction stage; the size of the feature map output in the third feature extraction stage remains unchanged; the size of the feature map output in the third feature extraction stage is smaller than the size of the feature map output in the second feature extraction stage; The third feature extraction stage includes at least one residual block connected in sequence.

16. A feature extraction method, characterized in that: include: Acquiring data to be processed, wherein the data to be processed includes an image to be processed, a video to be processed, or an audio to be processed; Inputting the data to be processed into a trained neural network model to extract features of the data to be processed; In which, the neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model includes a first feature extraction stage and a second feature extraction stage located after the first feature extraction stage; the neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; allocate the multiple feature map groups to the corresponding network blocks in the at least one second network block respectively as components of the input of the corresponding network block; when the sequence is in the first feature extraction stage, the number of feature maps allocated to the at least one second network block from the multiple feature maps is equal; when the sequence is in the second feature extraction stage, in the at least one second network block, the number of feature maps allocated to the second network block ranked earlier from the multiple feature maps is greater than the number of feature maps allocated to the second network block ranked later from the multiple feature maps; the number of groups is related to the number of the at least one second network block.

17. An electronic device, characterized in that: include: memory and a processor, wherein The memory is used to store programs; The processor is coupled to the memory and is configured to execute the program stored in the memory to: Acquiring data to be processed, wherein the data to be processed includes an image to be processed, a video to be processed, or an audio to be processed; Inputting the data to be processed into a trained neural network model to obtain a recognition result; In which, the neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model includes a first feature extraction stage and a second feature extraction stage located after the first feature extraction stage; the neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; allocate the multiple feature map groups to the corresponding network blocks in the at least one second network block respectively as components of the input of the corresponding network block; when the sequence is in the first feature extraction stage, the number of feature maps allocated to the at least one second network block from the multiple feature maps is equal; when the sequence is in the second feature extraction stage, in the at least one second network block, the number of feature maps allocated to the second network block ranked earlier from the multiple feature maps is greater than the number of feature maps allocated to the second network block ranked later from the multiple feature maps; the number of groups is related to the number of the at least one second network block.

18. An electronic device, characterized in that: include: memory and a processor, wherein The memory is used to store programs; The processor is coupled to the memory and is configured to execute the program stored in the memory to: Acquire a sequence; the sequence includes a first network block and at least one second network block located after the first network block; Constructing a neural network model for identifying data to be processed according to the sequence, wherein the data to be processed includes an image to be processed, a video to be processed, or an audio to be processed; the neural network model includes a first feature extraction stage and a second feature extraction stage located after the first feature extraction stage; Among them, the constructed neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; respectively allocate the multiple feature map groups to the corresponding network blocks in the at least one second network block as components of the input of the corresponding network block; when the sequence is in the first feature extraction stage, the number of feature maps allocated to the at least one second network block from the multiple feature maps is equal; when the sequence is in the second feature extraction stage, in the at least one second network block, the number of feature maps allocated to the second network block ranked earlier from the multiple feature maps is greater than the number of feature maps allocated to the second network block ranked later from the multiple feature maps; the number of groups is related to the number of the at least one second network block.

19. An electronic device, characterized in that: include: memory and a processor, wherein The memory is used to store programs; The processor is coupled to the memory and is configured to execute the program stored in the memory to: Input the sample data into the neural network model to obtain the recognition results; Optimizing the neural network model based on the recognition result and the expected recognition result of the sample data; The neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model includes a first feature extraction stage and a second feature extraction stage located after the first feature extraction stage; the neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; allocate the multiple feature map groups to corresponding network blocks in the at least one second network block respectively as components of the input of the corresponding network block; when the sequence is in the first feature extraction stage, the number of feature maps allocated to the at least one second network block from the multiple feature maps is equal; when the sequence is in the second feature extraction stage, the number of feature maps allocated to the second network block ranked earlier from the multiple feature maps is greater than the number of feature maps allocated to the second network block ranked later from the multiple feature maps; the number of groups is related to the number of the at least one second network block; The neural network model is used to identify the data to be processed, and the data to be processed includes images to be processed, videos to be processed, or audio to be processed.

20. An electronic device, characterized in that: include: memory and a processor, wherein The memory is used to store programs; The processor is coupled to the memory and is configured to execute the program stored in the memory to: Acquiring data to be processed, wherein the data to be processed includes an image to be processed, a video to be processed, or an audio to be processed; Inputting the data to be processed into a trained neural network model to extract features of the data to be processed; In which, the neural network model includes a sequence; the sequence includes a first network block and at least one second network block located after the first network block; the neural network model includes a first feature extraction stage and a second feature extraction stage located after the first feature extraction stage; the neural network model is used to: obtain the number of groups corresponding to the first network block; divide the multiple feature maps output by the first network block according to the number of groups to obtain multiple feature map groups; allocate the multiple feature map groups to the corresponding network blocks in the at least one second network block respectively as components of the input of the corresponding network block; when the sequence is in the first feature extraction stage, the number of feature maps allocated to the at least one second network block from the multiple feature maps is equal; when the sequence is in the second feature extraction stage, in the at least one second network block, the number of feature maps allocated to the second network block ranked earlier from the multiple feature maps is greater than the number of feature maps allocated to the second network block ranked later from the multiple feature maps; the number of groups is related to the number of the at least one second network block.

Citation Information

Patent Citations

  • Feature map processing method, apparatus and system for neural network, and storage medium

    CN109299722A