IP Library Granted Patent US 10,967,509
Granted Patent B2
US 10,967,509 · App. 16/910,163 · Granted Apr 6, 2021

Enhancing robot learning

Inventors: Nareshkumar Rajkumar (Cupertino, CA); Patrick Leger (Belmont, CA); Abhinav Gupta (Santa Clara, CA)
Assignee: X Development LLC
B25J9/163B25J9/0003B25J9/1653G06N20/00B25J9/1697Y10S901/01Y10S901/03Y10S901/47
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 10,967,509
App. No.
16/910,163
Granted
Apr 6, 2021
Kind
B2
Abstract

Methods, systems, and apparatus, including computer-readable media storing executable instructions, for enhancing robot learning. In some implementations, a robot stores first embeddings generated using a first machine learning model, and the first embeddings include one or more first private embeddings that are not shared with other robots. The robot receives a second machine learning model from a server system over a communication network. The robot generates a second private embedding for each of the one or more first private embeddings using the second machine learning model. The robot adds the second private embeddings to the cache of the robot and removes the one or more first private embeddings from the cache of the robot.

Claims (41)

1. A method comprising:

storing first data in a cache for a robot, wherein the first data was generated using a first machine learning model;

after storing the first data, identifying a second machine learning model for the robot;

generating second data corresponding to at least a particular portion of the first data in the cache, wherein the second data is generated using the second machine learning model;

adding the second data to the cache for the robot; and

removing at least the particular portion of the first data from the cache for the robot.

2. The method of claim 1 , wherein the cache is a local cache of data stored on one or more data storage devices of the robot.

3. The method of claim 1 , wherein the first data is data generated by the robot using the first machine learning model.

4. The method of claim 1 , wherein the method comprises receiving, by the robot, the second machine learning model over a communication network.

5. The method of claim 1 , wherein the generating, the adding, and the removing are performed by the robot.

6. The method of claim 1 , wherein the first machine learning model is a first neural network model, and wherein the second machine learning model is a second neural network model.

7. The method of claim 1 , wherein the first data includes a first data representation that was output by the first machine learning model in response to an input derived from sensor data generated by one or more sensors of the robot; and

wherein the second data includes a second data representation that was output by the second machine learning model in response to an input derived from the sensor data generated by one or more sensors of the robot.

8. The method of claim 1 , wherein the particular portion of the first data includes one or more data representations representing one or more objects detected by one or more sensors of the robot; and

wherein the second data include one or more data representations representing the one or more objects.

9. The method of claim 1 , further comprising storing sensor data used to generate the particular portion of the first data;

wherein generating the second data comprises generating, using the second machine learning model, the second data from the stored sensor data used to generate the particular portion of the first data.

10. The method of claim 9 , wherein the particular portion of the first data comprises a first embedding for an object; and

wherein generating the second data from the stored sensor data comprises generating a second embedding for the object by inputting, to the second machine learning model, feature values derived from the sensor data used to generate the first embedding for the object.

11. The method of claim 1 , wherein generating the second data comprises selectively generating second data corresponding to portions of the first data based on metadata associated with the first data.

12. A system comprising:

one or more processors; and

one or more machine-readable media storing instructions that, when executed by the one or more processors, cause the system to perform operations comprising:

storing first data in a cache for a robot, wherein the first data was generated using a first machine learning model;

after storing the first data, identifying a second machine learning model for the robot;

generating second data corresponding to at least a particular portion of the first data in the cache, wherein the second data is generated using the second machine learning model;

adding the second data to the cache for the robot; and

removing at least the particular portion of the first data from the cache for the robot.

13. The system of claim 12 , wherein the cache is a local cache of data stored on one or more data storage devices of the robot.

14. The system of claim 12 , wherein the first data is data generated by the robot using the first machine learning model.

15. The system of claim 12 , wherein the operations comprise receiving, by the robot, the second machine learning model over a communication network.

16. The system of claim 12 , wherein the generating, the adding, and the removing are performed by the robot.

17. The system of claim 12 , wherein the first machine learning model is a first neural network model, and wherein the second machine learning model is a second neural network model.

18. The system of claim 12 , wherein the system is a robot.

19. One or more non-transitory machine-readable media storing instructions that, when executed by one or more computing devices, cause the one or more computing devices to perform operations comprising:

storing first data in a cache for a robot, wherein the first data was generated using a first machine learning model;

after storing the first data, identifying a second machine learning model for the robot;

generating second data corresponding to at least a particular portion of the first data in the cache, wherein the second data is generated using the second machine learning model;

adding the second data to the cache for the robot; and

removing at least the particular portion of the first data from the cache for the robot.

20. The one or more non-transitory machine-readable media of claim 19 , wherein the cache is a local cache of data stored on one or more data storage devices of the robot.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 29, 2025
From: GOOGLE LLC
To: GDM HOLDING LLC
Reel/Frame 071109/0342 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 21, 2023
From: X DEVELOPMENT LLC
To: GOOGLE LLC
Reel/Frame 064658/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 24, 2020
From: RAJKUMAR, NARESHKUMAR; LEGER, PATRICK; GUPTA, ABHINAV
To: X DEVELOPMENT LLC
Reel/Frame 053032/0574 →