IP Library Granted Patent US 12,381,795
Granted Patent B2
US 12,381,795 · App. 18/233,936 · Granted Aug 5, 2025

Self-join automated feature discovery

Inventors: Rishabh Raman (Washington, DC); Peter Simon (Overath, DE); Oleg Zarakhani (Toronto, CA)
Assignee: Data Robot, Inc.
H04L43/045H04L43/0852
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,381,795
App. No.
18/233,936
Granted
Aug 5, 2025
Kind
B2
Abstract

Aspects of this technical solution can generate, according to a lag time window based at least in part on a first plurality of features, a second data set via aggregation of compatible fields in the first data set, the first plurality of features corresponding to a first data set, augment the first plurality of features extracted from the first data set with a second plurality of features extracted from a third data set, the third data set corresponding to a join of the first data set and the second data set, update, via machine learning and according to a rate corresponding to the data set, a model with the third plurality of features, and instruct a user interface to present at least one performance of the model with the third plurality of features, according to the rate.

Claims (77)

1. A system, comprising:

one or more memory devices storing instructions; and

one or more processors configured to execute the instructions to perform operations including:

generating, according to a lag time window based at least in part on a first plurality of features, a second data set via aggregation of compatible fields in the first data set, the first plurality of features corresponding to a first data set;

augmenting the first plurality of features extracted from the first data set with a second plurality of features extracted from a third data set, the third data set corresponding to a join of the first data set and the second data set;

updating, via machine learning and according to a rate corresponding to the data set, a model with the third plurality of features; and

instructing a user interface to present at least one performance of the model with the third plurality of features, according to the rate.

2. The system of claim 1 , each of the compatible fields corresponding to a predetermined temporal parameter or a predetermined geographic parameter.

3. The system of claim 1 , the operations further including:

obtaining, by the user interface, a join key identifying the compatible fields.

4. The system of claim 1 , the operations further including:

presenting, by the user interface, a plurality of lag time windows including the lag time window; and

obtaining, by the user interface, a selection indicating the lag time window.

5. The system of claim 1 , the operations further including:

extracting a fourth plurality of features from the first data set;

determining a second lag time window based at least in part on the fourth plurality of features;

generating, based on the second lag time window, a fourth data set via aggregation of compatible fields in the first data set corresponding to the fourth plurality of features; and

joining the fourth data set with the third data set or the first data set to create a fifth data set.

6. The system of claim 5 , the operations further including:

extracting a fifth plurality of features from the fifth data set;

augmenting the first plurality of features extracted from the first data set with the fifth plurality of features extracted from the fifth data set;

updating, via machine learning, a model with the fifth plurality of features; and

instructing a user interface to present at least one performance of the model with the fifth plurality of features.

7. The system of claim 1 , the lag time window corresponding to an offset between one or more first timestamps of the first plurality of features and one or more second timestamps of the compatible fields in the first data set, the offset comprising a timestamp value or range or timestamp values.

8. The system of claim 1 , the operations further including:

obtaining, based on data from one or more sensors, the first data set;

extracting, in response to the obtaining the first data set, the first plurality of features;

determining, in response to the obtaining the first data set, the lag time window;

generating, in response to the obtaining the first data set and based on the lag time window, the second data set; and

joining, in response to the obtaining the first data set, the second data set with the first data set to create a third data set.

9. The system of claim 8 , the operations further including:

extracting, in response to the obtaining the first data set, the second plurality of features;

augmenting, in response to the obtaining the first data set, the first plurality of features with the second plurality of features;

updating, in response to the obtaining the first data set and via machine learning, the model with the third plurality of features; and

instructing, in response to the obtaining the first data set, the user interface to present the performance of the model with the third plurality of features.

10. A method, comprising:

generating, according to a lag time window based at least in part on a first plurality of features, a second data set via aggregation of compatible fields in the first data set, the first plurality of features corresponding to a first data set;

augmenting the first plurality of features extracted from the first data set with a second plurality of features extracted from a third data set, the third data set corresponding to a join of the first data set and the second data set;

updating, via machine learning and according to a rate corresponding to the data set, a model with the third plurality of features; and

instructing a user interface to present at least one performance of the model with the third plurality of features, according to the rate.

11. The method of claim 10 , each of the compatible fields corresponding to a predetermined temporal parameter or a predetermined geographic parameter.

12. The method of claim 10 , comprising:

obtaining, by the user interface, a join key identifying the compatible fields.

13. The method of claim 10 , comprising:

presenting, by the user interface, a plurality of lag time windows including the lag time window; and

obtaining, by the user interface, a selection indicating the lag time window.

14. The method of claim 10 , comprising:

extracting a fourth plurality of features from the first data set;

determining a second lag time window based at least in part on the fourth plurality of features;

generating, based on the second lag time window, a fourth data set via aggregation of compatible fields in the first data set corresponding to the fourth plurality of features; and

joining the fourth data set with the third data set or the first data set to create a fifth data set.

15. The method of claim 14 , comprising:

extracting a fifth plurality of features from the fifth data set;

