IP Library Granted Patent US 12,406,469
Granted Patent B1
US 12,406,469 · App. 17/951,887 · Granted Sep 2, 2025

Class-incremental learning with pretrained machine learning models

Inventors: Avinash Aghoram Ravichandran (Seattle, WA); Pashmeen Mistry (San Jose, CA); Tz-Ying Wu (San Diego, CA); Gurumurthy Swaminathan (Redmond, WA); Zhizhong Li (Seattle, WA); Rahul Bhotika (Bellevue, WA); Stefano Soatto (Pasadena, CA)
Assignee: Amazon Technologies, Inc.
G06V10/764G06V10/774G06V10/809G06V20/70
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,406,469
App. No.
17/951,887
Granted
Sep 2, 2025
Kind
B1
Abstract

Techniques for class-incremental learning with pretrained machine learning models are described. According to some examples, a pretrained machine learning model that is capable of recognizing objects belonging to a set of object classes is extended to add capability for recognizing additional object classes, without significantly reducing the accuracy of the model for recognizing objects belonging to any of the object classes in the original set of object classes (aka catastrophic forgetting).

Claims (45)

1. A computer-implemented method comprising:

receiving, at a machine learning (ML) service of a provider network, a first request to label objects belonging to a first object class in a first set of images;

receiving, at the ML service, the first set of images;

labeling, using a first ML model hosted at the ML service, objects belonging to the first object class in the first set of images;

receiving, at the ML service, a second request to label objects belonging to a second object class;

copying, by the ML service, a proper subset of the first ML model to generate a base branch and a novel branch;

receiving, at the ML service, a second set of images including images of objects belonging to the second object class;

training, by the ML service using the second set of images, the novel branch to generate a second ML model including the base branch and the novel branch;

receiving, at the ML service, a third request to label objects belonging to the first and second object classes in a third set of images;

receiving, at the ML service, the third set of images; and

labeling, using the second ML model hosted at the ML service, objects belonging to the first and second object classes in the third set of images.

2. The computer-implemented method of claim 1 , wherein labeling the objects belonging to the first and second object classes in the third set of images comprises combining respective outputs of the base and novel branches of the second ML model.

3. The computer-implemented method of claim 2 , wherein combining the respective outputs of the base and novel branches of the second ML model comprises combining logit scores of the base and novel branches by concatenation.

4. A computer-implemented method comprising:

receiving, at a machine learning (ML) service of a provider network, a first request to label objects belonging to a first object class;

labeling, by the ML service using a first ML model, objects belonging to the first object class in a first set of images;

receiving, at the ML service, a second request to label objects belonging to a second object class;

copying, by the ML service, a proper subset of the first ML model to generate a base branch and a novel branch;

training, by the ML service using a second set of images including images of objects belonging to the second object class, the novel branch to generate a second ML model including the base branch and the novel branch;

receiving, at the ML service, a third request to label objects belonging to the first and second object classes; and

labeling, by the ML service using the second ML model, objects belonging to the first and second object classes in a third set of images.

5. The computer-implemented method of claim 4 , wherein the proper subset of the first ML model comprises an encoder with a base parameter.

6. The computer-implemented method of claim 4 , wherein receiving, at the ML service, the third request to label objects belonging to the first and second object classes comprises receiving the third request at a single application programming interface (API).

7. The computer-implemented method of claim 4 , wherein labeling the objects belonging to the first and second object classes in a third set of images comprises combining respective outputs of the base and novel branches of the second ML model.

8. The computer-implemented method of claim 7 , wherein combining the respective outputs of the base and novel branches of the second ML model comprises combining logit scores of the base and novel branches by concatenation.

9. The computer-implemented method of claim 7 , wherein combining respective outputs of the base and novel branches of the second ML model comprises knowledge pooling.

10. The computer-implemented method of claim 4 , further comprising, after training the second ML model, updating an API associated with the first ML model such that the API is also associated with the second ML model.

11. The computer-implemented method of claim 4 , wherein training the second ML model is performed by a model training system of the ML service, and the second ML model is subsequently exposed via an endpoint of a model hosting system of the ML service.

12. The computer-implemented method of claim 4 , further comprising storing a set of labeled images including labels of the objects belonging to the first and second object classes.

13. A system comprising:

one or more electronic devices implementing a machine learning (ML) service in a multi-tenant provider network, the ML service including instructions that, when executed by one or more processors of the ML service cause the ML service to:

receive a first request to label objects belonging to a first object class;

label objects belonging to the first object class in a first set of images;

receive a second request to label objects belonging to a second object class;

copy a proper subset of the first ML model to generate a base branch and a novel branch;

train, using a second set of images including images of objects belonging to the second object class, the novel branch to generate a second ML model including the base branch and the novel branch;

receive a third request to label objects belonging to the first and second object classes; and

label, using the second ML model, objects belonging to the first and second object classes in a third set of images.

14. The system of claim 13 , wherein the proper subset of the first ML model comprises an encoder with a base parameter.

15. The system of claim 13 , wherein receiving the third request to label objects belonging to the first and second object classes comprises receiving the third request at a single application programming interface (API).

16. The system of claim 13 , wherein labeling the objects belonging to the first and second object classes in a third set of images comprises combining respective outputs of the base and novel branches of the second ML model.

17. The system of claim 16 , wherein combining the respective outputs of the base and novel branches of the second ML model comprises combining logit scores of the base and novel branches by concatenation.

18. The system of claim 16 , wherein combining respective outputs of the base and novel branches of the second ML model comprises knowledge pooling.

19. The system of claim 13 , wherein the instructions include further instructions that, when executed by the one or more processors of the ML service further cause the ML service to, after training the second ML model, update an API associated with the first ML model such that the API is also associated with the second ML model.

20. The system of claim 13 , wherein training the second ML model is performed by a model training system of the ML service, and the second ML model is subsequently exposed via an endpoint of a model hosting system of the ML service.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 18, 2025
From: RAVICHANDRAN, AVINASH AGHORAM; MISTRY, PASHMEEN; WU, TZ-YING; SWAMINATHAN, GURUMURTHY; LI, ZHIZHONG; BHOTIKA, RAHUL; SOATTO, STEFANO
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 071450/0146 →
References Cited (13)
US 9805264B2 · Kuznetsova · 2017 [cited by examiner]
US 10860836B1 · Tyagi · 2020 [cited by examiner]
US 10878296B2 · Murphy · 2020 [cited by examiner]
US 10878320B2 · Wierzynski · 2020 [cited by examiner]
US 11120306B2 · Desai · 2021 [cited by examiner]
US 11250296B2 · Brower · 2022 [cited by examiner]
US 11436849B2 · Zilberman · 2022 [cited by examiner]
US 11513670B2 · Singh · 2022 [cited by examiner]
US 11586989B2 · Bos · 2023 [cited by examiner]
US 11836994B2 · Saggu · 2023 [cited by examiner]
US 11908174B2 · Bedez · 2024 [cited by examiner]
US 12013922B2 · Michiels · 2024 [cited by examiner]
Wu et al., “Class-Incremental Learning with Strong Pre-trained Models”, Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), Apr. 7, 2022, pp. 9601-9610. [cited by applicant]