COORDINATED VERSION CONTROL SYSTEM, METHOD, AND RECORDING MEDIUM FOR PARAMETER SENSITIVE APPLICATIONS
First Claim
1. A version enforcement system including a parameter server having a plurality of parameter sets and a plurality of learners communicating with the plurality of parameter sets, the system comprising:
- a parameter collecting circuit configured to collect the plurality of parameter sets from the parameter server;
a version examining circuit configured to determine versions of each of the parameter sets;
a mismatch detecting circuit configured to detect if a mismatch exists between the versions of each of the parameter sets;
a determining circuit configured to determine a correct version for each of the parameter sets to generate if the mismatch detecting circuit detects the mismatch;
a requesting circuit configured to request that said each of the parameter sets generates the correct version;
a success checking circuit configured to verify that said each of the parameter sets generates the correct version in response to the request by the requesting circuit; and
a local parameter updating circuit configured to automatically update local parameters for computation by a learner with the correct version of the aggregated parameter sets.
1 Assignment
0 Petitions
Accused Products
Abstract
Version vector-based rules are used to facilitate asynchronous execution of machine learning algorithms. The method uses version vector based rule to generate aggregated parameters and determine when to return the parameters. The method also includes coordinating the versions of aggregated parameter sets among all the parameter servers. This allows to broadcast to enforce the version consistency; generate parameter sets in an on-demand manner to facilitate version control. Furthermore the method includes enhancing the version consistency at the learner'"'"'s side and resolving the inconsistent version when mismatching versions are detected.
47 Citations
20 Claims
-
1. A version enforcement system including a parameter server having a plurality of parameter sets and a plurality of learners communicating with the plurality of parameter sets, the system comprising:
-
a parameter collecting circuit configured to collect the plurality of parameter sets from the parameter server; a version examining circuit configured to determine versions of each of the parameter sets; a mismatch detecting circuit configured to detect if a mismatch exists between the versions of each of the parameter sets; a determining circuit configured to determine a correct version for each of the parameter sets to generate if the mismatch detecting circuit detects the mismatch; a requesting circuit configured to request that said each of the parameter sets generates the correct version; a success checking circuit configured to verify that said each of the parameter sets generates the correct version in response to the request by the requesting circuit; and a local parameter updating circuit configured to automatically update local parameters for computation by a learner with the correct version of the aggregated parameter sets. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 18)
-
-
10. A version enforcement method including a parameter server having a plurality of parameter sets and a plurality of learners communicating with the plurality of parameter sets, the method comprising:
-
collecting the plurality of parameter sets from the parameter server; determining versions of each of the parameter sets; detecting if a mismatch exists between the versions of each of the parameter sets; determining a correct version for each of the parameter sets to generate if the detecting detects the mismatch; requesting that said each of the parameter sets generate the correct version; checking that said each of the parameter sets generate the correct version in response to the request by the requesting; and automatically updating local parameters for computation by a learner with the correct version of the aggregated parameter sets. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
19. An asynchronous execution facilitation system including a parameter server having a plurality of parameter sets and a plurality of learners communicating with the plurality of parameter sets, comprising:
-
a server checking circuit configured to check each pull request to the parameter server for an immediate version vector and a local epoch of the learner; and an aggregation returning circuit configured to compare the immediate version vector pulled by the parameter server with a comparison condition such that if the comparison condition is satisfied, the aggregation returning circuit causes the parameter server to return a new aggregated parameter to the learner, the comparison condition being a comparison of the immediate version vector to a current version of the aggregated parameter set of the parameter server. - View Dependent Claims (20)
-
Specification