Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 机器学习模型状态的部署与维护_Python_Tensorflow_Machine Learning_Scikit Learn_Deep Learning - Fatal编程技术网

Python 机器学习模型状态的部署与维护

Python 机器学习模型状态的部署与维护,python,tensorflow,machine-learning,scikit-learn,deep-learning,Python,Tensorflow,Machine Learning,Scikit Learn,Deep Learning,好的,所以我对机器/深度学习世界是相当陌生的,在实现算法方面我的手很脏,但是我有一些差距,我想了解这个行业是如何做到这一点的 我是一名经验丰富的开发人员,拥有五年半复杂用例应用程序(Web和移动)开发经验。我对如何从零开始将应用程序从开发到生产有详细的了解 在阅读教程和所有在线可用文档的同时,解释如何在本地开发基本上类似于python脚本的模型。该脚本以结构化或非结构化的方式获取一些数据,对数据进行预处理,并根据接收到的数据对模型进行训练。所有这些都很好,因为有很多文档和在线教程可供使用,但没有

好的,所以我对机器/深度学习世界是相当陌生的,在实现算法方面我的手很脏,但是我有一些差距,我想了解这个行业是如何做到这一点的

我是一名经验丰富的开发人员,拥有五年半复杂用例应用程序(Web和移动)开发经验。我对如何从零开始将应用程序从开发到生产有详细的了解

在阅读教程和所有在线可用文档的同时,解释如何在本地开发基本上类似于python脚本的模型。该脚本以结构化或非结构化的方式获取一些数据,对数据进行预处理,并根据接收到的数据对模型进行训练。所有这些都很好,因为有很多文档和在线教程可供使用,但没有人解释如何将其用于生产以及如何在生产中维护它

我还没有确定如何将模型推送到生产环境中,以及何时将模型部署到生产环境中,我们应该从哪些数据在服务器上培训模型。它应该是我们在机器上本地使用的相同数据还是其他数据?此外,当我们对模型进行任何更改并将其重新部署到生产环境中时,我们是否必须再次训练模型(因为模型似乎是无状态的,并且必须在内存中存储所有训练结果和查找结果)。如果这是真的,那么在服务器上培训模型期间,重新部署模型将导致应用程序停机

我打赌工业界一定在以某种方式处理这一切。我想了解整个过程,如果我能有同样的参考资料,那就太好了


我正在使用
Tensorlfow
Scikitlearn
和其他流行的开发库。

这只是我的想法,可能不是标准的

一个模型就是一个模型,你可以将它保存到一个文件中,它只是一个文件,你可以复制它,它没有任何电子文档

部署的一种方法是通过某种形式的API公开
.predict()
方法。您可以使用您最喜欢的web框架来实现这一点,但由于您使用的是
tensorflow
,使用flask/django可能会更容易

另一件事是,如果你实际上没有弄乱层的内部结构,就只使用
keras
,这对于外行来说比
tensorflow
更简单,它位于
tensorflow
之上,所以你使用的是相同的技术

那么,如何处理再培训?ML只有在进行培训时才是计算密集型的,所以您需要单独进行培训,将经过培训的模型插入API中。理想情况下,这可以在不中断生产的情况下完成,它只是一个可以在一天结束时覆盖的文件。当然有一些微妙之处,但应该非常接近无缝


至于事后的继续培训,我将从这一点开始。

请允许我提醒您,这是关于具体的编码问题,而不是关于系统设计、部署选项或外部源位置和建议;特别是关于您问题的最后一部分(参考资料),请花一些时间重新阅读,并注意要求我们推荐或查找书籍、工具、软件库、,教程或其他场外资源与SO无关。我投票将此问题作为场外问题结束,因为它与指南中定义的编程无关。我建议您不要回答社区指南中建议的场外问题-请参阅,和