我正在做一个项目,目的是在机器学习项目中分离训练和测试过程。我设计了代码来包装使用的模型,模型是指模型类中的分类器。
class Model:
def init(self, newModel):
self.model = newModel
然后我使用列表传递模型必须提供的函数对象:
def addFunctions(self,functions):
for function in functions:
self.functions[function.__name_ _] = function
现在该模型可以用于分类,例如通过使用分类器对象构造它并将其函数在列表中传递给 addFunctions 以便我可以调用它们。然后我将模型和代码打包到一个docker容器中。为了简化它的工作,它是一个轻量级的虚拟机。
分离的目的是在优化后将训练好的模型传递给 docker 容器,而不需要传递整个代码。因此,需要保存/序列化 Python 模型。
我尝试使用pickle和jsonpickle,但是在序列化某些类型的对象时它们都有限制。我找不到任何对对象存储和检索足够通用的替代方法。有没有其他选择?