From 93a4f337f2fd0280634024d2ff15790831813bed Mon Sep 17 00:00:00 2001
From: natanielruiz <nataniel777@hotmail.com>
Date: 星期五, 07 七月 2017 14:33:47 +0800
Subject: [PATCH] Resnet50, and changed test error

---
 code/train_resnet_bins.py |   18 +++++++++---------
 1 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/code/train_resnet_bins.py b/code/train_resnet_bins.py
index 1bbf5be..f33ffd6 100644
--- a/code/train_resnet_bins.py
+++ b/code/train_resnet_bins.py
@@ -91,10 +91,10 @@
     if not os.path.exists('output/snapshots'):
         os.makedirs('output/snapshots')
 
-    # ResNet18 with 3 outputs.
-    model = hopenet.Hopenet(torchvision.models.resnet.BasicBlock, [2, 2, 2, 2], 66)
-    load_filtered_state_dict(model, model_zoo.load_url(model_urls['resnet18']))
-    
+    # ResNet50 with 3 outputs.
+    model = hopenet.Hopenet(torchvision.models.resnet.Bottleneck, [3, 4, 6, 3], 66)
+    load_filtered_state_dict(model, model_zoo.load_url(model_urls['resnet50']))
+
     print 'Loading data.'
 
     transformations = transforms.Compose([transforms.Scale(224),transforms.RandomCrop(224),
@@ -109,8 +109,8 @@
 
     model.cuda(gpu)
     criterion = nn.CrossEntropyLoss()
-    optimizer = torch.optim.Adam([{'params': get_ignored_params(model), 'lr': .0},
-                                  {'params': get_non_ignored_params(model), 'lr': args.lr}],
+    optimizer = torch.optim.Adam([{'params': get_ignored_params(model), 'lr': args.lr},
+                                  {'params': get_non_ignored_params(model), 'lr': args.lr * 10}],
                                   lr = args.lr)
 
     print 'Ready to train network.'
@@ -137,11 +137,11 @@
                 print ('Epoch [%d/%d], Iter [%d/%d] Losses: Yaw %.4f, Pitch %.4f, Roll %.4f'
                        %(epoch+1, num_epochs, i+1, len(pose_dataset)//batch_size, loss_yaw.data[0], loss_pitch.data[0], loss_roll.data[0]))
 
-        # Save models at even numbered epochs.
+        # Save models at numbered epochs.
         if epoch % 1 == 0 and epoch < num_epochs - 1:
             print 'Taking snapshot...'
             torch.save(model.state_dict(),
-            'output/snapshots/resnet18_binned_epoch_' + str(epoch+1) + '.pkl')
+            'output/snapshots/resnet50_binned_epoch_' + str(epoch+1) + '.pkl')
 
     # Save the final Trained Model
-    torch.save(model.state_dict(), 'output/snapshots/resnet18_binned_epoch_' + str(epoch+1) + '.pkl')
+    torch.save(model.state_dict(), 'output/snapshots/resnet50_binned_epoch_' + str(epoch+1) + '.pkl')

--
Gitblit v1.8.0