我想检查位精度如何影响 DNN 的准确性。你知道任何 C/C++/Python 库吗 这不需要大量的返工来支持量化类型的推理吗?例如,我想将所有操作数(权重、激活、误差和梯度)设置为 8/16/32 位精度,并在测试后检查每个精度的准确性。
最佳答案
在 PyTorch (Python) 中,您可以设置张量的数据类型,例如:
torch.tensor(np.array([[1, 2, 3], [4, 5, 6]]), dtype=torch.HalfTensor) # 16 bit FP
它支持大多数数据类型,请参阅文档 here 请注意,并非所有 GPU 都支持所有数据类型,因此您可能应该坚持使用 CPU 执行。
编辑:
转换图层:nn.Linear(10, 10).double()
或设置默认 dtype torch.set_default_dtype()
ref
关于python - 训练时的位精度如何影响 DNN 的准确性 - 支持量化类型推理的库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58860601/