Skip to content

Commit

Permalink
Add sample output
Browse files Browse the repository at this point in the history
  • Loading branch information
fredzzhang committed Dec 3, 2020
1 parent 38e6995 commit 6209ed7
Show file tree
Hide file tree
Showing 4 changed files with 67 additions and 103 deletions.
18 changes: 18 additions & 0 deletions examples/distributed/mnist.py
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,9 @@ def main(rank, world_size):
# saved model parameters, optimizer statistics and progress
engine(5)

# Clean up
dist.destroy_process_group()

if __name__ == '__main__':

# Number of GPUs to run the experiment with
Expand All @@ -62,3 +65,18 @@ def main(rank, world_size):
os.environ["MASTER_ADDR"] = "localhost"
os.environ["MASTER_PORT"] = "8888"
mp.spawn(main, nprocs=WORLD_SIZE, args=(WORLD_SIZE,))

# Sample output
"""
Epoch [1/5], Iter. [100/235], Loss: 2.2968, Time[Data/Iter.]: [3.31s/6.57s]
Epoch [1/5], Iter. [200/235], Loss: 2.2767, Time[Data/Iter.]: [2.30s/5.07s]
Epoch [2/5], Iter. [065/235], Loss: 2.2289, Time[Data/Iter.]: [3.13s/5.50s]
Epoch [2/5], Iter. [165/235], Loss: 2.0091, Time[Data/Iter.]: [2.11s/4.99s]
Epoch [3/5], Iter. [030/235], Loss: 1.0353, Time[Data/Iter.]: [3.21s/5.81s]
Epoch [3/5], Iter. [130/235], Loss: 0.5111, Time[Data/Iter.]: [2.59s/5.80s]
Epoch [3/5], Iter. [230/235], Loss: 0.4194, Time[Data/Iter.]: [2.32s/5.14s]
Epoch [4/5], Iter. [095/235], Loss: 0.3574, Time[Data/Iter.]: [3.01s/5.64s]
Epoch [4/5], Iter. [195/235], Loss: 0.3105, Time[Data/Iter.]: [2.39s/4.99s]
Epoch [5/5], Iter. [060/235], Loss: 0.2800, Time[Data/Iter.]: [3.23s/6.19s]
Epoch [5/5], Iter. [160/235], Loss: 0.2575, Time[Data/Iter.]: [2.44s/4.67s]
"""
63 changes: 21 additions & 42 deletions examples/hicodet.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,6 @@
box pairs are computed and fed into a simple
MLP to compute class logits for the 600 interactions.
This method has abysmal performance (2% mAP)
and only serves as an example to demonstrate
the usage of pocket.core.MultiLabelClassificationEngine
Fred Zhang <[email protected]>
The Australian National University
Expand Down Expand Up @@ -81,7 +77,7 @@ def custom_collate(batch):

