diff --git a/materials/notebook/02_start_your_own_case.ipynb b/materials/notebook/02_start_your_own_case.ipynb index 8235be3ab..b86192061 100644 --- a/materials/notebook/02_start_your_own_case.ipynb +++ b/materials/notebook/02_start_your_own_case.ipynb @@ -41,7 +41,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "metadata": { "ExecuteTime": { "end_time": "2022-03-31T10:13:12.308497Z", @@ -109,7 +109,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "metadata": { "ExecuteTime": { "end_time": "2022-03-31T10:13:12.313727Z", @@ -151,7 +151,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": null, "metadata": { "ExecuteTime": { "end_time": "2022-03-31T10:13:12.787164Z", @@ -193,12 +193,11 @@ " return x\n", "\n", "\n", - "def load_my_net(model_config, local_data):\n", + "def load_my_net(model_config, data_shape):\n", " # You can also build models without local_data\n", - " data = next(iter(local_data['train']))\n", - " model = MyNet(in_channels=data[0].shape[1],\n", - " h=data[0].shape[2],\n", - " w=data[0].shape[3],\n", + " model = MyNet(in_channels=data_shape[1],\n", + " h=data_shape[2],\n", + " w=data_shape[3],\n", " hidden=model_config.hidden,\n", " class_num=model_config.out_channels)\n", " return model" @@ -217,7 +216,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": null, "metadata": { "ExecuteTime": { "end_time": "2022-03-31T10:13:12.791526Z", @@ -231,9 +230,9 @@ "source": [ "from federatedscope.register import register_model\n", "\n", - "def call_my_net(model_config, local_data):\n", + "def call_my_net(model_config, data_shape):\n", " if model_config.type == \"mycnn\":\n", - " model = load_my_net(model_config, local_data)\n", + " model = load_my_net(model_config, data_shape)\n", " return model\n", "\n", "register_model(\"mycnn\", call_my_net)" @@ -260,7 +259,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": null, "metadata": { "ExecuteTime": { "end_time": "2022-03-31T10:13:13.181147Z", @@ -291,7 +290,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": null, "metadata": { "ExecuteTime": { "end_time": "2022-03-31T10:13:13.185648Z", @@ -331,7 +330,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": null, "metadata": { "ExecuteTime": { "end_time": "2022-03-31T10:13:13.189195Z", @@ -360,7 +359,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": null, "metadata": { "ExecuteTime": { "end_time": "2022-03-31T10:13:13.193453Z", @@ -396,7 +395,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": null, "metadata": { "ExecuteTime": { "end_time": "2022-03-31T10:13:13.219711Z", @@ -434,7 +433,7 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": null, "metadata": { "ExecuteTime": { "end_time": "2022-03-31T10:13:13.225301Z", @@ -477,7 +476,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": null, "metadata": { "ExecuteTime": { "start_time": "2022-03-31T10:13:12.142Z" @@ -486,479 +485,7 @@ "name": "#%%\n" } }, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "2022-07-13 17:02:01,025 (utils:98)INFO: the current machine is at 127.0.0.1\n", - "2022-07-13 17:02:01,028 (utils:100)INFO: the current dir is /Users/raykkk/Desktop/playground/notebook\n", - "2022-07-13 17:02:01,029 (utils:101)INFO: the output dir is exp/FedAvg_mycnn_on_mycvdata_lr0.1_lstep1_/FedAvg_mycnn_on_mycvdata_lr0.1_lstep1__\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Downloading http://yann.lecun.com/exdb/mnist/train-images-idx3-ubyte.gz\n", - "Using downloaded and verified file: data/MNIST/raw/train-images-idx3-ubyte.gz\n", - "Extracting data/MNIST/raw/train-images-idx3-ubyte.gz to data/MNIST/raw\n", - "\n", - "Downloading http://yann.lecun.com/exdb/mnist/train-labels-idx1-ubyte.gz\n", - "Downloading http://yann.lecun.com/exdb/mnist/train-labels-idx1-ubyte.gz to data/MNIST/raw/train-labels-idx1-ubyte.gz\n" - ] - }, - { - "data": { - "application/vnd.jupyter.widget-view+json": { - "model_id": "78f6446a45f64593a2166d5c4325d1d6", - "version_major": 2, - "version_minor": 0 - }, - "text/plain": [ - " 0%| | 0/28881 [00:00.\n", - "2022-07-13 17:02:09,363 (trainer:331)INFO: Num of original para names: 8.\n", - "2022-07-13 17:02:09,365 (trainer:332)INFO: Num of original trainable para names: 8.\n", - "2022-07-13 17:02:09,365 (trainer:334)INFO: Num of preserved para names in local update: 8. \n", - "Preserved para names in local update: {'fc2.weight', 'fc1.weight', 'conv2.bias', 'fc1.bias', 'conv1.weight', 'fc2.bias', 'conv1.bias', 'conv2.weight'}.\n", - "2022-07-13 17:02:09,366 (trainer:338)INFO: Num of filtered para names in local update: 0. \n", - "Filtered para names in local update: set().\n", - "2022-07-13 17:02:09,366 (trainer:343)INFO: After register default hooks,\n", - "\tthe hooks_in_train is:\n", - "\t{\n", - "\t \"on_fit_start\": [\n", - "\t \"_hook_on_fit_start_init\",\n", - "\t \"_hook_on_fit_start_calculate_model_size\"\n", - "\t ],\n", - "\t \"on_epoch_start\": [\n", - "\t \"_hook_on_epoch_start\"\n", - "\t ],\n", - "\t \"on_batch_start\": [\n", - "\t \"_hook_on_batch_start_init\"\n", - "\t ],\n", - "\t \"on_batch_forward\": [\n", - "\t \"_hook_on_batch_forward\",\n", - "\t \"_hook_on_batch_forward_regularizer\",\n", - "\t \"_hook_on_batch_forward_flop_count\"\n", - "\t ],\n", - "\t \"on_batch_backward\": [\n", - "\t \"_hook_on_batch_backward\"\n", - "\t ],\n", - "\t \"on_batch_end\": [\n", - "\t \"_hook_on_batch_end\"\n", - "\t ],\n", - "\t \"on_fit_end\": [\n", - "\t \"_hook_on_fit_end\"\n", - "\t ]\n", - "\t};\n", - "\tthe hooks_in_eval is:\n", - " t{\n", - "\t \"on_fit_start\": [\n", - "\t \"_hook_on_fit_start_init\"\n", - "\t ],\n", - "\t \"on_epoch_start\": [\n", - "\t \"_hook_on_epoch_start\"\n", - "\t ],\n", - "\t \"on_batch_start\": [\n", - "\t \"_hook_on_batch_start_init\"\n", - "\t ],\n", - "\t \"on_batch_forward\": [\n", - "\t \"_hook_on_batch_forward\"\n", - "\t ],\n", - "\t \"on_batch_end\": [\n", - "\t \"_hook_on_batch_end\"\n", - "\t ],\n", - "\t \"on_fit_end\": [\n", - "\t \"_hook_on_fit_end\"\n", - "\t ]\n", - "\t}\n", - "2022-07-13 17:02:09,381 (server:597)INFO: ----------- Starting training (Round #0) -------------\n", - "Unsupported operator aten::max_pool2d encountered 2 time(s)\n", - "2022-07-13 17:02:09,758 (client:230)INFO: {'Role': 'Client #2', 'Round': 0, 'Results_raw': {'train_avg_loss': 2.312147855758667, 'train_loss': 147.9774627685547, 'train_total': 64}}\n", - "Unsupported operator aten::max_pool2d encountered 2 time(s)\n", - "2022-07-13 17:02:09,963 (client:230)INFO: {'Role': 'Client #4', 'Round': 0, 'Results_raw': {'train_avg_loss': 2.300682306289673, 'train_loss': 147.24366760253906, 'train_total': 64}}\n", - "Unsupported operator aten::max_pool2d encountered 2 time(s)\n", - "2022-07-13 17:02:10,159 (client:230)INFO: {'Role': 'Client #5', 'Round': 0, 'Results_raw': {'train_avg_loss': 2.313807249069214, 'train_loss': 148.0836639404297, 'train_total': 64}}\n", - "Unsupported operator aten::max_pool2d encountered 2 time(s)\n", - "2022-07-13 17:02:10,358 (client:230)INFO: {'Role': 'Client #1', 'Round': 0, 'Results_raw': {'train_avg_loss': 2.317237377166748, 'train_loss': 148.30319213867188, 'train_total': 64}}\n", - "Unsupported operator aten::max_pool2d encountered 2 time(s)\n", - "2022-07-13 17:02:10,558 (client:230)INFO: {'Role': 'Client #3', 'Round': 0, 'Results_raw': {'train_avg_loss': 2.3054378032684326, 'train_loss': 147.5480194091797, 'train_total': 64}}\n", - "2022-07-13 17:02:10,564 (server:308)INFO: Server #0: Starting evaluation at the end of round 0.\n", - "2022-07-13 17:02:10,565 (server:315)INFO: ----------- Starting a new training round (Round #1) -------------\n", - "2022-07-13 17:02:11,756 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:12,938 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:14,170 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:15,446 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:16,666 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:16,828 (client:230)INFO: {'Role': 'Client #1', 'Round': 1, 'Results_raw': {'train_avg_loss': 2.3028805255889893, 'train_loss': 147.3843536376953, 'train_total': 64}}\n", - "2022-07-13 17:02:16,980 (client:230)INFO: {'Role': 'Client #5', 'Round': 1, 'Results_raw': {'train_avg_loss': 2.2996556758880615, 'train_loss': 147.17796325683594, 'train_total': 64}}\n", - "2022-07-13 17:02:17,120 (client:230)INFO: {'Role': 'Client #3', 'Round': 1, 'Results_raw': {'train_avg_loss': 2.311107873916626, 'train_loss': 147.91090393066406, 'train_total': 64}}\n", - "2022-07-13 17:02:17,277 (client:230)INFO: {'Role': 'Client #4', 'Round': 1, 'Results_raw': {'train_avg_loss': 2.296652317047119, 'train_loss': 146.98574829101562, 'train_total': 64}}\n", - "2022-07-13 17:02:17,419 (client:230)INFO: {'Role': 'Client #2', 'Round': 1, 'Results_raw': {'train_avg_loss': 2.3115830421447754, 'train_loss': 147.94131469726562, 'train_total': 64}}\n", - "2022-07-13 17:02:17,422 (server:467)INFO: {'Role': 'Server #', 'Round': 1, 'Results_weighted_avg': {'test_avg_loss': 2.305175297546387, 'test_loss': 4610.350595092774, 'test_total': 2000.0}, 'Results_avg': {'test_avg_loss': 2.305175297546387, 'test_loss': 4610.350595092774, 'test_total': 2000.0}, 'Results_fairness': {'test_total': 2000.0, 'test_avg_loss_std': 0.0019214449782747665, 'test_avg_loss_bottom_decile': 2.302915157318115, 'test_avg_loss_top_decile': 2.3084667835235595, 'test_loss_std': 3.842889956549543, 'test_loss_bottom_decile': 4605.8303146362305, 'test_loss_top_decile': 4616.933567047119}}\n", - "2022-07-13 17:02:17,428 (server:308)INFO: Server #0: Starting evaluation at the end of round 1.\n", - "2022-07-13 17:02:17,429 (server:315)INFO: ----------- Starting a new training round (Round #2) -------------\n", - "2022-07-13 17:02:18,688 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:19,956 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:21,163 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:22,350 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:23,535 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:23,688 (client:230)INFO: {'Role': 'Client #4', 'Round': 2, 'Results_raw': {'train_avg_loss': 2.305471181869507, 'train_loss': 147.55015563964844, 'train_total': 64}}\n", - "2022-07-13 17:02:23,925 (client:230)INFO: {'Role': 'Client #1', 'Round': 2, 'Results_raw': {'train_avg_loss': 2.315037488937378, 'train_loss': 148.1623992919922, 'train_total': 64}}\n", - "2022-07-13 17:02:24,084 (client:230)INFO: {'Role': 'Client #5', 'Round': 2, 'Results_raw': {'train_avg_loss': 2.308746099472046, 'train_loss': 147.75975036621094, 'train_total': 64}}\n", - "2022-07-13 17:02:24,234 (client:230)INFO: {'Role': 'Client #3', 'Round': 2, 'Results_raw': {'train_avg_loss': 2.307129144668579, 'train_loss': 147.65626525878906, 'train_total': 64}}\n", - "2022-07-13 17:02:24,382 (client:230)INFO: {'Role': 'Client #2', 'Round': 2, 'Results_raw': {'train_avg_loss': 2.3021652698516846, 'train_loss': 147.3385772705078, 'train_total': 64}}\n", - "2022-07-13 17:02:24,385 (server:467)INFO: {'Role': 'Server #', 'Round': 2, 'Results_weighted_avg': {'test_avg_loss': 2.3045939189910887, 'test_loss': 4609.187837982177, 'test_total': 2000.0}, 'Results_avg': {'test_avg_loss': 2.3045939189910887, 'test_loss': 4609.187837982177, 'test_total': 2000.0}, 'Results_fairness': {'test_total': 2000.0, 'test_avg_loss_std': 0.0018770778274732377, 'test_avg_loss_bottom_decile': 2.302386449813843, 'test_avg_loss_top_decile': 2.307835308074951, 'test_loss_std': 3.754155654946484, 'test_loss_bottom_decile': 4604.772899627686, 'test_loss_top_decile': 4615.670616149902}}\n", - "2022-07-13 17:02:24,392 (server:308)INFO: Server #0: Starting evaluation at the end of round 2.\n", - "2022-07-13 17:02:24,393 (server:315)INFO: ----------- Starting a new training round (Round #3) -------------\n", - "2022-07-13 17:02:25,740 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:27,000 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:28,210 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:29,584 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:30,888 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:31,036 (client:230)INFO: {'Role': 'Client #4', 'Round': 3, 'Results_raw': {'train_avg_loss': 2.314175605773926, 'train_loss': 148.10723876953125, 'train_total': 64}}\n", - "2022-07-13 17:02:31,180 (client:230)INFO: {'Role': 'Client #1', 'Round': 3, 'Results_raw': {'train_avg_loss': 2.3305506706237793, 'train_loss': 149.15524291992188, 'train_total': 64}}\n", - "2022-07-13 17:02:31,321 (client:230)INFO: {'Role': 'Client #5', 'Round': 3, 'Results_raw': {'train_avg_loss': 2.3154947757720947, 'train_loss': 148.19166564941406, 'train_total': 64}}\n", - "2022-07-13 17:02:31,463 (client:230)INFO: {'Role': 'Client #3', 'Round': 3, 'Results_raw': {'train_avg_loss': 2.3215603828430176, 'train_loss': 148.57986450195312, 'train_total': 64}}\n", - "2022-07-13 17:02:31,608 (client:230)INFO: {'Role': 'Client #2', 'Round': 3, 'Results_raw': {'train_avg_loss': 2.3171210289001465, 'train_loss': 148.29574584960938, 'train_total': 64}}\n", - "2022-07-13 17:02:31,609 (server:467)INFO: {'Role': 'Server #', 'Round': 3, 'Results_weighted_avg': {'test_avg_loss': 2.3039686153411867, 'test_loss': 4607.937230682373, 'test_total': 2000.0}, 'Results_avg': {'test_avg_loss': 2.3039686153411862, 'test_loss': 4607.937230682373, 'test_total': 2000.0}, 'Results_fairness': {'test_total': 2000.0, 'test_avg_loss_std': 0.0018334457034580736, 'test_avg_loss_bottom_decile': 2.301845413208008, 'test_avg_loss_top_decile': 2.307179672241211, 'test_loss_std': 3.66689140691634, 'test_loss_bottom_decile': 4603.690826416016, 'test_loss_top_decile': 4614.359344482422}}\n", - "2022-07-13 17:02:31,617 (server:308)INFO: Server #0: Starting evaluation at the end of round 3.\n", - "2022-07-13 17:02:31,620 (server:315)INFO: ----------- Starting a new training round (Round #4) -------------\n", - "2022-07-13 17:02:32,800 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:33,993 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:35,321 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:36,482 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:37,639 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:37,781 (client:230)INFO: {'Role': 'Client #5', 'Round': 4, 'Results_raw': {'train_avg_loss': 2.3008761405944824, 'train_loss': 147.25607299804688, 'train_total': 64}}\n", - "2022-07-13 17:02:37,928 (client:230)INFO: {'Role': 'Client #3', 'Round': 4, 'Results_raw': {'train_avg_loss': 2.32987117767334, 'train_loss': 149.11175537109375, 'train_total': 64}}\n", - "2022-07-13 17:02:38,069 (client:230)INFO: {'Role': 'Client #2', 'Round': 4, 'Results_raw': {'train_avg_loss': 2.309907913208008, 'train_loss': 147.8341064453125, 'train_total': 64}}\n", - "2022-07-13 17:02:38,209 (client:230)INFO: {'Role': 'Client #4', 'Round': 4, 'Results_raw': {'train_avg_loss': 2.311981678009033, 'train_loss': 147.96682739257812, 'train_total': 64}}\n", - "2022-07-13 17:02:38,349 (client:230)INFO: {'Role': 'Client #1', 'Round': 4, 'Results_raw': {'train_avg_loss': 2.305051565170288, 'train_loss': 147.52330017089844, 'train_total': 64}}\n", - "2022-07-13 17:02:38,350 (server:467)INFO: {'Role': 'Server #', 'Round': 4, 'Results_weighted_avg': {'test_avg_loss': 2.303274919509888, 'test_loss': 4606.549839019775, 'test_total': 2000.0}, 'Results_avg': {'test_avg_loss': 2.303274919509888, 'test_loss': 4606.549839019775, 'test_total': 2000.0}, 'Results_fairness': {'test_total': 2000.0, 'test_avg_loss_std': 0.0017565887450851283, 'test_avg_loss_bottom_decile': 2.301252046585083, 'test_avg_loss_top_decile': 2.3063898906707765, 'test_loss_std': 3.5131774901702553, 'test_loss_bottom_decile': 4602.504093170166, 'test_loss_top_decile': 4612.779781341553}}\n", - "2022-07-13 17:02:38,355 (server:308)INFO: Server #0: Starting evaluation at the end of round 4.\n", - "2022-07-13 17:02:38,356 (server:315)INFO: ----------- Starting a new training round (Round #5) -------------\n", - "2022-07-13 17:02:39,544 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:40,725 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:41,877 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:43,039 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:44,191 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:44,331 (client:230)INFO: {'Role': 'Client #2', 'Round': 5, 'Results_raw': {'train_avg_loss': 2.3085172176361084, 'train_loss': 147.74510192871094, 'train_total': 64}}\n", - "2022-07-13 17:02:44,473 (client:230)INFO: {'Role': 'Client #3', 'Round': 5, 'Results_raw': {'train_avg_loss': 2.3062729835510254, 'train_loss': 147.60147094726562, 'train_total': 64}}\n", - "2022-07-13 17:02:44,614 (client:230)INFO: {'Role': 'Client #4', 'Round': 5, 'Results_raw': {'train_avg_loss': 2.308203935623169, 'train_loss': 147.7250518798828, 'train_total': 64}}\n", - "2022-07-13 17:02:44,754 (client:230)INFO: {'Role': 'Client #1', 'Round': 5, 'Results_raw': {'train_avg_loss': 2.286512613296509, 'train_loss': 146.33680725097656, 'train_total': 64}}\n", - "2022-07-13 17:02:44,893 (client:230)INFO: {'Role': 'Client #5', 'Round': 5, 'Results_raw': {'train_avg_loss': 2.307352304458618, 'train_loss': 147.67054748535156, 'train_total': 64}}\n", - "2022-07-13 17:02:44,895 (server:467)INFO: {'Role': 'Server #', 'Round': 5, 'Results_weighted_avg': {'test_avg_loss': 2.3026003356933593, 'test_loss': 4605.200671386719, 'test_total': 2000.0}, 'Results_avg': {'test_avg_loss': 2.3026003356933598, 'test_loss': 4605.200671386719, 'test_total': 2000.0}, 'Results_fairness': {'test_total': 2000.0, 'test_avg_loss_std': 0.0017006351230974175, 'test_avg_loss_bottom_decile': 2.3006591453552248, 'test_avg_loss_top_decile': 2.3056469955444334, 'test_loss_std': 3.4012702461950517, 'test_loss_bottom_decile': 4601.318290710449, 'test_loss_top_decile': 4611.293991088867}}\n", - "2022-07-13 17:02:44,901 (server:308)INFO: Server #0: Starting evaluation at the end of round 5.\n", - "2022-07-13 17:02:44,902 (server:315)INFO: ----------- Starting a new training round (Round #6) -------------\n", - "2022-07-13 17:02:46,050 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:47,200 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:48,339 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:49,524 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:50,761 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:50,906 (client:230)INFO: {'Role': 'Client #5', 'Round': 6, 'Results_raw': {'train_avg_loss': 2.3051137924194336, 'train_loss': 147.52728271484375, 'train_total': 64}}\n", - "2022-07-13 17:02:51,049 (client:230)INFO: {'Role': 'Client #1', 'Round': 6, 'Results_raw': {'train_avg_loss': 2.2977707386016846, 'train_loss': 147.0573272705078, 'train_total': 64}}\n", - "2022-07-13 17:02:51,194 (client:230)INFO: {'Role': 'Client #3', 'Round': 6, 'Results_raw': {'train_avg_loss': 2.2990875244140625, 'train_loss': 147.1416015625, 'train_total': 64}}\n", - "2022-07-13 17:02:51,356 (client:230)INFO: {'Role': 'Client #4', 'Round': 6, 'Results_raw': {'train_avg_loss': 2.2930078506469727, 'train_loss': 146.75250244140625, 'train_total': 64}}\n", - "2022-07-13 17:02:51,507 (client:230)INFO: {'Role': 'Client #2', 'Round': 6, 'Results_raw': {'train_avg_loss': 2.2854437828063965, 'train_loss': 146.26840209960938, 'train_total': 64}}\n", - "2022-07-13 17:02:51,509 (server:467)INFO: {'Role': 'Server #', 'Round': 6, 'Results_weighted_avg': {'test_avg_loss': 2.302010753250122, 'test_loss': 4604.021506500244, 'test_total': 2000.0}, 'Results_avg': {'test_avg_loss': 2.302010753250122, 'test_loss': 4604.021506500244, 'test_total': 2000.0}, 'Results_fairness': {'test_total': 2000.0, 'test_avg_loss_std': 0.0016580914956046632, 'test_avg_loss_bottom_decile': 2.3001185531616213, 'test_avg_loss_top_decile': 2.305000886917114, 'test_loss_std': 3.3161829912095437, 'test_loss_bottom_decile': 4600.237106323242, 'test_loss_top_decile': 4610.0017738342285}}\n", - "2022-07-13 17:02:51,516 (server:308)INFO: Server #0: Starting evaluation at the end of round 6.\n", - "2022-07-13 17:02:51,517 (server:315)INFO: ----------- Starting a new training round (Round #7) -------------\n", - "2022-07-13 17:02:52,829 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:54,031 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:55,188 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:56,367 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:57,559 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:02:57,702 (client:230)INFO: {'Role': 'Client #5', 'Round': 7, 'Results_raw': {'train_avg_loss': 2.3050777912139893, 'train_loss': 147.5249786376953, 'train_total': 64}}\n", - "2022-07-13 17:02:57,841 (client:230)INFO: {'Role': 'Client #2', 'Round': 7, 'Results_raw': {'train_avg_loss': 2.3197925090789795, 'train_loss': 148.4667205810547, 'train_total': 64}}\n", - "2022-07-13 17:02:57,982 (client:230)INFO: {'Role': 'Client #4', 'Round': 7, 'Results_raw': {'train_avg_loss': 2.3014092445373535, 'train_loss': 147.29019165039062, 'train_total': 64}}\n", - "2022-07-13 17:02:58,130 (client:230)INFO: {'Role': 'Client #1', 'Round': 7, 'Results_raw': {'train_avg_loss': 2.300877332687378, 'train_loss': 147.2561492919922, 'train_total': 64}}\n", - "2022-07-13 17:02:58,308 (client:230)INFO: {'Role': 'Client #3', 'Round': 7, 'Results_raw': {'train_avg_loss': 2.3156745433807373, 'train_loss': 148.2031707763672, 'train_total': 64}}\n", - "2022-07-13 17:02:58,310 (server:467)INFO: {'Role': 'Server #', 'Round': 7, 'Results_weighted_avg': {'test_avg_loss': 2.3014581489562986, 'test_loss': 4602.916297912598, 'test_total': 2000.0}, 'Results_avg': {'test_avg_loss': 2.3014581489562986, 'test_loss': 4602.916297912598, 'test_total': 2000.0}, 'Results_fairness': {'test_total': 2000.0, 'test_avg_loss_std': 0.001623297105598613, 'test_avg_loss_bottom_decile': 2.299626605987549, 'test_avg_loss_top_decile': 2.3044105377197264, 'test_loss_std': 3.2465942111974098, 'test_loss_bottom_decile': 4599.253211975098, 'test_loss_top_decile': 4608.821075439453}}\n", - "2022-07-13 17:02:58,317 (server:308)INFO: Server #0: Starting evaluation at the end of round 7.\n", - "2022-07-13 17:02:58,317 (server:315)INFO: ----------- Starting a new training round (Round #8) -------------\n", - "2022-07-13 17:02:59,513 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:00,654 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:01,793 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:02,936 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:04,136 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:04,284 (client:230)INFO: {'Role': 'Client #5', 'Round': 8, 'Results_raw': {'train_avg_loss': 2.289205312728882, 'train_loss': 146.50914001464844, 'train_total': 64}}\n", - "2022-07-13 17:03:04,425 (client:230)INFO: {'Role': 'Client #3', 'Round': 8, 'Results_raw': {'train_avg_loss': 2.30207896232605, 'train_loss': 147.3330535888672, 'train_total': 64}}\n", - "2022-07-13 17:03:04,575 (client:230)INFO: {'Role': 'Client #2', 'Round': 8, 'Results_raw': {'train_avg_loss': 2.317598342895508, 'train_loss': 148.3262939453125, 'train_total': 64}}\n", - "2022-07-13 17:03:04,736 (client:230)INFO: {'Role': 'Client #4', 'Round': 8, 'Results_raw': {'train_avg_loss': 2.290856122970581, 'train_loss': 146.6147918701172, 'train_total': 64}}\n", - "2022-07-13 17:03:04,884 (client:230)INFO: {'Role': 'Client #1', 'Round': 8, 'Results_raw': {'train_avg_loss': 2.294308662414551, 'train_loss': 146.83575439453125, 'train_total': 64}}\n", - "2022-07-13 17:03:04,886 (server:467)INFO: {'Role': 'Server #', 'Round': 8, 'Results_weighted_avg': {'test_avg_loss': 2.3007913513183595, 'test_loss': 4601.582702636719, 'test_total': 2000.0}, 'Results_avg': {'test_avg_loss': 2.300791351318359, 'test_loss': 4601.582702636719, 'test_total': 2000.0}, 'Results_fairness': {'test_total': 2000.0, 'test_avg_loss_std': 0.0015763669861933026, 'test_avg_loss_bottom_decile': 2.2990403919219973, 'test_avg_loss_top_decile': 2.3036828231811524, 'test_loss_std': 3.1527339723866983, 'test_loss_bottom_decile': 4598.080783843994, 'test_loss_top_decile': 4607.365646362305}}\n", - "2022-07-13 17:03:04,892 (server:308)INFO: Server #0: Starting evaluation at the end of round 8.\n", - "2022-07-13 17:03:04,893 (server:315)INFO: ----------- Starting a new training round (Round #9) -------------\n", - "2022-07-13 17:03:06,075 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:07,318 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:08,517 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:09,655 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:10,795 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:10,938 (client:230)INFO: {'Role': 'Client #2', 'Round': 9, 'Results_raw': {'train_avg_loss': 2.29782772064209, 'train_loss': 147.06097412109375, 'train_total': 64}}\n", - "2022-07-13 17:03:11,081 (client:230)INFO: {'Role': 'Client #3', 'Round': 9, 'Results_raw': {'train_avg_loss': 2.2926149368286133, 'train_loss': 146.72735595703125, 'train_total': 64}}\n", - "2022-07-13 17:03:11,221 (client:230)INFO: {'Role': 'Client #4', 'Round': 9, 'Results_raw': {'train_avg_loss': 2.2976200580596924, 'train_loss': 147.0476837158203, 'train_total': 64}}\n", - "2022-07-13 17:03:11,360 (client:230)INFO: {'Role': 'Client #1', 'Round': 9, 'Results_raw': {'train_avg_loss': 2.3101518154144287, 'train_loss': 147.84971618652344, 'train_total': 64}}\n", - "2022-07-13 17:03:11,499 (client:230)INFO: {'Role': 'Client #5', 'Round': 9, 'Results_raw': {'train_avg_loss': 2.2955551147460938, 'train_loss': 146.91552734375, 'train_total': 64}}\n", - "2022-07-13 17:03:11,501 (server:467)INFO: {'Role': 'Server #', 'Round': 9, 'Results_weighted_avg': {'test_avg_loss': 2.3002983402252197, 'test_loss': 4600.59668045044, 'test_total': 2000.0}, 'Results_avg': {'test_avg_loss': 2.3002983402252197, 'test_loss': 4600.59668045044, 'test_total': 2000.0}, 'Results_fairness': {'test_total': 2000.0, 'test_avg_loss_std': 0.0015491392890591262, 'test_avg_loss_bottom_decile': 2.298587080001831, 'test_avg_loss_top_decile': 2.3031493968963623, 'test_loss_std': 3.0982785781181588, 'test_loss_bottom_decile': 4597.174160003662, 'test_loss_top_decile': 4606.298793792725}}\n", - "2022-07-13 17:03:11,506 (server:308)INFO: Server #0: Starting evaluation at the end of round 9.\n", - "2022-07-13 17:03:11,507 (server:315)INFO: ----------- Starting a new training round (Round #10) -------------\n", - "2022-07-13 17:03:12,648 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:13,788 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:14,933 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:16,114 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:17,391 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:17,532 (client:230)INFO: {'Role': 'Client #4', 'Round': 10, 'Results_raw': {'train_avg_loss': 2.293327808380127, 'train_loss': 146.77297973632812, 'train_total': 64}}\n", - "2022-07-13 17:03:17,672 (client:230)INFO: {'Role': 'Client #1', 'Round': 10, 'Results_raw': {'train_avg_loss': 2.2966129779815674, 'train_loss': 146.9832305908203, 'train_total': 64}}\n", - "2022-07-13 17:03:17,815 (client:230)INFO: {'Role': 'Client #3', 'Round': 10, 'Results_raw': {'train_avg_loss': 2.2863972187042236, 'train_loss': 146.3294219970703, 'train_total': 64}}\n", - "2022-07-13 17:03:17,955 (client:230)INFO: {'Role': 'Client #5', 'Round': 10, 'Results_raw': {'train_avg_loss': 2.313448190689087, 'train_loss': 148.06068420410156, 'train_total': 64}}\n", - "2022-07-13 17:03:18,095 (client:230)INFO: {'Role': 'Client #2', 'Round': 10, 'Results_raw': {'train_avg_loss': 2.296015501022339, 'train_loss': 146.9449920654297, 'train_total': 64}}\n", - "2022-07-13 17:03:18,096 (server:467)INFO: {'Role': 'Server #', 'Round': 10, 'Results_weighted_avg': {'test_avg_loss': 2.299715682220459, 'test_loss': 4599.431364440918, 'test_total': 2000.0}, 'Results_avg': {'test_avg_loss': 2.2997156822204587, 'test_loss': 4599.431364440918, 'test_total': 2000.0}, 'Results_fairness': {'test_total': 2000.0, 'test_avg_loss_std': 0.0015109114145488128, 'test_avg_loss_bottom_decile': 2.298073751449585, 'test_avg_loss_top_decile': 2.3025216789245606, 'test_loss_std': 3.0218228290974687, 'test_loss_bottom_decile': 4596.14750289917, 'test_loss_top_decile': 4605.043357849121}}\n", - "2022-07-13 17:03:18,102 (server:308)INFO: Server #0: Starting evaluation at the end of round 10.\n", - "2022-07-13 17:03:18,103 (server:315)INFO: ----------- Starting a new training round (Round #11) -------------\n", - "2022-07-13 17:03:19,274 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:21,036 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:22,268 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:23,488 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:24,762 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:24,933 (client:230)INFO: {'Role': 'Client #5', 'Round': 11, 'Results_raw': {'train_avg_loss': 2.3011837005615234, 'train_loss': 147.2757568359375, 'train_total': 64}}\n", - "2022-07-13 17:03:25,078 (client:230)INFO: {'Role': 'Client #1', 'Round': 11, 'Results_raw': {'train_avg_loss': 2.298494815826416, 'train_loss': 147.10366821289062, 'train_total': 64}}\n", - "2022-07-13 17:03:25,221 (client:230)INFO: {'Role': 'Client #2', 'Round': 11, 'Results_raw': {'train_avg_loss': 2.308440923690796, 'train_loss': 147.74021911621094, 'train_total': 64}}\n", - "2022-07-13 17:03:25,363 (client:230)INFO: {'Role': 'Client #3', 'Round': 11, 'Results_raw': {'train_avg_loss': 2.2931480407714844, 'train_loss': 146.761474609375, 'train_total': 64}}\n", - "2022-07-13 17:03:25,504 (client:230)INFO: {'Role': 'Client #4', 'Round': 11, 'Results_raw': {'train_avg_loss': 2.2983691692352295, 'train_loss': 147.0956268310547, 'train_total': 64}}\n", - "2022-07-13 17:03:25,506 (server:467)INFO: {'Role': 'Server #', 'Round': 11, 'Results_weighted_avg': {'test_avg_loss': 2.2992369159698485, 'test_loss': 4598.473831939697, 'test_total': 2000.0}, 'Results_avg': {'test_avg_loss': 2.2992369159698485, 'test_loss': 4598.473831939697, 'test_total': 2000.0}, 'Results_fairness': {'test_total': 2000.0, 'test_avg_loss_std': 0.001472267052088367, 'test_avg_loss_bottom_decile': 2.2976508255004884, 'test_avg_loss_top_decile': 2.301986885070801, 'test_loss_std': 2.9445341041766784, 'test_loss_bottom_decile': 4595.301651000977, 'test_loss_top_decile': 4603.973770141602}}\n", - "2022-07-13 17:03:25,513 (server:308)INFO: Server #0: Starting evaluation at the end of round 11.\n", - "2022-07-13 17:03:25,514 (server:315)INFO: ----------- Starting a new training round (Round #12) -------------\n", - "2022-07-13 17:03:26,742 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:27,939 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:29,135 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:30,298 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:31,479 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:31,620 (client:230)INFO: {'Role': 'Client #5', 'Round': 12, 'Results_raw': {'train_avg_loss': 2.2963714599609375, 'train_loss': 146.9677734375, 'train_total': 64}}\n", - "2022-07-13 17:03:31,759 (client:230)INFO: {'Role': 'Client #2', 'Round': 12, 'Results_raw': {'train_avg_loss': 2.3019070625305176, 'train_loss': 147.32205200195312, 'train_total': 64}}\n", - "2022-07-13 17:03:31,902 (client:230)INFO: {'Role': 'Client #3', 'Round': 12, 'Results_raw': {'train_avg_loss': 2.3050343990325928, 'train_loss': 147.52220153808594, 'train_total': 64}}\n", - "2022-07-13 17:03:32,047 (client:230)INFO: {'Role': 'Client #4', 'Round': 12, 'Results_raw': {'train_avg_loss': 2.2933523654937744, 'train_loss': 146.77455139160156, 'train_total': 64}}\n", - "2022-07-13 17:03:32,189 (client:230)INFO: {'Role': 'Client #1', 'Round': 12, 'Results_raw': {'train_avg_loss': 2.2856712341308594, 'train_loss': 146.282958984375, 'train_total': 64}}\n", - "2022-07-13 17:03:32,191 (server:467)INFO: {'Role': 'Server #', 'Round': 12, 'Results_weighted_avg': {'test_avg_loss': 2.2986974834442138, 'test_loss': 4597.394966888428, 'test_total': 2000.0}, 'Results_avg': {'test_avg_loss': 2.2986974834442138, 'test_loss': 4597.394966888428, 'test_total': 2000.0}, 'Results_fairness': {'test_total': 2000.0, 'test_avg_loss_std': 0.0014340284050739596, 'test_avg_loss_bottom_decile': 2.2971623401641845, 'test_avg_loss_top_decile': 2.3013907718658446, 'test_loss_std': 2.8680568101479444, 'test_loss_bottom_decile': 4594.324680328369, 'test_loss_top_decile': 4602.781543731689}}\n", - "2022-07-13 17:03:32,197 (server:308)INFO: Server #0: Starting evaluation at the end of round 12.\n", - "2022-07-13 17:03:32,198 (server:315)INFO: ----------- Starting a new training round (Round #13) -------------\n", - "2022-07-13 17:03:33,350 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:34,514 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:35,664 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:36,807 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:37,959 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:38,100 (client:230)INFO: {'Role': 'Client #2', 'Round': 13, 'Results_raw': {'train_avg_loss': 2.2981536388397217, 'train_loss': 147.0818328857422, 'train_total': 64}}\n", - "2022-07-13 17:03:38,239 (client:230)INFO: {'Role': 'Client #5', 'Round': 13, 'Results_raw': {'train_avg_loss': 2.2986042499542236, 'train_loss': 147.1106719970703, 'train_total': 64}}\n", - "2022-07-13 17:03:38,379 (client:230)INFO: {'Role': 'Client #3', 'Round': 13, 'Results_raw': {'train_avg_loss': 2.3028147220611572, 'train_loss': 147.38014221191406, 'train_total': 64}}\n", - "2022-07-13 17:03:38,519 (client:230)INFO: {'Role': 'Client #4', 'Round': 13, 'Results_raw': {'train_avg_loss': 2.307706594467163, 'train_loss': 147.69322204589844, 'train_total': 64}}\n", - "2022-07-13 17:03:38,659 (client:230)INFO: {'Role': 'Client #1', 'Round': 13, 'Results_raw': {'train_avg_loss': 2.3122951984405518, 'train_loss': 147.9868927001953, 'train_total': 64}}\n", - "2022-07-13 17:03:38,660 (server:467)INFO: {'Role': 'Server #', 'Round': 13, 'Results_weighted_avg': {'test_avg_loss': 2.2981028934478758, 'test_loss': 4596.205786895752, 'test_total': 2000.0}, 'Results_avg': {'test_avg_loss': 2.298102893447876, 'test_loss': 4596.205786895752, 'test_total': 2000.0}, 'Results_fairness': {'test_total': 2000.0, 'test_avg_loss_std': 0.001395443743270578, 'test_avg_loss_bottom_decile': 2.296644613265991, 'test_avg_loss_top_decile': 2.3007459888458253, 'test_loss_std': 2.7908874865410764, 'test_loss_bottom_decile': 4593.289226531982, 'test_loss_top_decile': 4601.49197769165}}\n", - "2022-07-13 17:03:38,666 (server:308)INFO: Server #0: Starting evaluation at the end of round 13.\n", - "2022-07-13 17:03:38,667 (server:315)INFO: ----------- Starting a new training round (Round #14) -------------\n", - "2022-07-13 17:03:39,839 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:41,035 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:42,173 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:43,311 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:44,463 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:44,605 (client:230)INFO: {'Role': 'Client #4', 'Round': 14, 'Results_raw': {'train_avg_loss': 2.2983038425445557, 'train_loss': 147.09144592285156, 'train_total': 64}}\n", - "2022-07-13 17:03:44,744 (client:230)INFO: {'Role': 'Client #1', 'Round': 14, 'Results_raw': {'train_avg_loss': 2.298999786376953, 'train_loss': 147.135986328125, 'train_total': 64}}\n", - "2022-07-13 17:03:44,883 (client:230)INFO: {'Role': 'Client #2', 'Round': 14, 'Results_raw': {'train_avg_loss': 2.292233943939209, 'train_loss': 146.70297241210938, 'train_total': 64}}\n", - "2022-07-13 17:03:45,023 (client:230)INFO: {'Role': 'Client #5', 'Round': 14, 'Results_raw': {'train_avg_loss': 2.299687147140503, 'train_loss': 147.1799774169922, 'train_total': 64}}\n", - "2022-07-13 17:03:45,162 (client:230)INFO: {'Role': 'Client #3', 'Round': 14, 'Results_raw': {'train_avg_loss': 2.29042649269104, 'train_loss': 146.58729553222656, 'train_total': 64}}\n", - "2022-07-13 17:03:45,163 (server:467)INFO: {'Role': 'Server #', 'Round': 14, 'Results_weighted_avg': {'test_avg_loss': 2.297568070983887, 'test_loss': 4595.136141967773, 'test_total': 2000.0}, 'Results_avg': {'test_avg_loss': 2.297568070983887, 'test_loss': 4595.136141967773, 'test_total': 2000.0}, 'Results_fairness': {'test_total': 2000.0, 'test_avg_loss_std': 0.0013443828698335282, 'test_avg_loss_bottom_decile': 2.296177127838135, 'test_avg_loss_top_decile': 2.3001265144348144, 'test_loss_std': 2.688765739667129, 'test_loss_bottom_decile': 4592.3542556762695, 'test_loss_top_decile': 4600.253028869629}}\n", - "2022-07-13 17:03:45,169 (server:308)INFO: Server #0: Starting evaluation at the end of round 14.\n", - "2022-07-13 17:03:45,170 (server:315)INFO: ----------- Starting a new training round (Round #15) -------------\n", - "2022-07-13 17:03:46,357 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:47,502 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:48,640 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:49,778 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:50,924 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:51,079 (client:230)INFO: {'Role': 'Client #3', 'Round': 15, 'Results_raw': {'train_avg_loss': 2.3002254962921143, 'train_loss': 147.2144317626953, 'train_total': 64}}\n", - "2022-07-13 17:03:51,219 (client:230)INFO: {'Role': 'Client #1', 'Round': 15, 'Results_raw': {'train_avg_loss': 2.303860902786255, 'train_loss': 147.4470977783203, 'train_total': 64}}\n", - "2022-07-13 17:03:51,358 (client:230)INFO: {'Role': 'Client #2', 'Round': 15, 'Results_raw': {'train_avg_loss': 2.3125996589660645, 'train_loss': 148.00637817382812, 'train_total': 64}}\n", - "2022-07-13 17:03:51,499 (client:230)INFO: {'Role': 'Client #4', 'Round': 15, 'Results_raw': {'train_avg_loss': 2.2951700687408447, 'train_loss': 146.89088439941406, 'train_total': 64}}\n", - "2022-07-13 17:03:51,639 (client:230)INFO: {'Role': 'Client #5', 'Round': 15, 'Results_raw': {'train_avg_loss': 2.284985065460205, 'train_loss': 146.23904418945312, 'train_total': 64}}\n", - "2022-07-13 17:03:51,641 (server:467)INFO: {'Role': 'Server #', 'Round': 15, 'Results_weighted_avg': {'test_avg_loss': 2.297029465484619, 'test_loss': 4594.058930969239, 'test_total': 2000.0}, 'Results_avg': {'test_avg_loss': 2.297029465484619, 'test_loss': 4594.058930969239, 'test_total': 2000.0}, 'Results_fairness': {'test_total': 2000.0, 'test_avg_loss_std': 0.0013068382289575739, 'test_avg_loss_bottom_decile': 2.2956975917816163, 'test_avg_loss_top_decile': 2.299527868270874, 'test_loss_std': 2.6136764579150302, 'test_loss_bottom_decile': 4591.395183563232, 'test_loss_top_decile': 4599.055736541748}}\n", - "2022-07-13 17:03:51,647 (server:308)INFO: Server #0: Starting evaluation at the end of round 15.\n", - "2022-07-13 17:03:51,648 (server:315)INFO: ----------- Starting a new training round (Round #16) -------------\n", - "2022-07-13 17:03:52,786 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:53,929 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:55,070 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:56,223 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:57,360 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:03:57,499 (client:230)INFO: {'Role': 'Client #1', 'Round': 16, 'Results_raw': {'train_avg_loss': 2.292562484741211, 'train_loss': 146.7239990234375, 'train_total': 64}}\n", - "2022-07-13 17:03:57,638 (client:230)INFO: {'Role': 'Client #4', 'Round': 16, 'Results_raw': {'train_avg_loss': 2.2965145111083984, 'train_loss': 146.9769287109375, 'train_total': 64}}\n", - "2022-07-13 17:03:57,778 (client:230)INFO: {'Role': 'Client #2', 'Round': 16, 'Results_raw': {'train_avg_loss': 2.289572238922119, 'train_loss': 146.53262329101562, 'train_total': 64}}\n", - "2022-07-13 17:03:57,918 (client:230)INFO: {'Role': 'Client #3', 'Round': 16, 'Results_raw': {'train_avg_loss': 2.3101134300231934, 'train_loss': 147.84725952148438, 'train_total': 64}}\n", - "2022-07-13 17:03:58,057 (client:230)INFO: {'Role': 'Client #5', 'Round': 16, 'Results_raw': {'train_avg_loss': 2.2956461906433105, 'train_loss': 146.92135620117188, 'train_total': 64}}\n", - "2022-07-13 17:03:58,058 (server:467)INFO: {'Role': 'Server #', 'Round': 16, 'Results_weighted_avg': {'test_avg_loss': 2.296482177734375, 'test_loss': 4592.96435546875, 'test_total': 2000.0}, 'Results_avg': {'test_avg_loss': 2.296482177734375, 'test_loss': 4592.96435546875, 'test_total': 2000.0}, 'Results_fairness': {'test_total': 2000.0, 'test_avg_loss_std': 0.001270293929499765, 'test_avg_loss_bottom_decile': 2.2952079067230224, 'test_avg_loss_top_decile': 2.298919319152832, 'test_loss_std': 2.540587858999617, 'test_loss_bottom_decile': 4590.415813446045, 'test_loss_top_decile': 4597.838638305664}}\n", - "2022-07-13 17:03:58,064 (server:308)INFO: Server #0: Starting evaluation at the end of round 16.\n", - "2022-07-13 17:03:58,065 (server:315)INFO: ----------- Starting a new training round (Round #17) -------------\n", - "2022-07-13 17:03:59,208 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:04:00,354 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:04:01,583 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:04:02,867 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:04:04,039 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:04:04,186 (client:230)INFO: {'Role': 'Client #2', 'Round': 17, 'Results_raw': {'train_avg_loss': 2.2907392978668213, 'train_loss': 146.60731506347656, 'train_total': 64}}\n", - "2022-07-13 17:04:04,340 (client:230)INFO: {'Role': 'Client #4', 'Round': 17, 'Results_raw': {'train_avg_loss': 2.2742345333099365, 'train_loss': 145.55101013183594, 'train_total': 64}}\n", - "2022-07-13 17:04:04,482 (client:230)INFO: {'Role': 'Client #5', 'Round': 17, 'Results_raw': {'train_avg_loss': 2.285505533218384, 'train_loss': 146.27235412597656, 'train_total': 64}}\n", - "2022-07-13 17:04:04,643 (client:230)INFO: {'Role': 'Client #1', 'Round': 17, 'Results_raw': {'train_avg_loss': 2.2876436710357666, 'train_loss': 146.40919494628906, 'train_total': 64}}\n", - "2022-07-13 17:04:04,785 (client:230)INFO: {'Role': 'Client #3', 'Round': 17, 'Results_raw': {'train_avg_loss': 2.2814106941223145, 'train_loss': 146.01028442382812, 'train_total': 64}}\n", - "2022-07-13 17:04:04,787 (server:467)INFO: {'Role': 'Server #', 'Round': 17, 'Results_weighted_avg': {'test_avg_loss': 2.2959516693115236, 'test_loss': 4591.903338623047, 'test_total': 2000.0}, 'Results_avg': {'test_avg_loss': 2.2959516693115236, 'test_loss': 4591.903338623047, 'test_total': 2000.0}, 'Results_fairness': {'test_total': 2000.0, 'test_avg_loss_std': 0.0012398398346842238, 'test_avg_loss_bottom_decile': 2.2947344055175782, 'test_avg_loss_top_decile': 2.298341049194336, 'test_loss_std': 2.479679669368509, 'test_loss_bottom_decile': 4589.468811035156, 'test_loss_top_decile': 4596.682098388672}}\n", - "2022-07-13 17:04:04,793 (server:308)INFO: Server #0: Starting evaluation at the end of round 17.\n", - "2022-07-13 17:04:04,795 (server:315)INFO: ----------- Starting a new training round (Round #18) -------------\n", - "2022-07-13 17:04:06,046 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:04:07,190 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:04:08,342 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:04:09,482 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:04:10,620 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:04:10,760 (client:230)INFO: {'Role': 'Client #1', 'Round': 18, 'Results_raw': {'train_avg_loss': 2.29581880569458, 'train_loss': 146.93240356445312, 'train_total': 64}}\n", - "2022-07-13 17:04:10,901 (client:230)INFO: {'Role': 'Client #2', 'Round': 18, 'Results_raw': {'train_avg_loss': 2.2910983562469482, 'train_loss': 146.6302947998047, 'train_total': 64}}\n", - "2022-07-13 17:04:11,044 (client:230)INFO: {'Role': 'Client #3', 'Round': 18, 'Results_raw': {'train_avg_loss': 2.2994794845581055, 'train_loss': 147.16668701171875, 'train_total': 64}}\n", - "2022-07-13 17:04:11,183 (client:230)INFO: {'Role': 'Client #4', 'Round': 18, 'Results_raw': {'train_avg_loss': 2.315354585647583, 'train_loss': 148.1826934814453, 'train_total': 64}}\n", - "2022-07-13 17:04:11,326 (client:230)INFO: {'Role': 'Client #5', 'Round': 18, 'Results_raw': {'train_avg_loss': 2.2880971431732178, 'train_loss': 146.43821716308594, 'train_total': 64}}\n", - "2022-07-13 17:04:11,327 (server:467)INFO: {'Role': 'Server #', 'Round': 18, 'Results_weighted_avg': {'test_avg_loss': 2.2954604179382323, 'test_loss': 4590.9208358764645, 'test_total': 2000.0}, 'Results_avg': {'test_avg_loss': 2.2954604179382327, 'test_loss': 4590.9208358764645, 'test_total': 2000.0}, 'Results_fairness': {'test_total': 2000.0, 'test_avg_loss_std': 0.0012240139057485703, 'test_avg_loss_bottom_decile': 2.294273162841797, 'test_avg_loss_top_decile': 2.2978225536346435, 'test_loss_std': 2.448027811497195, 'test_loss_bottom_decile': 4588.546325683594, 'test_loss_top_decile': 4595.645107269287}}\n", - "2022-07-13 17:04:11,332 (server:308)INFO: Server #0: Starting evaluation at the end of round 18.\n", - "2022-07-13 17:04:11,334 (server:315)INFO: ----------- Starting a new training round (Round #19) -------------\n", - "2022-07-13 17:04:12,476 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:04:13,613 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:04:14,759 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:04:15,898 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:04:17,051 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:04:17,194 (client:230)INFO: {'Role': 'Client #1', 'Round': 19, 'Results_raw': {'train_avg_loss': 2.289252758026123, 'train_loss': 146.51217651367188, 'train_total': 64}}\n", - "2022-07-13 17:04:17,334 (client:230)INFO: {'Role': 'Client #5', 'Round': 19, 'Results_raw': {'train_avg_loss': 2.2966384887695312, 'train_loss': 146.98486328125, 'train_total': 64}}\n", - "2022-07-13 17:04:17,474 (client:230)INFO: {'Role': 'Client #3', 'Round': 19, 'Results_raw': {'train_avg_loss': 2.303811550140381, 'train_loss': 147.44393920898438, 'train_total': 64}}\n", - "2022-07-13 17:04:17,614 (client:230)INFO: {'Role': 'Client #4', 'Round': 19, 'Results_raw': {'train_avg_loss': 2.296599864959717, 'train_loss': 146.98239135742188, 'train_total': 64}}\n", - "2022-07-13 17:04:17,755 (client:230)INFO: {'Role': 'Client #2', 'Round': 19, 'Results_raw': {'train_avg_loss': 2.292829990386963, 'train_loss': 146.74111938476562, 'train_total': 64}}\n", - "2022-07-13 17:04:17,756 (server:467)INFO: {'Role': 'Server #', 'Round': 19, 'Results_weighted_avg': {'test_avg_loss': 2.294828874206543, 'test_loss': 4589.657748413086, 'test_total': 2000.0}, 'Results_avg': {'test_avg_loss': 2.2948288742065435, 'test_loss': 4589.657748413086, 'test_total': 2000.0}, 'Results_fairness': {'test_total': 2000.0, 'test_avg_loss_std': 0.0011940965133658034, 'test_avg_loss_bottom_decile': 2.2937023849487304, 'test_avg_loss_top_decile': 2.2971345634460447, 'test_loss_std': 2.3881930267317424, 'test_loss_bottom_decile': 4587.404769897461, 'test_loss_top_decile': 4594.26912689209}}\n", - "2022-07-13 17:04:17,762 (server:326)INFO: Server #0: Training is finished! Starting evaluation.\n", - "2022-07-13 17:04:18,902 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:04:20,047 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:04:21,186 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:04:22,342 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:04:23,485 (context:208)WARNING: No val_data or val_loader in the trainer, will skip evaluationIf this is not the case you want, please check whether there is typo for the name\n", - "2022-07-13 17:04:23,487 (server:467)INFO: {'Role': 'Server #', 'Round': 20, 'Results_weighted_avg': {'test_avg_loss': 2.294264762878418, 'test_loss': 4588.529525756836, 'test_total': 2000.0}, 'Results_avg': {'test_avg_loss': 2.294264762878418, 'test_loss': 4588.529525756836, 'test_total': 2000.0}, 'Results_fairness': {'test_total': 2000.0, 'test_avg_loss_std': 0.001171833592442681, 'test_avg_loss_bottom_decile': 2.2931953048706055, 'test_avg_loss_top_decile': 2.2965258312225343, 'test_loss_std': 2.3436671848852755, 'test_loss_bottom_decile': 4586.390609741211, 'test_loss_top_decile': 4593.051662445068}}\n", - "2022-07-13 17:04:23,488 (server:380)INFO: Server #0: Final evaluation is finished! Starting merging results.\n", - "2022-07-13 17:04:23,489 (server:410)INFO: {'Role': 'Server #', 'Round': 'Final', 'Results_raw': {'client_individual': {'test_loss': 4586.390609741211, 'test_avg_loss': 2.2931953048706055, 'test_total': 2000.0}, 'client_summarized_weighted_avg': {'test_loss': 4588.529525756836, 'test_avg_loss': 2.294264762878418, 'test_total': 2000.0}, 'client_summarized_avg': {'test_loss': 4588.529525756836, 'test_avg_loss': 2.294264762878418, 'test_total': 2000.0}, 'client_summarized_fairness': {'test_loss_top_decile': 4593.051662445068, 'test_loss_bottom_decile': 4586.390609741211, 'test_loss_std': 2.3436671848852755, 'test_total': 2000.0, 'test_avg_loss_std': 0.001171833592442681, 'test_avg_loss_bottom_decile': 2.2931953048706055, 'test_avg_loss_top_decile': 2.2965258312225343}}}\n", - "2022-07-13 17:04:23,490 (server:431)INFO: {'Role': 'Client #1', 'Round': 20, 'Results_raw': {'test_avg_loss': 2.294129934310913, 'test_loss': 4588.259868621826, 'test_total': 2000}}\n", - "2022-07-13 17:04:23,491 (server:431)INFO: {'Role': 'Client #2', 'Round': 20, 'Results_raw': {'test_avg_loss': 2.2931953048706055, 'test_loss': 4586.390609741211, 'test_total': 2000}}\n", - "2022-07-13 17:04:23,492 (server:431)INFO: {'Role': 'Client #3', 'Round': 20, 'Results_raw': {'test_avg_loss': 2.293607479095459, 'test_loss': 4587.214958190918, 'test_total': 2000}}\n", - "2022-07-13 17:04:23,492 (server:431)INFO: {'Role': 'Client #4', 'Round': 20, 'Results_raw': {'test_avg_loss': 2.293865264892578, 'test_loss': 4587.730529785156, 'test_total': 2000}}\n", - "2022-07-13 17:04:23,493 (server:431)INFO: {'Role': 'Client #5', 'Round': 20, 'Results_raw': {'test_avg_loss': 2.2965258312225343, 'test_loss': 4593.051662445068, 'test_total': 2000}}\n", - "2022-07-13 17:04:23,496 (monitor:121)INFO: In worker #0, the system-related metrics are: {'id': 0, 'fl_end_time_minutes': 2.2361946166666664, 'total_model_size': 0, 'total_flops': 0, 'total_upload_bytes': 545600, 'total_download_bytes': 286776, 'global_convergence_round': 0, 'local_convergence_round': 0, 'global_convergence_time_minutes': 0, 'local_convergence_time_minutes': 0}\n", - "2022-07-13 17:04:23,497 (client:406)INFO: ================= client 1 received finish message =================\n", - "2022-07-13 17:04:23,498 (monitor:121)INFO: In worker #1, the system-related metrics are: {'id': 1, 'fl_end_time_minutes': 2.2360655499999997, 'total_model_size': 857738, 'total_flops': 14678753280.0, 'total_upload_bytes': 57456, 'total_download_bytes': 109120, 'global_convergence_round': 0, 'local_convergence_round': 0, 'global_convergence_time_minutes': 0, 'local_convergence_time_minutes': 0}\n", - "2022-07-13 17:04:23,500 (client:406)INFO: ================= client 2 received finish message =================\n", - "2022-07-13 17:04:23,501 (monitor:121)INFO: In worker #2, the system-related metrics are: {'id': 2, 'fl_end_time_minutes': 2.2359978, 'total_model_size': 857738, 'total_flops': 14678753280.0, 'total_upload_bytes': 57456, 'total_download_bytes': 109120, 'global_convergence_round': 0, 'local_convergence_round': 0, 'global_convergence_time_minutes': 0, 'local_convergence_time_minutes': 0}\n", - "2022-07-13 17:04:23,502 (client:406)INFO: ================= client 3 received finish message =================\n", - "2022-07-13 17:04:23,505 (monitor:121)INFO: In worker #3, the system-related metrics are: {'id': 3, 'fl_end_time_minutes': 2.2359532, 'total_model_size': 857738, 'total_flops': 14678753280.0, 'total_upload_bytes': 57456, 'total_download_bytes': 109120, 'global_convergence_round': 0, 'local_convergence_round': 0, 'global_convergence_time_minutes': 0, 'local_convergence_time_minutes': 0}\n", - "2022-07-13 17:04:23,506 (client:406)INFO: ================= client 4 received finish message =================\n", - "2022-07-13 17:04:23,508 (monitor:121)INFO: In worker #4, the system-related metrics are: {'id': 4, 'fl_end_time_minutes': 2.2359071166666666, 'total_model_size': 857738, 'total_flops': 14678753280.0, 'total_upload_bytes': 57456, 'total_download_bytes': 109120, 'global_convergence_round': 0, 'local_convergence_round': 0, 'global_convergence_time_minutes': 0, 'local_convergence_time_minutes': 0}\n", - "2022-07-13 17:04:23,509 (client:406)INFO: ================= client 5 received finish message =================\n", - "2022-07-13 17:04:23,512 (monitor:121)INFO: In worker #5, the system-related metrics are: {'id': 5, 'fl_end_time_minutes': 2.2358537833333334, 'total_model_size': 857738, 'total_flops': 14678753280.0, 'total_upload_bytes': 57456, 'total_download_bytes': 109120, 'global_convergence_round': 0, 'local_convergence_round': 0, 'global_convergence_time_minutes': 0, 'local_convergence_time_minutes': 0}\n", - "2022-07-13 17:04:23,515 (monitor:278)INFO: We will compress the file eval_results.raw into a .gz file, and delete the old one\n", - "2022-07-13 17:04:23,520 (monitor:195)INFO: After merging the system metrics from all works, we got avg: defaultdict(None, {'id': 'sys_avg', 'sys_avg/fl_end_time_minutes': 2.235995344444444, 'sys_avg/total_model_size': '698.03K', 'sys_avg/total_flops': '11.39G', 'sys_avg/total_upload_bytes': '135.56K', 'sys_avg/total_download_bytes': '135.48K', 'sys_avg/global_convergence_round': 0.0, 'sys_avg/local_convergence_round': 0.0, 'sys_avg/global_convergence_time_minutes': 0.0, 'sys_avg/local_convergence_time_minutes': 0.0})\n", - "2022-07-13 17:04:23,520 (monitor:198)INFO: After merging the system metrics from all works, we got std: defaultdict(None, {'id': 'sys_std', 'sys_std/fl_end_time_minutes': 0.00011123856606510953, 'sys_std/total_model_size': '312.17K', 'sys_std/total_flops': '5.09G', 'sys_std/total_upload_bytes': '177.66K', 'sys_std/total_download_bytes': '64.66K', 'sys_std/global_convergence_round': 0.0, 'sys_std/local_convergence_round': 0.0, 'sys_std/global_convergence_time_minutes': 0.0, 'sys_std/local_convergence_time_minutes': 0.0})\n" - ] - }, - { - "data": { - "text/plain": [ - "{'client_individual': {'test_loss': 4586.390609741211,\n", - " 'test_avg_loss': 2.2931953048706055,\n", - " 'test_total': 2000.0},\n", - " 'client_summarized_weighted_avg': {'test_loss': 4588.529525756836,\n", - " 'test_avg_loss': 2.294264762878418,\n", - " 'test_total': 2000.0},\n", - " 'client_summarized_avg': {'test_loss': 4588.529525756836,\n", - " 'test_avg_loss': 2.294264762878418,\n", - " 'test_total': 2000.0},\n", - " 'client_summarized_fairness': {'test_loss_top_decile': 4593.051662445068,\n", - " 'test_loss_bottom_decile': 4586.390609741211,\n", - " 'test_loss_std': 2.3436671848852755,\n", - " 'test_total': 2000.0,\n", - " 'test_avg_loss_std': 0.001171833592442681,\n", - " 'test_avg_loss_bottom_decile': 2.2931953048706055,\n", - " 'test_avg_loss_top_decile': 2.2965258312225343}}" - ] - }, - "execution_count": 14, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "from federatedscope.core.auxiliaries.data_builder import get_data\n", "from federatedscope.core.auxiliaries.utils import setup_seed, update_logger\n", @@ -976,28 +503,6 @@ "Fed_runner.run()" ] }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [], - "source": [] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [], - "source": [] - }, { "cell_type": "code", "execution_count": null,