IP Library › Granted Patent US 11,475,276
Granted Patent B1
US 11,475,276 · App. 15/804,900 · Granted Oct 18, 2022

Generating more realistic synthetic data with adversarial nets

Inventors: Ashish Shrivastava (Sunnyvale, CA); Tomas J. Pfister (Foster City, CA); Cuneyt O. Tuzel (Santa Clara, CA); Russell Y. Webb (San Jose, CA); Joshua Matthew Susskind (San Jose, CA)
Assignee: Apple Inc.
G06N3/0454G06N3/08G06K9/6255G06K9/6262G06K9/6267
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 11,475,276
App. No.
15/804,900
Granted
Oct 18, 2022
Kind
B1
Abstract

A generative network may be learned in an adversarial setting with a goal of modifying synthetic data such that a discriminative network may not be able to reliably tell the difference between refined synthetic data and real data. The generative network and discriminative network may work together to learn how to produce more realistic synthetic data with reduced computational cost. The generative network may iteratively learn a function that synthetic data with a goal of generating refined synthetic data that is more difficult for the discriminative network to differentiate from real data, while the discriminative network may be configured to iteratively learn a function that classifies data as either synthetic or real. Over multiple iterations, the generative network may learn to refine the synthetic data to produce refined synthetic data on which other machine learning models may be trained.

Claims (37)

1. A computer implemented method, comprising:

receiving, by a generator module, synthetic data, wherein the synthetic data approximates corresponding real data;

modifying the synthetic data to produce refined synthetic data, wherein the synthetic data is modified according to a refiner neural network and based at least in part on a refinement function, wherein the refinement function takes one or more refinement parameters at input;

classifying, by a discriminator module, the refined synthetic data as either synthetic or real according to a discriminator neural network and based in part on one or more discriminator parameters; and

adjusting at least one of the one or more refinement parameters based on said classifying, wherein after said adjusting, synthetic data modified according to the refiner neural network is more likely to be classified as real than synthetic data adjusted prior to said adjusting.

2. The method of claim 1 , wherein said adjusting comprises applying an adversarial cost value to the refinement function, wherein the adversarial cost value is based at least in part on said classifying.

3. The method of claim 1 , wherein said adjusting comprises applying a self-regularization term to the refinement function, wherein the self-regularization term comprises a difference value based on a comparison between the synthetic data and refined synthetic data.

4. The method of claim 1 , further comprising training the refiner neural network, wherein said training comprises repeating said receiving, said modifying, said classifying and said adjusting.

5. The method of claim 4 , wherein said training comprises repeating said receiving, said modifying, said classifying and said adjusting until the discriminator module classifies the refined synthetic data as real.

6. The method of claim 1 , further comprising applying the refined synthetic data as training input to a machine learning system, wherein the machine learning system performs better when trained using the refined synthetic data than when trained using the unrefined synthetic data.

7. The method of claim 1 , further comprising generating, by a synthesizer module, the synthetic data based on one or more key attributes describing the synthesized data.

8. A system, comprising one or more processors and a memory coupled to the processors, wherein the memory comprises program instructions configured to implement:

a generator module; and

a discriminator module;

wherein the generator module is configured to:

receive synthetic data that approximates real data;

modify the synthetic data to produce refined synthetic data, wherein the synthetic data is modified according to a refiner neural network and based at least in part on a refinement function, wherein the refinement function takes one or more refinement parameters at input;

wherein the discriminator module is configured to:

classify the refined synthetic data as either synthetic or real according to a discriminator neural network and based in part on one or more discriminator parameters; and

wherein the generator module is further configured to:

adjust at least one of the one or more refinement parameters based on said classifying, wherein after said adjusting, synthetic data modified according to the refiner neural network is more likely to be classified as real than synthetic.

9. The system of claim 8 , wherein to adjust the at least one of the one or more refinement parameters, the generator module is further configured to apply an adversarial cost value to the refinement function, wherein the adversarial cost value is based at least in part on said classifying of the refined synthetic data.

10. The system of claim 8 , wherein to adjust the at least one of the one or more refinement parameters, the generator module is further configured to apply a self-regularization term to the refinement function, wherein the self-regularization term comprises a difference value based on a comparison between the synthetic data and refined synthetic data.

11. The system of claim 8 , wherein the generator module is further configured to repeat said receiving, said modifying, said classifying and said adjusting.

12. The system of claim 11 , wherein the generator module is further configured to repeat said receiving, said modifying, said classifying and said adjusting until the discriminator module classifies the refined synthetic data as real.

13. The system of claim 8 , wherein the program instructions are further configured to implement a synthesizer module configured to generate the synthetic data based on one or more key attributes describing the synthesized data.

14. A non-transitory, computer-readable storage medium storing program instructions that when executed on one or more computers cause the one or more computers to perform:

receiving, by a generator module, synthetic data, wherein the synthetic data approximates corresponding real data;

modifying the synthetic data to produce refined synthetic data, wherein the synthetic data is modified according to a refiner neural network and based at least in part on a refinement function, wherein the refinement function takes one or more refinement parameters at input;

classifying, by a discriminator module, the refined synthetic data as either synthetic or real according to a discriminator neural network and based in part on one or more discriminator parameters; and

adjusting at least one of the one or more refinement parameters based on said classifying, wherein after said adjusting, synthetic data modified according to the refiner neural network is more likely to be classified as real than synthetic data adjusted prior to said adjusting.

15. The non-transitory, computer-readable storage medium of claim 14 , wherein said adjusting comprises applying an adversarial cost value to the refinement function, wherein the adversarial cost value is based at least in part on said classifying.

16. The non-transitory, computer-readable storage medium of claim 14 , wherein said adjusting comprises applying a self-regularization term to the refinement function, wherein the self-regularization term comprises a difference value based on a comparison between the synthetic data and refined synthetic data.

17. The non-transitory, computer-readable storage medium of claim 14 , wherein the program instructions further cause the one or more computers to perform: training the refiner neural network, wherein said training comprises repeating said receiving, said modifying, said classifying and said adjusting.

18. The non-transitory, computer-readable storage medium of claim 17 , wherein said training comprises repeating said receiving, said modifying, said classifying and said adjusting until the discriminator module classifies the refined synthetic data as real.

19. The non-transitory, computer-readable storage medium of claim 14 , wherein the program instructions further cause the one or more computers to perform: applying the refined synthetic data as training input to a machine learning system, wherein the machine learning system performs better when trained using the refined synthetic data than when trained using the unrefined synthetic data.

20. The non-transitory, computer-readable storage medium of claim 14 , wherein the program instructions further cause the one or more computers to perform: generating, by a synthesizer module, the synthetic data based on one or more key attributes describing the synthesized data.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 7, 2017
From: SHRIVASTAVA, ASHISH; TUZEL, CUNEYT O.; WEBB, RUSSELL Y.; PFISTER, TOMAS J.; SUSSKIND, JOSHUA MATTHEW
To: APPLE INC.
Reel/Frame 044051/0726 →
Continuity (1)
Provisional Application 62418635 · Nov 7, 2016
Cited By (6)
US 12,229,949 US 12,322,161 US 12,333,711 US 12,518,128 US 12,711,155 US 12,726,397