HICO_ROOT = "./data/hicodet"
if not os.path.exists(HICO_ROOT):
raise ValueError("Cannot find the dataset"
raise ValueError("Cannot find the dataset. "
"Make sure a symbolic link is created at {}".format(HICO_ROOT))

net = Net()
Expand All @@ -91,15 +87,15 @@ def custom_collate(batch):
train_loader = DataLoader(
HICODet(
root=os.path.join(HICO_ROOT, "hico_20160224_det/images/train2015"),
annoFile=os.path.join(HICO_ROOT, "instances_train2015.json"),
anno_file=os.path.join(HICO_ROOT, "instances_train2015.json"),
transforms=transforms
), batch_size=4, shuffle=True, num_workers=4,
collate_fn=custom_collate, drop_last=True
)
test_loader = DataLoader(
HICODet(
root=os.path.join(HICO_ROOT, "hico_20160224_det/images/test2015"),
annoFile=os.path.join(HICO_ROOT, "instances_test2015.json"),
anno_file=os.path.join(HICO_ROOT, "instances_test2015.json"),
transforms=transforms
), batch_size=4, num_workers=4,
collate_fn=custom_collate
Expand All @@ -108,42 +104,25 @@ def custom_collate(batch):
engine = MultiLabelClassificationEngine(net, criterion, train_loader,
val_loader=test_loader, ap_algorithm='11P', print_interval=500)

engine(5)

engine(1)

# Sample output
"""
Sample output
=> Validation (+1754.71s)
Epoch: 0 | mAP: 0.0067 | Loss: 0.6940 | Time: 1751.42s
=> Validation (+935.19s)
Epoch: 0 | mAP: 0.0065 | Loss: 0.6958 | Time: 933.54s
Epoch [1/1], Iter. [0500/9408], Loss: 0.6478, Time[Data/Iter.]: [2.75s/197.86s]
Epoch [1/1], Iter. [1000/9408], Loss: 0.5503, Time[Data/Iter.]: [2.58s/198.63s]
Epoch [1/1], Iter. [1500/9408], Loss: 0.4748, Time[Data/Iter.]: [2.57s/198.32s]
Epoch [1/1], Iter. [2000/9408], Loss: 0.4136, Time[Data/Iter.]: [2.57s/197.08s]
Epoch [1/1], Iter. [2500/9408], Loss: 0.3648, Time[Data/Iter.]: [2.60s/198.07s]
...
...
...
[Ep.][Iter.]: [5][38000] | Loss: 0.0388 | Time[Data/Iter.]: [0.4588s/203.3094s]
[Ep.][Iter.]: [5][38500] | Loss: 0.0383 | Time[Data/Iter.]: [0.0629s/206.3993s]
[Ep.][Iter.]: [5][39000] | Loss: 0.0387 | Time[Data/Iter.]: [0.0600s/196.8182s]
[Ep.][Iter.]: [5][39500] | Loss: 0.0387 | Time[Data/Iter.]: [0.0607s/208.0784s]
[Ep.][Iter.]: [5][40000] | Loss: 0.0383 | Time[Data/Iter.]: [0.0621s/200.6665s]
[Ep.][Iter.]: [5][40500] | Loss: 0.0382 | Time[Data/Iter.]: [0.0621s/198.3799s]
[Ep.][Iter.]: [5][41000] | Loss: 0.0376 | Time[Data/Iter.]: [0.0643s/206.2081s]
[Ep.][Iter.]: [5][41500] | Loss: 0.0378 | Time[Data/Iter.]: [0.0619s/197.4531s]
[Ep.][Iter.]: [5][42000] | Loss: 0.0370 | Time[Data/Iter.]: [0.0660s/199.5019s]
[Ep.][Iter.]: [5][42500] | Loss: 0.0364 | Time[Data/Iter.]: [0.0620s/202.1312s]
[Ep.][Iter.]: [5][43000] | Loss: 0.0370 | Time[Data/Iter.]: [0.0622s/199.2598s]
[Ep.][Iter.]: [5][43500] | Loss: 0.0369 | Time[Data/Iter.]: [0.0640s/203.9033s]
[Ep.][Iter.]: [5][44000] | Loss: 0.0367 | Time[Data/Iter.]: [0.0625s/200.8627s]
[Ep.][Iter.]: [5][44500] | Loss: 0.0358 | Time[Data/Iter.]: [0.0637s/198.3094s]
[Ep.][Iter.]: [5][45000] | Loss: 0.0358 | Time[Data/Iter.]: [0.0645s/198.1471s]
[Ep.][Iter.]: [5][45500] | Loss: 0.0365 | Time[Data/Iter.]: [0.0633s/206.5252s]
[Ep.][Iter.]: [5][46000] | Loss: 0.0362 | Time[Data/Iter.]: [0.0661s/205.7809s]
[Ep.][Iter.]: [5][46500] | Loss: 0.0354 | Time[Data/Iter.]: [0.0639s/200.6037s]
[Ep.][Iter.]: [5][47000] | Loss: 0.0355 | Time[Data/Iter.]: [0.0596s/201.4554s]
=> Training (+25678.19s)
Epoch: 5 | mAP: 0.0114 | Time(eval): 100.55s
=> Validation (+26641.95s)
Epoch: 5 | mAP: 0.0255 | Loss: 0.0284 | Time: 963.73s
Epoch [1/1], Iter. [8000/9408], Loss: 0.1425, Time[Data/Iter.]: [2.52s/196.84s]
Epoch [1/1], Iter. [8500/9408], Loss: 0.1364, Time[Data/Iter.]: [2.54s/198.61s]
Epoch [1/1], Iter. [9000/9408], Loss: 0.1276, Time[Data/Iter.]: [2.61s/193.84s]
=> Training (+4701.03s)
Epoch: 1 | mAP: 0.0047 | Time(eval): 61.62s
=> Validation (+5635.69s)
Epoch: 1 | mAP: 0.0075 | Loss: 0.0872 | Time: 934.64s
"""
24 changes: 12 additions & 12 deletions examples/mnist.py
Original file line number Diff line number Diff line change
Expand Up @@ -47,16 +47,16 @@ def main():

# Sample output
"""
=> Validation (+9.74s)
Epoch: 0 | Acc.: 0.1008[1008/10000] | Loss: 2.3036 | Time: 1.83s
[Ep.][Iter.]: [1][100] | Loss: 2.2971 | Time[Data/Iter.]: [2.8266s/3.1294s]
[Ep.][Iter.]: [1][200] | Loss: 2.2773 | Time[Data/Iter.]: [2.6130s/2.9324s]
[Ep.][Iter.]: [1][300] | Loss: 2.2289 | Time[Data/Iter.]: [2.3087s/2.6148s]
[Ep.][Iter.]: [1][400] | Loss: 2.0142 | Time[Data/Iter.]: [2.1537s/2.4501s]
=> Training (+22.64s)
Epoch: 1 | Acc.: 0.3182[19091/60000]
=> Validation (+24.36s)
Epoch: 1 | Acc.: 0.7949[7949/10000] | Loss: 0.7700 | Time: 1.72s
=> Validation (+3.67s)
Epoch: 0 | Acc.: 0.1008[1008/10000] | Loss: 2.3036 | Time: 1.99s
Epoch [1/1], Iter. [100/469], Loss: 2.2971, Time[Data/Iter.]: [1.73s/1.98s]
Epoch [1/1], Iter. [200/469], Loss: 2.2773, Time[Data/Iter.]: [1.70s/1.96s]
Epoch [1/1], Iter. [300/469], Loss: 2.2289, Time[Data/Iter.]: [1.68s/1.98s]
Epoch [1/1], Iter. [400/469], Loss: 2.0143, Time[Data/Iter.]: [1.69s/1.99s]
=> Training (+12.96s)
Epoch: 1 | Acc.: 0.3182[19090/60000]
=> Validation (+14.65s)
Epoch: 1 | Acc.: 0.7947[7947/10000] | Loss: 0.7701 | Time: 1.69s
"""
65 changes: 16 additions & 49 deletions examples/voc2012.py
Original file line number Diff line number Diff line change
Expand Up @@ -69,60 +69,27 @@ def main():
# Train the network for one epoch with default optimizer option
# Checkpoints will be saved under ./checkpoints by default, containing
# saved model parameters, optimizer statistics and progress
engine(5)
engine(1)

if __name__ == '__main__':
main()

# Sample output
"""
=> Validation (+64.57s)
Epoch: 0 | mAP: 0.0888 | Loss: 6.4674 | Time: 55.74s
=> Validation (+66.04s)
Epoch: 0 | mAP: 0.0886 | Loss: 6.4674 | Time: 64.35s
Epoch [1/1], Iter. [050/358], Loss: 0.3914, Time[Data/Iter.]: [0.97s/29.54s]
Epoch [1/1], Iter. [100/358], Loss: 0.2695, Time[Data/Iter.]: [0.63s/29.91s]
Epoch [1/1], Iter. [150/358], Loss: 0.2507, Time[Data/Iter.]: [0.63s/30.26s]
Epoch [1/1], Iter. [200/358], Loss: 0.2489, Time[Data/Iter.]: [0.63s/30.12s]
Epoch [1/1], Iter. [250/358], Loss: 0.2463, Time[Data/Iter.]: [0.63s/30.05s]
Epoch [1/1], Iter. [300/358], Loss: 0.2478, Time[Data/Iter.]: [0.64s/30.00s]
Epoch [1/1], Iter. [350/358], Loss: 0.2396, Time[Data/Iter.]: [0.65s/30.00s]
=> Training (+282.08s)
Epoch: 1 | mAP: 0.1004 | Time(eval): 0.85s
=> Validation (+347.15s)
Epoch: 1 | mAP: 0.1433 | Loss: 0.2515 | Time: 65.07s
[Ep.][Iter.]: [1][50] | Loss: 0.3516 | Time[Data/Iter.]: [0.8834s/44.9455s]
[Ep.][Iter.]: [1][100] | Loss: 0.2623 | Time[Data/Iter.]: [0.0115s/32.8341s]
[Ep.][Iter.]: [1][150] | Loss: 0.2550 | Time[Data/Iter.]: [0.0088s/33.2330s]
=> Training (+211.59s)
Epoch: 1 | mAP: 0.0929 | Time(eval): 2.91s
=> Validation (+254.78s)
Epoch: 1 | mAP: 0.1319 | Loss: 0.3520 | Time: 43.20s
[Ep.][Iter.]: [2][200] | Loss: 0.2435 | Time[Data/Iter.]: [0.9589s/45.9702s]
[Ep.][Iter.]: [2][250] | Loss: 0.2466 | Time[Data/Iter.]: [0.0128s/33.3668s]
[Ep.][Iter.]: [2][300] | Loss: 0.2366 | Time[Data/Iter.]: [0.0150s/33.2839s]
[Ep.][Iter.]: [2][350] | Loss: 0.2354 | Time[Data/Iter.]: [0.0145s/33.4185s]
=> Training (+378.84s)
Epoch: 2 | mAP: 0.1353 | Time(eval): 2.62s
=> Validation (+423.25s)
Epoch: 2 | mAP: 0.1508 | Loss: 0.2576 | Time: 44.40s
[Ep.][Iter.]: [3][400] | Loss: 0.2307 | Time[Data/Iter.]: [0.9710s/33.3509s]
[Ep.][Iter.]: [3][450] | Loss: 0.2307 | Time[Data/Iter.]: [0.0120s/32.9732s]
[Ep.][Iter.]: [3][500] | Loss: 0.2267 | Time[Data/Iter.]: [0.0110s/32.9218s]
=> Training (+545.57s)
Epoch: 3 | mAP: 0.1700 | Time(eval): 2.59s
=> Validation (+588.90s)
Epoch: 3 | mAP: 0.1838 | Loss: 0.2866 | Time: 43.33s
[Ep.][Iter.]: [4][550] | Loss: 0.2278 | Time[Data/Iter.]: [0.9267s/33.3011s]
[Ep.][Iter.]: [4][600] | Loss: 0.2225 | Time[Data/Iter.]: [0.0127s/32.7028s]
[Ep.][Iter.]: [4][650] | Loss: 0.2260 | Time[Data/Iter.]: [0.0116s/32.9071s]
[Ep.][Iter.]: [4][700] | Loss: 0.2214 | Time[Data/Iter.]: [0.0117s/32.8610s]
=> Training (+711.95s)
Epoch: 4 | mAP: 0.1878 | Time(eval): 2.58s
=> Validation (+755.31s)
Epoch: 4 | mAP: 0.1820 | Loss: 0.2649 | Time: 43.36s
[Ep.][Iter.]: [5][750] | Loss: 0.2237 | Time[Data/Iter.]: [0.5999s/33.0283s]
[Ep.][Iter.]: [5][800] | Loss: 0.2171 | Time[Data/Iter.]: [0.0119s/33.0726s]
[Ep.][Iter.]: [5][850] | Loss: 0.2191 | Time[Data/Iter.]: [0.0113s/32.9399s]
=> Training (+878.36s)
Epoch: 5 | mAP: 0.2033 | Time(eval): 2.59s
=> Validation (+921.95s)
Epoch: 5 | mAP: 0.2207 | Loss: 0.2388 | Time: 43.59s
"""

0 comments on commit 6209ed7

Please sign in to comment.