IP Library › Granted Patent US 12,541,685
Granted Patent B2
US 12,541,685 · App. 17/121,149 · Granted Feb 3, 2026

Semi-supervised learning of training gradients via task generation

Inventors: Leonid Karlinsky (Mazkeret Batya, IL); Joseph Shtok (Binyamina, IL)
Assignee: International Business Machines Corporation
G06N3/082G06F18/2148G06F18/2155G06N3/045
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,541,685
App. No.
17/121,149
Granted
Feb 3, 2026
Kind
B2
Abstract

In an approach for augmenting a neural network with a self-supervised mechanism, a processor trains a first neural network using labeled data, the first neural network configured for a main task. A processor trains a second neural network using the labeled data and unlabeled data, the second neural network being an additional component to the first neural network. A processor computes a gradient using a second loss of the second neural network based on the unlabeled data.

Claims (45)

1 . A method comprising:

training a common subnetwork of a neural network to perform a main task using labeled data, the neural network comprising a main task head subnetwork, the common subnetwork, and a gradient generating subnetwork, wherein the main task head subnetwork receives input from the common subnetwork;

determining a first loss for performing the main task using the trained common subnetwork and the main task head subnetwork;

computing a gradient using unlabeled data via the trained common subnetwork and the gradient generating subnetwork, the gradient generating subnetwork comprising a classifier subnetwork and a label generator subnetwork, both the classifier subnetwork and the label generator subnetwork receiving a same input from the trained common subnetwork;

updating the trained common subnetwork using the gradient;

determining a second loss for performing the main task using the trained common subnetwork and the main task head subnetwork after the updating;

determining a gradient training loss based on the first loss and the second loss; and

training the neural network based on the gradient training loss.

2 . The method of claim 1 , wherein determining the gradient training loss comprises:

computing a difference between the second loss and the first loss; and

adding a fixed positive constant to the difference, wherein the method further comprises applying a rectified linear unit function to the gradient training loss.

3 . The method of claim 1 , wherein computing the gradient comprises:

determining a gradient generating loss based on outputs of the classifier and the label generator; and

computing the gradient based on the gradient generating loss.

4 . A computer program product comprising:

one or more computer readable storage media; and

program instructions stored on the one or more computer readable storage media to perform operations comprising:

training a common subnetwork of a neural network to perform a main task using labeled data, the neural network comprising a main task head subnetwork, the common subnetwork, and a gradient generating subnetwork, wherein the main task head subnetwork receives input from the common subnetwork;

determining a first loss for performing the main task using the trained common subnetwork and the main task head subnetwork;

computing a gradient using unlabeled data via the trained common subnetwork and the gradient generating subnetwork, the gradient generating subnetwork comprising a classifier subnetwork and a label generator subnetwork, both the classifier subnetwork and the label generator subnetwork receiving a same input from the trained common subnetwork;

updating the trained common subnetwork using the gradient;

determining a second loss for performing the main task using the trained common subnetwork and the main task head subnetwork after the updating;

determining a gradient training loss based on the first loss and the second loss; and

training the neural network based on the gradient training loss.

5 . The computer program product of claim 4 , wherein determining the gradient training loss comprises:

computing a difference between the second loss and the first loss; and

adding a fixed positive constant to the difference, wherein the operations further comprise applying a rectified linear unit function to the gradient training loss.

6 . The computer program product of claim 4 , wherein computing the gradient comprises:

determining a gradient generating loss based on outputs of the classifier and the label generator; and

computing the gradient based on the gradient generating loss.

7 . A computer system comprising:

one or more processors, one or more computer readable storage media, and program instructions stored on the one or more computer readable storage media for execution by at least one of the one or more processors to perform operations comprising:

training a common subnetwork of a neural network to perform a main task using labeled data, the neural network comprising a main task head subnetwork, the common subnetwork, and a gradient generating subnetwork, wherein the main task head subnetwork receives input from the common subnetwork;

determining a first loss for performing the main task using the trained common subnetwork and the main task head subnetwork;

computing a gradient using unlabeled data via the trained common subnetwork and the gradient generating subnetwork, the gradient generating subnetwork comprising a classifier subnetwork and a label generator subnetwork, both the classifier subnetwork and the label generator subnetwork receiving a same input from the trained common subnetwork;

