# US 12,217,150 B2 · Data processing method and apparatus based on recurrent neural network, and device

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,217,150 B2
- Document ID: US12217150B2
- Status: Granted
- Kind: B2
- Application number: 17/248,131
- Filed: 2021-01-11
- Published: 2021-12-30
- Granted: 2025-02-04
- Earliest claimed: 2020-06-28
- Assignees: Beijing Baidu Netcom Science Technology Co., Ltd.
- Applicants: Beijing Baidu Netcom Science and Technology Co., Ltd.
- Inventors: Huihuang Zheng; Xiang Lan; Yamei Li; Liujie Zhang; Fei Guo; Yanjun Ma; Dianhai Yu
- Web page: https://patentgrep.com/patent/US12217150B2

## CPC

- G06N 3/044: Recurrent networks, e.g. Hopfield networks
- G06N 3/0442: characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
- G06N 3/045: Combinations of networks
- G06N 3/082: modifying the architecture, e.g. adding, deleting or silencing nodes or connections
- G06N 3/08: Learning methods
- Y02D 10/00: Energy efficient computing, e.g. low power processors, power management or thermal management
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- Y02D: CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE

## Abstract

A data processing method and apparatus based on a recurrent neural network and a device are provided. The recurrent neural network includes multiple recurrent units, each recurrent unit includes multiple data processing nodes and a start node, at least one recurrent unit includes an end node, and at least one data processing node is included between the start node and the end node. During the processing of the first target processing object in a first recurrent unit, in a case that the first target processing object does not satisfy the first preset condition, the start node in the first recurrent unit is run to add a tag to the data processing nodes subsequent to the start node and stop addition of the tag in response to reaching the end node, and no processing is performed by the data processing nodes with the tag.

## Claims

### Claim 1

A data processing method based on a recurrent neural network, the recurrent neural network comprises a plurality of recurrent units, each recurrent unit comprises a plurality of data processing nodes, wherein each recurrent unit further comprises a first start node, at least one of the recurrent units further comprises a first end node, at least one of the data processing nodes is included between the first start node and the first end node, and the data processing method based on the recurrent neural network comprises:
inputting a plurality of target processing objects into the plurality of recurrent units, respectively;
sequentially processing the respective target processing objects by the plurality of data processing nodes in the respective recurrent units, to obtain a plurality of processing results output by the plurality of recurrent units;
wherein the plurality of recurrent units comprise a first recurrent unit, judging whether a first target processing object satisfies a first preset condition during the processing of the first target processing object in the first recurrent unit, and in a case that the first target processing object does not satisfy the first preset condition, no processing being performed by the data processing nodes between the first start node and the first end node during the processing of the first target processing object by the plurality of data processing nodes in the first recurrent unit;
wherein the method further comprises:
in a case that the first target processing object satisfies the first preset condition, no processing being performed by the first start node in the first recurrent unit and processing being performed on the first target processing object by the plurality of data processing nodes in the first recurrent unit;
wherein each recurrent unit further comprises a second start node, the at least one of the recurrent units further comprises a second end node, the second start node is located between the first start node and the first end node, and a second preset condition is provided with respect to each recurrent unit;
during the processing of the first target processing object in the first recurrent unit, the data processing method further comprises: judging whether the first target processing object satisfies the second preset condition, in a case that the first target processing object satisfies the first preset condition; no processing being performed by the data processing nodes between the second start node and the second end node during the processing of the first target processing object by the plurality of data processing nodes in the first recurrent unit, in a case that the first target processing object does not satisfy the second preset condition;
wherein the target processing objects comprise at least one of video files, audio files, or image files.

### Claim 2 (depends on 1)

The data processing method according to claim 1, wherein the no processing being performed by the data processing nodes between the first start node and the first end node, comprises:
starting the first start node to add a first tag to one or more data processing nodes subsequent to the first start node and stop addition of the first tag in response to reaching the first end node, and no processing being performed by the one or more data processing nodes with the first tag.

### Claim 3 (depends on 2)

