Numpy 如何加快我的预测任务
我目前正在基于以下内容在keras中实施: 我正在处理非常大的图像(~20000*~20000),为了得到整个图像的概率图,我使用了256*256个补丁 目前,我正在做以下工作:Numpy 如何加快我的预测任务,numpy,Numpy,我目前正在基于以下内容在keras中实施: 我正在处理非常大的图像(~20000*~20000),为了得到整个图像的概率图,我使用了256*256个补丁 目前,我正在做以下工作: UNet = load_model(model_name) for posX in range(0,im.level_dimensions[level][0]-256,stride): for posY in range(0,im.level_dimensions[level][1]-256,stride):
UNet = load_model(model_name)
for posX in range(0,im.level_dimensions[level][0]-256,stride):
for posY in range(0,im.level_dimensions[level][1]-256,stride):
xx = np.expand_dims(imload[posY:posY+256,posX:posX+256,:],0)
yy = maskload[posY:posY+256,posX:posX+256,:]
#The following line is the bottleneck
pred = UNet.predict(xx)[..., 0].reshape(patchShape[:2])
#Reconstruct the probability map
part=outputProba[posY:posY+256,posX:posX+256]
part[:,:]+=pred[0:part.shape[0],0:part.shape[1]]
outputProbaTimes[posY:posY+256,posX:posX+256]+=1
这段代码执行大约需要1分钟,步幅设置为256。我希望以64步的速度跑步,但需要大约16分钟
我是keras和Deep Learning的新手,我想知道是否有人会有一些聪明的技巧来加速这段代码
我环顾四周使用predict_generator,这将非常好,因为它可以利用多处理。但我不理解预测时生成数据的意义
谢谢你的帮助
ps:代码在nvidia GTX 1080上运行
ps2:UNet.predict是来自的predict。如果知道
UNet.predict是什么,那就太好了。你是对的,忘记指定了。这是来自keras的预测函数,