如何产生一个pkl文件?
Dr-F-Arthur opened this issue · 0 comments
Dr-F-Arthur commented
目前已知给出了一个预训练好的模型参数,在模型文件夹trained_models/karmadock_screening.pkl下的文件,那么如何产生这个文件?按照自己的理解对参数进行微调和修改?
我通过读utils/fns.py文件,了解到有在124行的save_model方法,并在下面128行的step方法里面得到运用。在包括utils/virtual_screening.py和utils/ligand_docking.py文件内,也只看到了load相关方法的使用,想了解一下该如何复现产生trained_models/karmadock_screening.pkl模型参数文件。
之前我尝试写过这样的代码,感觉效果不理想,而且如分数参数是我随便写的,并不清楚如何设置比较合理:
import argparse
import os
import sys
from tqdm import tqdm
project_dir = os.path.dirname(os.path.dirname(os.path.realpath(__file__)))
sys.path.append(project_dir)
from utils.fns import Early_stopper, set_random_seed
from architecture.KarmaDock_architecture import KarmaDock
import torch.nn as nn
import torch.optim
# device
device_id = 0
if torch.cuda.is_available():
my_device = f'cuda:{device_id}'
else:
my_device = 'cpu'
model = KarmaDock()
model = nn.DataParallel(model, device_ids=[device_id], output_device=device_id)
model.to(my_device)
# stoper
model_file = f'{project_dir}/trained_models/try_model.pkl'
stopper = Early_stopper(model_file=model_file,
mode='lower', patience=10)
stopper.step(50,model)