The data processing method of claim 2, wherein
both the first start node and the first end node carry the first tag;
the starting the first start node to add the first tag to the one or more data processing nodes subsequent to the first start node and stop addition of the first tag in response to reaching the first end node, comprises:
running the first start node to obtain variable parameters carrying the first tag;
sequentially transmitting the variable parameters carrying the first tag by the one or more data processing nodes subsequent to the first start node; and
in a case that the variable parameters carrying the first tag are transmitted to the first end node, the first tag carried by the variable parameters is the same as the first tag carried by the first end node, and the first end node clears the first tag carried by the variable parameters.

### Claim 4 (depends on 1)

The data processing method of claim 1, wherein the first end node is provided as a first node of each recurrent unit.

### Claim 5 (depends on 1)

The data processing method of claim 1, wherein the first end node is provided downstream in the last one of the plurality of recurrent units.

### Claim 6 (depends on 1)

The data processing method according to claim 1, wherein the no processing being performed by the data processing nodes between the second start node and the second end node, comprises:
starting the second start node to add a second tag to a data processing node subsequent to the second start node and stop addition of the second tag in response to reaching the second end node, and no processing being performed by the data processing nodes with the second tag.

### Claim 7

A data processing apparatus based on a recurrent neural network, the recurrent neural network comprising a plurality of recurrent units, each recurrent unit comprises a plurality of data processing nodes, wherein each recurrent unit further comprises a first start node, at least one of the recurrent units further comprises a first end node, at least one of the data processing nodes is included between the first start node and the first end node, and the data processing apparatus based on the recurrent neural network comprises:
a processor and a memory for storing one or more computer programs executable by the processor,
wherein when executing at least one of the computer programs, the processor is configured to perform operations comprising:
inputting a plurality of target processing objects into the plurality of recurrent units, respectively;
causing the plurality of data processing nodes in the respective recurrent units to sequentially process the respective target processing objects, to obtain a plurality of processing results output by the plurality of recurrent units;
wherein the plurality of recurrent units comprise a first recurrent unit,
when executing at least one of the computer programs, the processor is further configured to perform operations comprising:
judging whether a first target processing object satisfies a first preset condition during the processing of the first target processing object in the first recurrent unit, and in a case that the first target processing object does not satisfy the first preset condition, causing the data processing nodes between the first start node and the first end node to perform no processing during the processing of the first target processing object by the plurality of data processing nodes in the first recurrent unit;
wherein when executing at least one of the computer programs, the processor is further configured to perform operations comprising:
in a case that the first target processing object satisfies the first preset condition, no processing being performed by the first start node in the first recurrent unit and processing being performed on the first target processing object by the plurality of data processing nodes in the first recurrent unit;
wherein each recurrent unit further comprises a second start node, the at least one of the recurrent units further comprises a second end node, the second start node is located between the first start node and the first end node, and a second preset condition is provided with respect to each recurrent unit; when executing at least one of the computer programs, the processor is further configured to perform operations comprising: judging whether the first target processing object satisfies the second preset condition during the processing of the first target processing object in the first recurrent unit, in a case that the first target processing object satisfies the first preset condition; causing the data processing nodes between the second start node and the second end node to perform no processing during the processing of the first target processing object by the plurality of data processing nodes in the first recurrent unit, in a case that the first target processing object does not satisfy the second preset condition;
wherein the target processing objects comprise at least one of video files, audio files, or image files.

### Claim 8 (depends on 7)

The data processing apparatus of claim 7, wherein when executing at least one of the computer programs, the processor is further configured to perform operations comprising:
starting the first start node to add a first tag to one or more data processing nodes subsequent to the first start node and stop addition of the first tag in response to reaching the first end node, and no processing being performed by the one or more data processing nodes with the first tag.

### Claim 9 (depends on 8)

