python - 对 PyTorch 模型使用多处理 CPU 推理的最佳方法是什么?

标签 python multiprocessing pytorch

我必须生产 PyTorch BERT 问答模型。 CPU 推理对我来说非常慢,因为模型需要评估 30 个样本的每个查询。在这 30 个样本的结果中,我选择了得分最高的答案。 GPU 对我来说太昂贵,无法用于推理。

我可以为此利用多处理/并行 CPU 推理吗? 如果是,这样做的最佳做法是什么? 如果否,是否有一个云选项只对我进行的 GPU 查询收费,而不对连续运行 GPU 实例收费?

最佳答案

获得更好性能的另一种可能方法是尽可能减少模型。

最有前途的技术之一是量化和二值化神经网络。以下是一些引用资料:

  1. > https://arxiv.org/abs/1603.05279
  2. > https://arxiv.org/abs/1602.02505

关于python - 对 PyTorch 模型使用多处理 CPU 推理的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55253708/

相关文章:

python - 将 Binary 对象数组转换为 Python 3 中的字符串

python - 如何使用 DictWriter 方法制作正确的 csv 文件

c - 停止子进程中的信号传播,使 exec

python - 在不移动数据的情况下在进程之间共享数据

Python多处理需要更长的时间

python - 无法在 Ubuntu 中安装 Pytorch

python - 即使调用了 model.to(device), torch 模块的某些成员也不会移动到 GPU

python - 将 numpy 数组 block 转换为元组

python - 使用另一列的滚动值的数据框百分位

python - 运行时错误 : one of the variables needed for gradient computation has been modified by an inplace operation