|
Algorithm 3 Mini-batch stochastic I-ADMM (sI-ADMM) |
-
1:
initialize: , batch size M;
-
2:
Local Data Allocation:
-
3:
for agent do
-
4:
divide labeled data into equally disjoint partitions and denote each partition as ;
-
5:
for ECN do
-
6:
allocate to ECN j;
-
7:
partition examples into multiple batches with each size ;
-
8:
end for
-
9:
end for
-
10:
Updating Process:
-
11:
fordo
-
12:
Steps of Active Agent :
-
13:
receive token ;
-
14:
broadcast local variable to ECNs ;
-
15:
ECN computes gradient in parallel:
-
16:
receive local primal variable ;
-
17:
select batch ;
-
18:
update gradient ;
-
19:
transmit to the connected agent;
-
20:
until the -th responded message is received;
-
21:
update gradient via gradient summation:
-
22:
update according to (16a);
-
23:
update according to (16b);
-
24:
update according to (15c);
-
25:
send token to agent via link ();
-
26:
until the stopping criterion is satisfied.
-
27:
end for
|