augmenting the first plurality of features extracted from the first data set with the fifth plurality of features extracted from the fifth data set;

updating, via machine learning, a model with the fifth plurality of features; and

instructing a user interface to present at least one performance of the model with the fifth plurality of features.

16. The method of claim 10 , the lag time window corresponding to an offset between one or more first timestamps of the first plurality of features and one or more second timestamps of the compatible fields in the first data set, the offset comprising a timestamp value or range or timestamp values.

17. The method of claim 10 , comprising:

obtaining, based on data from one or more sensors, the first data set;

extracting, in response to the obtaining the first data set, the first plurality of features;

determining, in response to the obtaining the first data set, the lag time window;

generating, in response to the obtaining the first data set and based on the lag time window, the second data set; and

joining, in response to the obtaining the first data set, the second data set with the first data set to create a third data set.

18. The method of claim 17 , comprising:

extracting, in response to the obtaining the first data set, the second plurality of features;

augment, in response to the obtaining the first data set, the first plurality of features with the second plurality of features;

update, in response to the obtaining the first data set and via machine learning, the model with the third plurality of features; and

instructing, in response to the obtaining the first data set, the user interface to present the performance of the model with the third plurality of features.

19. A non-transitory computer readable medium including one or more instructions stored thereon and executable by a processor to:

generate, by the processor and according to a lag time window based at least in part on a first plurality of features, a second data set via aggregation of compatible fields in the first data set, the first plurality of features corresponding to a first data set;

augment, by the processor, the first plurality of features extracted from the first data set with a second plurality of features extracted from a third data set, the third data set corresponding to a join of the first data set and the second data set;

update, by the processor via machine learning and according to a rate corresponding to the data set, a model with the third plurality of features; and

instruct, by the processor, a user interface to present at least one performance of the model with the third plurality of features, according to the rate.

20. The non-transitory computer readable medium of claim 19 , wherein the non-transitory computer readable medium further includes one or more instructions executable by the processor to:

obtain, by the user interface, a join key identifying the compatible fields;

present, by the user interface, a plurality of lag time windows including the lag time window; and

obtain, by the user interface, a selection indicating the lag time window.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2025
From: RAMAN, RISHABH; SIMON, PETER; ZARAKHANI, OLEG
To: DATAROBOT, INC.
Reel/Frame 071640/0174 →
Continuity (2)
Provisional Application 63398984 · Aug 18, 2022
Related Publication 20240064074A1 · Feb 22, 2024
References Cited (28)
US 8898145B2 · Wang · 2014 [cited by applicant]
US 9342836B2 · Cronin · 2016 [cited by applicant]
US 10216792B2 · Brewster · 2019 [cited by applicant]
US 20060074881A1 · Vembu · 2006 [cited by applicant]
US 20070130180A1 · Rasmussen · 2007 [cited by applicant]
US 20080154844A1 · Gao · 2008 [cited by applicant]
US 20100070500A1 · Cui · 2010 [cited by applicant]
US 20120323885A1 · Wang · 2012 [cited by applicant]
US 20130328880A1 · Mande · 2013 [cited by applicant]
US 20140067791A1 · Idicula · 2014 [cited by applicant]
US 20160055205A1 · Young · 2016 [cited by applicant]
US 20160148850A1 · David · 2016 [cited by applicant]
US 20170031990A1 · Chakkappen · 2017 [cited by applicant]
US 20190095313A1 · Xu · 2019 [cited by applicant]
US 20190219994A1 · Yan · 2019 [cited by examiner]
US 20200160998A1 · Ward · 2020 [cited by applicant]
US 20200272943A1 · Bowers · 2020 [cited by examiner]
US 20210358313A1 · Ayhan · 2021 [cited by examiner]
US 20220076164A1 · Conort · 2022 [cited by applicant]
US 20220108262A1 · Cella · 2022 [cited by examiner]
US 20230274195A1 · Aggarwal · 2023 [cited by examiner]
Anton Dignos, Michael H. Bohlen, and Johann Gamper, “Overlap Interval Partition Join”, SIGMOD'I4, Jun. 22-27, 2014, ACM, pp. 1459-1470. [cited by applicant]
Brumbaugh, Eli, et al. “Bighead: a framework-agnostic, end-to-end machine learning platform.” 2019 IEEE International Conference on Data Science and Advanced Analytics (Dsaa). IEEE, 2019. [cited by applicant]
Cohen, Shay B., Gideon Dror, and Eytan Ruppin. “Feature selection based on the shapley value.” Proceedings of IJCAI. 2005. [cited by applicant]
International Preliminary Report of international application number PCT/US2016/049516, dated Apr. 26, 2018, 5 pp. [cited by applicant]
International Preliminary Report on PCT Appl. Ser. No. PCT/US2021/049515 dated Mar. 23, 2023 (6 pages). [cited by applicant]
International Search Report and Written Opinion of international application number PCT/US2016/049516, dated Nov. 14, 2016, 6 pp. [cited by applicant]
International Search Report and Written Opinion on PCT Appl. Ser. No. PCT/US2021/049515 dated Jan. 20, 2022 (11 pages). [cited by applicant]