Example #1
0
# GPUが使えるか確認
device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
print("using:", device)

print("set weights!")

# In[6]:

print(net)

# In[7]:

from utils.ssd_model import MultiBoxLoss

# define loss
criterion = MultiBoxLoss(jaccard_thresh=0.5, neg_pos=4, device=device)

# optim
import torch.optim as optim
optimizer = optim.SGD(net.parameters(),
                      lr=1e-3,
                      momentum=0.9,
                      weight_decay=5e-4)

# In[8]:


def get_current_lr(epoch):
    lr = 1e-3
    for i, lr_decay_epoch in enumerate([120, 180]):
        if epoch >= lr_decay_epoch:
print("set weights!")


# In[8]:


print(net)


# In[9]:


from utils.ssd_model import MultiBoxLoss

# define loss
criterion = MultiBoxLoss(jaccard_thresh=0.5,neg_pos=3, device=device, focal=focal)

# optim
import torch.optim as optim
optimizer = optim.Adam(net.parameters(), lr=1e-4, weight_decay=5e-4)


# In[10]:


def get_current_lr(epoch):
    lr = 1e-4
    for i,lr_decay_epoch in enumerate([80,120]):
        if epoch >= lr_decay_epoch:
            lr *= 0.1
    return lr
Example #3
0
    # GPUが使えるか確認
    device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
    print("using:", device)

    if isRESUME:
        print("set weights from " + args.resume + " ==========")

        net_weights = torch.load(args.resume, map_location={'cuda:0': 'cpu'})

        net.load_state_dict(net_weights)

    from utils.ssd_model import MultiBoxLoss

    # define loss
    criterion = MultiBoxLoss(jaccard_thresh=0.5,
                             neg_pos=3,
                             device=device,
                             half=HALF)

    # optim
    import torch.optim as optim
    optimizer = optim.SGD(net.parameters(),
                          lr=1e-3,
                          momentum=0.9,
                          weight_decay=5e-4)


#
def get_current_lr(epoch):

    if DATASET == "COCO":
        reduce = [20, 40]