IP Library › Granted Patent US 12,518,145
Granted Patent B2
US 12,518,145 · App. 17/848,081 · Granted Jan 6, 2026

Neural network training method and apparatus

Inventors: Yixing Xu (Beijing, CN); Yehui Tang (Beijing, CN); Li Qian (Shenzhen, CN); Yunhe Wang (Beijing, CN); Chunjing Xu (Shenzhen, CN)
Assignee: HUAWEI TECHNOLOGIES CO., LTD.
G06N3/048G06N3/084
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,518,145
App. No.
17/848,081
Granted
Jan 6, 2026
Kind
B2
Abstract

A neural network training method in an artificial intelligence (AI) field includes inputting training data into a neural network; determining a first input space of a second target layer in the neural network based on a first output space of a first target layer in the neural network; and inputting a feature vector in the first input space into the second target layer, where a capability of fitting random noise by the neural network when the feature vector in the first input space is input into the second target layer is lower than a capability of fitting the random noise by using an output space that is in the neural network and that exists when a feature vector in the first output space is input into the second target layer.

Claims (415)

1 . A neural network training method comprising:

inputting, into a neural network, training data comprising an image, text, or speech;

determining, based on a first output space of a first target layer in the neural network and a target perturbation value of the first output space, a first input space of a second target layer in the neural network, wherein the target perturbation value is based on an initial perturbation value of the first output space and a perturbation value increment of the first output space, wherein the perturbation value increment is based on the initial perturbation value, a weight matrix of the second target layer, and a target function, and wherein the target function is a function of a perturbation value of the first output space and comprises a first relational expression for determining Rademacher complexity of the second target layer based on a second input space of the second target layer and the weight matrix; and

inputting a first feature vector in the first input space into the second target layer to train the neural network,

wherein a first capability of fitting random noise using a second output space that is of a third target layer in the neural network and that exists when the first feature vector in the first input space is input into the second target layer is lower than a second capability of fitting the random noise using a third output space that is of the third target layer and that exists when a second feature vector in the first output space is input into the second target layer.

2 . The neural network training method of claim 1 , further comprising:

determining, based on the second output space, a first Rademacher complexity of the third target layer; and

determining, based on the third output space, a second Rademacher complexity of the third target layer,

wherein the first Rademacher complexity is less than the second Rademacher complexity.

3 . The neural network training method of claim 1 , wherein the second target layer is a first layer after the first target layer.

4 . The neural network training method of claim 1 , wherein the first relational expression is for determining the second input space of the second target layer based on the perturbation value and the first output space, and wherein the perturbation value increment is a gradient of the target function.

5 . The neural network training method of claim 1 , wherein determining the first input space based on the target perturbation value and the first output space comprises:

determining, based on the target perturbation value, the first output space, and the weight matrix, a target function value of the target function;

when a difference between the target function value and an initial function value is less than or equal to a preset threshold:

performing, based on the target perturbation value, perturbation adjustment on the first output space; and

determining that a fourth output space obtained through adjustment is the first input space; and

when the difference between the target function value and the initial function value is greater than the preset threshold:

updating the initial function value to the target function value;

updating the initial perturbation value to the target perturbation value; and

repeatedly performing step 1 to step 3 until the difference between the target function value and the initial function value is less than or equal to the preset threshold.

6 . The neural network training method of claim 5 , wherein the target function further comprises a term that is a function of the perturbation value.

7 . The neural network training method of claim 5 , wherein the target function is:

1

N

[

sup

k

⁢

❘

"\[LeftBracketingBar]"

〈

K

′

[

k

,

:

]

,

∑

i

=

1

N

σ

i

[

f

⁡

(

x

i

)

-

m

i

∘

ε

i

]

〉

❘

"\[RightBracketingBar]"

+

λ

2

⁢

∑

i

=

1

N

ε

i

2

2

]

,

wherein σ i is −1 or 1, wherein K′[k,:] represents a k th row in the weight matrix, wherein “ , ” represents point-wise multiplication, wherein

sup

k

⁢

❘

"\[LeftBracketingBar]"

