IP Library Granted Patent US 11,783,211
Granted Patent B2
US 11,783,211 · App. 17/900,502 · Granted Oct 10, 2023

Synthetic data generation in computer-based reasoning systems

Inventors: Christopher James Hazard (Raleigh, NC); Michael Resnick (Raleigh, NC); Christopher Fusting (Raleigh, NC)
Assignee: Diveplane Corporation
G06N5/04G06N20/00
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,783,211
App. No.
17/900,502
Granted
Oct 10, 2023
Kind
B2
Abstract

Techniques for synthetic data generation in computer-based reasoning systems are discussed and include receiving a request for generation of synthetic training data based on a set of training data cases. One or more focal training data cases are determined. For undetermined features (either all of them or those that are not subject to conditions), a value for the feature is determined based on the focal cases. In some embodiments, validity of the generated value may be checked based on feature information. In some embodiments, generated synthetic data may be checked against all or a portion of the training data to ensure that it is not overly similar.

Claims (54)

1. A non-transitory computer readable medium storing instructions which, when executed by one or more computing devices, cause the one or more computing devices to perform a process of:

receiving a request for generation of synthetic training data based on a set of training data cases;

determining one or more focal training data cases from among the set of training data cases determining a synthetic data case based on the one or more focal cases;

determining whether the synthetic data case is overly similar to one or more cases in the set of training data cases;

when the synthetic data case is determined to be overly similar to one or more cases in the set of training data cases, taking corrective action for the synthetic data case to produce a new synthetic data case and using the new synthetic data case for consideration in adding to a set of synthetic training data cases;

when the synthetic data case is determined to not be overly similar to cases in the set of training data cases, adding the synthetic data case to the set of synthetic training data cases;

causing control of a controllable system using a computer-based reasoning model that was determined at least in part based on the set of synthetic training data cases.

2. The non-transitory computer readable medium of claim 1 , wherein

determining whether the synthetic data case is overly similar to one or more cases in the set of training data cases comprises determining whether the synthetic data case is overly similar to one or more cases in the set of training data cases based at least in part on a distance measure.

3. The non-transitory computer readable medium of claim 1 , wherein using the new synthetic data case for consideration in adding to the set of synthetic training data cases comprises determining whether the new synthetic data case is overly similar to one or more cases in the set of training data cases and when the new synthetic data case is determined to not be overly similar to cases in the set of training data cases, adding the new synthetic data case to the set of synthetic training data cases.

4. The non-transitory computer readable medium of claim 1 , wherein determining whether the synthetic data case is overly similar to one or more cases in the set of training data cases comprises determining whether the synthetic data case is overly similar to only one or more cases comprising a subset of the cases in the set of training data cases.

5. The non-transitory computer readable medium of claim 1 , wherein taking corrective action comprises one or more of: modifying the synthetic data case to produce the new synthetic data case or replacing the synthetic data case with a newly-generated synthetic data case.

6. The non-transitory computer readable medium of claim 1 , wherein the controllable system is a manufacturing control system controlling a manufacturing system, the process further comprising:

receiving a current context for the manufacturing system during operation of the manufacturing system; and

determining a suggested action for the manufacturing system based at least in part on the synthetic data case and the current context for the manufacturing system;

wherein causing control of the controllable system comprises the manufacturing control system causing performance of the suggested action by the manufacturing system.

7. The non-transitory computer readable medium of claim 1 ,

wherein the request includes a target amount of surprisal for the synthetic training data; and

wherein determining the synthetic data cases comprises determining a value for an undetermined feature in the synthetic data case based at least in part on a distribution associated with the undetermined feature in the focal training data cases and the target amount of surprisal.

8. A method comprising:

receiving a request for generation of synthetic training data based on a set of training data cases;

determining one or more focal training data cases from among the set of training data cases

determining a synthetic data case based on the one or more focal cases;

determining whether the synthetic data case is overly similar to one or more cases in the set of training data cases;

when the synthetic data case is determined to be overly similar to one or more cases in the set of training data cases, taking corrective action for the synthetic data case to produce a new synthetic data case and using the new synthetic data case for consideration in adding to a set of synthetic training data cases;

when the synthetic data case is determined to not be overly similar to cases in the set of training data cases, adding the synthetic data case to the set of synthetic training data cases; and

causing control of a controllable system using a computer-based reasoning model that was determined at least in part based on the set of synthetic training data cases; wherein the method is performed by one or more computing devices.

9. The method of claim 8 , wherein determining whether the synthetic data case is overly similar to one or more cases in the set of training data cases comprises determining whether the synthetic data case is overly similar to one or more cases in the set of training data cases based at least in part on a distance measure.