updating the trained common subnetwork using the gradient;

determining a second loss for performing the main task using the trained common subnetwork and the main task head subnetwork after the updating;

determining a gradient training loss based on the first loss and the second loss; and

training the neural network based on the gradient training loss.

8 . The computer system of claim 7 , wherein determining the gradient training loss comprises:

computing a difference between the second loss and the first loss; and

adding a fixed positive constant to the difference, wherein the operations further comprise applying a rectified linear unit function to the gradient training loss.

9 . The computer system of claim 7 , wherein computing the gradient comprises:

determining a gradient generating loss based on outputs of the classifier and the label generator; and

computing the gradient based on the gradient generating loss.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 14, 2020
From: KARLINSKY, LEONID; SHTOK, JOSEPH
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 054640/0822 →
Continuity (1)
Related Publication 20220188639A1 · Jun 16, 2022
References Cited (18)
US 20180053108A1 · Olabiyi · 2018 [cited by examiner]
US 20180336471A1 · Rezagholizadeh · 2018 [cited by examiner]
US 20190042945A1 · Majumdar · 2019 [cited by examiner]
US 20190122097A1 · Shibahara · 2019 [cited by examiner]
US 20190122120A1 · Wu et al. · 2019 [cited by applicant]
US 20190201265A1 · Sayadi · 2019 [cited by examiner]
US 20200272897A1 · Ishii · 2020 [cited by examiner]
Salimans, Tim, et al. “Improved Techniques for Training GANs” 2016 [Online] Downlaoded May 7, 2025 https://arxiv.org/pdf/1606.03498 (Year: 2016). [cited by examiner]
Goodfellow, Ian. “NIPS 2016 Tutorial: Generative Adversarial NEtworks” 2017 [Online] Downloaded May 7, 2025 https://arxiv.org/pdf/1701.00160 (Year: 2017). [cited by examiner]
Finn et al., “Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks”, Cornell University Library, arXiv, Jul. 18, 2017, 13 pages, <https://arxiv.org/abs/1703.03400>. [cited by applicant]
Gidaris et al., “Boosting Few-Shot Visual Learning with Self-Supervision”, Cornell University Library, arXiv, Jun. 12, 2019, 12 pages, <https://arxiv.org/abs/1906.05186>. [cited by applicant]
Jackson et al., “Semi-Supervised Learning by Label Gradient Alignment”, Cornell University Library, arXiv, Feb. 6, 2019, 12 pages, <https://arxiv.org/pdf/1902.02336.pdf>. [cited by applicant]
Kaizuka, Hiroshi, “Gradient-based Data Augmentation for Semi-Supervised Learning”, Cornell University Library, arXiv, Apr. 12, 2020, 18 pages, <https://arxiv.org/pdf/2003.12824.pdf>. [cited by applicant]
Lin et al. “Learning to Self-Train for Semi-Supervised Few-Shot Classification”, Proceedings of the 33rd Conference on Neural Information Processing Systems (NeurIPS 2019), Vancouver, Canada, Dec. 8-14, 2019, 11 pages, … [cited by applicant]
Liu et al., “Exploiting Unlabeled Data in CNNs by Self-supervised Learning to Rank”, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 41, No. 8, Aug. 2019, 18 pages, <https://arxiv.org/pdf/1902.06285… [cited by applicant]
Spyros et al., “Unsupervised Representation Learning by Predicting Image Rotations”, Cornell University Library, arXiv, Mar. 21, 2018, 16 pages, <https://arxiv.org/abs/1803.07728>. [cited by applicant]
Vu, Chen, “Train without labeling data using Self-Supervised Learning by Relational Reasoning”, Towards Data Science, Aug. 2020, 14 pages, <https://towardsdatascience.com/train-without-labeling-data-using-self-supervise… [cited by applicant]
Zhai et al., “S4L: Self-Supervised Semi-Supervised Learning”, Proceedings of the 2019 IEEE/CVF International Conference on Computer Vision (ICCV), Oct. 27-Nov. 2, 2019, Seoul, South Korea, 10 pages, <https://ieeexplore.… [cited by applicant]