〈

K

′

[

k

,

:

]

T

,

∑

i

=

1

N

σ

i

[

f

⁡

(

x

i

)

-

m

i

∘

ε

i

]

〉

❘

"\[RightBracketingBar]"

represents that k in

sup

k

⁢

❘

"\[LeftBracketingBar]"

〈

K

′

[

k

,

:

]

T

,

∑

i

=

1

N

σ

i

[

f

⁡

(

x

i

)

-

m

i

∘

ε

i

]

〉

❘

"\[RightBracketingBar]"

maximizes a value of

❘

"\[LeftBracketingBar]"

〈

K

′

[

k

,

:

]

T

,

∑

i

=

1

N

σ

i

[

f

⁡

(

x

i

)

-

m

i

∘

ε

i

]

〉

❘

"\[RightBracketingBar]"

,

wherein “∥ ∥ 2 ” represents a quadratic norm, wherein f(x i ) represents an i th output space in the first output space, wherein the i th output space corresponds to i th data in the training data, wherein i is a positive integer less than or equal to N, wherein N is an amount of the training data, wherein “∘” represents element-wise multiplication, wherein a first length of m i is the same as a second length of f(x i ), wherein a value of each element in m i is 0 or 1, wherein ε i indicates the perturbation value, and wherein λ is a preconfigured parameter value.

8 . The neural network training method of claim 4 , wherein the first output space, the perturbation value, and the first input space satisfy a relationship, and wherein the relationship is:

{circumflex over (f)} ( x i )= f ( x i )− m i ∘ε i ,

wherein f(x i ) represents an i th output space in the first output space, wherein the i th output space corresponds to i th data in the training data, wherein i is a positive integer less than or equal to N, wherein N is an amount of the training data, wherein “∘” represents element-wise multiplication, wherein {circumflex over (f)}(x i ) represents an i th input space obtained by performing perturbation adjustment on the i th output space, wherein a first size of m i is the same as a second size of f(x i ), wherein a value of each element in m i is 0 or 1, and wherein ε i represents the perturbation value.

9 . The neural network training method of claim 1 , wherein the neural network is a convolutional neural network, and wherein the first target layer is either a convolutional layer or a fully-connected layer.

10 . The neural network training method of claim 1 , wherein the neural network is a recurrent neural network, and wherein the first target layer comprises a long short-term memory block, a bidirectional recurrent neural network block, a memory network block, or a gate recurrent block.

11 . A neural network training apparatus comprising:

a memory configured to store instructions; and

a processor coupled to the memory, wherein the instructions cause the processor to be configured to:

input, into a neural network, training data comprising an image, text, or speech;

determine, based on a first output space of a first target layer in the neural network and a target perturbation value of the first output space, a first input space of a second target layer in the neural network, wherein the target perturbation value is based on an initial perturbation value of the first output space and a perturbation value increment of the first output space, wherein the perturbation value increment is based on the initial perturbation value, a weight matrix of the second target layer, and a target function, and wherein the target function is a function of a perturbation value of the first output space and comprises a first relational expression for determining Rademacher complexity of the second target layer based on a second input space of the second target layer and the weight matrix; and

input a first feature vector in the first input space into the second target layer to train the neural network,

wherein a first capability of fitting random noise using a second output space that is of a third target layer in the neural network and that exists when the first feature vector in the first input space is input into the second target layer is lower than a second capability of fitting the random noise using a third output space that is of the third target layer and that exists when a second feature vector in the first output space is input into the second target layer.

12 . The neural network training apparatus of claim 11 , wherein the instructions further cause the processor to be configured to:

determine, based on the second output space, first Rademacher complexity of the third target layer; and

determine, based on the third output space, second Rademacher complexity of the third target layer,

wherein the first Rademacher complexity is less than the second Rademacher complexity.

13 . The neural network training apparatus of claim 11 , wherein the second target layer is a first layer after the first target layer.

14 . The neural network training apparatus of claim 11 , wherein the first relational expression is for determining the second input space of the second target layer based on the perturbation value and the first output space, and wherein the perturbation value increment is a gradient of the target function.