10. The method of claim 8 , wherein using the new synthetic data case for consideration in adding to the set of synthetic training data cases comprises determining whether the new synthetic data case is overly similar to one or more cases in the set of training data cases and when the new synthetic data case is determined to not be overly similar to cases in the set of training data cases, adding the new synthetic data case to the set of synthetic training data cases.

11. The method of claim 8 , wherein determining whether the synthetic data case is overly similar to one or more cases in the set of training data cases comprises determining whether the synthetic data case is overly similar to only one or more cases comprising a subset of the cases in the set of training data cases.

12. The method of claim 8 , wherein taking corrective action comprises one or more of: modifying the synthetic data case to produce the new synthetic data case or replacing the synthetic data case with a newly-generated synthetic data case.

13. The method of claim 8 , wherein the controllable system is a manufacturing control system controlling a manufacturing system, the method further comprising:

receiving a current context for the manufacturing system during operation of the manufacturing system; and

determining a suggested action for the manufacturing system based at least in part on the synthetic data case and the current context for the manufacturing system;

wherein causing control of the controllable system comprises the manufacturing control system causing performance of the suggested action by the manufacturing system.

14. The method of claim 8 ,

wherein the request includes a target amount of surprisal for the synthetic training data; and

wherein determining the synthetic data cases comprises determining a value for an undetermined feature in the synthetic data case based at least in part on a distribution associated with the undetermined feature in the focal training data cases and the target amount of surprisal.

15. A system for performing a machine-executed operation involving instructions, wherein said instructions are instructions which, when executed by one or more computing devices, cause performance of a process comprising:

receiving a request for generation of synthetic training data based on a set of training data cases;

determining one or more focal training data cases from among the set of training data cases

determining a synthetic data case based on the one or more focal cases;

determining whether the synthetic data case is overly similar to one or more cases in the set of training data cases;

when the synthetic data case is determined to be overly similar to one or more cases in the set of training data cases, taking corrective action for the synthetic data case to produce a new synthetic data case and using the new synthetic data case for consideration in adding to a set of synthetic training data cases;

when the synthetic data case is determined to not be overly similar to cases in the set of training data cases, adding the synthetic data case to the set of synthetic training data cases: and

causing control of a controllable system using a computer-based reasoning model that was determined at least in part based on the set of synthetic training data cases.

16. The system of claim 15 , wherein determining whether the synthetic data case is overly similar to one or more cases in the set of training data cases comprises determining whether the synthetic data case is overly similar to one or more cases in the set of training data cases based at least in part on a distance measure.

17. The system of claim 15 , wherein using the new synthetic data case for consideration in adding to the set of synthetic training data cases comprises determining whether the new synthetic data case is overly similar to one or more cases in the set of training data cases and when the new synthetic data case is determined to not be overly similar to cases in the set of training data cases, adding the new synthetic data case to the set of synthetic training data cases.

18. The system of claim 15 , wherein determining whether the synthetic data case is overly similar to one or more cases in the set of training data cases comprises determining whether the synthetic data case is overly similar to only one or more cases comprising a subset of the cases in the set of training data cases.

19. The system of claim 15 , wherein taking corrective action comprises one or more of: modifying the synthetic data case to produce the new synthetic data case or replacing the synthetic data case with a newly-generated synthetic data case.

20. The system of claim 15 , wherein the controllable system is a manufacturing control system controlling a manufacturing system, the process further comprising:

receiving a current context for the manufacturing system during operation of the manufacturing system; and

determining a suggested action for the manufacturing system based at least in part on the synthetic data case and the current context for the manufacturing system;

wherein causing control of the controllable system comprises the manufacturing control system causing performance of the suggested action by the manufacturing system.

Assignments (5)
TERMINATION AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jan 22, 2025
From: WESTERN ALLIANCE BANK
To: HOWSO INCORPORATED
Reel/Frame 069988/0038 →
CHANGE OF NAME Recorded Sep 28, 2023
From: DIVEPLANE CORPORATION
To: HOWSO INCORPORATED
Reel/Frame 065081/0559 →
CHANGE OF NAME Recorded Sep 22, 2023
From: DIVEPLANE CORPORATION
To: HOWSO INCORPORATED
Reel/Frame 065021/0691 →
SECURITY INTEREST Recorded Jan 31, 2023
From: DIVEPLANE CORPORATION
To: WESTERN ALLIANCE BANK
Reel/Frame 062554/0106 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 15, 2022
From: HAZARD, CHRISTOPHER JAMES; RESNICK, MICHAEL
To: DIVEPLANE CORPORATION
Reel/Frame 061780/0533 →
Continuity (4)
Division 16713714 · Dec 13, 2019
Continuation In Part 16219476 · Dec 13, 2018
Provisional Application 62814585 · Mar 6, 2019
Related Publication 20220414501A1 · Dec 29, 2022