Validation PyTorch多处理验证冻结
我试图通过许多图像来测试模型。因此,我创建了N个网络实例,并将其与数据一起发送到函数,然后等待丢失Validation PyTorch多处理验证冻结,validation,parallel-processing,multiprocessing,pytorch,Validation,Parallel Processing,Multiprocessing,Pytorch,我试图通过许多图像来测试模型。因此,我创建了N个网络实例,并将其与数据一起发送到函数,然后等待丢失 from torch.multiprocessing import Process, Queue, cpu_count def _multiprocFunc(aQ, _procID, inData, labelsImg, _model_valid): _tmp = _model_valid(inData) ############### ALL P
from torch.multiprocessing import Process, Queue, cpu_count
def _multiprocFunc(aQ, _procID,
inData, labelsImg, _model_valid):
_tmp = _model_valid(inData) ############### ALL PROCESSES HANG HERE ###############
crit = LossFunc.diffraLossSq_perImage()
result = crit(_tmp, labelsImg).detach().numpy()
aQ.put(list([_procID, result]))
def validation(X_valid, Y_valid, model_valid, valid_device = 'cpu'):
#... some code here
modelSet = []
while(numProcessed<numProc):
if (not aQ.empty()):
aQElement = aQ.get()
#... some code here
if(not done):
procID += 1
modelSet.append(copy.deepcopy(model_valid))
Process(target = _multiprocFunc, args = (aQ, procID,
data, Labels, modelSet[-1])).start()
来自torch.multiprocessing导入进程、队列、cpu\U计数的
定义多过程函数(aQ,_procID,
inData,labelsImg,_model_valid):
_tmp=模型有效(inData)所有流程挂在这里###############
crit=损失衍射图像()
结果=crit(_tmp,labelsImg).detach().numpy()
aQ.put(列表([[u procID,result]))
def验证(X_有效、Y_有效、型号_有效、有效_设备='cpu'):
#... 这里有一些代码
模型集=[]
while(numProcessed)