15 . The neural network training apparatus of claim 11 , wherein the instructions further cause the processor to be configured to:

determine, based on the target perturbation value, the first output space, and the weight matrix, a target function value of the target function;

when a difference between the target function value and an initial function value is less than or equal to a preset threshold:

perform, based on the target perturbation value, perturbation adjustment on the first output space; and

determine that a fourth output space obtained through adjustment is the first input space; and

when the difference between the target function value and the initial function value is greater than the preset threshold:

update the initial function value to the target function value;

update the initial perturbation value to the target perturbation value; and

repeatedly perform step 1 to step 3 until the difference between the target function value and the initial function value is less than or equal to the preset threshold.

16 . The neural network training apparatus of claim 15 , wherein the target function further comprises a term that is a function of the perturbation value.

17 . The neural network training apparatus of claim 15 , wherein the target function is:

1

N

[

sup

k

⁢

❘

"\[LeftBracketingBar]"

〈

K

′

[

k

,

:

]

,

∑

i

=

1

N

σ

i

[

f

⁡

(

x

i

)

-

m

i

∘

ε

i

]

〉

❘

"\[RightBracketingBar]"

+

λ

2

⁢

∑

i

=

1

N

ε

i

2

2

]

,

wherein σ i is −1 or 1, K′[k,:] represents a k th row in the weight matrix, wherein “ , ” represents point-wise multiplication, wherein

sup

k

⁢

❘

"\[LeftBracketingBar]"

〈

K

′

[

k

,

:

]

T

,

∑

i

=

1

N

σ

i

[

f

⁡

(

x

i

)

-

m

i

∘

ε

i

]

〉

❘

"\[RightBracketingBar]"

represents that k in

sup

k

⁢

❘

"\[LeftBracketingBar]"

〈

K

′

[

k

,

:

]

T

,

∑

i

=

1

N

σ

i

[

f

⁡

(

x

i

)

-

m

i

∘

ε

i

]

〉

❘

"\[RightBracketingBar]"

maximizes a value of

❘

"\[LeftBracketingBar]"

〈

K

′

[

k

,

:

]

T

,

∑

i

=

1

N

σ

i

[

f

⁡

(

x

i

)

-

m

i

∘

ε

i

]

〉

❘

"\[RightBracketingBar]"

,

wherein “∥ ∥ 2 ” represents a quadratic norm, wherein f(x i ) represents an i th output space in the first output space, wherein the i th output space corresponds to i th data in the training data, wherein i is a positive integer less than or equal to N, wherein N is an amount of the training data, wherein “∘” represents element-wise multiplication, wherein a first length of m i is the same as a second length of f(x i ), wherein a value of each element in m i is 0 or 1, wherein ε i indicates the perturbation value, and wherein λ is a preconfigured parameter value.

18 . The neural network training apparatus of claim 14 , wherein the first output space, the perturbation value, and the first input space satisfy a relationship, and wherein the relationship is:

{circumflex over (f)} ( x i )= f ( x i )− m i ∘ε i ,

wherein f(x i ) represents an i th output space in the first output space, wherein the i th output space corresponds to i th data in the training data, wherein i is a positive integer less than or equal to N, wherein N is an amount of the training data, wherein “∘” represents element-wise multiplication, wherein {circumflex over (f)}(x i ) represents an i th input space obtained by performing perturbation adjustment on the i th output space, wherein a first size of m i is the same as a second size of f(x i ), wherein a value of each element in m i is 0 or 1, and wherein ε i represents the perturbation value.

19 . The neural network training apparatus of claim 11 , wherein the neural network is a convolutional neural network, and wherein the first target layer is either a convolutional layer or a fully connected layer.

20 . The neural network training apparatus of claim 11 , wherein the neural network is a recurrent neural network, and wherein the first target layer comprises a long short-term memory block, a bidirectional recurrent neural network block, a memory network block, or a gate recurrent block.

21 . A computer program product comprising computer-executable instructions that are stored on a non-transitory computer-readable medium and that, when executed by a processor, cause an apparatus to:

