IP Library Granted Patent US 10,586,169
Granted Patent B2
US 10,586,169 · App. 15/046,199 · Granted Mar 10, 2020

Common feature protocol for collaborative machine learning

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,586,169
App. No.
15/046,199
Granted
Mar 10, 2020
Kind
B2
Abstract

The disclosed embodiments provide a system for processing data. During operation, the system obtains a hierarchical representation containing a set of namespaces of a set of features shared by a set of statistical models. Next, the system uses the hierarchical representation to obtain, from one or more execution environments, a subset of the features for use in calculating the derived feature. The system then applies a formula from the hierarchical representation to the subset of the features to produce the derived feature. Finally, the system provides the derived feature for use by one or more of the statistical models.

Claims (62)

1. A method, comprising:

obtaining a hierarchical representation comprising a set of namespaces of a set of features shared by a set of statistical models; and

calculating, by one or more computer systems, a derived feature from the set of features by:

using the hierarchical representation to obtain, from one or more execution environments among a set of execution environments, a subset of the set of features for use in calculating the derived feature; and

applying a formula from the hierarchical representation to the subset of the set of features to produce the derived feature; and

providing the derived feature for use by one or more of the statistical models in the set of execution environments, thereby promoting sharing and reusing common features by the set of execution environments during collaborative machine learning.

2. The method of claim 1 , wherein calculating the derived feature from the set of features further comprises:

obtaining, from the hierarchical representation, a set of feature types associated with the subset of the set of features; and

using the feature types to verify a compatibility of the subset of the set of features in producing the derived feature prior to applying the formula to the subset of the set of features.

3. The method of claim 1 , wherein using the hierarchical representation to obtain the subset of the set of features for use in calculating the derived feature comprises:

obtaining, from the hierarchical representation, a set of reference relationships between the derived feature and the subset of the set of features; and

using the set of reference relationships to identify the subset of the set of features.

4. The method of claim 3 , wherein using the hierarchical representation to obtain the subset of the set of features for use in calculating the derived feature further comprises:

obtaining, from the hierarchical representation, an execution environment among the set of execution environments for a feature in the subset of set of features; and

using a communication channel with the execution environment to obtain the feature from the execution environment.

5. The method of claim 3 , wherein the set of reference relationships comprises a set of directed edges from the subset of the set of features to the derived feature.

6. The method of claim 1 , wherein the hierarchical representation comprises a directed acyclic graph (DAG).

7. The method of claim 1 , wherein the hierarchical representation further comprises:

a set of nodes representing the set of features; and

a set of scoping relationships between pairs of nodes in the set of nodes, wherein the set of scoping relationships defines the set of namespaces.

8. The method of claim 7 , wherein the hierarchical representation further comprises a set of feature names and a set of feature versions for the set of features.

9. The method of claim 7 , wherein the set of scoping relationships comprises a directed edge from a first feature in a namespace of a second feature to the second feature.

10. The method of claim 1 , wherein the one or more execution environments comprise at least one of:

a batch execution environment;

an online execution environment;

a stream-processing environment; and

a web-based execution environment.

11. An apparatus, comprising:

one or more processors; and

memory storing instructions that, when executed by the one or more processors, cause the apparatus to:

obtain a hierarchical representation comprising a set of namespaces of a set of features shared by a set of statistical models;

use the hierarchical representation to obtain, from one or more execution environments among a set of execution environments, a subset of the set of features for use in calculating a derived feature;

apply a formula from the hierarchical representation to the subset of the set of features to produce the derived feature; and

provide the derived feature for use by one or more of the statistical models in the set of execution environments, thereby promoting sharing and reusing common features by the set of execution environments during collaborative machine learning.

12. The apparatus of claim 11 , wherein calculating the derived feature from the set of features further comprises:

obtaining, from the hierarchical representation, a set of feature types associated with the subset of the set of features; and

using the feature types to verify a compatibility of the subset of the set of features in producing the derived feature prior to applying the formula to the subset of the set of features.

13. The apparatus of claim 11 , wherein using the hierarchical representation to obtain the subset of the set of features for use in calculating the derived feature comprises:

obtaining, from the hierarchical representation, a set of reference relationships between the derived feature and the subset of the set of features; and

using the set of reference relationships to identify the subset of the set of features.

14. The apparatus of claim 13 , wherein using the hierarchical representation to obtain the subset of the set of features for use in calculating the derived feature further comprises:

obtaining, from the hierarchical representation, an execution environment among the set of execution environments for a feature in the subset of the set of features; and

using a communication channel with the execution environment to obtain the feature from the execution environment.

15. The apparatus of claim 11 , wherein the hierarchical representation further comprises:

a set of nodes representing the set of features; and

a set of scoping relationships between pairs of nodes in the set of nodes, wherein the set of scoping relationships defines the set of namespaces.

16. The apparatus of claim 15 , wherein the hierarchical representation further comprises a set of feature names and a set of feature versions for the set of features.

17. The apparatus of claim 15 , wherein the set of scoping relationships comprises a directed edge from a first feature in a namespace of a second feature to the second feature.

18. The apparatus of claim 11 , wherein the one or more execution environments comprise at least one of:

a batch execution environment;

an online execution environment;

a stream-processing environment; and

a web-based execution environment.

19. A system, comprising:

a namespace manager comprising a non-transitory computer-readable medium comprising instructions that, when executed, cause the system to provide a hierarchical representation comprising a set of namespaces of a set of features shared by a set of statistical models; and

an interpreter comprising a non-transitory computer-readable medium comprising instructions that, when executed, cause the system to:

use the hierarchical representation to obtain, from one or more execution environments among a set of execution environments, a subset of the set of features for use in calculating a derived feature;

apply a formula from the hierarchical representation to the subset of the set of features to produce the derived feature; and

provide the derived feature for use by one or more of the statistical models in the set of execution environments, thereby promoting sharing and reusing common features by the set of execution environments during collaborative machine learning.

20. The system of claim 19 , wherein calculating the derived feature from the set of features further comprises:

obtaining, from the hierarchical representation, a set of feature types associated with the subset of the set of features; and

using the feature types to verify a compatibility of the subset of the set of features in producing the derived feature prior to applying the formula to the subset of the set of features.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 1, 2017
From: LINKEDIN CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 044746/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 4, 2016
From: STEIN, DAVID J.; MIAO, XU; WALL, LANCE M.; YOUNG, JOEL D.; HUANG, ERIC; GU, SONGXIANG; TENG, DA; TSAI, CHANG-MING; RANGWALA, SUMIT
To: LINKEDIN CORPORATION
Reel/Frame 037896/0736 →