首先,你可以在下面看到任何幼稚的说法,我是这个领域的新手。
集成大型机器学习/深度学习模型微调的web应用程序如何处理这些模型的存储和检索以进行推理?
我试图实现一个网络应用程序,让用户微调一个稳定的扩散模型,使用他们自己的图像与梦想间。由于微调模型相当大,达到了几千兆字节。在对模型进行训练和保存后,应用程序应该在每次用户访问站点并请求时检索并使用该模型进行推理。
我正在考虑的当前方法是以压缩格式将精调模型存储在S3或R2桶中。每次用户访问web应用程序并请求推理时,我都会从桶中检索模型,解压缩模型,并运行推理。
尽管如此,在推理中增加获取+解压缩的开销显然不是一个好主意。
我可以肯定的是,机器学习社区在处理这些场景时遵循的是一种标准方法,如果它们存在的话,它们是什么呢?这些场景通常是如何处理的?
发布于 2023-02-04 08:42:49
不知道标准方法,但有一个选择:不是对整个模型进行微调,而是只对其中的一部分进行微调。例如,您可能只微调最后几层-几层。通过这种方式,您可以继续加载模型的公共部分,只加载小的微调部分,并将它们组合起来执行推理。
这将减少存储空间和解压缩时间,而代价是更复杂的代码逻辑。
当然,您应该首先确定哪些是模型的最小调整部分,使您能够获得所需的输出质量。
https://datascience.stackexchange.com/questions/118271
复制相似问题