input, into a neural network, training data comprising an image, text, or speech;

determine, based on a first output space of a first target layer in the neural network and a target perturbation value of the first output space, a first input space of a second target layer in the neural network, wherein the target perturbation value is based on an initial perturbation value of the first output space and a perturbation value increment of the first output space, wherein the perturbation value increment is based on the initial perturbation value, a weight matrix of the second target layer, and a target function, and wherein the target function is a function of a perturbation value of the first output space and comprises a first relational expression for determining Rademacher complexity of the second target layer based on a second input space of the second target layer and the weight matrix; and

input a first feature vector in the first input space into the second target layer to train the neural network,

wherein a first capability of fitting random noise using a second output space that is of a third target layer in the neural network and that exists when the first feature vector is input into the second target layer is lower than a second capability of fitting the random noise using a third output space that is of the third target layer and that exists when a second feature vector in the first output space is input into the second target layer.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 14, 2025
From: XU, YIXING; QIAN, LI; WANG, YUNHE; XU, CHUNJING
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 072561/0665 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 14, 2025
From: BEIJING HUAWEI DIGITAL TECHNOLOGIES CO., LTD.
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 072561/0804 →
EMPLOYMENT AGREEMENT Recorded Oct 14, 2025
From: TANG, YEHUI
To: BEIJING HUAWEI DIGITAL TECHNOLOGIES CO., LTD.
Reel/Frame 073065/0496 →
Priority Claims (1)
CN 201911351051.8 · Dec 24, 2019 · national
Continuity (2)
Continuation PCTCN2020138651 · Dec 23, 2020
Related Publication 20220327363A1 · Oct 13, 2022
References Cited (15)
US 10366329B2 · Hinton et al. · 2019 [cited by applicant]
US 20220327363A1 · Xu et al. · 2022 [cited by applicant]
CN 108256630A · 2018 [cited by applicant]
CN 108562811A · 2018 [cited by applicant]
CN 111797970A · 2020 [cited by applicant]
Pham V, Bluche T, Kermorvant C, Louradour J. Dropout improves recurrent neural networks for handwriting recognition. In2014 14th international conference on frontiers in handwriting recognition Sep. 1, 2014 (pp. 285-290… [cited by examiner]
Gao W, Zhou ZH. Dropout rademacher complexity of deep neural networks. Science China Information Sciences. Jul. 2016;59:1-2. (Year: 2016). [cited by examiner]
Srivastava N, Hinton G, Krizhevsky A, Sutskever I, Salakhutdinov R. Dropout: a simple way to prevent neural networks from overfitting. The journal of machine learning research. Jan. 1, 2014;15(1):1929-58. (Year: 2014). [cited by examiner]
Aidan N. Gomez et al., “Targeted Dropout,” CDNNRIA Workshop at the 32nd Conference on Neural Information Processing Systems, 2018, Montreal, Canada, 8 pages. [cited by applicant]
Golnaz Ghiasi et al., “DropBlock: A regularization method for convolutional networks,” Oct. 30, 2018, 11 pages. [cited by applicant]
Nitish Srivastava et al, “Dropout: A Simple Way to Prevent Neural Networks from Overfitting,” Journal of Machine Learning Research 15, 2014, 30 pages. [cited by applicant]
G. E. Hinton et al, “Improving neural networks by preventing co-adaptation of feature detectors,” Jul. 3, 2012, 18 pages. [cited by applicant]
Daniel Ho et al, “Population Based Augmentation: Efficient Learning of Augmentation Policy Schedules,” Proceedings of the 36 th International Conference on Machine Learning, Long Beach, California, PMLR 97, 2019, 11 pag… [cited by applicant]
Li Wan et al, “Regularization of Neural Networks using DropConnect,” Proceedings of the 30th International Conference on Machine Learning, Atlanta, Georgia, USA, 2013, 9 pages. [cited by applicant]
Wang Xinying, “Research on Multivariate Time Series Prediction based on Random Project Neural Networks,” Dalian University of Technology, Jun. 2015, with an English Abstract, 136 pages. [cited by applicant]