yes sure. Using these following functions, I set the requires_grad to False or True based on my pre-trained section.
def release_weight(model):
    for param in model.parameters():
        param.requires_grad = True
    return model
def freeze_weight(model):
    for param in model.stage1.parameters():
        param.requires_grad = False
    for param in model.stage4.parameters():
        param.requires_grad = False
    for param in model.stage5.parameters():
        param.requires_grad = False       
    for param in model.stage5_1.parameters():
        param.requires_grad = False
    for param in model.parallel1.parameters():
        param.requires_grad = False
    for param in model.parallel2.parameters():
        param.requires_grad = False
    for param in model.stage7.parameters():
        param.requires_grad = False
    for param in model.final.parameters():
        param.requires_grad = False
    for param in model.d.parameters():
        param.requires_grad = False
    return model

Actually, when I instantiate the model, I call above two functions:
model = Model(pretrained_path, 425)
model = release_weight(model)
model = freeze_weight(model)

Then I select the parameters which has requires_gard=True using following commands and give them to optimizer:
parameters = itertools.filterfalse(lambda p: not p.requires_grad, model.parameters())
optimizer = optim.SGD(parameters, lr=baseLR, weight_decay=0.001, momentum=0.9)