The data processing apparatus of claim 8, wherein both the first start node and the first end node carry the first tag;
when executing at least one of the computer programs, the processor is further configured to perform operations comprising:
running the first start node to obtain variable parameters carrying the first tag;
causing the one or more data processing nodes subsequent to the first start node to sequentially transmit the variable parameters carrying the first tag; and
in a case that the variable parameters carrying the first tag are transmitted to the first end node, the first tag carried by the variable parameters is the same as the first tag carried by the first end node, causing the first end node to clear the first tag carried by the variable parameters.

### Claim 10 (depends on 7)

The data processing apparatus of claim 7, wherein the first end node is provided as a first node of each recurrent unit.

### Claim 11 (depends on 7)

The data processing apparatus of claim 7, wherein the first end node is provided downstream in the last one of the plurality of recurrent units.

### Claim 12 (depends on 7)

The data processing apparatus of claim 7, wherein when executing at least one of the computer programs, the processor is further configured to perform operations comprising:
starting the second start node to add a second tag to a data processing node subsequent to the second start node and stop addition of the second tag in response to reaching the second end node, and causing the data processing nodes with the second tag to perform no processing.

### Claim 13

A non-transitory computer-readable storage medium storing computer instructions for causing the computer to perform a data processing method based on a recurrent neural network,
wherein the recurrent neural network comprises a plurality of recurrent units, each recurrent unit comprises a plurality of data processing nodes, wherein each recurrent unit further comprises a first start node, at least one of the recurrent units further comprises a first end node, at least one of the data processing nodes is included between the first start node and the first end node, and the computer is caused to perform the data processing method comprising:
inputting a plurality of target processing objects into the plurality of recurrent units, respectively;
sequentially processing the respective target processing objects by the plurality of data processing nodes in the respective recurrent units, to obtain a plurality of processing results output by the plurality of recurrent units;
wherein the plurality of recurrent units comprise a first recurrent unit, judging whether a first target processing object satisfies a first preset condition during the processing of the first target processing object in the first recurrent unit, and in a case that the first target processing object does not satisfy the first preset condition, no processing being performed by the data processing nodes between the first start node and the first end node during the processing of the first target processing object by the plurality of data processing nodes in the first recurrent unit;
wherein the computer is caused to perform the data processing method further comprising:
in a case that the first target processing object satisfies the first preset condition, no processing being performed by the first start node in the first recurrent unit and processing being performed on the first target processing object by the plurality of data processing nodes in the first recurrent unit;
wherein each recurrent unit further comprises a second start node, the at least one of the recurrent units further comprises a second end node, the second start node is located between the first start node and the first end node, and a second preset condition is provided with respect to each recurrent unit;
wherein the computer is caused to perform the data processing method further comprising:
judging whether the first target processing object satisfies the second preset condition during the processing of the first target processing object in the first recurrent unit, and in a case that the first target processing object satisfies the first preset condition; and
causing the data processing nodes between the second start node and the second end node to perform no processing during the processing of the first target processing object by the plurality of data processing nodes in the first recurrent unit and in a case that the first target processing object does not satisfy the second preset condition;
wherein the target processing objects comprise at least one of video files, audio files, or image files.

### Claim 14 (depends on 13)

The non-transitory computer-readable storage medium of claim 13, wherein the computer is caused to perform the no processing being performed by the data processing nodes between the first start node and the first end node in the following manner:
starting the first start node to add a first tag to one or more data processing nodes subsequent to the first start node and stop addition of the first tag in response to reaching the first end node, and no processing being performed by the one or more data processing nodes with the first tag.

### Claim 15 (depends on 13)

The non-transitory computer-readable storage medium of claim 13, wherein the first end node is provided as a first node of each recurrent unit.

### Claim 16 (depends on 13)

The non-transitory computer-readable storage medium of claim 13, wherein the first end node is provided downstream in the last one of the plurality of recurrent units.

### Claim 17 (depends on 13)

The non-transitory computer-readable storage medium of claim 13, wherein the computer is caused to perform the no processing being performed by the data processing nodes between the second start node and the second end node in the following manner:
starting the second start node to add a second tag to a data processing node subsequent to the second start node and stop addition of the second tag in response to reaching the second end node, and no processing being performed by the data processing nodes with the second tag.
